{"version":3,"file":"main.015dd5523a632a04.js","mappings":"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","sources":["./apps/ff-frontend/src/app/state/actions/appointmenttype.action.ts","./apps/ff-frontend/src/app/state/actions/city.action.ts","./apps/ff-frontend/src/app/state/actions/claim.action.ts","./apps/ff-frontend/src/app/state/actions/classtype.action.ts","./apps/ff-frontend/src/app/state/actions/clearstate.action.ts","./apps/ff-frontend/src/app/state/actions/company.action.ts","./apps/ff-frontend/src/app/state/actions/country.action.ts","./apps/ff-frontend/src/app/state/actions/index.ts","./apps/ff-frontend/src/app/state/actions/location.action.ts","./apps/ff-frontend/src/app/state/actions/reports.action.ts","./apps/ff-frontend/src/app/state/actions/room.action.ts","./apps/ff-frontend/src/app/state/actions/router.action.ts","./apps/ff-frontend/src/app/state/actions/servicetype.action.ts","./apps/ff-frontend/src/app/state/actions/staff.action.ts","./apps/ff-frontend/src/app/state/actions/stage-board.action.ts","./apps/ff-frontend/src/app/state/actions/state.action.ts","./apps/ff-frontend/src/app/state/actions/tenant.action.ts","./apps/ff-frontend/src/app/state/app.state.ts","./apps/ff-frontend/src/environments/environment.ts","./apps/ff-paylink/src/app/app-routing.module.ts","./apps/ff-paylink/src/app/app.component.ts","./apps/ff-paylink/src/app/app.component.html","./apps/ff-paylink/src/app/app.module.ts","./apps/ff-paylink/src/app/features/header/header.component.ts","./apps/ff-paylink/src/app/features/header/header.component.html","./apps/ff-paylink/src/app/features/page-not-found/page-not-found.component.ts","./apps/ff-paylink/src/app/features/page-not-found/page-not-found.component.html","./apps/ff-paylink/src/app/state/actions/city.action.ts","./apps/ff-paylink/src/app/state/actions/company.action.ts","./apps/ff-paylink/src/app/state/actions/country.action.ts","./apps/ff-paylink/src/app/state/actions/signupsteps.ts","./apps/ff-paylink/src/app/state/actions/state.action.ts","./apps/ff-paylink/src/app/state/actions/subscription-payload.ts","./apps/ff-paylink/src/app/state/actions/tenant.action.ts","./apps/ff-paylink/src/app/state/app.reducer.ts","./apps/ff-paylink/src/app/state/app.state.ts","./apps/ff-paylink/src/app/state/effect.ts","./apps/ff-paylink/src/app/state/store/city-master.store.ts","./apps/ff-paylink/src/app/state/store/company.store.ts","./apps/ff-paylink/src/app/state/store/country-master.store.ts","./apps/ff-paylink/src/app/state/store/order-summary.ts","./apps/ff-paylink/src/app/state/store/signupsteps.store.ts","./apps/ff-paylink/src/app/state/store/state-master.store.ts","./apps/ff-paylink/src/app/state/store/tenant.store.ts","./apps/ff-paylink/src/environments/environment.ts","./apps/ff-paylink/src/main.ts","./libs/api/src/index.ts","./libs/api/src/lib/admin/advanced-setting.service.ts","./libs/api/src/lib/admin/appointment-types.service.ts","./libs/api/src/lib/admin/charge-master.service.ts","./libs/api/src/lib/admin/class-type.service.ts","./libs/api/src/lib/admin/payment-mode.service.ts","./libs/api/src/lib/admin/service-category.service.ts","./libs/api/src/lib/admin/subscription.service.ts","./libs/api/src/lib/admin/tax-group.service.ts","./libs/api/src/lib/admin/tax-master.service.ts","./libs/api/src/lib/adminsetting.service.ts","./libs/api/src/lib/am/city.service.ts","./libs/api/src/lib/am/country.service.ts","./libs/api/src/lib/am/state.service.ts","./libs/api/src/lib/api.module.ts","./libs/api/src/lib/app-init/appinit.service.ts","./libs/api/src/lib/auth.service.ts","./libs/api/src/lib/claim.service.ts","./libs/api/src/lib/client/client.service.ts","./libs/api/src/lib/client/invoice/invoice.service.ts","./libs/api/src/lib/client/payment/payment.service.ts","./libs/api/src/lib/common.service.ts","./libs/api/src/lib/crm/opportunity.service.ts","./libs/api/src/lib/crm/task-category.service.ts","./libs/api/src/lib/crm/task.service.ts","./libs/api/src/lib/crm/taskoutcome.service.ts","./libs/api/src/lib/crypto.service.ts","./libs/api/src/lib/intercepter.service.ts","./libs/api/src/lib/ip.service.ts","./libs/api/src/lib/location.service.ts","./libs/api/src/lib/master/appointment-subtype/appointment-subtype.service.ts","./libs/api/src/lib/master/opportunitystage.service.ts","./libs/api/src/lib/master/planmaster.service.ts","./libs/api/src/lib/master/room.service.ts","./libs/api/src/lib/omni-search.service.ts","./libs/api/src/lib/pos/plansubscription.service.ts","./libs/api/src/lib/reports/report-data.service.ts","./libs/api/src/lib/reports/report-filter.service.ts","./libs/api/src/lib/reports/reports.service.ts","./libs/api/src/lib/schedule/appointment/appointment.service.ts","./libs/api/src/lib/schedule/class/class.service.ts","./libs/api/src/lib/schedule/classbooking/class-booking.service.ts","./libs/api/src/lib/serviceType/service-type.service.ts","./libs/api/src/lib/sms/sms.service.ts","./libs/api/src/lib/staff.service.ts","./libs/api/src/lib/subscription-signup-by-uuid.service.ts","./libs/api/src/lib/tenant.service.ts","./libs/api/src/lib/timeconversion.service.ts","./libs/api/src/lib/user.service.ts","./libs/constants/src/index.ts","./libs/constants/src/lib/constants.cities.ts","./libs/constants/src/lib/constants.countries.ts","./libs/constants/src/lib/constants.crm.ts","./libs/constants/src/lib/constants.data.ts","./libs/constants/src/lib/constants.schedule.ts","./libs/constants/src/lib/constants.states.ts","./libs/constants/src/lib/constants.url.ts","./libs/core/src/index.ts","./libs/core/src/lib/core.module.ts","./libs/core/src/lib/footer/footer.component.ts","./libs/core/src/lib/footer/footer.component.html","./libs/core/src/lib/header/header.component.ts","./libs/core/src/lib/header/header.component.html","./libs/core/src/lib/sidebar/sidebar.component.ts","./libs/core/src/lib/sidebar/sidebar.component.html","./libs/enum/src/index.ts","./libs/enum/src/lib/appointment-types.ts","./libs/enum/src/lib/class-types.ts","./libs/enum/src/lib/crm.ts","./libs/enum/src/lib/enum.billing.ts","./libs/enum/src/lib/enum.common.ts","./libs/enum/src/lib/enum.module.ts","./libs/enum/src/lib/httperrorresponsecode.ts","./libs/enum/src/lib/plansubscription.ts","./libs/enum/src/lib/rrule.ts","./libs/enum/src/lib/schedule.ts","./libs/enum/src/lib/tableactionbuttons.ts","./libs/errors/src/index.ts","./libs/errors/src/lib/app.errors.ts","./libs/errors/src/lib/badrequest.errors.ts","./libs/errors/src/lib/error-msg/error-msg.component.ts","./libs/errors/src/lib/error-msg/error-msg.component.html","./libs/errors/src/lib/not-found.error.ts","./libs/errors/src/lib/unauthorized.errors.ts","./libs/models/src/index.ts","./libs/models/src/lib/admin/class-types.ts","./libs/models/src/lib/admin/subscription.ts","./libs/models/src/lib/adminsettings.ts","./libs/models/src/lib/auth.ts","./libs/models/src/lib/billing/billing.ts","./libs/models/src/lib/billing/invoice&payments/invoices.ts","./libs/models/src/lib/billing/invoice&payments/paymentmethods.ts","./libs/models/src/lib/billing/invoice&payments/payments.ts","./libs/models/src/lib/billing/overlapping.ts","./libs/models/src/lib/billing/staffdiscountcalculation.ts","./libs/models/src/lib/city.ts","./libs/models/src/lib/claims.ts","./libs/models/src/lib/clientmandatoryresponse.ts","./libs/models/src/lib/clients.ts","./libs/models/src/lib/clientwaiverpayload.ts","./libs/models/src/lib/company.ts","./libs/models/src/lib/country.ts","./libs/models/src/lib/crm/billingcrm.ts","./libs/models/src/lib/crm/opportunity.ts","./libs/models/src/lib/crm/opportunitystagemasterresponse.ts","./libs/models/src/lib/crm/task.ts","./libs/models/src/lib/crm/taskOutcomedetails.ts","./libs/models/src/lib/crm/taskcategory.ts","./libs/models/src/lib/generic/createresponse.ts","./libs/models/src/lib/getordersummarypaymenttimelineresponse.ts","./libs/models/src/lib/getordersummaryresponse.ts","./libs/models/src/lib/ipsetting.ts","./libs/models/src/lib/language/languages.ts","./libs/models/src/lib/master/payment-master.ts","./libs/models/src/lib/master/plan-master.ts","./libs/models/src/lib/master/room.ts","./libs/models/src/lib/master/tax-master.ts","./libs/models/src/lib/omnisearchrequest.ts","./libs/models/src/lib/paginationfilter.ts","./libs/models/src/lib/paymentmethods.ts","./libs/models/src/lib/prospect.ts","./libs/models/src/lib/reports/reportaccessrequest.ts","./libs/models/src/lib/reports/reportdata.ts","./libs/models/src/lib/reports/reportfilter.ts","./libs/models/src/lib/reports/reports.ts","./libs/models/src/lib/router-serializer.ts","./libs/models/src/lib/rrule.ts","./libs/models/src/lib/schedule/appointment/appointment-subtype.ts","./libs/models/src/lib/schedule/appointment/appointment.ts","./libs/models/src/lib/schedule/appointment/appointmentlistresponse.ts","./libs/models/src/lib/schedule/appointment/appointmenttype.ts","./libs/models/src/lib/schedule/class/class.ts","./libs/models/src/lib/schedule/class/classbooking.ts","./libs/models/src/lib/schedule/class/classlistresponse.ts","./libs/models/src/lib/schedule/class/classtype.ts","./libs/models/src/lib/serviceType.ts","./libs/models/src/lib/signuppaylink.ts","./libs/models/src/lib/staff.ts","./libs/models/src/lib/stage-master.ts","./libs/models/src/lib/state.ts","./libs/models/src/lib/taskCallOutcome.ts","./libs/models/src/lib/tenant.ts","./libs/models/src/lib/user.ts","./libs/models/src/lib/waivermasterreponselist.ts","./libs/shared/src/index.ts","./libs/shared/src/lib/components/admin-form-right-side/admin-form-right-side.component.ts","./libs/shared/src/lib/components/admin-form-right-side/admin-form-right-side.component.html","./libs/shared/src/lib/components/autentication/about-us/about-us.component.ts","./libs/shared/src/lib/components/autentication/about-us/about-us.component.html","./libs/shared/src/lib/components/autentication/carousel/carousel.component.ts","./libs/shared/src/lib/components/autentication/carousel/carousel.component.html","./libs/shared/src/lib/components/autentication/footer/footer.component.ts","./libs/shared/src/lib/components/autentication/footer/footer.component.html","./libs/shared/src/lib/components/auto-appointment-create/auto-appointment-create.component.ts","./libs/shared/src/lib/components/auto-appointment-create/auto-appointment-create.component.html","./libs/shared/src/lib/components/behaviour-view/behaviour-view.component.ts","./libs/shared/src/lib/components/behaviour-view/behaviour-view.component.html","./libs/shared/src/lib/components/billing/billing-summary/billing-summary.component.ts","./libs/shared/src/lib/components/billing/billing-summary/billing-summary.component.html","./libs/shared/src/lib/components/billing/billing/billing.component.ts","./libs/shared/src/lib/components/billing/billing/billing.component.html","./libs/shared/src/lib/components/billing/payment-summary/payment-summary.component.ts","./libs/shared/src/lib/components/billing/payment-summary/payment-summary.component.html","./libs/shared/src/lib/components/breadcrumb/breadcrumb.component.ts","./libs/shared/src/lib/components/breadcrumb/breadcrumb.component.html","./libs/shared/src/lib/components/client-profile/assign-key-fob/assign-key-fob.component.ts","./libs/shared/src/lib/components/client-profile/assign-key-fob/assign-key-fob.component.html","./libs/shared/src/lib/components/client-profile/basic-info-header/basic-info-header.component.ts","./libs/shared/src/lib/components/client-profile/basic-info-header/basic-info-header.component.html","./libs/shared/src/lib/components/client-profile/block-client/block-client.component.ts","./libs/shared/src/lib/components/client-profile/block-client/block-client.component.html","./libs/shared/src/lib/components/client-profile/change-password/change-password.component.ts","./libs/shared/src/lib/components/client-profile/change-password/change-password.component.html","./libs/shared/src/lib/components/client-profile/change-sales-representative/change-sales-representative.component.ts","./libs/shared/src/lib/components/client-profile/change-sales-representative/change-sales-representative.component.html","./libs/shared/src/lib/components/client-profile/create-sms/create-sms.component.ts","./libs/shared/src/lib/components/client-profile/create-sms/create-sms.component.html","./libs/shared/src/lib/components/client-profile/edit-profile/edit-profile.component.ts","./libs/shared/src/lib/components/client-profile/edit-profile/edit-profile.component.html","./libs/shared/src/lib/components/client-profile/invoice-details/invoice-details.component.ts","./libs/shared/src/lib/components/client-profile/invoice-details/invoice-details.component.html","./libs/shared/src/lib/components/client-profile/payment-details/payment-details.component.ts","./libs/shared/src/lib/components/client-profile/payment-details/payment-details.component.html","./libs/shared/src/lib/components/client-profile/send-email/send-email.component.ts","./libs/shared/src/lib/components/client-profile/send-email/send-email.component.html","./libs/shared/src/lib/components/client-profile/subscription-list/subscription-list.component.ts","./libs/shared/src/lib/components/client-profile/subscription-list/subscription-list.component.html","./libs/shared/src/lib/components/confim-category/confirm-category.component.ts","./libs/shared/src/lib/components/confim-category/confirm-category.component.html","./libs/shared/src/lib/components/confirm-page-change/confirm-page-change.component.ts","./libs/shared/src/lib/components/confirm-page-change/confirm-page-change.component.html","./libs/shared/src/lib/components/create-charge-category/create-charge-category.component.ts","./libs/shared/src/lib/components/create-charge-category/create-charge-category.component.html","./libs/shared/src/lib/components/crm/create-opportunity/create-opportunity.component.ts","./libs/shared/src/lib/components/crm/create-opportunity/create-opportunity.component.html","./libs/shared/src/lib/components/crm/lost-deal/lost-deal.component.ts","./libs/shared/src/lib/components/crm/lost-deal/lost-deal.component.html","./libs/shared/src/lib/components/crm/lost-deal/utility/lost-deal-banner/lost-deal-banner.component.ts","./libs/shared/src/lib/components/crm/lost-deal/utility/lost-deal-banner/lost-deal-banner.component.html","./libs/shared/src/lib/components/crm/lost-deal/utility/lost-deal-reason/lost-deal-reason.component.ts","./libs/shared/src/lib/components/crm/lost-deal/utility/lost-deal-reason/lost-deal-reason.component.html","./libs/shared/src/lib/components/crm/out-come/task-opportunity-info/task-opportunity-info.component.ts","./libs/shared/src/lib/components/crm/out-come/task-opportunity-info/task-opportunity-info.component.html","./libs/shared/src/lib/components/crm/priority/priority.component.ts","./libs/shared/src/lib/components/crm/priority/priority.component.html","./libs/shared/src/lib/components/crm/task-category-dropdown/task-category-dropdown.component.ts","./libs/shared/src/lib/components/crm/task-category-dropdown/task-category-dropdown.component.html","./libs/shared/src/lib/components/crm/task-type-dropdown/task-type-dropdown.component.ts","./libs/shared/src/lib/components/crm/task-type-dropdown/task-type-dropdown.component.html","./libs/shared/src/lib/components/data-grid/data-grid.component.ts","./libs/shared/src/lib/components/data-grid/data-grid.component.html","./libs/shared/src/lib/components/data-grid/empty-state/empty-state-container/empty-state-container.component.ts","./libs/shared/src/lib/components/data-grid/empty-state/empty-state-container/empty-state-container.component.html","./libs/shared/src/lib/components/data-grid/empty-state/new-prospect/new-prospect.component.ts","./libs/shared/src/lib/components/data-grid/empty-state/new-prospect/new-prospect.component.html","./libs/shared/src/lib/components/data-grid/empty-state/no-component/no-component.component.ts","./libs/shared/src/lib/components/data-grid/empty-state/no-component/no-component.component.html","./libs/shared/src/lib/components/data-grid/empty-state/no-services/no-services.component.ts","./libs/shared/src/lib/components/data-grid/empty-state/no-services/no-services.component.html","./libs/shared/src/lib/components/data-grid/utility/action-column/action-column.component.ts","./libs/shared/src/lib/components/data-grid/utility/action-column/action-column.component.html","./libs/shared/src/lib/components/data-grid/utility/actions/actions.component.ts","./libs/shared/src/lib/components/data-grid/utility/actions/actions.component.html","./libs/shared/src/lib/components/data-grid/utility/age-cell/age-cell.component.ts","./libs/shared/src/lib/components/data-grid/utility/age-cell/age-cell.component.html","./libs/shared/src/lib/components/data-grid/utility/assign-to-staff/assign-to-staff.component.ts","./libs/shared/src/lib/components/data-grid/utility/assign-to-staff/assign-to-staff.component.html","./libs/shared/src/lib/components/data-grid/utility/client-gender/client-gender.component.ts","./libs/shared/src/lib/components/data-grid/utility/client-gender/client-gender.component.html","./libs/shared/src/lib/components/data-grid/utility/client-info/client-info.component.ts","./libs/shared/src/lib/components/data-grid/utility/client-info/client-info.component.html","./libs/shared/src/lib/components/data-grid/utility/client-regular-status/client-regular-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/client-regular-status/client-regular-status.component.html","./libs/shared/src/lib/components/data-grid/utility/client-representative/client-representative.component.ts","./libs/shared/src/lib/components/data-grid/utility/client-representative/client-representative.component.html","./libs/shared/src/lib/components/data-grid/utility/commitment-view/commitment-view.component.ts","./libs/shared/src/lib/components/data-grid/utility/commitment-view/commitment-view.component.html","./libs/shared/src/lib/components/data-grid/utility/contract-term-view/contract-term-view.component.ts","./libs/shared/src/lib/components/data-grid/utility/contract-term-view/contract-term-view.component.html","./libs/shared/src/lib/components/data-grid/utility/currency/currency.component.ts","./libs/shared/src/lib/components/data-grid/utility/currency/currency.component.html","./libs/shared/src/lib/components/data-grid/utility/date-cell/date-cell.component.ts","./libs/shared/src/lib/components/data-grid/utility/date-cell/date-cell.component.html","./libs/shared/src/lib/components/data-grid/utility/date-formated/date-formated.component.ts","./libs/shared/src/lib/components/data-grid/utility/date-formated/date-formated.component.html","./libs/shared/src/lib/components/data-grid/utility/default-date-time/default-date-time.component.ts","./libs/shared/src/lib/components/data-grid/utility/default-date-time/default-date-time.component.html","./libs/shared/src/lib/components/data-grid/utility/entity-status/entity-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/entity-status/entity-status.component.html","./libs/shared/src/lib/components/data-grid/utility/grid-cell/grid-cell.component.ts","./libs/shared/src/lib/components/data-grid/utility/grid-cell/grid-cell.component.html","./libs/shared/src/lib/components/data-grid/utility/invoice-data/invoice-data.component.ts","./libs/shared/src/lib/components/data-grid/utility/invoice-data/invoice-data.component.html","./libs/shared/src/lib/components/data-grid/utility/invoice-status/invoice-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/invoice-status/invoice-status.component.html","./libs/shared/src/lib/components/data-grid/utility/irregular-age-cell/irregular-age-cell.component.ts","./libs/shared/src/lib/components/data-grid/utility/irregular-age-cell/irregular-age-cell.component.html","./libs/shared/src/lib/components/data-grid/utility/member-crown/member-crown.component.ts","./libs/shared/src/lib/components/data-grid/utility/member-crown/member-crown.component.html","./libs/shared/src/lib/components/data-grid/utility/member-nonmember/member-nonmember.component.ts","./libs/shared/src/lib/components/data-grid/utility/member-nonmember/member-nonmember.component.html","./libs/shared/src/lib/components/data-grid/utility/member-since-large/member-since-large.component.ts","./libs/shared/src/lib/components/data-grid/utility/member-since-large/member-since-large.component.html","./libs/shared/src/lib/components/data-grid/utility/member-since/member-since.component.ts","./libs/shared/src/lib/components/data-grid/utility/member-since/member-since.component.html","./libs/shared/src/lib/components/data-grid/utility/opportunity-status/opportunity-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/opportunity-status/opportunity-status.component.html","./libs/shared/src/lib/components/data-grid/utility/opportunity-type/opportunity-type.component.ts","./libs/shared/src/lib/components/data-grid/utility/opportunity-type/opportunity-type.component.html","./libs/shared/src/lib/components/data-grid/utility/payment-data/payment-data.component.ts","./libs/shared/src/lib/components/data-grid/utility/payment-data/payment-data.component.html","./libs/shared/src/lib/components/data-grid/utility/prospect-info/prospect-info.component.ts","./libs/shared/src/lib/components/data-grid/utility/prospect-info/prospect-info.component.html","./libs/shared/src/lib/components/data-grid/utility/prospect-list-actions/prospect-list-actions.component.ts","./libs/shared/src/lib/components/data-grid/utility/prospect-list-actions/prospect-list-actions.component.html","./libs/shared/src/lib/components/data-grid/utility/subscription-category-display/subscription-category-display.component.ts","./libs/shared/src/lib/components/data-grid/utility/subscription-category-display/subscription-category-display.component.html","./libs/shared/src/lib/components/data-grid/utility/task-type/task-type.component.ts","./libs/shared/src/lib/components/data-grid/utility/task-type/task-type.component.html","./libs/shared/src/lib/components/data-grid/utility/tax-with-status/tax-with-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/tax-with-status/tax-with-status.component.html","./libs/shared/src/lib/components/data-grid/utility/track-status/track-status.component.ts","./libs/shared/src/lib/components/data-grid/utility/track-status/track-status.component.html","./libs/shared/src/lib/components/data-grid/utility/trim-text/trim-text.component.ts","./libs/shared/src/lib/components/data-grid/utility/trim-text/trim-text.component.html","./libs/shared/src/lib/components/data-grid/utility/with-link/with-link.component.ts","./libs/shared/src/lib/components/data-grid/utility/with-link/with-link.component.html","./libs/shared/src/lib/components/data-grid/utility/wrapped-column/wrapped-column.component.ts","./libs/shared/src/lib/components/data-grid/utility/wrapped-column/wrapped-column.component.html","./libs/shared/src/lib/components/digital-signature/digital-signature.component.ts","./libs/shared/src/lib/components/digital-signature/digital-signature.component.html","./libs/shared/src/lib/components/errors/errors.component.ts","./libs/shared/src/lib/components/errors/errors.component.html","./libs/shared/src/lib/components/form-datepicker/form-datepicker.component.ts","./libs/shared/src/lib/components/form-datepicker/form-datepicker.component.html","./libs/shared/src/lib/components/google-places/google-places.component.ts","./libs/shared/src/lib/components/google-places/google-places.component.html","./libs/shared/src/lib/components/helpsupport/helpsupport.component.ts","./libs/shared/src/lib/components/helpsupport/helpsupport.component.html","./libs/shared/src/lib/components/hotwarmcold/hotwarmcold.component.ts","./libs/shared/src/lib/components/hotwarmcold/hotwarmcold.component.html","./libs/shared/src/lib/components/image-crop-dialog/image-crop-dialog.component.ts","./libs/shared/src/lib/components/image-crop-dialog/image-crop-dialog.component.html","./libs/shared/src/lib/components/langdropdown/langdropdown.component.ts","./libs/shared/src/lib/components/langdropdown/langdropdown.component.html","./libs/shared/src/lib/components/membership-behaviour/membership-behaviour.component.ts","./libs/shared/src/lib/components/membership-behaviour/membership-behaviour.component.html","./libs/shared/src/lib/components/omnisearch/create-prospect/create-prospect.component.ts","./libs/shared/src/lib/components/omnisearch/create-prospect/create-prospect.component.html","./libs/shared/src/lib/components/out-come/call-outcome/call-outcome.component.ts","./libs/shared/src/lib/components/out-come/call-outcome/call-outcome.component.html","./libs/shared/src/lib/components/out-come/tour-outcome/tour-outcome.component.ts","./libs/shared/src/lib/components/out-come/tour-outcome/tour-outcome.component.html","./libs/shared/src/lib/components/paymentgateway/payengine/payengine.component.ts","./libs/shared/src/lib/components/paymentgateway/payengine/payengine.component.html","./libs/shared/src/lib/components/paymentgateway/razorpay/razorpay.component.ts","./libs/shared/src/lib/components/plan-service-modal/plan-service-modal.component.ts","./libs/shared/src/lib/components/plan-service-modal/plan-service-modal.component.html","./libs/shared/src/lib/components/report/dynamic-form/dynamic-form.component.ts","./libs/shared/src/lib/components/report/dynamic-form/dynamic-form.component.html","./libs/shared/src/lib/components/report/table-action-buttons/table-action-buttons.component.ts","./libs/shared/src/lib/components/report/table-action-buttons/table-action-buttons.component.html","./libs/shared/src/lib/components/rrule/rrule.component.ts","./libs/shared/src/lib/components/rrule/rrule.component.html","./libs/shared/src/lib/components/schedule/appointment/book-appointment/book-appointment.component.ts","./libs/shared/src/lib/components/schedule/appointment/book-appointment/book-appointment.component.html","./libs/shared/src/lib/components/schedule/class/create-class/create-class.component.ts","./libs/shared/src/lib/components/schedule/class/create-class/create-class.component.html","./libs/shared/src/lib/components/search/mini-search/mini-search.component.ts","./libs/shared/src/lib/components/search/mini-search/mini-search.component.html","./libs/shared/src/lib/components/service-category-create/service-category-create.component.ts","./libs/shared/src/lib/components/service-category-create/service-category-create.component.html","./libs/shared/src/lib/components/service-category/service-category.component.ts","./libs/shared/src/lib/components/service-category/service-category.component.html","./libs/shared/src/lib/components/staff/assigned-to/assigned-to.component.ts","./libs/shared/src/lib/components/staff/assigned-to/assigned-to.component.html","./libs/shared/src/lib/components/staff/change-password/staff-change-password.component.ts","./libs/shared/src/lib/components/staff/change-password/staff-change-password.component.html","./libs/shared/src/lib/components/staff/change-reporting-manager/change-reporting-manager.component.ts","./libs/shared/src/lib/components/staff/change-reporting-manager/change-reporting-manager.component.html","./libs/shared/src/lib/components/staff/change-tenant-access/change-tenant-access.component.ts","./libs/shared/src/lib/components/staff/change-tenant-access/change-tenant-access.component.html","./libs/shared/src/lib/components/staff/multi-select-staff/multi-select-staff.component.ts","./libs/shared/src/lib/components/staff/multi-select-staff/multi-select-staff.component.html","./libs/shared/src/lib/components/staff/staff-info/staff-info.component.ts","./libs/shared/src/lib/components/staff/staff-info/staff-info.component.html","./libs/shared/src/lib/components/task/inplace-category-edit/inplace-category-edit.component.ts","./libs/shared/src/lib/components/task/inplace-category-edit/inplace-category-edit.component.html","./libs/shared/src/lib/components/task/task-create/task-create.component.ts","./libs/shared/src/lib/components/task/task-create/task-create.component.html","./libs/shared/src/lib/components/tax-category-modal/tax-category-modal.component.ts","./libs/shared/src/lib/components/tax-category-modal/tax-category-modal.component.html","./libs/shared/src/lib/components/tax-group-create/tax-group-create.component.ts","./libs/shared/src/lib/components/tax-group-create/tax-group-create.component.html","./libs/shared/src/lib/components/toast/toast.component.ts","./libs/shared/src/lib/components/toast/toast.component.html","./libs/shared/src/lib/directives/scroll-spy.directive.ts","./libs/shared/src/lib/filters/age.pipe.ts","./libs/shared/src/lib/filters/bday.pipe.ts","./libs/shared/src/lib/filters/common.filter.pipe.ts","./libs/shared/src/lib/filters/currencyformat.pipe.ts","./libs/shared/src/lib/filters/datetimeformat.pipe.ts","./libs/shared/src/lib/filters/dayago.pipe.ts","./libs/shared/src/lib/filters/name-initials.pipe.ts","./libs/shared/src/lib/filters/searchtenant.pipe.ts","./libs/shared/src/lib/filters/text-transform.pipe.ts","./libs/shared/src/lib/filters/timeline.pipe.ts","./libs/shared/src/lib/resolve/tenant-resolver.service.ts","./libs/shared/src/lib/router-guard/authguard.service.ts","./libs/shared/src/lib/router-guard/can-deactivate.ts/can-deactivate.guard.ts","./libs/shared/src/lib/router-guard/can-deactivate.ts/component-can-deactivate.ts","./libs/shared/src/lib/router-guard/can-deactivate.ts/form-can-deactivate.ts","./libs/shared/src/lib/router-guard/claimsguard.service.ts","./libs/shared/src/lib/router-guard/domainguard.service.ts","./libs/shared/src/lib/validators/confitmationText.validator.ts","./libs/shared/src/lib/validators/custome-date-validators.ts","./libs/shared/src/lib/validators/decimal.validator.ts","./libs/shared/src/lib/validators/ipAddress.validator.ts","./libs/shared/src/lib/validators/minimumLowercaseCheck.validator.ts","./libs/shared/src/lib/validators/minimumUppercaseCheck.validator.ts","./libs/shared/src/lib/validators/minimunNumericCharCheck.validator.ts","./libs/shared/src/lib/validators/passwordMismatch.validator.ts","./libs/shared/src/lib/validators/specialCharacter.validator.ts","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\crypto-js|crypto","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|canvas","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|fs","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|http","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|https","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|url","ignored|D:\\Work\\Git\\Dev\\ff-nxt-frontend\\node_modules\\pdfjs-dist\\build|zlib"],"sourcesContent":["import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_APPOINTMENT_TYPE_LIST = createAction(\r\n 'FETCHAPPOINTMENTTYPELIST',\r\n props<{ appointmentTypes: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_CITY_MASTER_LIST = createAction(\r\n 'FETCHCITYMASTERLIST',\r\n props<{cities:any}>()\r\n);\r\n\r\nexport const FETCH_CITY_MASTER = createAction(\r\n 'FETCHCITYMASTER',\r\n props<{city:any}>()\r\n);","import { CLAIMSSTATEINTERFACE } from '@fitness-force/models';\r\nimport { createAction, props } from '@ngrx/store';\r\n\r\nexport const SET_CLAIMS_DETAILS = createAction(\r\n 'SETCLAIMSDETAILS',\r\n props<{ claims: CLAIMSSTATEINTERFACE }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_CLASS_TYPE_LIST = createAction(\r\n 'FETCHCLASSTYPELIST',\r\n props<{ classTypes: any }>()\r\n);","import { Action, createAction } from \"@ngrx/store\";\r\n\r\nexport class ActionTypes {\r\n static LOGOUT = \"[App] logout\";\r\n}\r\n\r\nexport class Logout implements Action {\r\n readonly type = ActionTypes.LOGOUT;\r\n}","import { createAction, props } from '@ngrx/store';\r\n\r\n\r\n/* COMPANY DETAILS*/\r\nexport const FETCHED_COMPANY_DETAILS = createAction(\r\n 'FETCHEDCOMPANYDETAILS',\r\n props<{ companyDetails: any }>()\r\n);\r\nexport const ERROR_COMPANY_DETAILS = createAction(\r\n 'ERRORCOMPANYDETAILS',\r\n props<{ err: any }>()\r\n);\r\n\r\n\r\n/*LANGUAGE*/\r\nexport const SELECT_LANGUAGE = createAction(\r\n 'SELECTLANGUAGE',\r\n props<{ lang: any }>()\r\n);\r\nexport const DIRECTION_DETAILS = createAction(\r\n 'DIRECTIONDETAILS',\r\n props<{ dir: any }>()\r\n);\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_COUNTRY_MASTER_LIST = createAction(\r\n 'FETCHCOUNTRYMASTERLIST',\r\n props<{ countries: any }>()\r\n);\r\n\r\nexport const FETCH_COUNTRY_MASTER = createAction(\r\n 'FETCHCOUNTRYMASTER',\r\n props<{ country: any }>()\r\n);","\r\nexport * from './company.action';\r\nexport * from './staff.action';\r\nexport * from './tenant.action';\r\nexport * from './claim.action';\r\nexport * from './router.action';\r\nexport * from './reports.action';\r\nexport * from './stage-board.action';\r\nexport * from './country.action';\r\nexport * from './appointmenttype.action';\r\nexport * from './classtype.action';\r\nexport * from './state.action';\r\nexport * from './city.action';\r\nexport * from './servicetype.action';\r\nexport * from './room.action';\r\nexport * from './location.action';\r\nexport * from './clearstate.action';\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_CURRENT_LOCATION = createAction(\r\n 'FETCHCURRENTLOCATION',\r\n props<{ location: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_REPORT_LIST = createAction(\r\n 'FETCHREPORTSLIST',\r\n props<{ reportList: any }>()\r\n);\r\n\r\nexport const FETCHEDREPORTDETAILS = createAction(\r\n 'FETCHEDREPORT',\r\n props<{ report: any }>()\r\n);\r\n\r\nexport const ERRORREPORTLIST = createAction(\r\n 'ERROR_REPORT_LIST',\r\n props<{ error: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_ROOM_LIST = createAction(\r\n 'FETCHROOMLIST',\r\n props<{ rooms: any }>()\r\n);","import { NavigationExtras } from '@angular/router';\r\nimport { createAction, props } from '@ngrx/store';\r\n\r\nexport const ROUTER_NEXT = createAction(\r\n 'ROUTERNEXT', props<{ payload: { path: any[]; query?: object; extras?: NavigationExtras } }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_SERVICETYPE_LIST = createAction(\r\n 'FETCHSERVICETYPELIST',\r\n props<{ serviceTypeList: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_STAFF_LIST = createAction(\r\n 'FETCHSTAFFLIST',\r\n props<{ staffList: any }>()\r\n);\r\n\r\nexport const FETCH_STAFF_LIST_ALL = createAction(\r\n 'FETCHSTAFFLISTALL',\r\n props<{ staffListAll: any }>()\r\n);\r\n\r\nexport const FETCHEDSTAFFDETAILS = createAction(\r\n 'FETCHEDSTAFFDETAILS',\r\n props<{ staffDetails: any }>()\r\n);\r\n\r\nexport const ERRORSTAFFLIST = createAction(\r\n 'ERROR_STAFF_LIST',\r\n props<{ error: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_STAGE_MASTER = createAction(\r\n 'FETCHSTAGEMASTER',\r\n props<{ stages: any }>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_STATE_MASTER_LIST = createAction(\r\n 'FETCHSTATEMASTERLIST',\r\n props<{states:any}>()\r\n);\r\n\r\nexport const FETCH_STATE_MASTER = createAction(\r\n 'FETCHSTATEMASTER',\r\n props<{state:any}>()\r\n);","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCHED_TENANT_LIST = createAction(\r\n 'FETCHEDTENANTLIST',\r\n props<{ accessed_tenant: any }>()\r\n);\r\n\r\nexport const FETCHED_TENANT_DETAILS = createAction(\r\n 'FETCHEDTENANTDETAILS',\r\n props<{ selected_tenant: any }>()\r\n);\r\n\r\nexport const ERROR_TENANT_LIST = createAction(\r\n 'ERRORTENANTLIST',\r\n props<{ err: Error }>()\r\n);","import { RouterReducerState } from '@ngrx/router-store';\r\nimport { ROUTER_SERIALIZER_INTERFACE } from './../../../../../libs/models/src/lib/router-serializer';\r\n\r\nimport { CLAIMSSTATEINTERFACE, CompanyInfoStoreInterface, ReportListResponse,\r\n STATE_STAFF_LIST, STAGE_MASTER_RESPONSE_MODEL, TENANTSINTERFACE, Countries, Country, States, Cities, ListServiceTypeResponse, AppointmentTypeStore, ClassTypeStore, RoomStore, LocationStore } from \"@fitness-force/models\";\r\nimport { createFeatureSelector, createSelector } from \"@ngrx/store\";\r\n\r\n// Extended by lazy loaded modules\r\n\r\nconst getCompanyFeatureState = createFeatureSelector('company');\r\nexport const COMPANY_INFO = createSelector(\r\n getCompanyFeatureState,\r\n state => state\r\n);\r\n\r\nconst getClaimsState = createFeatureSelector('claims');\r\nexport const CLAIMS_INFO = createSelector(\r\n getClaimsState,\r\n state => state.claims\r\n);\r\n\r\nconst getTenantsState = createFeatureSelector('tenants');\r\nexport const TENANTS_INFO = createSelector(\r\n getTenantsState,\r\n state => state\r\n);\r\n\r\n// export const SELECTED_TENENT = createSelector(\r\n// getTenantsState,\r\n// state => state\r\n// );\r\n\r\nconst getRouterState = createFeatureSelector>('router');\r\nexport const ROUTER_STATE = createSelector(\r\n getRouterState,\r\n router => router.state\r\n);\r\n\r\nconst getStaffState = createFeatureSelector('staff');\r\nexport const STAFF_STATE = createSelector(\r\n getStaffState,\r\n state => state\r\n);\r\n\r\nconst getReportState = createFeatureSelector('report');\r\nexport const REPORT_STATE = createSelector(\r\n getReportState,\r\n state => state\r\n);\r\n\r\nconst getStageMasterState = createFeatureSelector('stages');\r\nexport const STAGE_MASTER_STATE = createSelector(\r\n getStageMasterState,\r\n state => state.stages\r\n);\r\n\r\nconst getCountryMasterListState = createFeatureSelector('countries');\r\nexport const COUNTRY_MASTER_STATE_LIST = createSelector(\r\n getCountryMasterListState,\r\n state => state.countries\r\n);\r\n\r\nconst getCountryState = createFeatureSelector('countries');\r\nexport const COUNTRY_MASTER_STATE = createSelector(\r\n getCountryState,\r\n state => state.country\r\n);\r\n\r\n\r\nconst getAppointmentTypeState = createFeatureSelector('appointmentTypes');\r\nexport const APPOINTMENT_TYPE_STATE = createSelector(\r\n getAppointmentTypeState,\r\n state => state.appointmentTypes\r\n);\r\n\r\nconst getClassTypeState = createFeatureSelector('classTypes');\r\nexport const CLASS_TYPE_STATE = createSelector(\r\n getClassTypeState,\r\n state => state.classTypes\r\n);\r\n\r\n\r\n\r\nconst getStateMasterListState = createFeatureSelector('states');\r\nexport const STATE_MASTER_STATE_LIST = createSelector(\r\n getStateMasterListState,\r\n state => state.states\r\n);\r\n\r\nconst getState_State = createFeatureSelector('states');\r\nexport const STATE_MASTER_STATE = createSelector(\r\n getState_State,\r\n state => state.state\r\n);\r\n\r\n\r\nconst getCityMasterListState = createFeatureSelector('cities');\r\nexport const CITY_MASTER_STATE_LIST = createSelector(\r\n getCityMasterListState,\r\n state => state.cities\r\n);\r\n\r\nconst getCityState = createFeatureSelector('cities');\r\nexport const CITY_MASTER_STATE = createSelector(\r\n getCityState,\r\n state => state.city\r\n);\r\n\r\nconst getServiceTypeListState = createFeatureSelector('serviceTypeList');\r\nexport const SERVICETYPE_LIST_STATE = createSelector(\r\n getServiceTypeListState,\r\n state => state.items\r\n);\r\n\r\nconst getRoomListState = createFeatureSelector('rooms');\r\nexport const ROOM_LIST_STATE = createSelector(\r\n getRoomListState,\r\n state => state.rooms\r\n);\r\n\r\nconst getLocationState = createFeatureSelector('location');\r\nexport const LOCATION_STATE = createSelector(\r\n getLocationState,\r\n state => state.location\r\n);","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n APP_URL: 'https://ff-nxt-api.dev.fitnessforce.com',\r\n BASE_URL: 'https://ff-nxt-api.dev.fitnessforce.com',\r\n // BASE_URL: 'https://ffv4staging.fitnessforce.com',\r\n domain_suffix: 'fitnessforcenxt.com',\r\n Ip_Api_URL: \"https://pro.ip-api.com/json/?key=MAkQGoxG3ZmGnth\",\r\n googleGTM:\"GTM-WQZTW6V\", // Only for testing ...\r\n hj:\"3014151\",//Hotjar Tracking Code (Site ID)\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { PageNotFoundComponent } from './features/page-not-found/page-not-found.component';\r\n\r\nconst appRoutes: Routes = [\r\n {\r\n path: '',\r\n component: PageNotFoundComponent\r\n },\r\n {\r\n path: ':uuid', loadChildren: () => import('./features/client-payment/client-payment.module').then(c => c.ClientPaymentModule)\r\n },\r\n {\r\n path: '**',\r\n component: PageNotFoundComponent\r\n }\r\n];\r\n\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(appRoutes)\r\n\r\n ],\r\n exports: [RouterModule]\r\n})\r\n\r\nexport class AppRoutingModule {\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CompanyInfoStoreInterface } from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport { Subscription } from 'rxjs';\r\nimport { FETCHED_COMPANY_DETAILS } from './state/actions/company.action';\r\nimport { COMPANY_INFO } from './state/app.state';\r\n\r\n@Component({\r\n selector: 'fitness-force-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'ff-paylink';\r\n subscription!: Subscription;\r\n\r\n constructor(\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n\r\n componentInit() {\r\n //this.store.dispatch({ type: 'FETCHED_SUBSCRIPTION_PAYLOAD', uuid: '14ba1afe-1d7c-4c34-9d28-39d4fc807012' });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe()\r\n }\r\n}\r\n","","import { ReactiveFormsModule } from '@angular/forms';\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HttpClient, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { AppComponent } from './app.component';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { CompanyEffects } from './state/effect';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { environment } from '../environments/environment';\r\nimport { cityListReducer, companyReducer, countryListReducer, SignUpPaylinkReducer, stateListReducer, subscriptionPayloadReducer, tenantReducer } from './state/app.reducer';\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [AppComponent],\r\n imports: [\r\n ReactiveFormsModule,\r\n StoreDevtoolsModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n CommonModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n StoreModule.forRoot({\r\n company: companyReducer,\r\n tenants: tenantReducer,\r\n subscriptionpayload: subscriptionPayloadReducer,\r\n countries: countryListReducer,\r\n states: stateListReducer,\r\n cities: cityListReducer,\r\n signuppaylinksteps: SignUpPaylinkReducer,\r\n }, {\r\n metaReducers: !environment.production ? [] : [],\r\n runtimeChecks: {\r\n strictStateImmutability: true,\r\n strictActionImmutability: true,\r\n strictStateSerializability: true,\r\n strictActionSerializability: true,\r\n strictActionWithinNgZone: true,\r\n strictActionTypeUniqueness: true,\r\n },\r\n }),\r\n EffectsModule.forRoot([CompanyEffects]),\r\n ],\r\n providers: [DatePipe],\r\n bootstrap: [AppComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class AppModule { }\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO, SIGNUPSTEP_INFO } from '../../state/app.state';\r\nimport { CompanyInfoStoreInterface, PayLinkStepOption } from '@fitness-force/models';\r\nimport { map, Observable } from 'rxjs';\r\nimport { PayLinkSteps } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'ff-paylink-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input() showTimeline: boolean = true;\r\n @Input('currentStep') payLinkSteps: PayLinkSteps = PayLinkSteps.Details;\r\n companyDetails$: Observable = new Observable();\r\n constructor(\r\n public store: Store,\r\n ) {\r\n this.componentInit();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n componentInit(): void {\r\n this.companyDetails$ = this.store.select(COMPANY_INFO);\r\n }\r\n\r\n get paylinkSignUpSteps$(): Observable {\r\n return this.store.select(SIGNUPSTEP_INFO).pipe(\r\n map((obj: any) => {\r\n console.log(obj);\r\n let steps: PayLinkStepOption[] = obj.steps;\r\n return steps.map((o: any) => this.getTitleNode(o));\r\n })\r\n );\r\n }\r\n\r\n getTitleNode(x: PayLinkStepOption): any {\r\n if (x.name == PayLinkSteps.Details || x.name.toString() == PayLinkSteps[PayLinkSteps.Details]) {\r\n let isCurrentPage: boolean = (this.payLinkSteps == PayLinkSteps.Details || this.payLinkSteps.toString() == PayLinkSteps[PayLinkSteps.Details]);\r\n return {\r\n title: PayLinkSteps[PayLinkSteps.Details], status: x.isProcessed || isCurrentPage, isCurrentPage: isCurrentPage\r\n };\r\n }\r\n else if (x.name == PayLinkSteps.Waiver || x.name.toString() == PayLinkSteps[PayLinkSteps.Waiver]) {\r\n let isCurrentPage: boolean = (this.payLinkSteps == PayLinkSteps.Waiver || this.payLinkSteps.toString() == PayLinkSteps[PayLinkSteps.Waiver]);\r\n return {\r\n title: PayLinkSteps[PayLinkSteps.Waiver], status: x.isProcessed || isCurrentPage, isCurrentPage: isCurrentPage\r\n };\r\n }\r\n else if (x.name == PayLinkSteps.Information || x.name.toString() == PayLinkSteps[PayLinkSteps.Information]) {\r\n let isCurrentPage: boolean = (this.payLinkSteps == PayLinkSteps.Information || this.payLinkSteps.toString() == PayLinkSteps[PayLinkSteps.Information]);\r\n return {\r\n title: PayLinkSteps[PayLinkSteps.Information], status: x.isProcessed || isCurrentPage, isCurrentPage: isCurrentPage\r\n };\r\n }\r\n else if (x.name == PayLinkSteps.Payment || (x.name as PayLinkSteps).toString() == PayLinkSteps[PayLinkSteps.Payment]) {\r\n let isCurrentPage: boolean = (this.payLinkSteps == PayLinkSteps.Payment || this.payLinkSteps.toString() == PayLinkSteps[PayLinkSteps.Payment]);\r\n return {\r\n title: PayLinkSteps[PayLinkSteps.Payment], status: x.isProcessed || isCurrentPage, isCurrentPage: isCurrentPage\r\n };\r\n }\r\n else {\r\n console.log('wrong step encountered', x);\r\n alert('wrong step encountered');\r\n return {};\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [HeaderComponent],\r\n imports: [\r\n CommonModule,\r\n TimelineModule\r\n ],\r\n exports: [HeaderComponent]\r\n})\r\nexport class HeaderComponentModule {\r\n}\r\n","\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{progress.title}}\r\n {{progress.title}}\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { HeaderComponentModule } from '../header/header.component';\r\n\r\n@Component({\r\n selector: 'fitness-force-page-not-found',\r\n templateUrl: './page-not-found.component.html',\r\n styleUrls: ['./page-not-found.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class PageNotFoundComponent implements OnInit {\r\n errCode: string = '';\r\n constructor(\r\n private route: ActivatedRoute,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n\r\n componentInit(): void {\r\n this.route.params.subscribe(params => {\r\n if (params[\"errcode\"]) {\r\n this.errCode = params[\"errcode\"];\r\n }\r\n });\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [PageNotFoundComponent],\r\n imports: [\r\n CommonModule,\r\n HeaderComponentModule,\r\n ],\r\n exports: [PageNotFoundComponent]\r\n})\r\nexport class PageNotFoundComponentModule {\r\n}\r\n","\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n

Oops!

\r\n
\r\n \"Link\r\n
\r\n\r\n
\r\n

Sorry! This link is expired.

\r\n

Please try again!

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

Oops!

\r\n
\r\n \"Link\r\n
\r\n\r\n
\r\n

Sorry! This link is expired.

\r\n

Please try again!

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

\"Awaiting

\r\n
\r\n \"Bank\r\n
\r\n\r\n
\r\n

We are awaiting payment from the bank.

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \"Yay!\"\r\n
\r\n \"Image\"\r\n
\r\n\r\n
\r\n

Your subscription has already been created!

\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

\"Oops\"

\r\n
\r\n \"Link\r\n
\r\n\r\n
\r\n

Your subscription details cannot not found!

\r\n

Please try again!

\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_CITY_MASTER_LIST = createAction(\r\n 'P_FETCHCITYMASTERLIST',\r\n props<{ cities: any }>()\r\n);\r\n\r\nexport const FETCH_CITY_MASTER = createAction(\r\n 'P_FETCHCITYMASTER',\r\n props<{ city: any }>()\r\n);","import { createAction, props } from '@ngrx/store';\r\n\r\n\r\n/* COMPANY DETAILS*/\r\nexport const FETCHED_COMPANY_DETAILS = createAction(\r\n 'P_FETCHEDCOMPANYDETAILS',\r\n props<{ companyDetails: any }>()\r\n);\r\n\r\nexport const ERROR_COMPANY_DETAILS = createAction(\r\n 'P_ERRORCOMPANYDETAILS',\r\n props<{ err: any }>()\r\n);\r\n\r\nexport const SELECT_LANGUAGE = createAction(\r\n 'P_SELECTLANGUAGE',\r\n props<{ lang: any }>()\r\n);\r\n\r\nexport const DIRECTION_DETAILS = createAction(\r\n 'P_DIRECTIONDETAILS',\r\n props<{ dir: any }>()\r\n);\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_COUNTRY_MASTER_LIST = createAction(\r\n 'P_FETCHCOUNTRYMASTERLIST',\r\n props<{ countries: any }>()\r\n);\r\n\r\nexport const FETCH_COUNTRY_MASTER = createAction(\r\n 'P_FETCHCOUNTRYMASTER',\r\n props<{ country: any }>()\r\n);","import { PayLinkSteps } from '@fitness-force/enum';\r\nimport { PayLinkStepOption, PayLinkStepOptionPayload } from '@fitness-force/models';\r\nimport { createAction, props } from '@ngrx/store';\r\n\r\n\r\n/* COMPANY DETAILS*/\r\nexport const FETCHED_SIGNUPSTEP_INFO = createAction(\r\n 'FETCHEDSIGNUPSTEPINFO',\r\n props<{ steps: PayLinkStepOption[] }>()\r\n);\r\n\r\nexport const SIGNUPSTEP_INFO = createAction(\r\n 'SIGNUPSTEPINFO',\r\n props<{ steps: PayLinkStepOption[] }>()\r\n);\r\n\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCH_STATE_MASTER_LIST = createAction(\r\n 'P_FETCHSTATEMASTERLIST',\r\n props<{ states: any }>()\r\n);\r\n\r\nexport const FETCH_STATE_MASTER = createAction(\r\n 'P_FETCHSTATEMASTER',\r\n props<{ state: any }>()\r\n);","import { SubscriptionSignUpOrderSummaryResponse } from '@fitness-force/models';\r\nimport { createAction, props } from '@ngrx/store';\r\n\r\n\r\n/* COMPANY DETAILS*/\r\nexport const FETCHED_SUBSCRIPTION_PAYLOAD = createAction(\r\n 'FETCHEDSUBSCRIPTIONPAYLOAD',\r\n props<{ orderSummary: SubscriptionSignUpOrderSummaryResponse }>()\r\n);\r\n\r\nexport const ERROR_SUBSCRIPTION_PAYLOAD = createAction(\r\n 'ERRORSUBSCRIPTIONPAYLOAD',\r\n props<{ err: any }>()\r\n);\r\n\r\n","import { createAction, props } from \"@ngrx/store\";\r\n\r\nexport const FETCHED_TENANT_LIST = createAction(\r\n 'P_FETCHEDTENANTLIST',\r\n props<{ accessed_tenant: any }>()\r\n);\r\n\r\nexport const FETCHED_TENANT_DETAILS = createAction(\r\n 'P_FETCHEDTENANTDETAILS',\r\n props<{ selected_tenant: any }>()\r\n);\r\n\r\nexport const ERROR_TENANT_LIST = createAction(\r\n 'P_ERRORTENANTLIST',\r\n props<{ err: any }>()\r\n);","import { CompanyInfoStoreInterface, PayLinkStepOption, PayLinkStepOptionPayload, SubscriptionPayload, SubscriptionSignUpOrderSummaryResponse, TENANTSINTERFACE } from \"@fitness-force/models\";\r\nimport { createReducer, on } from \"@ngrx/store\";\r\nimport { FETCH_CITY_MASTER, FETCH_CITY_MASTER_LIST } from \"./actions/city.action\";\r\nimport { DIRECTION_DETAILS, ERROR_COMPANY_DETAILS, FETCHED_COMPANY_DETAILS, SELECT_LANGUAGE } from \"./actions/company.action\";\r\nimport { FETCH_COUNTRY_MASTER, FETCH_COUNTRY_MASTER_LIST } from \"./actions/country.action\";\r\nimport { FETCHED_SIGNUPSTEP_INFO } from \"./actions/signupsteps\";\r\nimport { FETCH_STATE_MASTER, FETCH_STATE_MASTER_LIST } from \"./actions/state.action\";\r\nimport { ERROR_SUBSCRIPTION_PAYLOAD, FETCHED_SUBSCRIPTION_PAYLOAD } from \"./actions/subscription-payload\";\r\nimport { FETCHED_TENANT_DETAILS, FETCHED_TENANT_LIST } from \"./actions/tenant.action\";\r\nimport { CITY_MASTER_STATE } from \"./store/city-master.store\";\r\nimport { INITIAL_COMPANY_STATE } from \"./store/company.store\";\r\nimport { COUNTRY_MASTER_STATE } from \"./store/country-master.store\";\r\nimport { SUBSCRIPTION_PAYLOAD_STATE } from \"./store/order-summary\";\r\nimport { SIGNUP_STEPS_STATE } from \"./store/signupsteps.store\";\r\nimport { STATE_MASTER_STATE } from \"./store/state-master.store\";\r\nimport { TENANT_STATE } from \"./store/tenant.store\";\r\n\r\nexport const subscriptionPayloadReducer = createReducer(SUBSCRIPTION_PAYLOAD_STATE,\r\n on(FETCHED_SUBSCRIPTION_PAYLOAD, (state, action): SubscriptionPayload => {\r\n return {\r\n ...state,\r\n orderSummary: action.orderSummary\r\n };\r\n }),\r\n on(ERROR_SUBSCRIPTION_PAYLOAD, (state, action): SubscriptionPayload => {\r\n return {\r\n ...state,\r\n err: action.err\r\n };\r\n })\r\n);\r\n\r\nexport const SignUpPaylinkReducer = createReducer(SIGNUP_STEPS_STATE,\r\n on(FETCHED_SIGNUPSTEP_INFO, (state, action): PayLinkStepOptionPayload => {\r\n return {\r\n ...state,\r\n steps: action.steps\r\n };\r\n })\r\n);\r\n\r\nexport const companyReducer = createReducer(INITIAL_COMPANY_STATE,\r\n on(FETCHED_COMPANY_DETAILS, (state, action): CompanyInfoStoreInterface => {\r\n return {\r\n ...state,\r\n compDetails: action.companyDetails\r\n };\r\n }),\r\n on(ERROR_COMPANY_DETAILS, (state, action): CompanyInfoStoreInterface => {\r\n return {\r\n ...state,\r\n err: action.err\r\n };\r\n }),\r\n on(SELECT_LANGUAGE, (state, action): CompanyInfoStoreInterface => {\r\n return {\r\n ...state,\r\n selectedLang: action.lang\r\n };\r\n }),\r\n on(DIRECTION_DETAILS, (state, action): CompanyInfoStoreInterface => {\r\n return {\r\n ...state,\r\n direction: action.dir\r\n };\r\n }),\r\n)\r\n\r\nexport const tenantReducer = createReducer(TENANT_STATE,\r\n on(FETCHED_TENANT_LIST, (state, action): TENANTSINTERFACE => {\r\n return {\r\n ...state,\r\n accessed_tenant: action.accessed_tenant\r\n };\r\n }),\r\n on(FETCHED_TENANT_DETAILS, (state, action): TENANTSINTERFACE => {\r\n return {\r\n ...state,\r\n selected_tenant: action.selected_tenant\r\n };\r\n })\r\n)\r\n\r\nexport const countryListReducer = createReducer(COUNTRY_MASTER_STATE,\r\n on(FETCH_COUNTRY_MASTER_LIST, (state, action): any => {\r\n return {\r\n ...state,\r\n countries: action.countries\r\n };\r\n }),\r\n on(FETCH_COUNTRY_MASTER, (state, action): any => {\r\n return {\r\n ...state,\r\n country: action.country\r\n };\r\n })\r\n)\r\n\r\nexport const stateListReducer = createReducer(STATE_MASTER_STATE,\r\n on(FETCH_STATE_MASTER_LIST, (state, action): any => {\r\n return {\r\n ...state,\r\n states: action.states\r\n };\r\n }),\r\n on(FETCH_STATE_MASTER, (state, action): any => {\r\n return {\r\n ...state,\r\n state: action.state\r\n };\r\n })\r\n)\r\n\r\nexport const cityListReducer = createReducer(CITY_MASTER_STATE,\r\n on(FETCH_CITY_MASTER_LIST, (state, action): any => {\r\n return {\r\n ...state,\r\n cities: action.cities\r\n };\r\n }),\r\n on(FETCH_CITY_MASTER, (state, action): any => {\r\n return {\r\n ...state,\r\n city: action.city\r\n };\r\n })\r\n);","import { Cities, CompanyInfoStoreInterface, Countries, PayLinkStepOption, PayLinkStepOptionPayload, States, SubscriptionPayload, SubscriptionSignUpOrderSummaryResponse, TENANTSINTERFACE } from \"@fitness-force/models\";\r\nimport { createFeatureSelector, createSelector } from \"@ngrx/store\";\r\n\r\nconst getSubscriptionPayloadState = createFeatureSelector('subscriptionpayload');\r\nexport const SUBSCRIPTION_PAYLOAD = createSelector(\r\n getSubscriptionPayloadState,\r\n state => state\r\n);\r\n\r\nconst getSignUpPaylinkState = createFeatureSelector('signuppaylinksteps');\r\nexport const SIGNUPSTEP_INFO = createSelector(\r\n getSignUpPaylinkState,\r\n state => state\r\n);\r\n\r\nconst getCompanyFeatureState = createFeatureSelector('company');\r\nexport const COMPANY_INFO = createSelector(\r\n getCompanyFeatureState,\r\n state => state\r\n);\r\n\r\nconst getTenantsState = createFeatureSelector('tenants');\r\nexport const TENANTS_INFO = createSelector(\r\n getTenantsState,\r\n state => state\r\n);\r\n\r\nconst getCountryMasterListState = createFeatureSelector('countries');\r\nexport const COUNTRY_MASTER_STATE_LIST = createSelector(\r\n getCountryMasterListState,\r\n state => state.countries\r\n);\r\n\r\nconst getCountryState = createFeatureSelector('countries');\r\nexport const COUNTRY_MASTER_STATE = createSelector(\r\n getCountryState,\r\n state => state.country\r\n);\r\n\r\nconst getStateMasterListState = createFeatureSelector('states');\r\nexport const STATE_MASTER_STATE_LIST = createSelector(\r\n getStateMasterListState,\r\n state => state.states\r\n);\r\n\r\nconst getState_State = createFeatureSelector('states');\r\nexport const STATE_MASTER_STATE = createSelector(\r\n getState_State,\r\n state => state.state\r\n);\r\n\r\n\r\nconst getCityMasterListState = createFeatureSelector('cities');\r\nexport const CITY_MASTER_STATE_LIST = createSelector(\r\n getCityMasterListState,\r\n state => state.cities\r\n);\r\n\r\nconst getCityState = createFeatureSelector('cities');\r\nexport const CITY_MASTER_STATE = createSelector(\r\n getCityState,\r\n state => state.city\r\n);","import { Injectable } from \"@angular/core\";\r\nimport { SubscriptionSignupByUuidService } from \"@fitness-force/api\";\r\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\r\nimport { catchError, forkJoin, map, mergeMap, Observable, of, switchMap } from \"rxjs\";\r\nimport { environment } from \"../../environments/environment\";\r\nimport { ERROR_COMPANY_DETAILS, FETCHED_COMPANY_DETAILS, SELECT_LANGUAGE } from \"./actions/company.action\";\r\nimport { FETCHED_SUBSCRIPTION_PAYLOAD, ERROR_SUBSCRIPTION_PAYLOAD } from \"./actions/subscription-payload\";\r\nimport { FETCHED_TENANT_DETAILS, ERROR_TENANT_LIST } from \"./actions/tenant.action\";\r\nimport { CONST_CITIES, CONST_COUNTRIES, CONST_STATES } from '@fitness-force/constants';\r\nimport { Cities, City, ClientMandatoryFieldResponse, Countries, Country, PayLinkStepOption, State, States, SubscriptionSignUpOrderSummaryResponse, WaiverMasterResponseList } from \"@fitness-force/models\";\r\nimport { FETCH_COUNTRY_MASTER, FETCH_COUNTRY_MASTER_LIST } from \"./actions/country.action\";\r\nimport { FETCH_STATE_MASTER, FETCH_STATE_MASTER_LIST } from \"./actions/state.action\";\r\nimport { FETCH_CITY_MASTER, FETCH_CITY_MASTER_LIST } from \"./actions/city.action\";\r\nimport { FETCHED_SIGNUPSTEP_INFO } from \"./actions/signupsteps\";\r\nimport { PayLinkSteps } from \"@fitness-force/enum\";\r\n\r\n\r\n@Injectable()\r\nexport class CompanyEffects {\r\n\r\n constructor(\r\n private actions$: Actions,\r\n private subscriptionSignUp: SubscriptionSignupByUuidService,\r\n ) {\r\n }\r\n\r\n getCountryState(tenantPayload: any): Countries {\r\n let countries: Country[] = CONST_COUNTRIES;\r\n if (tenantPayload) {\r\n let country: Country = countries.find((o: Country) => {\r\n return (\r\n String(o.three_letter_code).toLowerCase() == String(tenantPayload.country).toLowerCase()\r\n || String(o.two_letter_code).toLowerCase() == String(tenantPayload.country).toLowerCase()\r\n );\r\n }) || {} as Country;\r\n\r\n return { countries: countries, country: country };\r\n }\r\n return { countries: countries, country: {} as Country };\r\n }\r\n\r\n getStatesState(tenantPayload: any): States {\r\n let states: State[] = CONST_STATES;\r\n if (tenantPayload) {\r\n let state: State = states.find((o: State) => {\r\n return (String(o.code).toLowerCase() == String(tenantPayload.state).toLowerCase());\r\n }) || {} as State;\r\n\r\n return { states: states, state: state };\r\n }\r\n return { states: states, state: {} as State };\r\n }\r\n\r\n getCitiesState(tenantPayload: any): Cities {\r\n let cities: City[] = CONST_CITIES;\r\n if (tenantPayload) {\r\n let city: City = cities.find((o: City) => {\r\n return (String(o.code).toLowerCase() == String(tenantPayload.city).toLowerCase());\r\n }) || {} as City;\r\n\r\n return { cities: cities, city: city };\r\n }\r\n return { cities: cities, city: {} as City };\r\n }\r\n\r\n getOrderSummary$ = createEffect((): Observable => {\r\n return this.actions$.pipe(\r\n ofType('FETCHED_SUBSCRIPTION_PAYLOAD'),\r\n switchMap((param: any) => this.subscriptionSignUp.GetOrderSummary(environment.BASE_URL, param.uuid)),\r\n mergeMap((subscriptionDetails: any) => {\r\n return [FETCHED_SUBSCRIPTION_PAYLOAD({ orderSummary: subscriptionDetails }),]\r\n }),\r\n catchError((err) => {\r\n if (err.originalError.status == '0')\r\n return of(ERROR_SUBSCRIPTION_PAYLOAD({ err: { details: { status: '0', errResponse: '' }, status: true } }))\r\n else\r\n return of(ERROR_SUBSCRIPTION_PAYLOAD({ err: { details: { status: err.originalError.status, errResponse: err.originalError.error }, status: true } }))\r\n })\r\n )\r\n });\r\n\r\n getSignupSteps$ = createEffect((): Observable => {\r\n return this.actions$.pipe(\r\n ofType('SIGNUPSTEP_INFO'),\r\n switchMap((param: any) => {\r\n let waiverPayload: any = this.subscriptionSignUp.GetWaivers(environment.BASE_URL, param.uuid);\r\n let clientMandatoryFieldPayload: any = this.subscriptionSignUp.GetClientMandatoryField(environment.BASE_URL, param.uuid);\r\n return forkJoin({ waiver: waiverPayload, mandate: clientMandatoryFieldPayload });\r\n }),\r\n mergeMap((stepsPayload: any) => {\r\n let steps: PayLinkStepOption[] = [];\r\n steps.push({ name: PayLinkSteps.Details, isProcessed: true, data: {}, redirectPath: 'details', isCurrentPage: true } as PayLinkStepOption);\r\n\r\n let waiver = stepsPayload.waiver as WaiverMasterResponseList;\r\n\r\n if (waiver && waiver.items && waiver.items.length > 0)\r\n steps.push({ name: PayLinkSteps.Waiver, isProcessed: false, data: waiver.items, redirectPath: 'waiver', isCurrentPage: false } as PayLinkStepOption);\r\n\r\n let clientMandateInfo = stepsPayload.mandate as ClientMandatoryFieldResponse;\r\n\r\n if (false && clientMandateInfo && clientMandateInfo.field_required && Object.keys(clientMandateInfo.field_required).length > 0)\r\n steps.push({ name: PayLinkSteps.Information, isProcessed: false, data: clientMandateInfo, redirectPath: 'info', isCurrentPage: false } as PayLinkStepOption);\r\n\r\n steps.push({ name: PayLinkSteps.Payment, isProcessed: false, data: {}, redirectPath: 'payment', isCurrentPage: false } as PayLinkStepOption);\r\n\r\n return [FETCHED_SIGNUPSTEP_INFO({ steps: steps })]\r\n }),\r\n catchError((err) => {\r\n return of(console.log(err));\r\n })\r\n );\r\n });\r\n\r\n getCompany$ = createEffect((): Observable => {\r\n return this.actions$.pipe(\r\n ofType('FETCHED_COMPANY_DETAILS'),\r\n switchMap((param: any) => this.subscriptionSignUp.GetCompany(environment.BASE_URL, param.uuid)),\r\n map((companyPayLoad: any) => {\r\n console.log(companyPayLoad);\r\n return FETCHED_COMPANY_DETAILS({ companyDetails: companyPayLoad })\r\n }),\r\n catchError(async (err) => ERROR_COMPANY_DETAILS({ err: { details: { status: err.originalError.status, errResponse: err.originalError.error }, status: true } }))\r\n );\r\n });\r\n\r\n getTenantAndSubDetails$ = createEffect((): Observable => {\r\n return this.actions$.pipe(\r\n ofType('FETCHED_TENANT_LIST'),\r\n switchMap((param: any) => this.subscriptionSignUp.GetTenant(environment.BASE_URL, param.uuid)),\r\n mergeMap((tenantPayLoad) => {\r\n console.log('tenant -> ' + JSON.stringify(tenantPayLoad))\r\n let countryPayload: Countries = this.getCountryState(tenantPayLoad);\r\n let statePayload: States = this.getStatesState(tenantPayLoad);\r\n let cityPayload: Cities = this.getCitiesState(tenantPayLoad);\r\n return [\r\n FETCHED_TENANT_DETAILS({ selected_tenant: tenantPayLoad }),\r\n SELECT_LANGUAGE({ lang: { COUNTRY: 'India', LANG_ABBRE: 'India', 'LANG_CODE': 'en' } }),\r\n FETCH_COUNTRY_MASTER_LIST({ countries: countryPayload.countries }),\r\n FETCH_COUNTRY_MASTER({ country: countryPayload.country }),\r\n FETCH_STATE_MASTER_LIST({ states: statePayload.states }),\r\n FETCH_STATE_MASTER({ state: statePayload.state }),\r\n FETCH_CITY_MASTER_LIST({ cities: cityPayload.cities }),\r\n FETCH_CITY_MASTER({ city: cityPayload.city }),\r\n ]\r\n }),\r\n catchError(async (err) => ERROR_TENANT_LIST({ err: { details: { status: err.originalError.status, errResponse: err.originalError.error }, status: true } }))\r\n );\r\n });\r\n}\r\n","import { Cities } from \"@fitness-force/models\";\r\n\r\nexport const CITY_MASTER_STATE: Cities = {\r\n city: {\r\n id: 0,\r\n name: '',\r\n code: '',\r\n state_code: '',\r\n state_id: 0\r\n },\r\n cities: []\r\n}","import { CompanyInfoStoreInterface } from \"@fitness-force/models\";\r\n\r\nexport const INITIAL_COMPANY_STATE: CompanyInfoStoreInterface = {\r\n compDetails: {\r\n id: 0,\r\n \"account_manager\": {\r\n \"id\": 0,\r\n \"name\": \"\",\r\n \"picture\": \"\",\r\n \"phone_number\": \"\",\r\n \"email\": \"\",\r\n \"description\": \"\",\r\n \"timing\": []\r\n },\r\n \"status\": \"\",\r\n \"ff_package_template_name\": \"\",\r\n \"logo\": \"\",\r\n \"member_portal_url\": \"\",\r\n \"reservation_portal_url\": \"\",\r\n \"purchase_portal_url\": \"\",\r\n \"app_type\": \"\",\r\n \"created_by\": 0,\r\n \"created_date\": \"\",\r\n \"updated_by\": 0,\r\n \"updated_date\": \"\",\r\n \"ff_package_template_id\": 0,\r\n \"name_primary_language\": \"\",\r\n \"name_secondary_language\": \"\",\r\n \"subdomain\": \"\",\r\n \"purchase_portal_enable\": false,\r\n \"member_portal_enable\": false,\r\n \"member_app_android_link\": \"\",\r\n \"member_app_ios_link\": \"\",\r\n \"primary_language\": \"\",\r\n \"is_secondary_language\": false,\r\n \"secondary_language\": \"\",\r\n \"email_id\": \"\",\r\n \"website\": \"\",\r\n \"phone1\": \"\",\r\n \"phone2\": \"\",\r\n \"address1\": \"\",\r\n \"address2\": \"\",\r\n \"about_us_primary_language\": \"\",\r\n \"about_us_secondary_language\": \"\",\r\n \"is_privacy_policy_url\": false,\r\n \"is_terms_of_service_url\": false,\r\n \"privacy_policy\": \"\",\r\n \"terms_of_service\": \"\",\r\n \"privacy_policy_url\": \"\",\r\n \"terms_of_service_url\": \"\",\r\n \"suspended_by\": 0,\r\n \"suspended_date\": \"\",\r\n \"cancelled_by\": 0,\r\n \"cancelled_date\": \"0\",\r\n \"supported_languages\": [],\r\n \"suspension_reason\": \"\",\r\n \"cancelled_reason\": \"\",\r\n \"allow_remote_fflogin\": false\r\n },\r\n selectedLang: {\r\n COUNTRY: 'us',\r\n LANG_CODE: 'en',\r\n LANG_ABBRE: 'ENGLISH'\r\n },\r\n direction: '',\r\n err: { details: {}, error: false }\r\n};","import { Countries } from \"@fitness-force/models\";\r\n\r\nexport const COUNTRY_MASTER_STATE: Countries = {\r\n countries: [],\r\n country: {\r\n id: 0,\r\n name: '',\r\n dial_code: '',\r\n two_letter_code: '',\r\n three_letter_code: '',\r\n currency_code: '',\r\n currency_name: '',\r\n currency_symbol: '',\r\n iso_numeric: 0,\r\n miner_currency: 0\r\n }\r\n} ","import { SubscriptionPayload, SubscriptionSignUpOrderSummaryResponse } from \"@fitness-force/models\";\r\n\r\nexport const SUBSCRIPTION_PAYLOAD_STATE: SubscriptionPayload = {\r\n orderSummary: {} as SubscriptionSignUpOrderSummaryResponse,\r\n err: {}\r\n} as SubscriptionPayload;","import { PayLinkStepOption, PayLinkStepOptionPayload } from \"@fitness-force/models\";\r\n\r\nexport const SIGNUP_STEPS_STATE: PayLinkStepOptionPayload = {\r\n steps: [] as PayLinkStepOption[],\r\n} as PayLinkStepOptionPayload;","import { States } from \"@fitness-force/models\";\r\n\r\nexport const STATE_MASTER_STATE: States = {\r\n state: {\r\n id: 0,\r\n name: '',\r\n code: '',\r\n country_code: '',\r\n country_id: 0\r\n },\r\n states: []\r\n}","import { TENANTSINTERFACE, TENANT_MODEL } from \"@fitness-force/models\";\r\n\r\n\r\nexport const TENANT_STATE: TENANTSINTERFACE = {\r\n accessed_tenant: [],\r\n selected_tenant: {\r\n id: 0,\r\n company_id: 0,\r\n created_by: 0,\r\n created_date: '',\r\n updated_by: 0,\r\n updated_date: '',\r\n status: '',\r\n name_primary_language: '',\r\n name_secondary_language: '',\r\n phone1: '',\r\n email_id: '',\r\n website: '',\r\n zone: '',\r\n place_id: '',\r\n latitude: 0,\r\n longitude: 0,\r\n city: '',\r\n state: '',\r\n zip_code: '',\r\n ip_setting: '',\r\n live_members: 0,\r\n image: '',\r\n exclude_from_app: false\r\n } as TENANT_MODEL\r\n}","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n BASE_URL: 'https://ff-nxt-api.dev.fitnessforce.com',\r\n // BASE_URL: 'https://localhost:44370',\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch((err) => console.error(err));\r\n","import { from } from 'rxjs';\r\n\r\nexport * from './lib/api.module';\r\nexport * from './lib/app-init/appinit.service';\r\nexport * from './lib/reports/reports.service';\r\nexport * from './lib/reports/report-filter.service';\r\nexport * from './lib/common.service';\r\nexport * from './lib/adminsetting.service';\r\nexport * from './lib/reports/report-data.service';\r\nexport * from './lib/claim.service';\r\nexport * from './lib/staff.service';\r\nexport * from './lib/am/country.service';\r\nexport * from './lib/am/state.service';\r\nexport * from './lib/am/city.service';\r\nexport * from './lib/timeconversion.service';\r\nexport * from './lib/master/opportunitystage.service';\r\nexport * from './lib/master/planmaster.service';\r\nexport * from './lib/client/client.service';\r\nexport * from './lib/auth.service';\r\nexport * from './lib/crm/task-category.service'\r\nexport * from './lib/subscription-signup-by-uuid.service'\r\n\r\nexport * from './lib/omni-search.service';\r\nexport * from './lib/serviceType/service-type.service';\r\nexport * from './lib/tenant.service';\r\nexport * from './lib/crm/task.service';\r\nexport * from './lib/ip.service';\r\nexport * from './lib/location.service';\r\nexport * from './lib/crm/opportunity.service';\r\n\r\n\r\n\r\n/*Scheduling Api*/\r\nexport * from './lib/schedule/appointment/appointment.service';\r\nexport * from './lib/schedule/class/class.service';\r\nexport * from './lib/master/appointment-subtype/appointment-subtype.service';\r\nexport * from './lib/master/room.service'\r\nexport * from './lib/admin/appointment-types.service'\r\nexport * from './lib/pos/plansubscription.service';\r\nexport * from './lib/admin/class-type.service'\r\nexport * from './lib/schedule/classbooking/class-booking.service';\r\nexport * from './lib/admin/advanced-setting.service';\r\n\r\n\r\n/*Billing Api*/\r\nexport * from './lib/admin/tax-master.service';\r\nexport * from './lib/admin/subscription.service';\r\nexport * from './lib/admin/service-category.service';\r\nexport * from './lib/admin/tax-group.service';\r\nexport * from './lib/admin/subscription.service';\r\nexport * from './lib/admin/service-category.service'\r\nexport * from './lib/admin/payment-mode.service';\r\n\r\n/*Clients API*/\r\nexport * from './lib/client/invoice/invoice.service';\r\nexport * from './lib/admin/charge-master.service'\r\n\r\nexport * from './lib/client/payment/payment.service';\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AdvancedSettingService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n\r\n getAdvanceSetting(tenantId:number,tentstgKey:string){\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tenant_settings/${tentstgKey}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n updateAdvanceSettings(tenantId: number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tenant_settings/update`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport {\r\n AppointmentTag,\r\n AppointmentTypes,\r\n CreateAppointmentTypesRequest,\r\n} from 'libs/models/src/lib/admin/appointment-types';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\n\r\nimport { AppointmentTypeList, CreateResponse } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AppointmentTypesService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n createAppointmentTypes(\r\n tenantId: number,\r\n createAppointmentTypesRequest: CreateAppointmentTypesRequest\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types`,\r\n createAppointmentTypesRequest,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getAppointmentTypes(tenantId: number, allParams:Array):Observable {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT_TYPE.GET_APPOINTMENT_TYPES.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url,{headers: this.httpOptions.headers , params: parsedParams}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n getSingleAppointmentType(tenantId: number,appt_type_id:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types/${appt_type_id}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n updateAppointmentTypes(tenantId: number,appt_type_id:number,data:any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types/${appt_type_id}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n markActiveAppointmentTypes(tenantId: number,appt_type_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types/${appt_type_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markInActiveAppointmentTypes(tenantId: number,appt_type_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types/${appt_type_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n\r\n\r\n\r\ngetAppointmentTags(tenantId: number):Observable {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_appt_tags`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res.items;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n}\r\n\r\n // /tenants/{tenant_id}/appointment_types .. Its in review merge ...\r\n // /tenants/{tenant_id}/class_appt_tags\r\ngetAppointmentSubTypes(tenantId: number,appt_type_id:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/appointment_types/${appt_type_id}/appt_subtypes`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { map, catchError, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ChargeMasterService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n // Charge Master\r\n getChargeMasters(tenantId: number,allParams:Array=[]) {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSingleChargeMaster(tenantId: number, charge_master_id: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters/${charge_master_id}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n createChargeMaster(tenantId: number, createChargeMasters: any) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters`,\r\n createChargeMasters,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateChargeMaster(tenantId: number, charge_master_id: number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters/${charge_master_id}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n activeChargeMaster(tenantId: number, charge_master_id: number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters/${charge_master_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n inActiveChargeMaster(tenantId: number, charge_master_id: number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters/${charge_master_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n deleteChargeMaster(tenantId: number, charge_master_id: number) {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_masters/${charge_master_id}`\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n // Charge master category\r\n getChargeCategoryMasters(tenantId: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSingleChargeCategoryMaster(\r\n tenantId: number,\r\n charge_master_category_id: number\r\n ) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master/${charge_master_category_id}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n createChargeCategoryMasters(\r\n tenantId: number,\r\n createChargeCategoryMaster: any\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master`,\r\n createChargeCategoryMaster,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateChargeCategoryMaster(\r\n tenantId: number,\r\n createChargeCategoryMaster: number,\r\n data: any\r\n ) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master/${createChargeCategoryMaster}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n activeChargeCategoryMaster(\r\n tenantId: number,\r\n charge_category_master_id: number\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master/${charge_category_master_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n inActiveChargeCategoryMaster(\r\n tenantId: number,\r\n charge_category_master_id: number\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master/${charge_category_master_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n deleteChargeCategoryMaster(\r\n tenantId: number,\r\n charge_category_master_id: number\r\n ) {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/charge_category_master/${charge_category_master_id}`\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { ClassTags, CreateClassTypesRequest } from '@fitness-force/models';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClassTypeService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n\r\n\r\n createClassTypes(\r\n tenantId: number,\r\n createAppointmentTypesRequest: CreateClassTypesRequest\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types`,\r\n createAppointmentTypesRequest,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateClassTypes(tenantId: number,class_type_id:number,data:any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types/${class_type_id}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getClassTypes(tenantId: number,allParams:Array=[]) {\r\n\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markActive(tenantId: number,class_type_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types/${class_type_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markInActive(tenantId: number,class_type_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types/${class_type_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n\r\n getSingleClassType(tenantId: number,class_type_id:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_types/${class_type_id}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n getClassTags(tenantId: number):Observable {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/class_appt_tags`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res.items;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { ListPaymentModeMastersResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { Observable, throwError, } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PaymentModeService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n createPaymentMode(tenantId: number, createPaymentMode: any) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master`,\r\n createPaymentMode,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getPaymentMode(tenantId: number,allParams:Array=[]) {\r\n\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updatePaymentMode(tenantId: number, paymentModId: number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master/${paymentModId}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markActive(tenantId: number, paymentModId: number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master/${paymentModId}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n delete(tenantId: number, paymentModId: number) {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master/${paymentModId}`,\r\n\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markInActive(tenantId: number, paymentModId: number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master/${paymentModId}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSinglePaymentMode(tenantId: number, paymentModId: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master/${paymentModId}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n listPaymentMode(tenantId: number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/payment_mode_master`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ServiceCategoryService {\r\n\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n\r\n getServiceCategories(tenantId: number,allParams:Array=[]) {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n getSingleServiceCategory(tenantId: number,categoryId:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories/${categoryId}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateServiceCategory(tenantId: number,ser_cat_id:number,data:any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories/${ser_cat_id}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\ncreateServiceCategory(tenantId: number,data:any) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n\r\n markActive(tenantId: number,ser_cat_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories/${ser_cat_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markInActive(tenantId: number,ser_cat_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/service_categories/${ser_cat_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { SubscriptionPlan } from '@fitness-force/models';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SubscriptionService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n\r\n\r\n createSubscriptionPlan(\r\n tenantId: number,\r\n createSubscriptionPlanRequest: SubscriptionPlan\r\n ) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans`,\r\n createSubscriptionPlanRequest,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateSubscriptionPlan(\r\n tenantId: number,\r\n sub_plan_od:number,\r\n updateSubscriptionPlanRequest: SubscriptionPlan\r\n ) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans/${sub_plan_od}`,\r\n updateSubscriptionPlanRequest,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSingleSubscriptionPlan(tenantId: number,sub_plan_id:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans/${sub_plan_id}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSubscriptionPlans(tenantId: number,allParams:Array=[]) {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n markActive(tenantId: number,sub_plan_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans/${sub_plan_id}/mark_as_active`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n markInActive(tenantId: number,sub_plan_id:number) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/subscription_plans/${sub_plan_id}/mark_as_inactive`,\r\n {},\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { SubscriptionPlan } from '@fitness-force/models';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TaxGroupService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n getTaxGroups(tenantId: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Component, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\nimport { OpportunityBoardType } from '@fitness-force/enum';\r\nimport { CreateResponse } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TaxMasterService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n getTaxGroups(tenantId: number,allParams:Array=[]) {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups`,\r\n {headers: this.httpOptions.headers , params: parsedParams}\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n getTaxSetting(tenantId:number,tentstgKey:string){\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tenant_settings/${tentstgKey}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getAllTaxSetting(tenantId:number){\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tenant_settings`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateTaxSettings(tenantId: number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tenant_settings/update`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getTaxLineItems(tenantId: number, groupId: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}/tax_line_items`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n getTaxLineItem(tenantId: number, groupId: number,taxLineItemId:number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}/tax_line_items/${taxLineItemId}`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getTaxLineItemTypes(tenantId: number) {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_line_type`,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n createTaxGroup(tenantId: number, data: any) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n createTaxLineItem(tenantId: number, groupId: number, data: any) {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}/tax_line_items`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateTaxGroup(tenantId: number, groupId: number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateTaxLineItem(tenantId: number, groupId: number,lineItemId:number, data: any) {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}/tax_line_items/${lineItemId}`,\r\n data,\r\n this.httpOptions\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n deleteTaxGroup(tenantId: number, groupId: number) {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/tax_groups/${groupId}`\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AdminsettingsService {\r\n constructor(private http: HttpClient) {\r\n \r\n }\r\n\r\n public getSettingsJSON(): Observable {\r\n return this.http.get('assets/dist/json/adminsettings.json');\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { City } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CityService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetCity(BASE_URL: string, countryCode: string, stateCode: string) {\r\n let url = BASE_URL + CONST_URL_SEGEMENTS.CITY.GET_CITY;\r\n url = url.replace('{countrycode}', countryCode).replace('{statecode}', stateCode);\r\n return this.http.get(url, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n throwError;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Country } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CountryService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetCountry(BASE_URL: string): Observable {\r\n let url = BASE_URL + CONST_URL_SEGEMENTS.COUNTRY.GET_COUNTRY;\r\n return this.http.get(url, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n throwError;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n}","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { State } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StateService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetState(BASE_URL: string, countryCode: string): Observable {\r\n let url = BASE_URL + CONST_URL_SEGEMENTS.STATE.GET_STATE;\r\n url = url.replace('{countrycode}', countryCode);\r\n return this.http.get(url, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n throwError;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { AuthSevices } from './auth.service';\r\nimport { CyptoSevice } from './crypto.service';\r\nimport { TenantService } from './tenant.service';\r\nimport { ClientService } from './client/client.service';\r\nimport { TaskCallOutcomeService } from './crm/taskoutcome.service';\r\nimport { ServiceTypeService } from './serviceType/service-type.service';\r\nimport { AdminsettingsService } from './adminsetting.service';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [\r\n AuthSevices,\r\n CyptoSevice,\r\n TenantService,\r\n ClientService,\r\n TaskCallOutcomeService,\r\n ServiceTypeService,\r\n AdminsettingsService,\r\n DatePipe\r\n ]\r\n})\r\nexport class ApiModule { }\r\n","/*=================================================================================================================\r\nFile Name: appinit.service.ts\r\nDescription: This service is responsible for\r\nNote: Carefully to while doing modification.\r\n\r\nCreated By: Sangram, Creation Date: 07th May 2021, Modified By: Sangram, Modification Date: 07th May 2021\r\n===================================================================================================================*/\r\n\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError, shareReplay } from 'rxjs/operators';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CONSTANTS_DATA, CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { CyptoSevice } from '../crypto.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AppInitService {\r\n getSubDomain: any;\r\n getStoredDomain: any;\r\n isResponse = '';\r\n constructor(\r\n private http: HttpClient,\r\n @Inject(DOCUMENT) private document: Document,\r\n private router: Router,\r\n private cryp: CyptoSevice\r\n ) // private store: Store\r\n { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n getCompanyInformation(subdomain: string, APP_URL: string): Observable {\r\n return this.http\r\n .get(\r\n APP_URL +\r\n CONST_URL_SEGEMENTS.INIT.GET_COMPANY_SUBDOMAIN + window.location.hostname,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n shareReplay(1),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getBlogData(): Observable {\r\n return this.http\r\n .get(CONST_URL_SEGEMENTS.BLOG_API, {\r\n headers: new HttpHeaders()\r\n .set('Content-Type', 'text/xml')\r\n .append('Access-Control-Allow-Methods', 'GET')\r\n .append('Access-Control-Allow-Origin', '*')\r\n .append(\r\n 'Access-Control-Allow-Headers',\r\n 'Access-Control-Allow-Headers, Access-Control-Allow-Origin, Access-Control-Request-Method'\r\n ),\r\n responseType: 'text',\r\n })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n parseLanguage(lang: string) {\r\n return CONSTANTS_DATA.ALL_LANGUAGES.find((l) => l.LANG_CODE === lang);\r\n }\r\n}\r\n","\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport { HttpBackend, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { combineLatest, Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\n\r\nimport { Router } from '@angular/router';\r\nimport { JwtHelperService } from \"@auth0/angular-jwt\";\r\nimport { AppErrors, NotFoundError, UnauthorizedError } from '@fitness-force/errors';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { LANGUAGE, LoginDataModel } from '@fitness-force/models';\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\nconst helper = new JwtHelperService();\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class AuthSevices {\r\n private readonly httpBackend: HttpClient\r\n constructor(\r\n private http: HttpClient,\r\n private router: Router,\r\n private store: Store,\r\n private readonly backEndClientHandler: HttpBackend\r\n ) {\r\n this.httpBackend = new HttpClient(backEndClientHandler)\r\n }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n\r\n loginService(logindata: LoginDataModel, BASE_URL: string) {\r\n return this.httpBackend.post(BASE_URL + CONST_URL_SEGEMENTS.AUTH.LOGIN_TOKEN, logindata, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n if (res && res.token) {\r\n localStorage.setItem('token', res.token);\r\n return res;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else if (error.status === 401) {\r\n return throwError(() => new UnauthorizedError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n sendForgotPasswordEmail(uemail: any, BASE_URL: string) {\r\n return this.http.post(BASE_URL + CONST_URL_SEGEMENTS.AUTH.PASSWORD_LOOKUP, uemail, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n sendUniqueIndetifierEmail(identifier: any, userid: number, BASE_URL: string,) {\r\n return this.http.post(BASE_URL + CONST_URL_SEGEMENTS.AUTH.UNIQUE_IDENTIFIER + userid + '/mail',\r\n identifier, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n validateNewpassword(pass: any, userid: number, BASE_URL: string) {\r\n return this.http.post(BASE_URL + CONST_URL_SEGEMENTS.AUTH.PASSWORD_RESET + userid + '/password',\r\n pass, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n return false;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n logout() {\r\n localStorage.clear();\r\n // this.router.navigate(['/auth/login']);\r\n window.location.href = '/auth/login';\r\n }\r\n\r\n get tokenFromStorage(): string | null {\r\n return localStorage.getItem('token');\r\n }\r\n\r\n get decodedToken(): any {\r\n const getToken: any = this.tokenFromStorage;\r\n return helper.decodeToken(getToken);\r\n }\r\n\r\n get selectedLanguageStorage(): string {\r\n return localStorage.getItem('DEFAULT_LANGUAGE') as string;\r\n }\r\n\r\n //Need to take decision for storage clear of language\r\n get selectedLanguage(): LANGUAGE {\r\n let selectedLang: LANGUAGE = JSON.parse(this.selectedLanguageStorage);\r\n if (selectedLang && selectedLang.LANG_CODE)\r\n return JSON.parse(this.selectedLanguageStorage);\r\n else\r\n return { COUNTRY: 'India', LANG_ABBRE: 'India', 'LANG_CODE': 'en' } as LANGUAGE\r\n }\r\n\r\n get parseDecodedToken() {\r\n let buffDecodedToken = this.decodedToken;\r\n if (buffDecodedToken && buffDecodedToken.accessed_tenant) {\r\n let parsedAccessed_tenant = buffDecodedToken.accessed_tenant.split(',');\r\n let allTenant = buffDecodedToken.all_tenant.split(',');\r\n buffDecodedToken.accessed_tenant = parsedAccessed_tenant;\r\n buffDecodedToken.all_tenant = allTenant;\r\n return buffDecodedToken;\r\n } else {\r\n return null\r\n }\r\n }\r\n\r\n //this is used to get localized value \r\n getLocalizedFieldData(primaryData: string, secondaryData: string): Observable {\r\n return combineLatest([this.store.select(COMPANY_INFO), this.store.select(TENANTS_INFO)]).pipe(\r\n map(([comp, tent]) => {\r\n if (comp?.compDetails?.is_secondary_language) {\r\n if (comp?.selectedLang.LANG_CODE == tent?.selected_tenant.secondary_language)\r\n return secondaryData;\r\n else\r\n return primaryData;\r\n }\r\n else {\r\n return primaryData;\r\n }\r\n })\r\n )\r\n }\r\n\r\n get isTokenExpired(): any {\r\n const getToken: any = this.tokenFromStorage;\r\n const tokenExpDateTime: any = helper.getTokenExpirationDate(getToken)\r\n const tokenExpDateTimeParse = new Date(tokenExpDateTime)\r\n const today = new Date()\r\n const extractTokenDate: any = new Date(tokenExpDateTimeParse.getFullYear(), tokenExpDateTimeParse.getMonth(), tokenExpDateTimeParse.getDate());\r\n const extractTodayDate: any = new Date(today.getFullYear(), today.getMonth(), today.getDate())\r\n const extractTodayTime: any = today.getTime()\r\n const extractExpTimeTime: any = tokenExpDateTimeParse.getTime()\r\n\r\n if (extractTokenDate > extractTodayDate) {\r\n return true\r\n } else if (extractTokenDate === extractTodayDate) {\r\n if (extractExpTimeTime > extractTodayTime) {\r\n return true\r\n } else {\r\n return false\r\n }\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n get isLoginedIn(): boolean {\r\n if (this.tokenFromStorage && this.decodedToken && this.isTokenExpired) {\r\n // this.currentUser;\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n get currentUser(): any {\r\n console.log('Decoded token', this.decodedToken)\r\n return this.decodedToken.role;\r\n }\r\n\r\n currentUserDetails(): any {\r\n return this.decodedToken;\r\n }\r\n\r\n get loggedInStaffId(): number {\r\n return parseInt(this.decodedToken.Id);\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Claim } from '@fitness-force/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClaimService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetClaim(BASE_URL: string): Observable {\r\n return this.http.get(BASE_URL + CONST_URL_SEGEMENTS.CLAIM.GET_CLAIM_TEMPLATES, {\r\n headers: this.httpOptions.headers\r\n }).pipe(map((res: any) => {\r\n if (res && res.items) {\r\n return res.items;\r\n } else {\r\n throwError;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n}","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Client, CreateProspectRequest, ListClientResponse, PagedResults } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { retry, catchError, map, ignoreElements } from 'rxjs/operators';\r\nimport { AppErrors, BadRequestError, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { ClientStatus } from '@fitness-force/enum';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClientService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n\r\n createProspect(url: string, client: CreateProspectRequest): Observable {\r\n return this.http.post(url + '/tenants/' + client.Prospect.createdin_tenant_id.toString() + CONST_URL_SEGEMENTS.CLIENT.POST_CLIENTS, client, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getProspects(allparams: any, tenantId: any): Observable {\r\n let parsedParams = new HttpParams()\r\n allparams.forEach((p: any) => {\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n\r\n return this.http.get(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS, {\r\n headers: this.httpOptions.headers, params: parsedParams\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getIrregularClients(allparams: any, tenantId: any): Observable {\r\n let parsedParams = new HttpParams()\r\n allparams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.paramName, p.paramValue);\r\n });\r\n\r\n return this.http.get(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + CONST_URL_SEGEMENTS.CLIENT.IRREGULAR_CLIENTS, {\r\n headers: this.httpOptions.headers, params: parsedParams\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getClientById(clientId: any): Observable {\r\n\r\n return this.http.get(environment.BASE_URL + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + '/' + clientId, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n fetchClassApptTags(tenantId: any): Observable {\r\n\r\n return this.http.get(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.CLASS_APPT_TAGS, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n fetchServiceTypes(tenantId: any): Observable {\r\n\r\n return this.http.get(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.SERVICE_CAT, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n updateClientById(clientId: any, tenantId: any, clientData: any): Observable {\r\n\r\n return this.http.put(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + '/' + clientId, clientData, {\r\n headers: this.httpOptions.headers\r\n },\r\n\r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n clientAddToBlacklist(clientId: any, tenantId: any, clientData: any): Observable {\r\n\r\n return this.http.post(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + '/' + clientId + CONST_URL_SEGEMENTS.CLIENT.ADD_TO_BLACKLIST, clientData, {\r\n headers: this.httpOptions.headers\r\n },\r\n\r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n clientRemoveFromBlacklist(clientId: any, tenantId: any): Observable {\r\n\r\n return this.http.post(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + '/' + clientId + CONST_URL_SEGEMENTS.CLIENT.REMOVE_FROM_BLACKLIST, {\r\n headers: this.httpOptions.headers\r\n },\r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n changeClientRepresentative(clientId: any, tenantId: any, client_rep_data: any): Observable {\r\n\r\n return this.http.post(environment.BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId + CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS + '/' + clientId + CONST_URL_SEGEMENTS.CLIENT.CHANGE_CLIENT_REP, client_rep_data, {\r\n headers: this.httpOptions.headers\r\n },\r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSubscriptions(clientId: any): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.SUBSCRIPTIONS}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSubscriptionSignup(clientId: any): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.SUBSCRIPTION_SINGUPS}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n\r\n }\r\n\r\n getSubscriptionDetails(clientId: any, clietnSubscriptionId: any): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.SUBSCRIPTIONS}/${clietnSubscriptionId}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n\r\n }\r\n\r\n getSubscriptionInvoices(clientId: any, clietnSubscriptionId: any): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.SUBSCRIPTIONS}/${clietnSubscriptionId}${CONST_URL_SEGEMENTS.CLIENT.INVOICES}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n\r\n }\r\n\r\n getPaymentTimeline(clientId: any, clietnSubscriptionId: any, fromDate: any, toDate: any): Observable {\r\n let parsedParams = new HttpParams()\r\n parsedParams = parsedParams.append('from_date', fromDate);\r\n parsedParams = parsedParams.append('to_date', toDate);\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.SUBSCRIPTIONS}/${clietnSubscriptionId}${CONST_URL_SEGEMENTS.CLIENT.PAYMENT_TIMELINE}`, {\r\n headers: this.httpOptions.headers, params: parsedParams\r\n }).pipe(\r\n map((res: any) => {\r\n console.log('asdde', res)\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n console.log('cathf')\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n\r\n }\r\n\r\n getClientInvoices(clientId: any): Observable {\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.INVOICES}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n return res\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getClientPayments(clientId: any): Observable {\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.PAYMENTS}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getClientPaymentMethods(clientId: any): Observable {\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.PAYMENT_METHODS}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getClientStatusHtml(status: string): string {\r\n switch (status) {\r\n case ClientStatus.Prospect.toString():\r\n case ClientStatus[ClientStatus.Prospect]:\r\n return 'PROSPECT';\r\n case ClientStatus.Trail.toString():\r\n case ClientStatus[ClientStatus.Trail]:\r\n return 'TRIAL';\r\n case ClientStatus.Client.toString():\r\n case ClientStatus[ClientStatus.Client]:\r\n return 'MEMBER';\r\n case ClientStatus.ClientNonMember.toString():\r\n case ClientStatus[ClientStatus.ClientNonMember]:\r\n return 'NON-MEMBER';\r\n case ClientStatus.ExClient.toString():\r\n case ClientStatus[ClientStatus.ExClient]:\r\n return 'EX-MEMBER';\r\n case ClientStatus.BlockedClient.toString():\r\n case ClientStatus[ClientStatus.BlockedClient]:\r\n return 'TERMINATED';\r\n default:\r\n return '';\r\n }\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { RaiseSalesReturnRequest, voidInvoiceRequest } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { AppErrors, BadRequestError, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InvoiceService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n\r\n getClientInvoices(clientId: any): Observable {\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.CLIENT.INVOICES}`, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getInvoicePDF(clientId: number, invoiceId:number): Observable {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'text/plain',\r\n })\r\n };\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.INVOICES.GET_INVOICE_PDF.replace('{client_id}', clientId.toString()).replace('{invoice_id}', invoiceId.toString());\r\n return this.http.get(url, { responseType: 'text',headers: httpOptions.headers}).pipe(\r\n map((res: any) => {\r\n return res\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n voidInvoice(tenantId:number,clientId: number, invoiceId:number, voidRequest: voidInvoiceRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.INVOICES.VOID_INVOICE.replace('{tenant_id}', tenantId.toString()).replace('{client_id}', clientId.toString()).replace('{invoice_id}', invoiceId.toString());\r\n return this.http.post(url, voidRequest, {headers: this.httpOptions.headers}).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SendEmail(clientId: number, invoiceId:number): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.INVOICES.SEND_EMAIL.replace('{client_id}', clientId.toString()).replace('{invoice_id}', invoiceId.toString());\r\n return this.http.get(url, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SalesReturn(tenantId:number,clientId: number, invoiceId:number, raiseSalesReturnRequest:RaiseSalesReturnRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.INVOICES.SALES_RETURN.replace('{tenant_id}', tenantId.toString()).replace('{client_id}', clientId.toString()).replace('{invoice_id}', invoiceId.toString());\r\n return this.http.get(url, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { voidInvoiceRequest } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { AppErrors, BadRequestError, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PaymentService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n\r\n getPaymentPDF(clientId: number, paymentId:number): Observable {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'text/plain',\r\n })\r\n };\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.PAYMENTS.GET_PAYMENT_PDF.replace('{client_id}', clientId.toString()).replace('{pymt_id}', paymentId.toString());\r\n return this.http.get(url, {\r\n responseType: 'text',headers: httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n return res\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n voidPayment(tenantId:number,clientId: number, paymentId:number, voidRequest: voidInvoiceRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.PAYMENTS.VOID_PAYMENT.replace('{tenant_id}', tenantId.toString()).replace('{client_id}', clientId.toString()).replace('{pymt_id}', paymentId.toString());\r\n return this.http.post(url, voidRequest, {headers: this.httpOptions.headers}).pipe(\r\n map((res: any) => {\r\n return res\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SendEmail(clientId: number, paymentId:number): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.PAYMENTS.SEND_EMAIL.replace('{client_id}', clientId.toString()).replace('{pymt_id}', paymentId.toString());\r\n return this.http.get(url, {\r\n headers: this.httpOptions.headers\r\n }).pipe(\r\n map((res: any) => {\r\n return res\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if (error.status === 400) {\r\n return throwError(() => new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n \r\n}\r\n","import { getCurrencySymbol } from '@angular/common';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Country, RelativeDate, ReportFormBase } from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO, COUNTRY_MASTER_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CommonService {\r\n private timePeriod: any;\r\n miner_currency = new BehaviorSubject(0);\r\n\r\n constructor( public store: Store,) {\r\n this.store.select(COUNTRY_MASTER_STATE).subscribe((country:Country) => {\r\n this.miner_currency.next(country.miner_currency);\r\n });\r\n }\r\n\r\n GetRelativeFromDate(date: Date, relativeDate: RelativeDate, day: number) {\r\n const relativeDates: any = { from_date: Date, to_date: Date };\r\n switch (relativeDate) {\r\n case RelativeDate.Today: {\r\n relativeDates.from_date = new Date();\r\n relativeDates.to_date = new Date();\r\n return relativeDates;\r\n }\r\n\r\n case RelativeDate.Tomorrow: {\r\n {\r\n relativeDates.from_date = new Date(\r\n date.setDate(date.getDate() + day)\r\n );\r\n relativeDates.to_date = relativeDates.from_date;\r\n return relativeDates;\r\n }\r\n }\r\n case RelativeDate.ThisMonth: {\r\n relativeDates.from_date = new Date(\r\n date.getFullYear(),\r\n date.getMonth(),\r\n 1\r\n );\r\n relativeDates.to_date = new Date();\r\n return relativeDates;\r\n }\r\n case RelativeDate.ThisQuarter: {\r\n var quarter = Math.floor((date.getMonth() / 3));\r\n var firstDate = new Date(date.getFullYear(), quarter * 3, 1);\r\n var endDate = new Date(firstDate.getFullYear(), firstDate.getMonth() + 3, 0);\r\n relativeDates.from_date = firstDate;\r\n relativeDates.to_date = endDate;\r\n return relativeDates;\r\n }\r\n case RelativeDate.Yesterday: {\r\n relativeDates.from_date = new Date(date.setDate(date.getDate() + day));\r\n relativeDates.to_date = relativeDates.from_date;\r\n return relativeDates;\r\n }\r\n case RelativeDate.LastSevenDays: {\r\n relativeDates.from_date = new Date(date.setDate(date.getDate() + day));\r\n relativeDates.to_date = new Date();\r\n return relativeDates;\r\n }\r\n case RelativeDate.LastMonth: {\r\n relativeDates.from_date = new Date(\r\n date.getFullYear(),\r\n date.getMonth() - 1,\r\n 1\r\n );\r\n relativeDates.to_date = new Date(\r\n new Date(date.getFullYear(), date.getMonth(), 1).setDate(\r\n relativeDates.from_date.getDate() - 1\r\n )\r\n );\r\n return relativeDates;\r\n }\r\n case RelativeDate.LastThirtyDays: {\r\n relativeDates.from_date = new Date(date.setDate(date.getDate() + day));\r\n relativeDates.to_date = new Date();\r\n return relativeDates;\r\n }\r\n case RelativeDate.CustomDateRange: {\r\n relativeDates.from_date = new Date();\r\n relativeDates.to_date = new Date();\r\n return relativeDates;\r\n }\r\n default:\r\n return date;\r\n }\r\n }\r\n\r\n GetRelativeToDate(date: Date, relativeDate: RelativeDate, day: number) {\r\n switch (relativeDate) {\r\n case RelativeDate.Today:\r\n return new Date();\r\n case RelativeDate.Tomorrow: {\r\n return date.setDate(date.getDate() + day);\r\n }\r\n case RelativeDate.ThisMonth: {\r\n return new Date();\r\n }\r\n case RelativeDate.ThisQuarter:\r\n return new Date();\r\n case RelativeDate.Yesterday: {\r\n return date.setDate(date.getDate() + day);\r\n }\r\n case RelativeDate.LastSevenDays: {\r\n return date;\r\n }\r\n case RelativeDate.LastMonth: {\r\n let lastMonth: Date = new Date(date.getFullYear(), date.getMonth(), 1);\r\n return lastMonth.setDate(lastMonth.getDate() - 1);\r\n }\r\n case RelativeDate.LastThirtyDays: {\r\n return date;\r\n }\r\n case RelativeDate.CustomDateRange: {\r\n return new Date();\r\n }\r\n default:\r\n return date;\r\n }\r\n }\r\n\r\n toFormGroup(fields: ReportFormBase[]) {\r\n const group: any = {};\r\n fields.forEach((field) => {\r\n group[field.key] = field.required\r\n ? new FormControl(field.value || '', Validators.required)\r\n : new FormControl(field.value || '');\r\n });\r\n return new FormGroup(group);\r\n }\r\n\r\n GetTimePeriods() {\r\n return (this.timePeriod = [\r\n {\r\n name: 'Yesterday',\r\n label: 'Yesterday',\r\n value: -1,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.Yesterday, -1),\r\n },\r\n {\r\n name: 'Today',\r\n label: 'Today',\r\n value: 0,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.Today, 0),\r\n },\r\n {\r\n name: 'Tomorrow',\r\n label: 'Tomorrow',\r\n value: 1,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.Tomorrow, 1),\r\n },\r\n {\r\n name: 'ThisMonth',\r\n label: 'This Month',\r\n value: 3,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.ThisMonth, 0),\r\n },\r\n {\r\n name: 'ThisQuarter',\r\n label: ' This Quarter',\r\n value: 33,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.ThisQuarter, 1),\r\n },\r\n {\r\n name: 'LastSevenDays',\r\n label: 'Last SevenDays',\r\n value: -7,\r\n date: this.GetRelativeFromDate(\r\n new Date(),\r\n RelativeDate.LastSevenDays,\r\n -7\r\n ),\r\n },\r\n\r\n {\r\n name: 'LastThirtyDays',\r\n label: 'Last Thirty Days',\r\n value: -30,\r\n date: this.GetRelativeFromDate(\r\n new Date(),\r\n RelativeDate.LastThirtyDays,\r\n -30\r\n ),\r\n },\r\n {\r\n name: 'LastMonth',\r\n label: 'Last Month',\r\n value: -3,\r\n date: this.GetRelativeFromDate(new Date(), RelativeDate.LastMonth, 0),\r\n },\r\n {\r\n name: 'CustomDateRange',\r\n label: 'Custom DateRange',\r\n value: 99,\r\n date: { from_date: new Date(), to_date: new Date() },\r\n },\r\n ]);\r\n }\r\n\r\n // Convert minur currency amount in currency amount\r\n ConvertAmountFromMinorCurrency(currencyAmount:number){\r\n let currencyMultiplier = Math.pow(10, this.miner_currency.value);\r\n currencyAmount = (currencyAmount / currencyMultiplier);\r\n return currencyAmount;\r\n }\r\n\r\n // Convert currency amount in minur currency amount\r\n ConvertMinorCurrencyFromAmount(currencyAmount:number){\r\n let currencyMultiplier = Math.pow(10, this.miner_currency.value);\r\n currencyAmount = Math.floor(currencyAmount * currencyMultiplier);\r\n return currencyAmount;\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { Component, Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { CONST_URL_SEGEMENTS } from \"@fitness-force/constants\";\r\nimport { AppErrors, ConflictError, NotFoundError } from \"@fitness-force/errors\";\r\nimport { CreateOpportunityRequest, UpdateOpportunityRequest } from \"libs/models/src/lib/crm/opportunity\";\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { throwError, Observable, pipe } from \"rxjs\";\r\nimport { catchError, map, retry } from \"rxjs/operators\";\r\nimport { OpportunityBoardType } from \"@fitness-force/enum\";\r\nimport { CreateResponse } from \"@fitness-force/models\";\r\n\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OpportunityService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n //tenants/{tenant_id:int}/boards/{board_id:int}/opportunities\r\n OpportunityCreateService(tenantId: number, boardType: OpportunityBoardType, createOpportunityRequest: CreateOpportunityRequest) {\r\n\r\n return this.http.post(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}`,createOpportunityRequest, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else if (error.status === 409) {\r\n return throwError(() => new ConflictError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n OpportunityUpdateService(tenantId: number, boardType: OpportunityBoardType,oppId: number, updateOpportunityRequest: UpdateOpportunityRequest, ): Observable {\r\n return this.http.put(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}`\r\n , updateOpportunityRequest,this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n //tenants/{tenant_id:int}/boards/{board_id:int}/opportunities\r\n OpportunityGetService(tenantId: number, boardType: OpportunityBoardType, oppId: number): Observable {\r\n return this.http.get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}/${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}`, { headers: this.httpOptions.headers }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n OpportunityDeleteService(tenantId: number, boardType:any, oppId: number) {\r\n return this.http.delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}/${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}`, { headers: this.httpOptions.headers }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else {\r\n return throwError(() => new AppErrors(error));\r\n }\r\n })\r\n );\r\n }\r\n\r\n OpportunityStageChange(tenantId: number, boardType: OpportunityBoardType, oppId: number, stageMstId: number) {\r\n return this.http.post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}/${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}`, { headers: this.httpOptions.headers }\r\n ).pipe(\r\n map((res: any) => {\r\n return res;\r\n })\r\n , catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else {\r\n return throwError(() => new AppErrors(error));\r\n }\r\n })\r\n );\r\n }\r\n\r\n OpportunityMarkAsLost(tenantId: number, boardType: OpportunityBoardType, oppId: number, lostDealData:any) {\r\n return this.http.post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}/mark_as_lost`,lostDealData, this.httpOptions\r\n ).pipe(\r\n map((res: any) => {\r\n return res;\r\n })\r\n , catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else {\r\n return throwError(() => new AppErrors(error));\r\n }\r\n })\r\n );\r\n }\r\n\r\n\r\n OpportunityMarkAsWon(tenantId: number, boardType: OpportunityBoardType, oppId: number) {\r\n return this.http.post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}/mark_as_won`, { headers: this.httpOptions.headers }\r\n ).pipe(\r\n map((res: any) => {\r\n return res;\r\n })\r\n , catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else {\r\n return throwError(() => new AppErrors(error));\r\n }\r\n })\r\n );\r\n }\r\n\r\n OpportunityMarkAsNurture(tenantId: number, boardType: OpportunityBoardType, oppId: number) {\r\n return this.http.post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}/${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${oppId}/mark_as_nurture`, { headers: this.httpOptions.headers }\r\n ).pipe(\r\n map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else {\r\n return throwError(() => new AppErrors(error));\r\n }\r\n })\r\n );\r\n }\r\n\r\n getOpportunityService(tenantId: number, boardType: OpportunityBoardType,allParams:any): Observable {\r\n let parsedParams = new HttpParams()\r\n allParams.forEach((p: any) => {\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}`, {\r\n headers: this.httpOptions.headers, params: parsedParams\r\n })\r\n .pipe(\r\n map((res: any) => {\r\n return res.items;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n OpportunityChangeStageService(tenantId: number, boardType: OpportunityBoardType, opp_id: number, stg_master_id:number): Observable {\r\n\r\n return this.http.post(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITY.OPPORTUNITY}/${opp_id}/change_stage/${stg_master_id}`, {})\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CONST_URL_SEGEMENTS } from \"@fitness-force/constants\";\r\nimport { AppErrors, ConflictError, NotFoundError } from \"@fitness-force/errors\";\r\nimport { throwError, Observable, pipe } from \"rxjs\";\r\nimport { catchError, map } from \"rxjs/operators\";\r\nimport { ListTaskCategoryResponse } from \"@fitness-force/models\";\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TaskCategoryService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }///tenants/{tenant_id}/task_catagories\r\n\r\n GetTaskCategory(tenantId: number,allParams:Array=[]): Observable {\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n\r\n parsedParams = parsedParams.append(p.name, p.value);\r\n });\r\n }\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASKCATEGORY.GETTASKCATEGORY.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url, {headers: this.httpOptions.headers , params: parsedParams}).pipe(map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n addTaskCategory(tenantId: number, data:any): Observable {\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASKCATEGORY.GETTASKCATEGORY.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url,data,{ headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n else if (error.status === 409) {\r\n return throwError(() => new ConflictError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n updateTaskCategory(tenantId: number, categoryId:number, data:any): Observable {\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASKCATEGORY.UPDATETASKCATEGORY.replace('{tenant_id}', tenantId.toString()).replace('{tsk_category_id}', categoryId.toString());;\r\n return this.http.put(url,data,{ headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n markActive(tenantId: number, categoryId:number): Observable {\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASKCATEGORY.MARKACTIVE.replace('{tenant_id}', tenantId.toString()).replace('{tsk_category_id}', categoryId.toString());\r\n return this.http.post(url,null,{ headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n markInActive(tenantId: number, categoryId:number): Observable {\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASKCATEGORY.MARKINACTIVE.replace('{tenant_id}', tenantId.toString()).replace('{tsk_category_id}', categoryId.toString());\r\n return this.http.post(url,null,{ headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n return res;\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { OpportunityBoardType } from '@fitness-force/enum';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { throwError, Observable, pipe } from \"rxjs\";\r\nimport { catchError, map, retry } from \"rxjs/operators\";\r\nimport { CreateCallOutcomeRequest, CreateRecurringTaskByClientRequest, CreateRecurringTaskByOpportunityRequest, CreateTaskByClientRequest, CreateTaskByOpportunityRequest, CreateTourOutcomeRequest, UpdateTask, TASK_TYPE, CreateResponse } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from \"@fitness-force/constants\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class TaskService {\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n TaskGetAll(tenantId: number, allParams: Array): Observable {\r\n\r\n let parsedParams = new HttpParams()\r\n if(allParams.length > 0){\r\n\r\n allParams.forEach((p: any) => {\r\n parsedParams = parsedParams.append(p.paramName, p.paramValue);\r\n });\r\n }\r\n\r\n\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASK.GET_TASK.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url, {headers: this.httpOptions.headers , params: parsedParams}).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n TaskCreateServiceByClient(tenantId: number, createTaskByClientRequest: CreateTaskByClientRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASK.POST_TASK_BY_CLIENT.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url, createTaskByClientRequest, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n TaskCreateRecurringServiceByClient(tenantId: number, createRecurringTaskByClientRequest: CreateRecurringTaskByClientRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASK.POST_RECURRING_TASK_BY_CLIENT.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url, createRecurringTaskByClientRequest, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n TaskCreateServiceByOpportunity(tenantId: number, createTaskByOpportunityRequest: CreateTaskByOpportunityRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASK.POST_TASK_BY_OPPORTUNITY.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url, createTaskByOpportunityRequest, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n TaskCreateRecurringServiceByOpportunity(tenantId: number, createRecurringTaskByOpportunityRequest: CreateRecurringTaskByOpportunityRequest): Observable {\r\n const url = environment.BASE_URL + CONST_URL_SEGEMENTS.TASK.POST_RECURRING_TASK_BY_OPPORTUNITY.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url, createRecurringTaskByOpportunityRequest, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n CreateLogCallOutcomeService(tenantId: number, taskId: number, createCallOutcomeRequest: CreateCallOutcomeRequest): Observable {\r\n return this.http.post(`${environment.BASE_URL}/tenants/${tenantId}/opportunity${CONST_URL_SEGEMENTS.TASK.CREATE_CALL_OUTCOME}`, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n CreateLogTourOutcomeService(tenantId: number, taskId: number, createTourOutcomeRequest: CreateTourOutcomeRequest): Observable {\r\n return this.http.post(`${environment.BASE_URL}/tenants/${tenantId}/opportunity${CONST_URL_SEGEMENTS.TASK.CREATE_TOUR_OUTCOME}`, this.httpOptions).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n UpdateTaskService(tenantId: number, taskId: number, updateTask: UpdateTask): Observable {\r\n return this.http.put(`${environment.BASE_URL}/tenants/${tenantId}/tasks/${taskId}`, updateTask, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n })\r\n , catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetTask(tenantId: number, taskId: number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/tasks/${taskId}`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n })\r\n , catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError());\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CreateCallOutcomeRequest, CreateTourOutcomeRequest } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { retry, catchError, map, ignoreElements } from 'rxjs/operators';\r\nimport { environment } from '../../../../../apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TaskCallOutcomeService {\r\n BASE_URL: string = environment.BASE_URL;\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n createTaskCallOutcome(callOutCome: CreateCallOutcomeRequest, tenantId: number, taskId: number) {\r\n let url: string = this.BASE_URL + CONST_URL_SEGEMENTS.TASKOUTCOME.POST_CALL_OUTCOME.replace('{tenant_id}', tenantId.toString()).replace('{tsk_id}', taskId.toString());\r\n\r\n return this.http.post(url, callOutCome, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n createTourOutcome(tenantId: number, taskId: number,tourOutCome: CreateTourOutcomeRequest, ) {\r\n let url: string = this.BASE_URL + CONST_URL_SEGEMENTS.TASKOUTCOME.POST_TOUR_OUTCOME.replace('{tenant_id}', tenantId.toString()).replace('{tsk_id}', taskId.toString());\r\n\r\n return this.http.post(url, tourOutCome, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return true;\r\n }),\r\n catchError((error:any) => {\r\n console.log(error,'errororor');\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as CryptoJS from 'crypto-js';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CyptoSevice{\r\n tokenFromUI = '0123456789123456';\r\n encrypted: any = '';\r\n decrypted = '';\r\n\r\n constructor() {\r\n }\r\n encryptUsingAES256(request: any): string {\r\n const key = CryptoJS.enc.Utf8.parse(this.tokenFromUI);\r\n const iv = CryptoJS.enc.Utf8.parse(this.tokenFromUI);\r\n const encrypted = CryptoJS.AES.encrypt(\r\n JSON.stringify(request), key, {\r\n keySize: 16,\r\n iv,\r\n mode: CryptoJS.mode.ECB,\r\n padding: CryptoJS.pad.Pkcs7\r\n });\r\n return this.encrypted = encrypted.toString();\r\n }\r\n decryptUsingAES256(response: any): string {\r\n const key = CryptoJS.enc.Utf8.parse(this.tokenFromUI);\r\n const iv = CryptoJS.enc.Utf8.parse(this.tokenFromUI);\r\n\r\n return this.decrypted = CryptoJS.AES.decrypt(\r\n response, key, {\r\n keySize: 16,\r\n iv,\r\n mode: CryptoJS.mode.ECB,\r\n padding: CryptoJS.pad.Pkcs7\r\n }).toString(CryptoJS.enc.Utf8);\r\n }\r\n}\r\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { HTTP_RES_ERROR_CODE } from '@fitness-force/enum';\r\nimport { catchError, Observable, of, tap, throwError } from 'rxjs';\r\nimport { AuthSevices } from './auth.service';\r\n\r\n@Injectable()\r\nexport class IntercepterService implements HttpInterceptor{\r\n publicApis: Array;\r\n\r\n constructor(\r\n private router: Router,\r\n private injector: Injector\r\n ) {\r\n\r\n this.publicApis= CONST_URL_SEGEMENTS.PUBLIC_APIS;\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n let authService = this.injector.get(AuthSevices)\r\n if (this.validInterceptor(req.url)) {\r\n let tokenizedReq = req.clone({\r\n setHeaders:\r\n {\r\n 'Content-Type': 'application/json',\r\n 'authorization': `Bearer ${authService.tokenFromStorage ? authService.tokenFromStorage : ''}`,\r\n }\r\n });\r\n\r\n return next.handle(tokenizedReq)\r\n .pipe((catchError((err:any) => { \r\n return this.handleAuthError(err);\r\n })))\r\n }\r\n return next.handle(req)\r\n .pipe((catchError((err:any) => { \r\n return this.handleAuthError(err);\r\n })))\r\n }\r\n\r\n private validInterceptor(requestUrl: string): boolean {\r\n let positionIndicator: string = 'fftesting.fitnessforce.com/';\r\n let positionIndicatorOfAssets: string = 'dist/'\r\n \r\n let position = (requestUrl.indexOf(positionIndicatorOfAssets) == -1 ) ? requestUrl.indexOf(positionIndicator) : requestUrl.indexOf(positionIndicatorOfAssets) ;\r\n let positionIndicatorLength = (requestUrl.indexOf(positionIndicatorOfAssets) == -1 ) ? positionIndicator.length : positionIndicatorOfAssets.length\r\n if (position > 0) {\r\n \r\n let destination: string = requestUrl.substring(position + positionIndicatorLength);\r\n for (let address of this.publicApis) {\r\n if (new RegExp(address).test(destination)) {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n }\r\n handleAuthError(err: HttpErrorResponse): Observable {\r\n //handle your auth error or rethrow\r\n if (err.status === HTTP_RES_ERROR_CODE.UNAUTHORIZED || err.status === HTTP_RES_ERROR_CODE.FORBIDDEN) {\r\n //navigate /delete cookies or whatever\r\n console.log('erty', err)\r\n this.router.navigateByUrl(`/`);\r\n // if you've caught / handled the error, you don't want to rethrow it unless you also want downstream consumers to have to handle it as well.\r\n return of(err.message); // or EMPTY may be appropriate here\r\n }\r\n return throwError(()=>err);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserAgent {\r\n agent = navigator.userAgent;\r\n browser = '';\r\n browserVersion = '';\r\n constructor() {}\r\n get uAgent() {\r\n // console.log('agent', this.agent.split('Chrome/')[1]);\r\n if (this.agent.match(/chrome|chromium|crios/i)) {\r\n this.browser = 'Google Chrome';\r\n } else if (this.agent.match(/firefox|fxios/i)) {\r\n this.browser = 'Firefox';\r\n } else if (this.agent.match(/safari/i)) {\r\n this.browser = 'safari';\r\n } else if (this.agent.match(/opr\\//i)) {\r\n this.browser = 'opera';\r\n } else if (this.agent.match(/edg/i)) {\r\n this.browser = 'edge';\r\n } else {\r\n this.browser = 'No browser detection';\r\n }\r\n\r\n return { browser: this.browser };\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { IPSetting } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { map, catchError, throwError, Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class LocationService {\r\n IP_API_URL: string = environment.Ip_Api_URL;\r\n constructor(private http: HttpClient) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n getIpData(): Observable {\r\n return this.http.get(this.IP_API_URL).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: any) => {\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n getPosition(): Promise {\r\n return new Promise((resolve, reject) => {\r\n navigator.geolocation.getCurrentPosition(\r\n (resp) => {\r\n let location: IPSetting = {} as IPSetting;\r\n location.lat = resp.coords.latitude;\r\n location.lon = resp.coords.longitude;\r\n resolve(location);\r\n },\r\n (err) => {\r\n this.getIpData().subscribe((res: IPSetting | PromiseLike) => {\r\n resolve(res);\r\n })\r\n }\r\n );\r\n });\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { AppointmentTypeList, ListAppointmentSubTypeResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppointmentSubtypeService {\r\n\r\n constructor(private http: HttpClient, private route: Router) {}\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n GetAppointmentSubTypeList(tenantId:number, appointmentTypeId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT_SUB_TYPE.GET_APPOINTMENT_SUB_TYPES.replace('{tenant_id}', tenantId.toString()).replace('{appt_type_id}',appointmentTypeId.toString());\r\n return this.http.get(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { OpportunityBoardType } from '@fitness-force/enum';\r\nimport { NotFoundError } from '@fitness-force/errors';\r\nimport { ListOpportunityStageMasterResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors } from 'libs/errors/src/lib/app.errors';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OpportunityStageService {\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n //tenants/{tenant_id:int}/boards/{board_id:int}/opportunities\r\n OpportunityStageMasterListService(tenantId: number, boardType: OpportunityBoardType): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}${CONST_URL_SEGEMENTS.OPPORTUNITYSTAGEMASTER.OPPSTAGEMST}`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getOpportunityStageMaster(tenantId: number, boardType: OpportunityBoardType,opp_stage_mst_id:number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/boards/${boardType}/opp_stage_mst/${opp_stage_mst_id}`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { GetPlanMasterByIdResponse, GetPlanMasterListResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PlanmasterService {\r\n constructor(private http: HttpClient, private route: Router) {\r\n }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n //tenants/{tenant_id:int}/boards/{board_id:int}/opportunities\r\n getSubscriptionPlanService(tenantId: number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/subscription_plans`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getSubscriptionPlanServiceById(tenantId: number, subscription_planId: number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/tenants/${tenantId}/subscription_plans/${subscription_planId}`, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n} // class closed\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { ListRoomResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RoomService {\r\n\r\n constructor(private http: HttpClient, private route: Router) {}\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n GetRoomList(tenantId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.ROOM.ROOM_LIST.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { OmniSearchRequest, OmniSearchResponse } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { environment } from '../../../../apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OmniSearchService {\r\n BASE_URL: string = environment.BASE_URL;\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n\r\n Search(request: OmniSearchRequest) {\r\n return this.http.post(this.BASE_URL + CONST_URL_SEGEMENTS.SEARCH.POST_SEARCH, request, this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n throw (res);\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport {\r\n PlanBreakUpCalculationRequest, PlanBreakUpCalculationResponse,\r\n StaffDiscountCalculationRequest, SignUpRequest, SignUpResponse\r\n} from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, throwError, Observable, map } from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PlansubscriptionService {\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n constructor(private http: HttpClient, private route: Router) { }\r\n\r\n getPlanBreakUpCalculation(tenant_id: number, subscription_plan_id: number, planBreakUpCalculationRequest: PlanBreakUpCalculationRequest): Observable {\r\n return this.http.post(`${environment.BASE_URL}/tenants/${tenant_id}/subscription_plans/${subscription_plan_id}/plan_breakup_calculation`\r\n , planBreakUpCalculationRequest\r\n , this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n getStaffDiscountCalculation(tenant_id: number, subscription_plan_id: number, staffDiscountCalculationRequest: StaffDiscountCalculationRequest)\r\n : Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/tenants/${tenant_id}/subscription_plans/${subscription_plan_id}/staff_discount_calculation`\r\n , staffDiscountCalculationRequest\r\n , this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n\r\n SubscriptionSignup(tenant_id: number, client_id: number, SignUpRequest: SignUpRequest)\r\n : Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/tenants/${tenant_id}/clients/${client_id}/subscription_signups`\r\n , SignUpRequest\r\n , this.httpOptions)\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {Dropdown,HiddenField,RelativeDate,REPORTSTOREINTERFACE,TENANTSINTERFACE,TimePeriodDropdown} from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nimport { CommonService } from '../common.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ReportDataService {\r\n timePeriod = this.commonService.GetTimePeriods();\r\n centers!: Observable | any;\r\n tenantId! :Observable | any;\r\n\r\n public tenantObs = new Subject();\r\n\r\n commonFields = [\r\n new HiddenField({\r\n value: '',\r\n key: 'from_date',\r\n label: '',\r\n required: false,\r\n order: 0,\r\n type: 'hidden',\r\n }),\r\n new HiddenField({\r\n value: '',\r\n key: 'to_date',\r\n label: '',\r\n required: false,\r\n order: 0,\r\n type: 'hidden',\r\n }),\r\n ];\r\n\r\n \r\n\r\n constructor(private store: Store, private commonService: CommonService) { }\r\n\r\n GetReportStoreData(tenantId: number) {\r\n this.tenantId= tenantId;\r\n let INITIAL_REPORT_STATE: REPORTSTOREINTERFACE[] = [\r\n {\r\n report_key: 'SubscriptionSignUpReport',\r\n claims: [],\r\n payload:\r\n '{\"from_date\":\"\", \"to_date\":\"\", \"plan_id\":\"\", \"time_zone\":\"\", \"current_page\":\"1\", \"page_size\":\"100\" }',\r\n default_payload: `{\"from_date\":'${this.commonService.GetRelativeFromDate(new Date(),RelativeDate.ThisMonth,0).from_date}', \"to_date\":'${this.commonService.GetRelativeFromDate(new Date(),RelativeDate.ThisMonth,0).from_date}', \"plan_id\":\"\", \"time_zone\":\"\", \"current_page\":\"1\", \"page_size\":\"100\" }`,\r\n default_relative_Date: RelativeDate[RelativeDate.ThisMonth].toString(),\r\n mandatory_fields: [],\r\n },\r\n {\r\n report_key: 'ClientListReport',\r\n claims: [],\r\n payload:\r\n '{\"from_date\":\"\", \"to_date\":\"\",\"full_name\":\"\", \"time_zone\":\"\",\"home_club_id\":' +this.tenantId +', \"current_page\":1, \"page_size\":100 }',\r\n default_payload:\r\n `{\"from_date\": \"${this.commonService.GetRelativeFromDate(new Date(),RelativeDate.ThisMonth,0).from_date.toISOString()}\",\"to_date\":\"${this.commonService.GetRelativeFromDate(new Date(),RelativeDate.ThisMonth,0).to_date.toISOString()}\",\"full_name\":\"\", \"time_zone\":\"\",\"home_club_id\":${this.tenantId}, \"current_page\":1, \"page_size\":100 }`,\r\n default_relative_Date:\r\n RelativeDate[RelativeDate.ThisMonth].toString(),\r\n mandatory_fields: [\r\n new TimePeriodDropdown({\r\n value: '',\r\n key: 'timePeriod',\r\n label: 'Time Period',\r\n required: true,\r\n order: 1,\r\n options: this.timePeriod,\r\n })\r\n ].concat(this.commonFields),\r\n },\r\n ];\r\n \r\n return INITIAL_REPORT_STATE;\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NotFoundError } from '@fitness-force/errors';\r\nimport {\r\n CreateReportFilterRequest,\r\n CreateResponse,\r\n GetReportRequest,\r\n LongReportRequest,\r\n ReportFilter,\r\n ReportFilterResponse,\r\n ReportResponse,\r\n ScheduleFilterDeleteRequest,\r\n ScheduleReportFilterRequest,\r\n} from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors } from 'libs/errors/src/lib/app.errors';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ReportFilterService {\r\n constructor(private http: HttpClient, private router: Router) {}\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n GetReportByKey(getReportRequest: GetReportRequest): Observable {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${getReportRequest.tenant_id}/reports/${getReportRequest.report_key}\r\n ?rpt_fltr_relative_date_range=${getReportRequest.rpt_fltr_relative_date_range}&rpt_fltr_payload=${getReportRequest.rpt_fltr_payload}`,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetReportFiltersByKey(tenantId: number,reportKey: string): Observable {\r\n return this.http\r\n .get(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/filter`,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res.items;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n CreateReportFilter(tenantId: number,reportKey: string,createReportFilter: CreateReportFilterRequest): Observable\r\n {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/filter`,\r\n createReportFilter,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n UpdateReportFilter(tenantId: number,reportKey: string,filterId: number,updateReportFilter: CreateReportFilterRequest): Observable\r\n {\r\n return this.http\r\n .put(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/filters/${filterId}`,\r\n updateReportFilter,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n DeleteReportFilter(tenantId: number,reportKey: string,reportId: number): Observable \r\n {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/filters/${reportId}`,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ScheduleReportFilter(tenantId: number,reportKey: string,reportFilterId: number, scheduleReportPaylkoad: ScheduleReportFilterRequest): Observable \r\n {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/filters/${reportFilterId}/schedules`,scheduleReportPaylkoad,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n CreateLongReport(tenantId: number,reportKey: string, longerReportRequest: LongReportRequest): Observable \r\n {\r\n return this.http\r\n .post(\r\n `${environment.BASE_URL}/tenants/${tenantId}/reports/${reportKey}/long_report`,longerReportRequest,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n DeleteScheduleFilter(scheduleFilterDeleteRequest: ScheduleFilterDeleteRequest): Observable \r\n {\r\n return this.http\r\n .delete(\r\n `${environment.BASE_URL}/tenants/${scheduleFilterDeleteRequest.tenant_id}/reports/${scheduleFilterDeleteRequest.report_key}\r\n /filters/${scheduleFilterDeleteRequest.filter_id}/schedules/${scheduleFilterDeleteRequest.schedule_id}`,\r\n {\r\n headers: this.httpOptions.headers,\r\n }\r\n )\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { throwError, Observable, pipe } from 'rxjs';\r\nimport { catchError, map, retry } from 'rxjs/operators';\r\nimport { Report, ReportAccessRequest, ReportListResponse } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ReportsService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n }),\r\n };\r\n\r\n GetReports(): Observable {\r\n return this.http\r\n .get(`${environment.BASE_URL}/reports`, {\r\n headers: this.httpOptions.headers,\r\n })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n MarkAsFevouriteReport(reportkey: string): Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/reports/${reportkey}/add_favourite`, {\r\n headers: this.httpOptions.headers,\r\n })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n RemoveFromFevouriteReport(reportkey: string): Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/reports/${reportkey}/remove_favourite`, {\r\n headers: this.httpOptions.headers,\r\n })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n RequestReportAccess(requestData: ReportAccessRequest): Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/request_access`, requestData, { headers: this.httpOptions.headers })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { AppointmentById, AppointmentListResponse, CancelAppointmentRequest, CreateAppointmentRequest, CreateRecurringAppointmentRequest, CreateResponse, ListAppointmentRequest, RescheduleAppointmentRequest, RescheduleRecurringAppointmentRequest, SubstituteCoachRequest, UpdateAppointmentRequest } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppointmentService {\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n \r\n GetAppointments(appointmentRequest: ListAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.GET_APPOINTMENTS.replace('{tenant_id}', appointmentRequest.tenant_id.toString());\r\n const queryParams = {\"start_datetime\":appointmentRequest.start_datetime,\"end_datetime\":appointmentRequest.end_datetime};\r\n return this.http.get(url,{headers: this.httpOptions.headers,params:queryParams}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetAppointment(tenantId:number,apptId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.GET_APPOINTMENT.replace('{tenant_id}',tenantId.toString()).replace('{appt_id}', apptId.toString());;\r\n let queryParam = new HttpParams();\r\n return this.http.get(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n CreateAppointment(tenantId:number,createAppointmentRequest: CreateAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.POST_APPOINTMENTS.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url,createAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n CreateRecurringAppointment(tenantId:number,createRecurringAppointmentRequest: CreateRecurringAppointmentRequest ): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.POST_RECURRING_APPOINTMENTS.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url,createRecurringAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n UpdateAppointment(tenantId:number, apptId:number, updateAppointmentRequest: UpdateAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.PUT_APPOINTMENT.replace('{tenant_id}', tenantId.toString()).replace('{appt_id}', apptId.toString());\r\n return this.http.put(url,updateAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n RescheduleAppointment(tenantId:number, apptId:number, rescheduleAppointmentRequest: RescheduleAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.RESCHEDULE_APPOINTMENT.replace('{tenant_id}', tenantId.toString()).replace('{appt_id}', apptId.toString());\r\n return this.http.post(url,rescheduleAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n SubstituteCoach(tenantId:number, apptId:number, substituteCoachRequest: SubstituteCoachRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.SUBSTITUTE_COACH.replace('{tenant_id}', tenantId.toString()).replace('{appt_id}', apptId.toString());\r\n return this.http.post(url,substituteCoachRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n \r\n UpdateRecurringAppointment(tenantId:number, apptTemplateId:number, updateAppointmentRequest: UpdateAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.PUT_RECURRING_APPOINTMENT.replace('{tenant_id}', tenantId.toString()).replace('{appt_recurring_template_id}', apptTemplateId.toString());\r\n return this.http.put(url,updateAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n RescheduleRecurringAppointment(tenantId:number, apptTemplateId:number, rescheduleAppointmentRequest: RescheduleRecurringAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.RESCHEDULE_RECURRING_APPOINTMENT.replace('{tenant_id}', tenantId.toString()).replace('{appt_recurring_template_id}', apptTemplateId.toString());\r\n return this.http.post(url,rescheduleAppointmentRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n SubstituteCoachInRecurring(tenantId:number, apptTemplateId:number, substituteCoachRequest: SubstituteCoachRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.SUBSTITUTE_COACH_RECURRING.replace('{tenant_id}', tenantId.toString()).replace('{appt_recurring_template_id}', apptTemplateId.toString());\r\n return this.http.post(url,substituteCoachRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n MarkClientCheckIn(tenant_Id:number,appt_id:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.MARK_CLIENT_CHECKEDIN.replace('{tenant_id}', tenant_Id.toString()).replace('{appt_id}', appt_id.toString());\r\n return this.http.post(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n MarkClientNoShow(tenant_Id:number,appt_id:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.MARK_CLIENT_NOSHOW.replace('{tenant_id}', tenant_Id.toString()).replace('{appt_id}', appt_id.toString());\r\n return this.http.post(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n CancelAppointment(tenant_Id:number,appt_id:number, cancelRequest:CancelAppointmentRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.APPOINTMENT.CANCEL_APPOINTMENT.replace('{tenant_id}', tenant_Id.toString()).replace('{appt_id}', appt_id.toString());\r\n return this.http.post(url,cancelRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Params, Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CancelClassRequest, ClassById, ClassListResponse, CreateClassRequest, CreateRecurringClassRequest, CreateResponse, ListClassRecurringTemplate, ListClassRequest, ListRecurringClassRequest, RescheduleClassRequest, RescheduleRecurringClassRequest, SubstituteCoachInClassRequest, UpdateClassRequest } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClassService {\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n GetClasses(classListRequest: ListClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.GET_CLASSES.replace('{tenant_id}', classListRequest.tenant_id.toString());\r\n let queryParams = new HttpParams()\r\n .set('start_date', classListRequest.start_date)\r\n .set('end_date', classListRequest.end_date)\r\n if(classListRequest.getClientDetails)\r\n {\r\n queryParams = queryParams.append(\"getClientDetails\",classListRequest.getClientDetails)\r\n }\r\n\r\n return this.http.get(url,{headers: this.httpOptions.headers,params:queryParams}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetClass(tenantId: number,classId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.GET_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.get(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetRecurringClassTemplates(tenantId: number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.GET_RECURRING_CLASS_TEMPLATE.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetRecurringClassesByTemplateId(listRecurringClassRequest : ListRecurringClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.GET_RECURRING_CLASSES.replace('{tenant_id}', listRecurringClassRequest.tenant_id.toString()).replace('{class_recurring_template_id}', listRecurringClassRequest.class_recurring_template_id.toString());\r\n const queryParams = {\"page_number\":listRecurringClassRequest.page_number,\"page_size\":listRecurringClassRequest.page_size};\r\n\r\n return this.http.get(url,{headers: this.httpOptions.headers,params:queryParams}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n\r\n CreateClass(tenantId:number,createClassRequest: CreateClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.POST_CLASSES.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url,createClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n CreateRecurringClass(tenantId:number,createRecurringClassRequest: CreateRecurringClassRequest ): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.POST_RECURRING_CLASSES.replace('{tenant_id}', tenantId.toString());\r\n return this.http.post(url,createRecurringClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n UpdateClass(tenantId:number, classId:number, updateClassRequest: UpdateClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.PUT_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.put(url,updateClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n UpdateRecurringClass(tenantId:number, classTemplateId:number, updateClassRequest: UpdateClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.PUT_RECURRING_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_recurring_template_id}', classTemplateId.toString());\r\n return this.http.put(url,updateClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n RescheduleClass(tenantId:number, classId:number, rescheduleClassRequest: RescheduleClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.RESCHEDULE_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,rescheduleClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n RescheduleRecurringClass(tenantId:number, classTemplateId:number, rescheduleClassRequest: RescheduleRecurringClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.RESCHEDULE_RECURRING_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_recurring_template_id}', classTemplateId.toString());\r\n return this.http.post(url,rescheduleClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n SubstituteCoach(tenantId:number, classId:number, substituteCoachRequest: SubstituteCoachInClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.SUBSTITUTE_COACH.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,substituteCoachRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n SubstituteCoachInRecurring(tenantId:number, classTemplateId:number, substituteCoachRequest: SubstituteCoachInClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.SUBSTITUTE_COACH_RECURRING.replace('{tenant_id}', tenantId.toString()).replace('{class_recurring_template_id}', classTemplateId.toString());\r\n return this.http.post(url,substituteCoachRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n CancelClass(tenant_Id:number,classId:number, cancelRequest:CancelClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.CANCEL_CLASS.replace('{tenant_id}', tenant_Id.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,cancelRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n DeleteClass(tenant_Id:number,classId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.DELETE_CLASS.replace('{tenant_id}', tenant_Id.toString()).replace('{class_id}', classId.toString());\r\n return this.http.delete(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n MarkClassComplete(tenant_Id:number,classId:number): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS.COMPLETE_CLASS.replace('{tenant_id}', tenant_Id.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { ClassBookingRequest, CreateResponse, MarkClientCheckedinRequest, MarkClientNoshowRequest, RemoveClientFromClassRequest } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClassBookingService {\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n BASE_URL: string = environment.BASE_URL;\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n BookClientsToClass(tenantId:number,classId: number,classBookingRequest:ClassBookingRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS_BOOKING.BOOK_CLIENTS_TO_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,classBookingRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n RemoveClientsToClass(tenantId:number,classId: number,removeClientFromClassRequest:RemoveClientFromClassRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS_BOOKING.REMOVE_CLIENTS_FROM_CLASS.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,removeClientFromClassRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n MarkNoShow(tenantId:number,classId: number,markClientNoshowRequest:MarkClientNoshowRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS_BOOKING.MARK_CLIENT_NO_SHOW.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,markClientNoshowRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n MarkCheckedIn(tenantId:number,classId: number,markClientCheckedinRequest:MarkClientCheckedinRequest): Observable {\r\n const url = this.BASE_URL + CONST_URL_SEGEMENTS.SCHEDULING.CLASS_BOOKING.MARK_CLIENT_CHECKEDIN.replace('{tenant_id}', tenantId.toString()).replace('{class_id}', classId.toString());\r\n return this.http.post(url,markClientCheckedinRequest,{headers: this.httpOptions.headers}).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { ListServiceTypeResponse } from '@fitness-force/models';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { retry, catchError, map, ignoreElements } from 'rxjs/operators';\r\nimport { environment } from '../../../../../apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ServiceTypeService {\r\n BASE_URL: string = environment.BASE_URL;\r\n constructor(private http: HttpClient) { }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n }\r\n\r\n GetServiceType(tenantId: number): Observable {\r\n let url: string = this.BASE_URL + CONST_URL_SEGEMENTS.SERVICETYPE.GET_SERVICETYPE.replace('{tenant_id}', tenantId.toString());\r\n return this.http.get(url, this.httpOptions)\r\n .pipe(\r\n // should have been mapped \r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpBackend, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, BadRequestError, NotFoundError } from '@fitness-force/errors';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SmsService {\r\n\r\n private readonly httpBackend: HttpClient\r\n constructor(private http: HttpClient, private router: Router, private readonly backEndClientHandler: HttpBackend ) {\r\n this.httpBackend = new HttpClient(backEndClientHandler)\r\n }\r\n\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n };\r\n fetchAllSMSTemplates(tenantId:number): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID}/${tenantId}${CONST_URL_SEGEMENTS.SMS.SMS_TEMPLATE_MASTER}` , {\r\n headers: this.httpOptions.headers\r\n },\r\n \r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if(error.status === 400){\r\n return throwError(()=> new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n fetchSMSTemplatesById(tenantId:number, smsMasterID:number): Observable {\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID}/${tenantId}${CONST_URL_SEGEMENTS.SMS.SMS_TEMPLATE_MASTER}/${smsMasterID}` , {\r\n headers: this.httpOptions.headers\r\n },\r\n \r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if(error.status === 400){\r\n return throwError(()=> new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n sendSMSTemplates(clientId:number, smsData:any): Observable {\r\n\r\n return this.http.post(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.CLIENT.GET_CLIENTS}/${clientId}${CONST_URL_SEGEMENTS.SMS.SEND_SMS}`,smsData, {\r\n headers: this.httpOptions.headers\r\n },\r\n \r\n ).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n console.log('errrt', error)\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n } else if(error.status === 400){\r\n return throwError(()=> new BadRequestError(error))\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { CREATE_STAFF, ReportAccessRequest, ReportFilterScheduleResponse, UPDATE_STAFF } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { STAFF_MODEL } from '@fitness-force/models';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StaffService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetStaffList(BASE_URL: string, TENANT_ID: number): Observable {\r\n let qparam = new HttpParams().set('stf_tent_access_id', TENANT_ID);\r\n if (TENANT_ID == 0)\r\n qparam = new HttpParams();\r\n\r\n return this.http.get(BASE_URL + CONST_URL_SEGEMENTS.STAFF.GET_STAFF_LIST, {\r\n headers: this.httpOptions.headers, params: qparam\r\n }).pipe(map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n return null;\r\n }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetStaffById(STAFF_ID: number): Observable {\r\n let url = environment.BASE_URL + CONST_URL_SEGEMENTS.STAFF.GET_STAFF_LIST + '/' + STAFF_ID;\r\n return this.http.get(url, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) { return res; } else { return null; }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404)\r\n return throwError(() => new NotFoundError(error));\r\n\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n ChangePassword(BASE_URL: string, STAFF_ID: number, OLD_PASSWORD: string, NEW_PASSWORD: string): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_CHANGE_PASSWORD.replace('{staff_id}', STAFF_ID.toString());\r\n const params = { 'old_password': OLD_PASSWORD, 'new_password': NEW_PASSWORD, 'UpdatedBy': 0, 'UpdatedDate': new Date() };\r\n return this.http.post(url, params, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) return throwError(() => new NotFoundError(error));\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SuspendStaff(BASE_URL: string, STAFF_ID: number): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_SUSPEND.replace('{staff_id}', STAFF_ID.toString());\r\n return this.http.post(url, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) return throwError(() => new NotFoundError(error));\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ActivateStaff(BASE_URL: string, STAFF_ID: number): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_ACTIVE.replace('{staff_id}', STAFF_ID.toString());\r\n return this.http.post(url, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n TerminateStaff(BASE_URL: string, STAFF_ID: number): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_TERMINATE.replace('{staff_id}', STAFF_ID.toString());\r\n return this.http.post(url, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ChangeOwnerStaff(BASE_URL: string, STAFF_ID: number, NEW_OWNER_STAFF_ID: number): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_CHANGEOWNER.replace('{staff_id}', STAFF_ID.toString());\r\n const params = { 'new_owner_staff_id': NEW_OWNER_STAFF_ID };\r\n return this.http.post(url, params, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ChangeReportingManager(BASE_URL: string, STAFF_ID: number, NEW_REPORTING_MANGER: number): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_CHANGEREPORTINGMANAGER.replace('{staff_id}', STAFF_ID.toString());\r\n const params = { 'reports_to_id': NEW_REPORTING_MANGER };\r\n return this.http.post(url, params, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) return throwError(() => new NotFoundError(error));\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ChangeTenantAccess(BASE_URL: string, STAFF_ID: number, NEW_TENANT_ACCESS: number[]): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_CHANGECENTERACCESS.replace('{staff_id}', STAFF_ID.toString());\r\n const params = { 'tenant_access_id': NEW_TENANT_ACCESS };\r\n return this.http.post(url, params, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) return throwError(() => new NotFoundError(error));\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetStaffReportSchedule(staffId: number): Observable {\r\n return this.http.get(`${environment.BASE_URL}/staff/${staffId}/schedules`,\r\n { headers: this.httpOptions.headers }).\r\n pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res.items;\r\n } else {\r\n return null;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n CreateStaff(BASE_URL: string, staff: CREATE_STAFF): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.POST_STAFF;\r\n return this.http.post(url, staff, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n return null;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n UpdateStaff(BASE_URL: string, staffId: number, staff: UPDATE_STAFF): Observable {\r\n const url = BASE_URL + CONST_URL_SEGEMENTS.STAFF.PUT_STAFF.replace('{staff_id}', staffId.toString());\r\n return this.http.put(url, staff, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n return null;\r\n }\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n RequestAccess(requestData: ReportAccessRequest): Observable {\r\n return this.http\r\n .post(`${environment.BASE_URL}/request_access`, requestData, { headers: this.httpOptions.headers })\r\n .pipe(\r\n map((res: any) => {\r\n return res;\r\n }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { PayModeType } from '@fitness-force/enum';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport {\r\n ClientMandatoryFieldResponse, CreateClientPaymentTokenResponse, GetSignUpPaymentMethodResponse, WaiverMasterResponseList,\r\n SubscriptionSignUpOrderSummaryBillingDateResponse, SubscriptionSignUpOrderSummaryResponse, SubscriptionSignUpWithBillingJsonResponse, CreateClientWaiversRequest, StatusandSubscriptionDetails\r\n} from '@fitness-force/models';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SubscriptionSignupByUuidService {\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n constructor(private http: HttpClient) {\r\n\r\n }\r\n\r\n GetCompany(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_COMPANY.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map(res => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetTenant(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_TENANT.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map(res => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetOrderSummary(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_ORDERSUMMARY.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetOrderDetails(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_ORDERDETAILS.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetOrderSubscriptionStatus(BASE_URL: string, UUID: string): Observable {\r\n\r\n //This was temperory to get result base on the functionality\r\n //return new Observable(observer => observer.next(Math.floor((Math.random() * 6) + 1)))\r\n\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_ORDERDETAILS.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) =>\r\n res\r\n ),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetOrderSummaryPaymentTimeLine(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_ORDERSUMMARYBILLINGOCCURENCE.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetWaivers(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_WAIVERS.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n PostWaivers(BASE_URL: string, UUID: string, waiverPayload: CreateClientWaiversRequest) {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.POST_WAIVERS.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.post(url, waiverPayload, { headers: this.httpOptions.headers }).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetClientMandatoryField(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_CLIENT_MANDATORYFIELD.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n GetPaymentMethods(BASE_URL: string, UUID: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.GET_PAYMENTMETHODS.replace('{sigup_sts_uuid}', UUID);\r\n\r\n return this.http.get(url, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n ProceedToPay(BASE_URL: string, UUID: string, payModeType: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.POST_PROCEEDTOPAYMENT.replace('{sigup_sts_uuid}', UUID);\r\n const params = { 'payment_modes': payModeType };\r\n\r\n return this.http.post(url, params, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SaveToken(BASE_URL: string, UUID: string, token: string, internaltransactionid: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.POST_SAVETOKEN.replace('{sigup_sts_uuid}', UUID);\r\n const params = { 'token': token, 'internaltransactionid': internaltransactionid };\r\n\r\n return this.http.post(url, params, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n\r\n SaveExternalTransactionId(BASE_URL: string, UUID: string, externalTransactionId: string, internalTransactionId: string): Observable {\r\n let url: string = BASE_URL + CONST_URL_SEGEMENTS.SUBSCRIPTIONSIGNUP.POST_SAVEEXTERNALTRANSACTIONID.replace('{sigup_sts_uuid}', UUID);\r\n const params = { 'external_transaction_id': externalTransactionId, 'internal_transaction_id': internalTransactionId };\r\n\r\n return this.http.post(url, params, this.httpOptions).pipe(\r\n map((res: any) => res),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TenantService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json'\r\n })\r\n };\r\n\r\n GetTenantList(BASE_URL: string): Observable {\r\n return this.http.get(BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANT_LIST, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) { return res; }\r\n else { return null; }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n\r\n GetTenantById(BASE_URL: string, tenantId: number): Observable {\r\n return this.http.get(BASE_URL + CONST_URL_SEGEMENTS.TENANT.GET_TENANTBYID + '/' + tenantId, { headers: this.httpOptions.headers }).pipe(map((res: any) => {\r\n if (res) { return res; }\r\n else { return null; }\r\n }), catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n }));\r\n }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Inject, Injectable, LOCALE_ID } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TimeconversionService {\r\n\r\n languageCode = new BehaviorSubject(\"\");\r\n\r\n constructor(public store: Store, @Inject(LOCALE_ID) public locale: string, private datePipe: DatePipe) {\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.languageCode.next(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n }\r\n\r\n private readonly datePatterns = new Map([\r\n ['short', 'd/M/y, h:mm:ss a'],\r\n ['medium', 'MMM d, y, h:mm:ss a'],\r\n ['long', 'EEEE, LLLL d, y, h:mm:ss a'],\r\n ['dateOnly', 'MMM d, y'],\r\n ['full', 'EEEE, MMMM d, y, h:mm:ss a zzzz'],\r\n ['shortDate', 'M/d/yy'],\r\n ['mediumDate', 'MMM d, y'],\r\n ['longDate', 'MMMM d, y'],\r\n ['fullDate', 'EEEE, MMMM d, y'],\r\n ['shortTime', 'h:mm a'],\r\n ['mediumTime', 'h:mm:ss a'],\r\n ['longTime', 'h:mm:ss a z'],\r\n ['fullTime', 'h:mm:ss a zzzz'],\r\n ['atDate', 'dd MMM yyyy,hh:mm a'],\r\n ['usformat', 'M/d/yyyy'],\r\n ['expiryDate', 'M/d'],\r\n ]);\r\n\r\n formatDate(date: Date | string, format?: string): any {\r\n let pattern = this.datePatterns.get('dateOnly');\r\n if (format) pattern = this.datePatterns.get(format!);\r\n // TODO: Need to put defaultTimezone here discussion needed how localization is handled\r\n const datePipe: DatePipe = new DatePipe(this.languageCode.value);\r\n return datePipe.transform(date, pattern);\r\n }\r\n\r\n // Convert UTC time to Local Time\r\n ConvertUTCToLocalDateTime(date: Date | string): Date {\r\n let localDate = new Date(date)\r\n let offset = new Date().getTimezoneOffset();\r\n localDate.setMinutes(localDate.getMinutes() - offset);\r\n return localDate;\r\n }\r\n\r\n // Convert Local Time To UTC\r\n ConvertLocalDateTimeToUTC(date: Date | string): string {\r\n return new Date(date).toUTCString();\r\n }\r\n\r\n // Get converted UTC datetime by date and time\r\n GetUTCDateTimeByDateAndTime(date: Date | string, time: Date | string): string {\r\n time = new Date(time);\r\n date = new Date(date);\r\n\r\n // let followupTime = new Date(time).toLocaleTimeString();\r\n // let followupDate = new Date(date).toLocaleDateString();\r\n let followupDateTime = new Date(\r\n date.getFullYear(),\r\n date.getMonth(),\r\n date.getDate(),\r\n time.getHours(),\r\n time.getMinutes(),\r\n time.getSeconds(),\r\n time.getMilliseconds()\r\n ).toISOString();\r\n return followupDateTime;\r\n }\r\n\r\n GetUTCTimeFromDate(date: Date | string) {\r\n let utcDate = new Date(date).toISOString();\r\n return this.datePipe.transform(utcDate, 'H:mm', 'UTC')!.toString();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { retry, catchError, map, ignoreElements } from 'rxjs/operators';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { CONST_URL_SEGEMENTS } from '@fitness-force/constants';\r\nimport { GetStaffListResponse, PagedResults, PaginationFilter } from '@fitness-force/models';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n constructor(private http: HttpClient, private router: Router) { }\r\n \r\n getStaffList(paginationFilter: PaginationFilter, stf_tent_access_id?: number):Observable> {\r\n\r\n let param: any = paginationFilter;\r\n if (typeof stf_tent_access_id != 'undefined' && stf_tent_access_id) {\r\n param.append(\"stf_tent_access_id\", stf_tent_access_id);\r\n }\r\n\r\n return this.http.get(`${environment.BASE_URL}${CONST_URL_SEGEMENTS.USERS.STAFFS}`\r\n , { params: param, headers: new HttpHeaders({ 'Content-Type': 'application/json' }) } \r\n )\r\n .pipe(\r\n map((res: any) => { return res; }),\r\n catchError((error: Response) => {\r\n if (error.status === 404) {\r\n return throwError(() => new NotFoundError(error));\r\n }\r\n return throwError(() => new AppErrors(error));\r\n })\r\n );\r\n }\r\n}\r\n","export * from './lib/constants.data';\r\nexport * from './lib/constants.url';\r\nexport * from './lib/constants.crm';\r\nexport * from './lib/constants.countries';\r\nexport * from './lib/constants.states';\r\nexport * from './lib/constants.cities';\r\nexport * from './lib/constants.schedule';","import { City } from \"@fitness-force/models\";\r\n\r\nexport const CONST_CITIES: City[] = [\r\n { \"id\": 1, \"name\": \"mumbai\", \"code\": \"Mum\", \"state_code\": \"MH\", \"state_id\": 1 },\r\n { \"id\": 2, \"name\": \"pune\", \"code\": \"PU\", \"state_code\": \"MH\", \"state_id\": 1 },\r\n { \"id\": 3, \"name\": \"latur\", \"code\": \"LTR\", \"state_code\": \"MH\", \"state_id\": 1 },\r\n { \"id\": 4, \"name\": \"New Delhi`\", \"code\": \"NDL\", \"state_code\": \"DL\", \"state_id\": 2 }\r\n];","import { Country } from \"@fitness-force/models\";\r\n\r\nexport const CONST_COUNTRIES: Country[] = [\r\n { \"id\": 1, \"name\": \"Afghanistan\", \"dial_code\": \"93\", \"two_letter_code\": \"AF\", \"three_letter_code\": \"AFG\", \"currency_code\": \"AFN\", \"currency_name\": \"AFN\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 2, \"name\": \"Aland Islands\", \"dial_code\": \"340\", \"two_letter_code\": \"AX\", \"three_letter_code\": \"ALA\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 3, \"name\": \"Albania\", \"dial_code\": \"355\", \"two_letter_code\": \"AL\", \"three_letter_code\": \"ALB\", \"currency_code\": \"ALL\", \"currency_name\": \"ALL\", \"currency_symbol\": \"Lek\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 4, \"name\": \"Algeria\", \"dial_code\": \"213\", \"two_letter_code\": \"DZ\", \"three_letter_code\": \"DZA\", \"currency_code\": \"DZD\", \"currency_name\": \"DZD\", \"currency_symbol\": \"??\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 5, \"name\": \"American Samoa\", \"dial_code\": \"-68\", \"two_letter_code\": \"AS\", \"three_letter_code\": \"ASM\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 6, \"name\": \"Andorra\", \"dial_code\": \"376\", \"two_letter_code\": \"AD\", \"three_letter_code\": \"AND\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 7, \"name\": \"Angola\", \"dial_code\": \"244\", \"two_letter_code\": \"AO\", \"three_letter_code\": \"AGO\", \"currency_code\": \"AOA\", \"currency_name\": \"AOA\", \"currency_symbol\": \"Kz\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 8, \"name\": \"Anguilla\", \"dial_code\": \"-26\", \"two_letter_code\": \"AI\", \"three_letter_code\": \"AIA\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 9, \"name\": \"Antarctica\", \"dial_code\": \"\", \"two_letter_code\": \"AQ\", \"three_letter_code\": \"ATA\", \"currency_code\": \"\", \"currency_name\": \"\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 10, \"name\": \"Antigua And Barbuda\", \"dial_code\": \"-26\", \"two_letter_code\": \"AG\", \"three_letter_code\": \"ATG\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 11, \"name\": \"Argentina\", \"dial_code\": \"54\", \"two_letter_code\": \"AR\", \"three_letter_code\": \"ARG\", \"currency_code\": \"ARS\", \"currency_name\": \"ARS\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 12, \"name\": \"Armenia\", \"dial_code\": \"374\", \"two_letter_code\": \"AM\", \"three_letter_code\": \"ARM\", \"currency_code\": \"AMD\", \"currency_name\": \"AMD\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 13, \"name\": \"Aruba\", \"dial_code\": \"297\", \"two_letter_code\": \"AW\", \"three_letter_code\": \"ABW\", \"currency_code\": \"AWG\", \"currency_name\": \"AWG\", \"currency_symbol\": \"ƒ\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 14, \"name\": \"Australia\", \"dial_code\": \"61\", \"two_letter_code\": \"AU\", \"three_letter_code\": \"AUS\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 15, \"name\": \"Austria\", \"dial_code\": \"43\", \"two_letter_code\": \"AT\", \"three_letter_code\": \"AUT\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 16, \"name\": \"Azerbaijan\", \"dial_code\": \"994\", \"two_letter_code\": \"AZ\", \"three_letter_code\": \"AZE\", \"currency_code\": \"AZN\", \"currency_name\": \"AZN\", \"currency_symbol\": \"m\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 17, \"name\": \"Bahamas The\", \"dial_code\": \"-24\", \"two_letter_code\": \"BS\", \"three_letter_code\": \"BHS\", \"currency_code\": \"BSD\", \"currency_name\": \"BSD\", \"currency_symbol\": \"B$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 18, \"name\": \"Bahrain\", \"dial_code\": \"973\", \"two_letter_code\": \"BH\", \"three_letter_code\": \"BHR\", \"currency_code\": \"BHD\", \"currency_name\": \"BHD\", \"currency_symbol\": \".?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 19, \"name\": \"Bangladesh\", \"dial_code\": \"880\", \"two_letter_code\": \"BD\", \"three_letter_code\": \"BGD\", \"currency_code\": \"BDT\", \"currency_name\": \"BDT\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 20, \"name\": \"Barbados\", \"dial_code\": \"-24\", \"two_letter_code\": \"BB\", \"three_letter_code\": \"BRB\", \"currency_code\": \"BBD\", \"currency_name\": \"BBD\", \"currency_symbol\": \"Bds$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 21, \"name\": \"Belarus\", \"dial_code\": \"375\", \"two_letter_code\": \"BY\", \"three_letter_code\": \"BLR\", \"currency_code\": \"BYN\", \"currency_name\": \"BYN\", \"currency_symbol\": \"Br\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 22, \"name\": \"Belgium\", \"dial_code\": \"32\", \"two_letter_code\": \"BE\", \"three_letter_code\": \"BEL\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 23, \"name\": \"Belize\", \"dial_code\": \"501\", \"two_letter_code\": \"BZ\", \"three_letter_code\": \"BLZ\", \"currency_code\": \"BZD\", \"currency_name\": \"BZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 24, \"name\": \"Benin\", \"dial_code\": \"229\", \"two_letter_code\": \"BJ\", \"three_letter_code\": \"BEN\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 25, \"name\": \"Bermuda\", \"dial_code\": \"-44\", \"two_letter_code\": \"BM\", \"three_letter_code\": \"BMU\", \"currency_code\": \"BMD\", \"currency_name\": \"BMD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 26, \"name\": \"Bhutan\", \"dial_code\": \"975\", \"two_letter_code\": \"BT\", \"three_letter_code\": \"BTN\", \"currency_code\": \"BTN\", \"currency_name\": \"BTN\", \"currency_symbol\": \"Nu.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 27, \"name\": \"Bolivia\", \"dial_code\": \"591\", \"two_letter_code\": \"BO\", \"three_letter_code\": \"BOL\", \"currency_code\": \"BOB\", \"currency_name\": \"BOB\", \"currency_symbol\": \"Bs.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 28, \"name\": \"Bosnia and Herzegovina\", \"dial_code\": \"387\", \"two_letter_code\": \"BA\", \"three_letter_code\": \"BIH\", \"currency_code\": \"BAM\", \"currency_name\": \"BAM\", \"currency_symbol\": \"KM\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 29, \"name\": \"Botswana\", \"dial_code\": \"267\", \"two_letter_code\": \"BW\", \"three_letter_code\": \"BWA\", \"currency_code\": \"BWP\", \"currency_name\": \"BWP\", \"currency_symbol\": \"P\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 30, \"name\": \"Bouvet Island\", \"dial_code\": \"55\", \"two_letter_code\": \"BV\", \"three_letter_code\": \"BVT\", \"currency_code\": \"NOK\", \"currency_name\": \"NOK\", \"currency_symbol\": \"kr\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 31, \"name\": \"Brazil\", \"dial_code\": \"55\", \"two_letter_code\": \"BR\", \"three_letter_code\": \"BRA\", \"currency_code\": \"BRL\", \"currency_name\": \"BRL\", \"currency_symbol\": \"R$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 32, \"name\": \"British Indian Ocean Territory\", \"dial_code\": \"246\", \"two_letter_code\": \"IO\", \"three_letter_code\": \"IOT\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 33, \"name\": \"Brunei\", \"dial_code\": \"673\", \"two_letter_code\": \"BN\", \"three_letter_code\": \"BRN\", \"currency_code\": \"BND\", \"currency_name\": \"BND\", \"currency_symbol\": \"B$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 34, \"name\": \"Bulgaria\", \"dial_code\": \"359\", \"two_letter_code\": \"BG\", \"three_letter_code\": \"BGR\", \"currency_code\": \"BGN\", \"currency_name\": \"BGN\", \"currency_symbol\": \"??.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 35, \"name\": \"Burkina Faso\", \"dial_code\": \"226\", \"two_letter_code\": \"BF\", \"three_letter_code\": \"BFA\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 36, \"name\": \"Burundi\", \"dial_code\": \"257\", \"two_letter_code\": \"BI\", \"three_letter_code\": \"BDI\", \"currency_code\": \"BIF\", \"currency_name\": \"BIF\", \"currency_symbol\": \"FBu\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 37, \"name\": \"Cambodia\", \"dial_code\": \"855\", \"two_letter_code\": \"KH\", \"three_letter_code\": \"KHM\", \"currency_code\": \"KHR\", \"currency_name\": \"KHR\", \"currency_symbol\": \"KHR\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 38, \"name\": \"Cameroon\", \"dial_code\": \"237\", \"two_letter_code\": \"CM\", \"three_letter_code\": \"CMR\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FCFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 39, \"name\": \"Canada\", \"dial_code\": \"1\", \"two_letter_code\": \"CA\", \"three_letter_code\": \"CAN\", \"currency_code\": \"CAD\", \"currency_name\": \"CAD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 40, \"name\": \"Cape Verde\", \"dial_code\": \"238\", \"two_letter_code\": \"CV\", \"three_letter_code\": \"CPV\", \"currency_code\": \"CVE\", \"currency_name\": \"CVE\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 41, \"name\": \"Cayman Islands\", \"dial_code\": \"-34\", \"two_letter_code\": \"KY\", \"three_letter_code\": \"CYM\", \"currency_code\": \"KYD\", \"currency_name\": \"KYD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 42, \"name\": \"Central African Republic\", \"dial_code\": \"236\", \"two_letter_code\": \"CF\", \"three_letter_code\": \"CAF\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FCFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 43, \"name\": \"Chad\", \"dial_code\": \"235\", \"two_letter_code\": \"TD\", \"three_letter_code\": \"TCD\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FCFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 44, \"name\": \"Chile\", \"dial_code\": \"56\", \"two_letter_code\": \"CL\", \"three_letter_code\": \"CHL\", \"currency_code\": \"CLP\", \"currency_name\": \"CLP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 45, \"name\": \"China\", \"dial_code\": \"86\", \"two_letter_code\": \"CN\", \"three_letter_code\": \"CHN\", \"currency_code\": \"CNY\", \"currency_name\": \"CNY\", \"currency_symbol\": \"¥\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 46, \"name\": \"Christmas Island\", \"dial_code\": \"61\", \"two_letter_code\": \"CX\", \"three_letter_code\": \"CXR\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 47, \"name\": \"Cocos (Keeling) Islands\", \"dial_code\": \"61\", \"two_letter_code\": \"CC\", \"three_letter_code\": \"CCK\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 48, \"name\": \"Colombia\", \"dial_code\": \"57\", \"two_letter_code\": \"CO\", \"three_letter_code\": \"COL\", \"currency_code\": \"COP\", \"currency_name\": \"COP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 49, \"name\": \"Comoros\", \"dial_code\": \"269\", \"two_letter_code\": \"KM\", \"three_letter_code\": \"COM\", \"currency_code\": \"KMF\", \"currency_name\": \"KMF\", \"currency_symbol\": \"CF\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 50, \"name\": \"Congo\", \"dial_code\": \"242\", \"two_letter_code\": \"CG\", \"three_letter_code\": \"COG\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FC\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 51, \"name\": \"Congo The Democratic Republic Of The\", \"dial_code\": \"243\", \"two_letter_code\": \"CD\", \"three_letter_code\": \"COD\", \"currency_code\": \"CDF\", \"currency_name\": \"CDF\", \"currency_symbol\": \"FC\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 52, \"name\": \"Cook Islands\", \"dial_code\": \"682\", \"two_letter_code\": \"CK\", \"three_letter_code\": \"COK\", \"currency_code\": \"NZD\", \"currency_name\": \"NZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 53, \"name\": \"Costa Rica\", \"dial_code\": \"506\", \"two_letter_code\": \"CR\", \"three_letter_code\": \"CRI\", \"currency_code\": \"CRC\", \"currency_name\": \"CRC\", \"currency_symbol\": \"¢\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 54, \"name\": \"Cote D'Ivoire (Ivory Coast)\", \"dial_code\": \"225\", \"two_letter_code\": \"CI\", \"three_letter_code\": \"CIV\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 55, \"name\": \"Croatia (Hrvatska)\", \"dial_code\": \"385\", \"two_letter_code\": \"HR\", \"three_letter_code\": \"HRV\", \"currency_code\": \"HRK\", \"currency_name\": \"HRK\", \"currency_symbol\": \"kn\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 56, \"name\": \"Cuba\", \"dial_code\": \"53\", \"two_letter_code\": \"CU\", \"three_letter_code\": \"CUB\", \"currency_code\": \"CUP\", \"currency_name\": \"CUP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 57, \"name\": \"Cyprus\", \"dial_code\": \"357\", \"two_letter_code\": \"CY\", \"three_letter_code\": \"CYP\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 58, \"name\": \"Czech Republic\", \"dial_code\": \"420\", \"two_letter_code\": \"CZ\", \"three_letter_code\": \"CZE\", \"currency_code\": \"CZK\", \"currency_name\": \"CZK\", \"currency_symbol\": \"Kc\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 59, \"name\": \"Denmark\", \"dial_code\": \"45\", \"two_letter_code\": \"DK\", \"three_letter_code\": \"DNK\", \"currency_code\": \"DKK\", \"currency_name\": \"DKK\", \"currency_symbol\": \"Kr.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 60, \"name\": \"Djibouti\", \"dial_code\": \"253\", \"two_letter_code\": \"DJ\", \"three_letter_code\": \"DJI\", \"currency_code\": \"DJF\", \"currency_name\": \"DJF\", \"currency_symbol\": \"Fdj\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 61, \"name\": \"Dominica\", \"dial_code\": \"-76\", \"two_letter_code\": \"DM\", \"three_letter_code\": \"DMA\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 62, \"name\": \"Dominican Republic\", \"dial_code\": \"+1-\", \"two_letter_code\": \"DO\", \"three_letter_code\": \"DOM\", \"currency_code\": \"DOP\", \"currency_name\": \"DOP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 63, \"name\": \"East Timor\", \"dial_code\": \"670\", \"two_letter_code\": \"TL\", \"three_letter_code\": \"TLS\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 64, \"name\": \"Ecuador\", \"dial_code\": \"593\", \"two_letter_code\": \"EC\", \"three_letter_code\": \"ECU\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 65, \"name\": \"Egypt\", \"dial_code\": \"20\", \"two_letter_code\": \"EG\", \"three_letter_code\": \"EGY\", \"currency_code\": \"EGP\", \"currency_name\": \"EGP\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 66, \"name\": \"El Salvador\", \"dial_code\": \"503\", \"two_letter_code\": \"SV\", \"three_letter_code\": \"SLV\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 67, \"name\": \"Equatorial Guinea\", \"dial_code\": \"240\", \"two_letter_code\": \"GQ\", \"three_letter_code\": \"GNQ\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FCFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 68, \"name\": \"Eritrea\", \"dial_code\": \"291\", \"two_letter_code\": \"ER\", \"three_letter_code\": \"ERI\", \"currency_code\": \"ERN\", \"currency_name\": \"ERN\", \"currency_symbol\": \"Nfk\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 69, \"name\": \"Estonia\", \"dial_code\": \"372\", \"two_letter_code\": \"EE\", \"three_letter_code\": \"EST\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 70, \"name\": \"Ethiopia\", \"dial_code\": \"251\", \"two_letter_code\": \"ET\", \"three_letter_code\": \"ETH\", \"currency_code\": \"ETB\", \"currency_name\": \"ETB\", \"currency_symbol\": \"Nkf\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 71, \"name\": \"Falkland Islands\", \"dial_code\": \"500\", \"two_letter_code\": \"FK\", \"three_letter_code\": \"FLK\", \"currency_code\": \"FKP\", \"currency_name\": \"FKP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 72, \"name\": \"Faroe Islands\", \"dial_code\": \"298\", \"two_letter_code\": \"FO\", \"three_letter_code\": \"FRO\", \"currency_code\": \"DKK\", \"currency_name\": \"DKK\", \"currency_symbol\": \"Kr.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 73, \"name\": \"Fiji Islands\", \"dial_code\": \"679\", \"two_letter_code\": \"FJ\", \"three_letter_code\": \"FJI\", \"currency_code\": \"FJD\", \"currency_name\": \"FJD\", \"currency_symbol\": \"FJ$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 74, \"name\": \"Finland\", \"dial_code\": \"358\", \"two_letter_code\": \"FI\", \"three_letter_code\": \"FIN\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 75, \"name\": \"France\", \"dial_code\": \"33\", \"two_letter_code\": \"FR\", \"three_letter_code\": \"FRA\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 76, \"name\": \"French Guiana\", \"dial_code\": \"594\", \"two_letter_code\": \"GF\", \"three_letter_code\": \"GUF\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 77, \"name\": \"French Polynesia\", \"dial_code\": \"689\", \"two_letter_code\": \"PF\", \"three_letter_code\": \"PYF\", \"currency_code\": \"XPF\", \"currency_name\": \"XPF\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 78, \"name\": \"French Southern Territories\", \"dial_code\": \"\", \"two_letter_code\": \"TF\", \"three_letter_code\": \"ATF\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 79, \"name\": \"Gabon\", \"dial_code\": \"241\", \"two_letter_code\": \"GA\", \"three_letter_code\": \"GAB\", \"currency_code\": \"XAF\", \"currency_name\": \"XAF\", \"currency_symbol\": \"FCFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 80, \"name\": \"Gambia The\", \"dial_code\": \"220\", \"two_letter_code\": \"GM\", \"three_letter_code\": \"GMB\", \"currency_code\": \"GMD\", \"currency_name\": \"GMD\", \"currency_symbol\": \"D\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 81, \"name\": \"Georgia\", \"dial_code\": \"995\", \"two_letter_code\": \"GE\", \"three_letter_code\": \"GEO\", \"currency_code\": \"GEL\", \"currency_name\": \"GEL\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 82, \"name\": \"Germany\", \"dial_code\": \"49\", \"two_letter_code\": \"DE\", \"three_letter_code\": \"DEU\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 83, \"name\": \"Ghana\", \"dial_code\": \"233\", \"two_letter_code\": \"GH\", \"three_letter_code\": \"GHA\", \"currency_code\": \"GHS\", \"currency_name\": \"GHS\", \"currency_symbol\": \"GH?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 84, \"name\": \"Gibraltar\", \"dial_code\": \"350\", \"two_letter_code\": \"GI\", \"three_letter_code\": \"GIB\", \"currency_code\": \"GIP\", \"currency_name\": \"GIP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 85, \"name\": \"Greece\", \"dial_code\": \"30\", \"two_letter_code\": \"GR\", \"three_letter_code\": \"GRC\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 86, \"name\": \"Greenland\", \"dial_code\": \"299\", \"two_letter_code\": \"GL\", \"three_letter_code\": \"GRL\", \"currency_code\": \"DKK\", \"currency_name\": \"DKK\", \"currency_symbol\": \"Kr.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 87, \"name\": \"Grenada\", \"dial_code\": \"-47\", \"two_letter_code\": \"GD\", \"three_letter_code\": \"GRD\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 88, \"name\": \"Guadeloupe\", \"dial_code\": \"590\", \"two_letter_code\": \"GP\", \"three_letter_code\": \"GLP\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 89, \"name\": \"Guam\", \"dial_code\": \"-67\", \"two_letter_code\": \"GU\", \"three_letter_code\": \"GUM\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 90, \"name\": \"Guatemala\", \"dial_code\": \"502\", \"two_letter_code\": \"GT\", \"three_letter_code\": \"GTM\", \"currency_code\": \"GTQ\", \"currency_name\": \"GTQ\", \"currency_symbol\": \"Q\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 91, \"name\": \"Guernsey and Alderney\", \"dial_code\": \"-14\", \"two_letter_code\": \"GG\", \"three_letter_code\": \"GGY\", \"currency_code\": \"GBP\", \"currency_name\": \"GBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 92, \"name\": \"Guinea\", \"dial_code\": \"224\", \"two_letter_code\": \"GN\", \"three_letter_code\": \"GIN\", \"currency_code\": \"GNF\", \"currency_name\": \"GNF\", \"currency_symbol\": \"FG\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 93, \"name\": \"Guinea-Bissau\", \"dial_code\": \"245\", \"two_letter_code\": \"GW\", \"three_letter_code\": \"GNB\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 94, \"name\": \"Guyana\", \"dial_code\": \"592\", \"two_letter_code\": \"GY\", \"three_letter_code\": \"GUY\", \"currency_code\": \"GYD\", \"currency_name\": \"GYD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 95, \"name\": \"Haiti\", \"dial_code\": \"509\", \"two_letter_code\": \"HT\", \"three_letter_code\": \"HTI\", \"currency_code\": \"HTG\", \"currency_name\": \"HTG\", \"currency_symbol\": \"G\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 96, \"name\": \"Heard Island and McDonald Islands\", \"dial_code\": \"\", \"two_letter_code\": \"HM\", \"three_letter_code\": \"HMD\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 97, \"name\": \"Honduras\", \"dial_code\": \"504\", \"two_letter_code\": \"HN\", \"three_letter_code\": \"HND\", \"currency_code\": \"HNL\", \"currency_name\": \"HNL\", \"currency_symbol\": \"L\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 98, \"name\": \"Hong Kong S.A.R.\", \"dial_code\": \"852\", \"two_letter_code\": \"HK\", \"three_letter_code\": \"HKG\", \"currency_code\": \"HKD\", \"currency_name\": \"HKD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 99, \"name\": \"Hungary\", \"dial_code\": \"36\", \"two_letter_code\": \"HU\", \"three_letter_code\": \"HUN\", \"currency_code\": \"HUF\", \"currency_name\": \"HUF\", \"currency_symbol\": \"Ft\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 100, \"name\": \"Iceland\", \"dial_code\": \"354\", \"two_letter_code\": \"IS\", \"three_letter_code\": \"ISL\", \"currency_code\": \"ISK\", \"currency_name\": \"ISK\", \"currency_symbol\": \"kr\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 101, \"name\": \"India\", \"dial_code\": \"91\", \"two_letter_code\": \"IN\", \"three_letter_code\": \"IND\", \"currency_code\": \"INR\", \"currency_name\": \"INR\", \"currency_symbol\": \"?\", \"iso_numeric\": 356, \"miner_currency\": 2 },\r\n { \"id\": 102, \"name\": \"Indonesia\", \"dial_code\": \"62\", \"two_letter_code\": \"ID\", \"three_letter_code\": \"IDN\", \"currency_code\": \"IDR\", \"currency_name\": \"IDR\", \"currency_symbol\": \"Rp\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 103, \"name\": \"Iran\", \"dial_code\": \"98\", \"two_letter_code\": \"IR\", \"three_letter_code\": \"IRN\", \"currency_code\": \"IRR\", \"currency_name\": \"IRR\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 104, \"name\": \"Iraq\", \"dial_code\": \"964\", \"two_letter_code\": \"IQ\", \"three_letter_code\": \"IRQ\", \"currency_code\": \"IQD\", \"currency_name\": \"IQD\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 105, \"name\": \"Ireland\", \"dial_code\": \"353\", \"two_letter_code\": \"IE\", \"three_letter_code\": \"IRL\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 106, \"name\": \"Israel\", \"dial_code\": \"972\", \"two_letter_code\": \"IL\", \"three_letter_code\": \"ISR\", \"currency_code\": \"ILS\", \"currency_name\": \"ILS\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 107, \"name\": \"Italy\", \"dial_code\": \"39\", \"two_letter_code\": \"IT\", \"three_letter_code\": \"ITA\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 108, \"name\": \"Jamaica\", \"dial_code\": \"-87\", \"two_letter_code\": \"JM\", \"three_letter_code\": \"JAM\", \"currency_code\": \"JMD\", \"currency_name\": \"JMD\", \"currency_symbol\": \"J$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 109, \"name\": \"Japan\", \"dial_code\": \"81\", \"two_letter_code\": \"JP\", \"three_letter_code\": \"JPN\", \"currency_code\": \"JPY\", \"currency_name\": \"JPY\", \"currency_symbol\": \"¥\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 110, \"name\": \"Jersey\", \"dial_code\": \"-14\", \"two_letter_code\": \"JE\", \"three_letter_code\": \"JEY\", \"currency_code\": \"GBP\", \"currency_name\": \"GBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 111, \"name\": \"Jordan\", \"dial_code\": \"962\", \"two_letter_code\": \"JO\", \"three_letter_code\": \"JOR\", \"currency_code\": \"JOD\", \"currency_name\": \"JOD\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 112, \"name\": \"Kazakhstan\", \"dial_code\": \"7\", \"two_letter_code\": \"KZ\", \"three_letter_code\": \"KAZ\", \"currency_code\": \"KZT\", \"currency_name\": \"KZT\", \"currency_symbol\": \"??\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 113, \"name\": \"Kenya\", \"dial_code\": \"254\", \"two_letter_code\": \"KE\", \"three_letter_code\": \"KEN\", \"currency_code\": \"KES\", \"currency_name\": \"KES\", \"currency_symbol\": \"KSh\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 114, \"name\": \"Kiribati\", \"dial_code\": \"686\", \"two_letter_code\": \"KI\", \"three_letter_code\": \"KIR\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 115, \"name\": \"Korea North\", \"dial_code\": \"850\", \"two_letter_code\": \"KP\", \"three_letter_code\": \"PRK\", \"currency_code\": \"KPW\", \"currency_name\": \"KPW\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 116, \"name\": \"Korea South\", \"dial_code\": \"82\", \"two_letter_code\": \"KR\", \"three_letter_code\": \"KOR\", \"currency_code\": \"KRW\", \"currency_name\": \"KRW\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 117, \"name\": \"Kuwait\", \"dial_code\": \"965\", \"two_letter_code\": \"KW\", \"three_letter_code\": \"KWT\", \"currency_code\": \"KWD\", \"currency_name\": \"KWD\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 118, \"name\": \"Kyrgyzstan\", \"dial_code\": \"996\", \"two_letter_code\": \"KG\", \"three_letter_code\": \"KGZ\", \"currency_code\": \"KGS\", \"currency_name\": \"KGS\", \"currency_symbol\": \"??\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 119, \"name\": \"Laos\", \"dial_code\": \"856\", \"two_letter_code\": \"LA\", \"three_letter_code\": \"LAO\", \"currency_code\": \"LAK\", \"currency_name\": \"LAK\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 120, \"name\": \"Latvia\", \"dial_code\": \"371\", \"two_letter_code\": \"LV\", \"three_letter_code\": \"LVA\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 121, \"name\": \"Lebanon\", \"dial_code\": \"961\", \"two_letter_code\": \"LB\", \"three_letter_code\": \"LBN\", \"currency_code\": \"LBP\", \"currency_name\": \"LBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 122, \"name\": \"Lesotho\", \"dial_code\": \"266\", \"two_letter_code\": \"LS\", \"three_letter_code\": \"LSO\", \"currency_code\": \"LSL\", \"currency_name\": \"LSL\", \"currency_symbol\": \"L\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 123, \"name\": \"Liberia\", \"dial_code\": \"231\", \"two_letter_code\": \"LR\", \"three_letter_code\": \"LBR\", \"currency_code\": \"LRD\", \"currency_name\": \"LRD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 124, \"name\": \"Libya\", \"dial_code\": \"218\", \"two_letter_code\": \"LY\", \"three_letter_code\": \"LBY\", \"currency_code\": \"LYD\", \"currency_name\": \"LYD\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 125, \"name\": \"Liechtenstein\", \"dial_code\": \"423\", \"two_letter_code\": \"LI\", \"three_letter_code\": \"LIE\", \"currency_code\": \"CHF\", \"currency_name\": \"CHF\", \"currency_symbol\": \"CHf\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 126, \"name\": \"Lithuania\", \"dial_code\": \"370\", \"two_letter_code\": \"LT\", \"three_letter_code\": \"LTU\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 127, \"name\": \"Luxembourg\", \"dial_code\": \"352\", \"two_letter_code\": \"LU\", \"three_letter_code\": \"LUX\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 128, \"name\": \"Macau S.A.R.\", \"dial_code\": \"853\", \"two_letter_code\": \"MO\", \"three_letter_code\": \"MAC\", \"currency_code\": \"MOP\", \"currency_name\": \"MOP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 129, \"name\": \"Macedonia\", \"dial_code\": \"389\", \"two_letter_code\": \"MK\", \"three_letter_code\": \"MKD\", \"currency_code\": \"MKD\", \"currency_name\": \"MKD\", \"currency_symbol\": \"???\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 130, \"name\": \"Madagascar\", \"dial_code\": \"261\", \"two_letter_code\": \"MG\", \"three_letter_code\": \"MDG\", \"currency_code\": \"MGA\", \"currency_name\": \"MGA\", \"currency_symbol\": \"Ar\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 131, \"name\": \"Malawi\", \"dial_code\": \"265\", \"two_letter_code\": \"MW\", \"three_letter_code\": \"MWI\", \"currency_code\": \"MWK\", \"currency_name\": \"MWK\", \"currency_symbol\": \"MK\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 132, \"name\": \"Malaysia\", \"dial_code\": \"60\", \"two_letter_code\": \"MY\", \"three_letter_code\": \"MYS\", \"currency_code\": \"MYR\", \"currency_name\": \"MYR\", \"currency_symbol\": \"RM\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 133, \"name\": \"Maldives\", \"dial_code\": \"960\", \"two_letter_code\": \"MV\", \"three_letter_code\": \"MDV\", \"currency_code\": \"MVR\", \"currency_name\": \"MVR\", \"currency_symbol\": \"Rf\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 134, \"name\": \"Mali\", \"dial_code\": \"223\", \"two_letter_code\": \"ML\", \"three_letter_code\": \"MLI\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 135, \"name\": \"Malta\", \"dial_code\": \"356\", \"two_letter_code\": \"MT\", \"three_letter_code\": \"MLT\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 136, \"name\": \"Man (Isle of)\", \"dial_code\": \"-15\", \"two_letter_code\": \"IM\", \"three_letter_code\": \"IMN\", \"currency_code\": \"GBP\", \"currency_name\": \"GBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 137, \"name\": \"Marshall Islands\", \"dial_code\": \"692\", \"two_letter_code\": \"MH\", \"three_letter_code\": \"MHL\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 138, \"name\": \"Martinique\", \"dial_code\": \"596\", \"two_letter_code\": \"MQ\", \"three_letter_code\": \"MTQ\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 139, \"name\": \"Mauritania\", \"dial_code\": \"222\", \"two_letter_code\": \"MR\", \"three_letter_code\": \"MRT\", \"currency_code\": \"MRO\", \"currency_name\": \"MRO\", \"currency_symbol\": \"MRU\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 140, \"name\": \"Mauritius\", \"dial_code\": \"230\", \"two_letter_code\": \"MU\", \"three_letter_code\": \"MUS\", \"currency_code\": \"MUR\", \"currency_name\": \"MUR\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 141, \"name\": \"Mayotte\", \"dial_code\": \"262\", \"two_letter_code\": \"YT\", \"three_letter_code\": \"MYT\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 142, \"name\": \"Mexico\", \"dial_code\": \"52\", \"two_letter_code\": \"MX\", \"three_letter_code\": \"MEX\", \"currency_code\": \"MXN\", \"currency_name\": \"MXN\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 143, \"name\": \"Micronesia\", \"dial_code\": \"691\", \"two_letter_code\": \"FM\", \"three_letter_code\": \"FSM\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 144, \"name\": \"Moldova\", \"dial_code\": \"373\", \"two_letter_code\": \"MD\", \"three_letter_code\": \"MDA\", \"currency_code\": \"MDL\", \"currency_name\": \"MDL\", \"currency_symbol\": \"L\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 145, \"name\": \"Monaco\", \"dial_code\": \"377\", \"two_letter_code\": \"MC\", \"three_letter_code\": \"MCO\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 146, \"name\": \"Mongolia\", \"dial_code\": \"976\", \"two_letter_code\": \"MN\", \"three_letter_code\": \"MNG\", \"currency_code\": \"MNT\", \"currency_name\": \"MNT\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 147, \"name\": \"Montenegro\", \"dial_code\": \"382\", \"two_letter_code\": \"ME\", \"three_letter_code\": \"MNE\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 148, \"name\": \"Montserrat\", \"dial_code\": \"-66\", \"two_letter_code\": \"MS\", \"three_letter_code\": \"MSR\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 149, \"name\": \"Morocco\", \"dial_code\": \"212\", \"two_letter_code\": \"MA\", \"three_letter_code\": \"MAR\", \"currency_code\": \"MAD\", \"currency_name\": \"MAD\", \"currency_symbol\": \"DH\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 150, \"name\": \"Mozambique\", \"dial_code\": \"258\", \"two_letter_code\": \"MZ\", \"three_letter_code\": \"MOZ\", \"currency_code\": \"MZN\", \"currency_name\": \"MZN\", \"currency_symbol\": \"MT\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 151, \"name\": \"Myanmar\", \"dial_code\": \"95\", \"two_letter_code\": \"MM\", \"three_letter_code\": \"MMR\", \"currency_code\": \"MMK\", \"currency_name\": \"MMK\", \"currency_symbol\": \"K\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 152, \"name\": \"Namibia\", \"dial_code\": \"264\", \"two_letter_code\": \"NA\", \"three_letter_code\": \"NAM\", \"currency_code\": \"NAD\", \"currency_name\": \"NAD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 153, \"name\": \"Nauru\", \"dial_code\": \"674\", \"two_letter_code\": \"NR\", \"three_letter_code\": \"NRU\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 154, \"name\": \"Nepal\", \"dial_code\": \"977\", \"two_letter_code\": \"NP\", \"three_letter_code\": \"NPL\", \"currency_code\": \"NPR\", \"currency_name\": \"NPR\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 155, \"name\": \"Bonaire, Sint Eustatius and Saba\", \"dial_code\": \"599\", \"two_letter_code\": \"BQ\", \"three_letter_code\": \"BES\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 156, \"name\": \"Netherlands The\", \"dial_code\": \"31\", \"two_letter_code\": \"NL\", \"three_letter_code\": \"NLD\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 157, \"name\": \"New Caledonia\", \"dial_code\": \"687\", \"two_letter_code\": \"NC\", \"three_letter_code\": \"NCL\", \"currency_code\": \"XPF\", \"currency_name\": \"XPF\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 158, \"name\": \"New Zealand\", \"dial_code\": \"64\", \"two_letter_code\": \"NZ\", \"three_letter_code\": \"NZL\", \"currency_code\": \"NZD\", \"currency_name\": \"NZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 159, \"name\": \"Nicaragua\", \"dial_code\": \"505\", \"two_letter_code\": \"NI\", \"three_letter_code\": \"NIC\", \"currency_code\": \"NIO\", \"currency_name\": \"NIO\", \"currency_symbol\": \"C$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 160, \"name\": \"Niger\", \"dial_code\": \"227\", \"two_letter_code\": \"NE\", \"three_letter_code\": \"NER\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 161, \"name\": \"Nigeria\", \"dial_code\": \"234\", \"two_letter_code\": \"NG\", \"three_letter_code\": \"NGA\", \"currency_code\": \"NGN\", \"currency_name\": \"NGN\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 162, \"name\": \"Niue\", \"dial_code\": \"683\", \"two_letter_code\": \"NU\", \"three_letter_code\": \"NIU\", \"currency_code\": \"NZD\", \"currency_name\": \"NZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 163, \"name\": \"Norfolk Island\", \"dial_code\": \"672\", \"two_letter_code\": \"NF\", \"three_letter_code\": \"NFK\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 164, \"name\": \"Northern Mariana Islands\", \"dial_code\": \"-66\", \"two_letter_code\": \"MP\", \"three_letter_code\": \"MNP\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 165, \"name\": \"Norway\", \"dial_code\": \"47\", \"two_letter_code\": \"NO\", \"three_letter_code\": \"NOR\", \"currency_code\": \"NOK\", \"currency_name\": \"NOK\", \"currency_symbol\": \"kr\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 166, \"name\": \"Oman\", \"dial_code\": \"968\", \"two_letter_code\": \"OM\", \"three_letter_code\": \"OMN\", \"currency_code\": \"OMR\", \"currency_name\": \"OMR\", \"currency_symbol\": \".?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 167, \"name\": \"Pakistan\", \"dial_code\": \"92\", \"two_letter_code\": \"PK\", \"three_letter_code\": \"PAK\", \"currency_code\": \"PKR\", \"currency_name\": \"PKR\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 168, \"name\": \"Palau\", \"dial_code\": \"680\", \"two_letter_code\": \"PW\", \"three_letter_code\": \"PLW\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 169, \"name\": \"Palestinian Territory Occupied\", \"dial_code\": \"970\", \"two_letter_code\": \"PS\", \"three_letter_code\": \"PSE\", \"currency_code\": \"ILS\", \"currency_name\": \"ILS\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 170, \"name\": \"Panama\", \"dial_code\": \"507\", \"two_letter_code\": \"PA\", \"three_letter_code\": \"PAN\", \"currency_code\": \"PAB\", \"currency_name\": \"PAB\", \"currency_symbol\": \"B/.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 171, \"name\": \"Papua new Guinea\", \"dial_code\": \"675\", \"two_letter_code\": \"PG\", \"three_letter_code\": \"PNG\", \"currency_code\": \"PGK\", \"currency_name\": \"PGK\", \"currency_symbol\": \"K\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 172, \"name\": \"Paraguay\", \"dial_code\": \"595\", \"two_letter_code\": \"PY\", \"three_letter_code\": \"PRY\", \"currency_code\": \"PYG\", \"currency_name\": \"PYG\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 173, \"name\": \"Peru\", \"dial_code\": \"51\", \"two_letter_code\": \"PE\", \"three_letter_code\": \"PER\", \"currency_code\": \"PEN\", \"currency_name\": \"PEN\", \"currency_symbol\": \"S/.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 174, \"name\": \"Philippines\", \"dial_code\": \"63\", \"two_letter_code\": \"PH\", \"three_letter_code\": \"PHL\", \"currency_code\": \"PHP\", \"currency_name\": \"PHP\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 175, \"name\": \"Pitcairn Island\", \"dial_code\": \"870\", \"two_letter_code\": \"PN\", \"three_letter_code\": \"PCN\", \"currency_code\": \"NZD\", \"currency_name\": \"NZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 176, \"name\": \"Poland\", \"dial_code\": \"48\", \"two_letter_code\": \"PL\", \"three_letter_code\": \"POL\", \"currency_code\": \"PLN\", \"currency_name\": \"PLN\", \"currency_symbol\": \"zl\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 177, \"name\": \"Portugal\", \"dial_code\": \"351\", \"two_letter_code\": \"PT\", \"three_letter_code\": \"PRT\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 178, \"name\": \"Puerto Rico\", \"dial_code\": \"+1-\", \"two_letter_code\": \"PR\", \"three_letter_code\": \"PRI\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 179, \"name\": \"Qatar\", \"dial_code\": \"974\", \"two_letter_code\": \"QA\", \"three_letter_code\": \"QAT\", \"currency_code\": \"QAR\", \"currency_name\": \"QAR\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 180, \"name\": \"Reunion\", \"dial_code\": \"262\", \"two_letter_code\": \"RE\", \"three_letter_code\": \"REU\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 181, \"name\": \"Romania\", \"dial_code\": \"40\", \"two_letter_code\": \"RO\", \"three_letter_code\": \"ROU\", \"currency_code\": \"RON\", \"currency_name\": \"RON\", \"currency_symbol\": \"lei\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 182, \"name\": \"Russia\", \"dial_code\": \"7\", \"two_letter_code\": \"RU\", \"three_letter_code\": \"RUS\", \"currency_code\": \"RUB\", \"currency_name\": \"RUB\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 183, \"name\": \"Rwanda\", \"dial_code\": \"250\", \"two_letter_code\": \"RW\", \"three_letter_code\": \"RWA\", \"currency_code\": \"RWF\", \"currency_name\": \"RWF\", \"currency_symbol\": \"FRw\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 184, \"name\": \"Saint Helena\", \"dial_code\": \"290\", \"two_letter_code\": \"SH\", \"three_letter_code\": \"SHN\", \"currency_code\": \"SHP\", \"currency_name\": \"SHP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 185, \"name\": \"Saint Kitts And Nevis\", \"dial_code\": \"-86\", \"two_letter_code\": \"KN\", \"three_letter_code\": \"KNA\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 186, \"name\": \"Saint Lucia\", \"dial_code\": \"-75\", \"two_letter_code\": \"LC\", \"three_letter_code\": \"LCA\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 187, \"name\": \"Saint Pierre and Miquelon\", \"dial_code\": \"508\", \"two_letter_code\": \"PM\", \"three_letter_code\": \"SPM\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 188, \"name\": \"Saint Vincent And The Grenadines\", \"dial_code\": \"-78\", \"two_letter_code\": \"VC\", \"three_letter_code\": \"VCT\", \"currency_code\": \"XCD\", \"currency_name\": \"XCD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 189, \"name\": \"Saint-Barthelemy\", \"dial_code\": \"590\", \"two_letter_code\": \"BL\", \"three_letter_code\": \"BLM\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 190, \"name\": \"Saint-Martin (French part)\", \"dial_code\": \"590\", \"two_letter_code\": \"MF\", \"three_letter_code\": \"MAF\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 191, \"name\": \"Samoa\", \"dial_code\": \"685\", \"two_letter_code\": \"WS\", \"three_letter_code\": \"WSM\", \"currency_code\": \"WST\", \"currency_name\": \"WST\", \"currency_symbol\": \"SAT\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 192, \"name\": \"San Marino\", \"dial_code\": \"378\", \"two_letter_code\": \"SM\", \"three_letter_code\": \"SMR\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 193, \"name\": \"Sao Tome and Principe\", \"dial_code\": \"239\", \"two_letter_code\": \"ST\", \"three_letter_code\": \"STP\", \"currency_code\": \"STD\", \"currency_name\": \"STD\", \"currency_symbol\": \"Db\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 194, \"name\": \"Saudi Arabia\", \"dial_code\": \"966\", \"two_letter_code\": \"SA\", \"three_letter_code\": \"SAU\", \"currency_code\": \"SAR\", \"currency_name\": \"SAR\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 195, \"name\": \"Senegal\", \"dial_code\": \"221\", \"two_letter_code\": \"SN\", \"three_letter_code\": \"SEN\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 196, \"name\": \"Serbia\", \"dial_code\": \"381\", \"two_letter_code\": \"RS\", \"three_letter_code\": \"SRB\", \"currency_code\": \"RSD\", \"currency_name\": \"RSD\", \"currency_symbol\": \"din\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 197, \"name\": \"Seychelles\", \"dial_code\": \"248\", \"two_letter_code\": \"SC\", \"three_letter_code\": \"SYC\", \"currency_code\": \"SCR\", \"currency_name\": \"SCR\", \"currency_symbol\": \"SRe\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 198, \"name\": \"Sierra Leone\", \"dial_code\": \"232\", \"two_letter_code\": \"SL\", \"three_letter_code\": \"SLE\", \"currency_code\": \"SLL\", \"currency_name\": \"SLL\", \"currency_symbol\": \"Le\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 199, \"name\": \"Singapore\", \"dial_code\": \"65\", \"two_letter_code\": \"SG\", \"three_letter_code\": \"SGP\", \"currency_code\": \"SGD\", \"currency_name\": \"SGD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 200, \"name\": \"Slovakia\", \"dial_code\": \"421\", \"two_letter_code\": \"SK\", \"three_letter_code\": \"SVK\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 201, \"name\": \"Slovenia\", \"dial_code\": \"386\", \"two_letter_code\": \"SI\", \"three_letter_code\": \"SVN\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 202, \"name\": \"Solomon Islands\", \"dial_code\": \"677\", \"two_letter_code\": \"SB\", \"three_letter_code\": \"SLB\", \"currency_code\": \"SBD\", \"currency_name\": \"SBD\", \"currency_symbol\": \"Si$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 203, \"name\": \"Somalia\", \"dial_code\": \"252\", \"two_letter_code\": \"SO\", \"three_letter_code\": \"SOM\", \"currency_code\": \"SOS\", \"currency_name\": \"SOS\", \"currency_symbol\": \"Sh.so.\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 204, \"name\": \"South Africa\", \"dial_code\": \"27\", \"two_letter_code\": \"ZA\", \"three_letter_code\": \"ZAF\", \"currency_code\": \"ZAR\", \"currency_name\": \"ZAR\", \"currency_symbol\": \"R\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 205, \"name\": \"South Georgia\", \"dial_code\": \"\", \"two_letter_code\": \"GS\", \"three_letter_code\": \"SGS\", \"currency_code\": \"GBP\", \"currency_name\": \"GBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 206, \"name\": \"South Sudan\", \"dial_code\": \"211\", \"two_letter_code\": \"SS\", \"three_letter_code\": \"SSD\", \"currency_code\": \"SSP\", \"currency_name\": \"SSP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 207, \"name\": \"Spain\", \"dial_code\": \"34\", \"two_letter_code\": \"ES\", \"three_letter_code\": \"ESP\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 208, \"name\": \"Sri Lanka\", \"dial_code\": \"94\", \"two_letter_code\": \"LK\", \"three_letter_code\": \"LKA\", \"currency_code\": \"LKR\", \"currency_name\": \"LKR\", \"currency_symbol\": \"Rs\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 209, \"name\": \"Sudan\", \"dial_code\": \"249\", \"two_letter_code\": \"SD\", \"three_letter_code\": \"SDN\", \"currency_code\": \"SDG\", \"currency_name\": \"SDG\", \"currency_symbol\": \".?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 210, \"name\": \"Suriname\", \"dial_code\": \"597\", \"two_letter_code\": \"SR\", \"three_letter_code\": \"SUR\", \"currency_code\": \"SRD\", \"currency_name\": \"SRD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 211, \"name\": \"Svalbard And Jan Mayen Islands\", \"dial_code\": \"47\", \"two_letter_code\": \"SJ\", \"three_letter_code\": \"SJM\", \"currency_code\": \"NOK\", \"currency_name\": \"NOK\", \"currency_symbol\": \"kr\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 212, \"name\": \"Swaziland\", \"dial_code\": \"268\", \"two_letter_code\": \"SZ\", \"three_letter_code\": \"SWZ\", \"currency_code\": \"SZL\", \"currency_name\": \"SZL\", \"currency_symbol\": \"E\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 213, \"name\": \"Sweden\", \"dial_code\": \"46\", \"two_letter_code\": \"SE\", \"three_letter_code\": \"SWE\", \"currency_code\": \"SEK\", \"currency_name\": \"SEK\", \"currency_symbol\": \"kr\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 214, \"name\": \"Switzerland\", \"dial_code\": \"41\", \"two_letter_code\": \"CH\", \"three_letter_code\": \"CHE\", \"currency_code\": \"CHF\", \"currency_name\": \"CHF\", \"currency_symbol\": \"CHf\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 215, \"name\": \"Syria\", \"dial_code\": \"963\", \"two_letter_code\": \"SY\", \"three_letter_code\": \"SYR\", \"currency_code\": \"SYP\", \"currency_name\": \"SYP\", \"currency_symbol\": \"LS\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 216, \"name\": \"Taiwan\", \"dial_code\": \"886\", \"two_letter_code\": \"TW\", \"three_letter_code\": \"TWN\", \"currency_code\": \"TWD\", \"currency_name\": \"TWD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 217, \"name\": \"Tajikistan\", \"dial_code\": \"992\", \"two_letter_code\": \"TJ\", \"three_letter_code\": \"TJK\", \"currency_code\": \"TJS\", \"currency_name\": \"TJS\", \"currency_symbol\": \"SM\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 218, \"name\": \"Tanzania\", \"dial_code\": \"255\", \"two_letter_code\": \"TZ\", \"three_letter_code\": \"TZA\", \"currency_code\": \"TZS\", \"currency_name\": \"TZS\", \"currency_symbol\": \"TSh\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 219, \"name\": \"Thailand\", \"dial_code\": \"66\", \"two_letter_code\": \"TH\", \"three_letter_code\": \"THA\", \"currency_code\": \"THB\", \"currency_name\": \"THB\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 220, \"name\": \"Togo\", \"dial_code\": \"228\", \"two_letter_code\": \"TG\", \"three_letter_code\": \"TGO\", \"currency_code\": \"XOF\", \"currency_name\": \"XOF\", \"currency_symbol\": \"CFA\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 221, \"name\": \"Tokelau\", \"dial_code\": \"690\", \"two_letter_code\": \"TK\", \"three_letter_code\": \"TKL\", \"currency_code\": \"NZD\", \"currency_name\": \"NZD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 222, \"name\": \"Tonga\", \"dial_code\": \"676\", \"two_letter_code\": \"TO\", \"three_letter_code\": \"TON\", \"currency_code\": \"TOP\", \"currency_name\": \"TOP\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 223, \"name\": \"Trinidad And Tobago\", \"dial_code\": \"-86\", \"two_letter_code\": \"TT\", \"three_letter_code\": \"TTO\", \"currency_code\": \"TTD\", \"currency_name\": \"TTD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 224, \"name\": \"Tunisia\", \"dial_code\": \"216\", \"two_letter_code\": \"TN\", \"three_letter_code\": \"TUN\", \"currency_code\": \"TND\", \"currency_name\": \"TND\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 225, \"name\": \"Turkey\", \"dial_code\": \"90\", \"two_letter_code\": \"TR\", \"three_letter_code\": \"TUR\", \"currency_code\": \"TRY\", \"currency_name\": \"TRY\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 226, \"name\": \"Turkmenistan\", \"dial_code\": \"993\", \"two_letter_code\": \"TM\", \"three_letter_code\": \"TKM\", \"currency_code\": \"TMT\", \"currency_name\": \"TMT\", \"currency_symbol\": \"T\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 227, \"name\": \"Turks And Caicos Islands\", \"dial_code\": \"-64\", \"two_letter_code\": \"TC\", \"three_letter_code\": \"TCA\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 228, \"name\": \"Tuvalu\", \"dial_code\": \"688\", \"two_letter_code\": \"TV\", \"three_letter_code\": \"TUV\", \"currency_code\": \"AUD\", \"currency_name\": \"AUD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 229, \"name\": \"Uganda\", \"dial_code\": \"256\", \"two_letter_code\": \"UG\", \"three_letter_code\": \"UGA\", \"currency_code\": \"UGX\", \"currency_name\": \"UGX\", \"currency_symbol\": \"USh\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 230, \"name\": \"Ukraine\", \"dial_code\": \"380\", \"two_letter_code\": \"UA\", \"three_letter_code\": \"UKR\", \"currency_code\": \"UAH\", \"currency_name\": \"UAH\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 231, \"name\": \"United Arab Emirates\", \"dial_code\": \"971\", \"two_letter_code\": \"AE\", \"three_letter_code\": \"ARE\", \"currency_code\": \"AED\", \"currency_name\": \"AED\", \"currency_symbol\": \"?.?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 232, \"name\": \"United Kingdom\", \"dial_code\": \"44\", \"two_letter_code\": \"GB\", \"three_letter_code\": \"GBR\", \"currency_code\": \"GBP\", \"currency_name\": \"GBP\", \"currency_symbol\": \"£\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 233, \"name\": \"United States\", \"dial_code\": \"1\", \"two_letter_code\": \"US\", \"three_letter_code\": \"USA\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 234, \"name\": \"United States Minor Outlying Islands\", \"dial_code\": \"1\", \"two_letter_code\": \"UM\", \"three_letter_code\": \"UMI\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 235, \"name\": \"Uruguay\", \"dial_code\": \"598\", \"two_letter_code\": \"UY\", \"three_letter_code\": \"URY\", \"currency_code\": \"UYU\", \"currency_name\": \"UYU\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 236, \"name\": \"Uzbekistan\", \"dial_code\": \"998\", \"two_letter_code\": \"UZ\", \"three_letter_code\": \"UZB\", \"currency_code\": \"UZS\", \"currency_name\": \"UZS\", \"currency_symbol\": \"??\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 237, \"name\": \"Vanuatu\", \"dial_code\": \"678\", \"two_letter_code\": \"VU\", \"three_letter_code\": \"VUT\", \"currency_code\": \"VUV\", \"currency_name\": \"VUV\", \"currency_symbol\": \"VT\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 238, \"name\": \"Vatican City State (Holy See)\", \"dial_code\": \"379\", \"two_letter_code\": \"VA\", \"three_letter_code\": \"VAT\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 239, \"name\": \"Venezuela\", \"dial_code\": \"58\", \"two_letter_code\": \"VE\", \"three_letter_code\": \"VEN\", \"currency_code\": \"VEF\", \"currency_name\": \"VEF\", \"currency_symbol\": \"Bs\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 240, \"name\": \"Vietnam\", \"dial_code\": \"84\", \"two_letter_code\": \"VN\", \"three_letter_code\": \"VNM\", \"currency_code\": \"VND\", \"currency_name\": \"VND\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 241, \"name\": \"Virgin Islands (British)\", \"dial_code\": \"-28\", \"two_letter_code\": \"VG\", \"three_letter_code\": \"VGB\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 242, \"name\": \"Virgin Islands (US)\", \"dial_code\": \"-33\", \"two_letter_code\": \"VI\", \"three_letter_code\": \"VIR\", \"currency_code\": \"USD\", \"currency_name\": \"USD\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 243, \"name\": \"Wallis And Futuna Islands\", \"dial_code\": \"681\", \"two_letter_code\": \"WF\", \"three_letter_code\": \"WLF\", \"currency_code\": \"XPF\", \"currency_name\": \"XPF\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 244, \"name\": \"Western Sahara\", \"dial_code\": \"212\", \"two_letter_code\": \"EH\", \"three_letter_code\": \"ESH\", \"currency_code\": \"MAD\", \"currency_name\": \"MAD\", \"currency_symbol\": \"MAD\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 245, \"name\": \"Yemen\", \"dial_code\": \"967\", \"two_letter_code\": \"YE\", \"three_letter_code\": \"YEM\", \"currency_code\": \"YER\", \"currency_name\": \"YER\", \"currency_symbol\": \"?\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 246, \"name\": \"Zambia\", \"dial_code\": \"260\", \"two_letter_code\": \"ZM\", \"three_letter_code\": \"ZMB\", \"currency_code\": \"ZMW\", \"currency_name\": \"ZMW\", \"currency_symbol\": \"ZK\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 247, \"name\": \"Zimbabwe\", \"dial_code\": \"263\", \"two_letter_code\": \"ZW\", \"three_letter_code\": \"ZWE\", \"currency_code\": \"ZWL\", \"currency_name\": \"ZWL\", \"currency_symbol\": \"$\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 248, \"name\": \"Kosovo\", \"dial_code\": \"383\", \"two_letter_code\": \"XK\", \"three_letter_code\": \"XKX\", \"currency_code\": \"EUR\", \"currency_name\": \"EUR\", \"currency_symbol\": \"€\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 249, \"name\": \"Curaçao\", \"dial_code\": \"599\", \"two_letter_code\": \"CW\", \"three_letter_code\": \"CUW\", \"currency_code\": \"ANG\", \"currency_name\": \"ANG\", \"currency_symbol\": \"ƒ\", \"iso_numeric\": 0, \"miner_currency\": 2 },\r\n { \"id\": 250, \"name\": \"Sint Maarten (Dutch part)\", \"dial_code\": \"172\", \"two_letter_code\": \"SX\", \"three_letter_code\": \"SXM\", \"currency_code\": \"ANG\", \"currency_name\": \"ANG\", \"currency_symbol\": \"ƒ\", \"iso_numeric\": 0, \"miner_currency\": 2 }\r\n];","export const CONSTANTS_CRM = {\r\n OPPORTUNITY_CONVERTITBILITY: [\r\n { name: 'Hot', value: '3', icon: '/assets/dist/img/icons/hot.svg' },\r\n { name: 'Cold', value: '1', icon: '/assets/dist/img/icons/cold.svg' },\r\n { name: 'Warm', value: '2', icon: '/assets/dist/img/icons/warm.svg' },\r\n ] as Convertibility[],\r\n\r\n CALL_OUTCOME: [\r\n {\r\n name: 'No Answer / Left Message',\r\n shortname: 'noanswer',\r\n value: 1,\r\n icon: 'pi pi-phone',\r\n iconColor: '#ED8536',\r\n class: 'text-sm bg-orange-500 border-orange-500',\r\n },\r\n {\r\n name: 'Contact Made',\r\n shortname: 'contactmade',\r\n value: 2,\r\n icon: 'pi pi-check-square',\r\n iconColor: '#4A9FB5',\r\n class: 'bg-cyan-600 border-cyan-600',\r\n },\r\n {\r\n name: 'NotInterested',\r\n shortname: 'notintrested',\r\n value: 3,\r\n icon: 'pi pi-times',\r\n iconColor: '#316CF3',\r\n class: 'p-ripple p-button-danger',\r\n },\r\n {\r\n name: 'booktour',\r\n shortname: 'booktour',\r\n value: 4,\r\n icon: 'pi pi-calendar-plus',\r\n iconColor: '#408558',\r\n class: 'p-ripple ng-star-inserted',\r\n },\r\n // {\r\n // name: 'BookTrial',\r\n // shortname: 'booktrial',\r\n // value: 4,\r\n // icon: 'pi pi-question',\r\n // iconColor: '#408558',\r\n // class: 'p-ripple p-button-primary',\r\n // },\r\n {\r\n name: 'Sign Up',\r\n shortname: 'signup',\r\n value: 6,\r\n icon: 'pi pi-money-bill',\r\n iconColor: '#CA444A',\r\n class: 'p-ripple p-button-primary',\r\n },\r\n ] as Outcome[],\r\n\r\n TOUR_OUTCOME: [\r\n {\r\n name: 'Not Interested',\r\n shortname: 'notintrested',\r\n value: 1,\r\n icon: 'pi pi-times',\r\n iconColor: '#ED8536',\r\n class: 'p-ripple p-button-danger'\r\n },\r\n {\r\n name: 'No Show',\r\n shortname: 'noshow',\r\n value: 2,\r\n icon: 'pi pi-ban',\r\n iconColor: '#4A9FB5',\r\n class: 'p-ripple p-button-warning',\r\n },\r\n {\r\n name: 'Reschedule',\r\n shortname: 'reschedule',\r\n value: 3,\r\n icon: 'pi pi-calendar-plus',\r\n iconColor: '#316CF3',\r\n class: 'p-ripple p-button-primary',\r\n },\r\n {\r\n name: 'Still Thinking',\r\n shortname: 'stillthinking',\r\n value: 4,\r\n icon: 'pi pi-question',\r\n iconColor: '#408558',\r\n class: 'p-ripple p-button-primary',\r\n },\r\n {\r\n name: 'Signing-up',\r\n shortname: 'signingup',\r\n value: 5,\r\n icon: 'pi pi-ticket',\r\n iconColor: '#CA444A',\r\n class: 'p-ripple p-button-primary',\r\n },\r\n ] as Outcome[],\r\n \r\n};\r\n\r\ninterface Convertibility {\r\n name: string;\r\n value: string;\r\n icon: string;\r\n}\r\n\r\ninterface Outcome {\r\n name: string;\r\n shortname:string;\r\n value: number;\r\n icon: string;\r\n iconColor: string;\r\n class: string;\r\n}\r\n","import { PayModeLevel1, PayModeLevel2, Status } from '@fitness-force/enum';\r\n\r\nexport const CONSTANTS_DATA = {\r\n ALL_LANGUAGES: [\r\n { COUNTRY: 'us', LANG_CODE: 'en', LANG_ABBRE: 'ENGLISH' },\r\n { COUNTRY: 'ar', LANG_CODE: 'ar', LANG_ABBRE: 'ARABIC' },\r\n { COUNTRY: 'fr', LANG_CODE: 'fr', LANG_ABBRE: 'FRENCH' },\r\n { COUNTRY: 'sp', LANG_CODE: 'sp', LANG_ABBRE: 'SPANISH' },\r\n { COUNTRY: 'gr', LANG_CODE: 'gr', LANG_ABBRE: 'GERMAN' },\r\n { COUNTRY: 'in', LANG_CODE: 'hi', LANG_ABBRE: 'HINDI' },\r\n ],\r\n SEARCH_PROVIDERS: [\r\n { providerName: 'clients', pagination: { count: 4, offset: 0 } },\r\n { providerName: 'invoices', pagination: { count: 4, offset: 0 } },\r\n { providerName: 'actions', pagination: { count: 4, offset: 0 } },\r\n { providerName: 'kbdocs', pagination: { count: 4, offset: 0 } },\r\n ],\r\n TABLE_PAGE_INFO: {\r\n CURRENT_PAGE: 'currentPage',\r\n TOTAL_ITEMS: 'totalItems',\r\n TOTAL_PAGE: 'toalPages',\r\n },\r\n DOMAIN_INFO: { DOMAIN: 'fitnessforcenxt.com' },\r\n DEFAULT: { LOGIN_SUCCESS_REDIRECTION: '/crm/sales-pipeline' },\r\n LOST_DEALS_OTHER_REASONS: [\r\n { name: 'QUALITY OF FACILITY' },\r\n { name: 'CLUB LOCATION' },\r\n { name: 'Hours of operation' },\r\n { name: 'Fitness Equipment' },\r\n ],\r\n ALL_SOURCES: [\r\n {\r\n name: 'Online',\r\n items: [\r\n { name: 'Facebook' },\r\n { name: 'Website' },\r\n { name: 'Instagram' },\r\n { name: 'Class Pass' },\r\n { name: 'Gym Pass' },\r\n ],\r\n },\r\n {\r\n name: 'Phone',\r\n items: [\r\n { name: 'Hoarding' },\r\n { name: 'Website' },\r\n { name: 'Referral' },\r\n { name: 'Passing By' },\r\n ],\r\n },\r\n {\r\n name: 'Walk-In',\r\n items: [\r\n { name: 'Hoarding' },\r\n { name: 'Referral' },\r\n { name: 'Passing By' },\r\n ],\r\n },\r\n {\r\n name: 'Data Entry / Gathered',\r\n items: [\r\n { name: 'Pop-up Store' },\r\n { name: 'Referral' },\r\n { name: 'Bulk Upload' },\r\n ],\r\n },\r\n ],\r\n\r\n PAYMENTMODE: {\r\n IN: [\r\n {\r\n id: PayModeLevel2.Cash,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Cash,\r\n name_primary_language: 'Cash',\r\n name_secondary_language: 'Cash',\r\n description_primary_language: 'This is Cash Payment mode',\r\n description_secondary_language: 'This is Cash Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Debit,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Card,\r\n name_primary_language: 'Debit Card',\r\n name_secondary_language: 'Debit Card',\r\n description_primary_language: 'This is Debit Card Payment mode',\r\n description_secondary_language: 'This is Debit Card Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Credit,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Card,\r\n name_primary_language: 'Credit Card',\r\n name_secondary_language: 'Credit Card',\r\n description_primary_language: 'This is Credit Card Payment mode',\r\n description_secondary_language: 'This is Credit Card Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.NetBanking,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.NetBanking,\r\n name_primary_language: 'Net Banking',\r\n name_secondary_language: 'Net Banking',\r\n description_primary_language: 'This is Net Banking Payment mode',\r\n description_secondary_language: 'This is Net Banking Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.UPI,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.UPI,\r\n name_primary_language: 'UPI',\r\n name_secondary_language: 'UPI',\r\n description_primary_language: 'This is UPI Payment mode',\r\n description_secondary_language: 'This is UPI Payment mode',\r\n status: Status.InActive,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.ACH,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.ACH,\r\n name_primary_language: 'AmazonPay',\r\n name_secondary_language: 'AmazonPay',\r\n description_primary_language: 'This is AmazonPay Payment mode',\r\n description_secondary_language: 'This is AmazonPay Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Cheque,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Cheque,\r\n name_primary_language: 'Cheque',\r\n name_secondary_language: 'Cheque',\r\n description_primary_language: 'This is Cheque Payment mode',\r\n description_secondary_language: 'This is Cheque Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n ],\r\n USA: [\r\n {\r\n id: PayModeLevel2.Cash,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Cash,\r\n name_primary_language: 'Cash',\r\n name_secondary_language: 'Cash',\r\n description_primary_language: 'This is Cash Payment mode',\r\n description_secondary_language: 'This is Cash Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Debit,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Card,\r\n name_primary_language: 'Debit Card',\r\n name_secondary_language: 'Debit Card',\r\n description_primary_language: 'This is Debit Card Payment mode',\r\n description_secondary_language: 'This is Debit Card Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Credit,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Card,\r\n name_primary_language: 'Credit Card',\r\n name_secondary_language: 'Credit Card',\r\n description_primary_language: 'This is Credit Card Payment mode',\r\n description_secondary_language: 'This is Credit Card Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.NetBanking,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.NetBanking,\r\n name_primary_language: 'Net Banking',\r\n name_secondary_language: 'Net Banking',\r\n description_primary_language: 'This is Net Banking Payment mode',\r\n description_secondary_language: 'This is Net Banking Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.UPI,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.UPI,\r\n name_primary_language: 'UPI',\r\n name_secondary_language: 'UPI',\r\n description_primary_language: 'This is UPI Payment mode',\r\n description_secondary_language: 'This is UPI Payment mode',\r\n status: Status.InActive,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n {\r\n id: PayModeLevel2.Cheque,\r\n tenant_id: 0,\r\n company_id: 0,\r\n type: PayModeLevel1.Cheque,\r\n name_primary_language: 'Cheque',\r\n name_secondary_language: 'Cheque',\r\n description_primary_language: 'This is Cheque Payment mode',\r\n description_secondary_language: 'This is Cheque Payment mode',\r\n status: Status.Active,\r\n created_by: 0,\r\n updated_by: 0,\r\n created_date: '',\r\n updated_date: '',\r\n },\r\n ],\r\n },\r\n MONTHS: [\r\n 'January',\r\n 'February',\r\n 'March',\r\n 'April',\r\n 'May',\r\n 'June',\r\n 'July',\r\n 'August',\r\n 'September',\r\n 'October',\r\n 'November',\r\n 'December',\r\n ],\r\n COLORS: [\r\n 'blue',\r\n 'orange',\r\n 'green',\r\n 'purple',\r\n 'pink',\r\n 'cyan',\r\n 'yellow',\r\n 'indigo',\r\n 'teal',\r\n 'bluegray',\r\n 'gray',\r\n ],\r\n PAYMENT_GATEWAY_VENDOR_KEY: {\r\n PAYENGINE: {\r\n PUBLIC_KEY: 'pk_test_8DhNGLrVIqVIEgSesm1qVYSVXCIAQwPz',\r\n jsSource:\r\n 'https://console.payengine.dev/js/wc/js/payengine.min.js?key=pk_test_8DhNGLrVIqVIEgSesm1qVYSVXCIAQwPz',\r\n },\r\n RAZORPAY: {\r\n jsSource: 'https://checkout.razorpay.com/v1/checkout.js',\r\n partnerKey: 'rzp_test_partner_HmxcRUfoVVuLMO',\r\n accountId: 'acc_HogDxe2rfeFIso',\r\n themeColor: '#F37254',\r\n },\r\n },\r\n};\r\n","export const CONSTANTS_SCHEDULE = {\r\n CLASS_APPOINTMENT_BEHAVIOUR: [\r\n { name: 'Free', value: 'Free', icon: 'pi pi-wallet' },\r\n { name: 'Paid', value: 'Paid', icon: 'pi pi-dollar' },\r\n { name: 'Membership + Paid', value: 'Membership_Paid', icon: 'pi pi-dollar' },\r\n { name: 'Free For Members', value: 'Free_for_Members', icon: 'pi pi-dollar' },\r\n ] as Behaviour[],\r\n}\r\n\r\ninterface Behaviour {\r\n name: string;\r\n value: string;\r\n icon: string;\r\n }\r\n ","import { State } from \"@fitness-force/models\";\r\n\r\nexport const CONST_STATES: State[] = [\r\n { \"id\": 1, \"name\": \"Maharashtra\", \"country_code\": \"IND\", \"country_id\": 101, \"code\": \"MH\" },\r\n { \"id\": 2, \"name\": \"Delhi\", \"country_code\": \"IND\", \"country_id\": 101, \"code\": \"DL\" }\r\n];","export const CONST_URL_SEGEMENTS = {\r\n /*APIS THOSE CALLED DURING APPLICATION INITIATION.*/\r\n PUBLIC_APIS: [\r\n 'i18n/.+',\r\n 'companies/.+',\r\n 'token',\r\n 'recovery/password/lookup'\r\n ],\r\n\r\n BLOG_API: 'https://www.fitnessforce.com/blog/feed/',\r\n\r\n AUTH: {\r\n LOGIN_TOKEN: '/token',\r\n PASSWORD_LOOKUP: '/recovery/password/lookup',\r\n UNIQUE_IDENTIFIER: '/recovery/password/',\r\n PASSWORD_RESET: '/recovery/password/reset/'\r\n },\r\n\r\n INIT: {\r\n GET_LANG_INFO: '/get_info_lang',\r\n GET_COMPANY_INFO: '/company_info',\r\n GET_COMPANY_SUBDOMAIN: '/companies/'\r\n },\r\n\r\n CLAIM: {\r\n GET_CLAIM_TEMPLATES: '/claim_templates'\r\n },\r\n\r\n COUNTRY: {\r\n GET_COUNTRY: '/common/countries'\r\n },\r\n\r\n STATE: {\r\n GET_STATE: '/common/countries/{countrycode}/states'\r\n },\r\n\r\n CITY: {\r\n GET_CITY: '/common/countries/{countrycode}/states/{statecode}/cities'\r\n },\r\n\r\n SEARCH: {\r\n POST_SEARCH: '/search'\r\n },\r\n\r\n // Tenant apis\r\n TENANT: {\r\n GET_TENANT_LIST: '/tenants',\r\n GET_TENANTBYID: '/tenants'\r\n },\r\n\r\n STAFF: {\r\n GET_STAFF_LIST: '/staff',\r\n GET_STAFF_BYID: '/staff/{staff_id}',\r\n POST_CHANGE_PASSWORD: '/staff/{staff_id}/change_password',\r\n POST_SUSPEND: '/staff/{staff_id}/mark_as_suspend',\r\n POST_TERMINATE: '/staff/{staff_id}/mark_as_terminate',\r\n POST_CHANGEOWNER: '/staff/{staff_id}/change_owner',\r\n POST_CHANGEREPORTINGMANAGER: '/staff/{staff_id}/change_reporting_manager',\r\n POST_CHANGECENTERACCESS: '/staff/{staff_id}/change_center_access',\r\n POST_ACTIVE: '/staff/{staff_id}/mark_as_active',\r\n POST_STAFF: '/staff',\r\n PUT_STAFF: '/staff/{staff_id}'\r\n },\r\n SMS: {\r\n SMS_TEMPLATE_MASTER: '/sms_template_master',\r\n SEND_SMS: '/send_sms'\r\n },\r\n USERS: {\r\n GET_USER_LIST: '/userList',\r\n STAFFS: '/staff/'\r\n },\r\n\r\n CLIENT: {\r\n POST_CLIENTS: '/clients',\r\n GET_CLIENTS: '/clients',\r\n ADD_TO_BLACKLIST: '/add_to_blacklist',\r\n REMOVE_FROM_BLACKLIST: '/remove_from_blacklist',\r\n CHANGE_CLIENT_REP: '/change_client_rep',\r\n SUBSCRIPTIONS: '/subscriptions',\r\n SUBSCRIPTION_SINGUPS: '/subscription_signups',\r\n INVOICES: '/invoices',\r\n PAYMENTS: '/payments',\r\n PAYMENT_METHODS: '/payment_methods',\r\n PAYMENT_TIMELINE: '/payment_timeline',\r\n CLASS_APPT_TAGS: \"/class_appt_tags\",\r\n SERVICE_CAT: \"/service_categories\",\r\n IRREGULAR_CLIENTS: \"/irregular\"\r\n },\r\n\r\n SERVICETYPE: {\r\n GET_SERVICETYPE: '/tenants/{tenant_id}/service_categories'\r\n },\r\n\r\n EXPECTED: {\r\n GET_EXPECTED_LIST: '/expected'\r\n },\r\n\r\n BALANCE_OVERDUE: {\r\n GET_BALANCEOVERDUE_LIST: '/balanceoverdue'\r\n },\r\n\r\n BIRTHDAY: {\r\n GET_BIRTHDAY_LIST: '/clients/birthdays'\r\n },\r\n\r\n COLLECTION: {\r\n GET_COLLECTION_LIST: '/collection'\r\n },\r\n\r\n FOLLOWUP: {\r\n GET_FOLLOWUP_LIST: '/followup'\r\n },\r\n\r\n IRREGULARMEMBER: {\r\n GET_IRREGULARMEMBER_LIST: '/clients/irregular'\r\n },\r\n\r\n ONLINETRANSACTION: {\r\n GET_ONLINETRANSACTION_LIST: '/onlinetransaction'\r\n },\r\n\r\n RENEWALDUE: {\r\n GET_RENEWALDUE_LIST: '/renewaldue'\r\n },\r\n\r\n OPPORTUNITY: {\r\n OPPORTUNITY: '/opportunities'\r\n },\r\n\r\n OPPORTUNITYSTAGEMASTER: {\r\n OPPSTAGEMST: '/opp_stage_mst',\r\n\r\n },\r\n\r\n BOARDS: {\r\n TITLE: 'boards'\r\n },\r\n\r\n TASK: {\r\n GET_TASK: '/tenants/{tenant_id}/tasks',\r\n POST_TASK_BY_CLIENT: '/tenants/{tenant_id}/clients/tasks',\r\n POST_RECURRING_TASK_BY_CLIENT: '/tenants/{tenant_id}/clients/recurring_tasks',\r\n POST_TASK_BY_OPPORTUNITY: '/tenants/{tenant_id}/opportunities/tasks',\r\n POST_RECURRING_TASK_BY_OPPORTUNITY: '/tenants/{tenant_id}/opportunities/recurring_tasks',\r\n CREATE_CALL_OUTCOME: '/call_outcome',\r\n CREATE_TOUR_OUTCOME: '/tour_outcome',\r\n CREATE_TOUR_OUTCOME_REQUEST: '',\r\n CREATE_CALL_OUTCOME_REQUEST: ''\r\n },\r\n\r\n TASKOUTCOME: {\r\n POST_CALL_OUTCOME: '/tenants/{tenant_id}/tasks/{tsk_id}/call_outcome',\r\n POST_TOUR_OUTCOME: '/tenants/{tenant_id}/tasks/{tsk_id}/tour_outcome'\r\n },\r\n\r\n TASKCATEGORY: {\r\n GETTASKCATEGORY: '/tenants/{tenant_id}/task_catagories',\r\n UPDATETASKCATEGORY: '/tenants/{tenant_id}/task_catagories/{tsk_category_id}',\r\n MARKACTIVE: '/tenants/{tenant_id}/task_catagories/{tsk_category_id}/mark_as_active',\r\n MARKINACTIVE: '/tenants/{tenant_id}/task_catagories/{tsk_category_id}/mark_as_inactive',\r\n },\r\n\r\n\r\n ROOM: {\r\n ROOM_LIST: \"/tenants/{tenant_id}/rooms\"\r\n },\r\n\r\n SUBSCRIPTIONSIGNUP: {\r\n GET_COMPANY: '/subscription/signup/{sigup_sts_uuid}/company_details',\r\n GET_TENANT: '/subscription/signup/{sigup_sts_uuid}/tenants',\r\n GET_ORDERSUMMARY: '/subscription/signup/{sigup_sts_uuid}/get_order_summary',\r\n GET_ORDERDETAILS: '/subscription/signup/{sigup_sts_uuid}/get_order_subscription_detail',\r\n GET_ORDER_SUBSCRIPTION_STATUS: '/subscription/signup/{sigup_sts_uuid}/get_order_subscription_status',\r\n GET_ORDERSUMMARYBILLINGOCCURENCE: '/subscription/signup/{sigup_sts_uuid}/get_order_summary_billing_occurrence',\r\n POST_PROCEEDTOPAYMENT: '/subscription/signup/{sigup_sts_uuid}/proceed_to_payment',\r\n POST_SAVETOKEN: '/subscription/signup/{sigup_sts_uuid}/save_token',\r\n POST_SAVEEXTERNALTRANSACTIONID: '/subscription/signup/{sigup_sts_uuid}/save_external_transaction_id',\r\n PUT_CLIENTINFO: '/subscription/signup/{sigup_sts_uuid}/client_info',\r\n GET_WAIVERS: '/subscription/signup/{sigup_sts_uuid}/waivers',\r\n POST_WAIVERS: '/subscription/signup/{sigup_sts_uuid}/waivers',\r\n GET_CLIENT_MANDATORYFIELD: '/subscription/signup/{sigup_sts_uuid}/clients/mandatory_client_fields',\r\n GET_PAYMENTMETHODS: '/subscription/signup/{sigup_sts_uuid}/payment_methods',\r\n },\r\n\r\n\r\n SCHEDULING: {\r\n APPOINTMENT: {\r\n GET_APPOINTMENTS: '/tenants/{tenant_id}/appointments',\r\n POST_APPOINTMENTS: '/tenants/{tenant_id}/appointments',\r\n POST_RECURRING_APPOINTMENTS: '/tenants/{tenant_id}/recurring_appt',\r\n GET_APPOINTMENT: '/tenants/{tenant_id}/appointments/{appt_id}',\r\n PUT_APPOINTMENT: '/tenants/{tenant_id}/appointments/{appt_id}',\r\n PUT_RECURRING_APPOINTMENT: '/tenants/{tenant_id}/recurring_appt/{appt_recurring_template_id}',\r\n SUBSTITUTE_COACH: '/tenants/{tenant_id}/appointments/{appt_id}/substitute_coach',\r\n SUBSTITUTE_COACH_RECURRING: '/tenants/{tenant_id}/recurring_appt/{appt_recurring_template_id}/substitute_coach',\r\n RESCHEDULE_APPOINTMENT: '/tenants/{tenant_id}/appointments/{appt_id}/reschedule_appointment',\r\n RESCHEDULE_RECURRING_APPOINTMENT: '/tenants/{tenant_id}/recurring_appt/{appt_recurring_template_id}/reschedule_appt',\r\n MARK_CLIENT_CHECKEDIN: '/tenants/{tenant_id}/appointments/{appt_id}/mark_client_checkedin',\r\n MARK_CLIENT_NOSHOW: '/tenants/{tenant_id}/appointments/{appt_id}/mark_client_noshow',\r\n CANCEL_APPOINTMENT: '/tenants/{tenant_id}/appointments/{appt_id}/cancel_appointment',\r\n },\r\n APPOINTMENT_TYPE: {\r\n GET_APPOINTMENT_TYPES: '/tenants/{tenant_id}/appointment_types'\r\n },\r\n APPOINTMENT_SUB_TYPE: {\r\n GET_APPOINTMENT_SUB_TYPES: '/tenants/{tenant_id}/appointment_types/{appt_type_id}/appt_subtypes'\r\n },\r\n CLASS_TYPE: {\r\n GET_CLASS_TYPES: '/tenants/{tenant_id}/class_types'\r\n },\r\n CLASS:{\r\n GET_CLASSES:'/tenants/{tenant_id}/classes',\r\n GET_CLASS:'/tenants/{tenant_id}/classes/{class_id}',\r\n GET_RECURRING_CLASS_TEMPLATE:'/tenants/{tenant_id}/recurring_classes',\r\n GET_RECURRING_CLASSES:'/tenants/{tenant_id}/recurring_classes/{class_recurring_template_id}/classes',\r\n POST_CLASSES:'/tenants/{tenant_id}/classes',\r\n POST_RECURRING_CLASSES:'/tenants/{tenant_id}/recurring_classes',\r\n PUT_CLASS:'/tenants/{tenant_id}/classes/{class_id}',\r\n PUT_RECURRING_CLASS:'/tenants/{tenant_id}/recurring_classes/{class_recurring_template_id}',\r\n SUBSTITUTE_COACH:'/tenants/{tenant_id}/classes/{class_id}/substitute_coach',\r\n SUBSTITUTE_COACH_RECURRING:'/tenants/{tenant_id}/recurring_classes/{class_recurring_template_id}/substitute_coach',\r\n RESCHEDULE_CLASS:'/tenants/{tenant_id}/classes/{class_id}/reschedule_class',\r\n RESCHEDULE_RECURRING_CLASS:'/tenants/{tenant_id}/recurring_classes/{class_recurring_template_id}/reschedule_class',\r\n CANCEL_CLASS:'/tenants/{tenant_id}/classes/{class_id}/cancel_class',\r\n DELETE_CLASS:'/tenants/{tenant_id}/classes/{class_id}',\r\n COMPLETE_CLASS:'/tenants/{tenant_id}/classes/{class_id}/mark_as_completed',\r\n },\r\n CLASS_BOOKING:{\r\n BOOK_CLIENTS_TO_CLASS:'/tenants/{tenant_id}/classes/{class_id}/book_client_to_class',\r\n REMOVE_CLIENTS_FROM_CLASS:'/tenants/{tenant_id}/classes/{class_id}/remove_client_from_class',\r\n MARK_CLIENT_NO_SHOW:'/tenants/{tenant_id}/classes/{class_id}/mark_client_noshow',\r\n MARK_CLIENT_CHECKEDIN:'/tenants/{tenant_id}/classes/{class_id}/mark_client_checkedin',\r\n }\r\n },\r\n\r\n INVOICES: {\r\n GET_INVOICES: '/clients/{client_id}/invoices',\r\n GET_INVOICE_PDF: '/clients/{client_id}/invoices/{invoice_id}/pdf_invoice',\r\n VOID_INVOICE: '/tenants/{tenant_id}/clients/{client_id}/invoices/{invoice_id}/void',\r\n SEND_EMAIL: '/clients/{client_id}/invoices/{invoice_id}/send_email',\r\n SALES_RETURN: '/tenants/{tenant_id}/clients/{client_id}/invoices/{invoice_id}/sales_return',\r\n \r\n },\r\n PAYMENTS:{\r\n GET_PAYMENTS: '/clients/{client_id}/payments',\r\n GET_PAYMENT_PDF: '/clients/{client_id}/payments/{pymt_id}/pdf_payment',\r\n VOID_PAYMENT: '/tenants/{tenant_id}/clients/{client_id}/payments/{pymt_id}/void',\r\n SEND_EMAIL: '/clients/{client_id}/payments/{pymt_id}/send_email',\r\n }\r\n};\r\n","export * from './lib/core.module';\r\nexport * from './lib/header/header.component';\r\nexport * from './lib/sidebar/sidebar.component';\r\nexport * from './lib/footer/footer.component';","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n})\r\nexport class CoreModule {}\r\n","import { Store } from '@ngrx/store';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { Observable } from 'rxjs';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader, HelpsupportComponentModule } from '@fitness-force/shared';\r\nimport { HttpClient } from '@angular/common/http';\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FooterComponent implements OnInit {\r\n public companyInfoDetail$!: Observable;\r\n companyDetails: any;\r\n showSupportPopup: boolean = false;\r\n constructor(\r\n private store: Store,\r\n public translate: TranslateService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n\r\n componentInit(){\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n \r\n }\r\n closeSupportDialog(close: boolean) {\r\n this.showSupportPopup = false;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [FooterComponent],\r\n imports: [\r\n CommonModule,\r\n StyleClassModule,\r\n DropdownModule,\r\n InputTextModule,\r\n ButtonModule,\r\n HelpsupportComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class FooterComponentModule {\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n \"Fitness\r\n
\r\n

© FitnessForce. v2.3.3

\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
","import { AuthSevices } from 'libs/api/src/lib/auth.service';\r\nimport { FormControl, ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { TENANTS_INFO, STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { select, Store } from '@ngrx/store';\r\nimport { Observable, of, BehaviorSubject, map } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, LOCALE_ID, Inject } from '@angular/core';\r\nimport { Client, OmniSearchResponse, STAFFINTERFACE, TENANTSINTERFACE, TENANT_MODEL } from '@fitness-force/models';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport * as _ from 'lodash';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CreateProspectComponentModule } from 'libs/shared/src/lib/components/omnisearch/create-prospect/create-prospect.component';\r\nimport { SearchPipeModule } from 'libs/shared/src/lib/filters/searchtenant.pipe';\r\n\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\n\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { FETCHED_TENANT_DETAILS } from 'apps/ff-frontend/src/app/state/actions';\r\nimport { ClientService, OmniSearchService } from '@fitness-force/api';\r\nimport { ClientStatus, ElasticProviderName } from '@fitness-force/enum';\r\nimport { ShortNamePipeModule } from '../../../../shared/src/lib/filters/name-initials.pipe';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Input('tenantList') tenantList: TENANTSINTERFACE | any;\r\n @Output('emittedTenant') emittedTenant = new EventEmitter();\r\n zoneWiseTenantList: any = [];\r\n selectedTenant?: TENANT_MODEL;\r\n searchTenants: FormControl = new FormControl('')\r\n allTenantsControls: FormControl = new FormControl('')\r\n tenantOriginalValue: TENANTSINTERFACE\r\n showCreateProspectPopup: Observable = of(false);\r\n userDetails$ = new BehaviorSubject([])\r\n allStaffs$ = new BehaviorSubject([])\r\n getAccessTenantList$: Observable | any;\r\n selectedClient: any;\r\n filteredClient$: BehaviorSubject = new BehaviorSubject([] as Client[]);\r\n pageNumber: number = 0;\r\n currentUserDetails: any;\r\n\r\n\r\n constructor(\r\n private store: Store,\r\n private router: Router,\r\n private clientService: ClientService,\r\n private authService: AuthSevices,\r\n private omniSearchService: OmniSearchService,\r\n @Inject(LOCALE_ID) public locale: string,\r\n ) {\r\n\r\n }\r\n get SearchTenants() {\r\n return this.searchTenants.value\r\n }\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n\r\n sidebarMinimized: boolean = false;\r\n\r\n componentInit() {\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n\r\n if (tenant.selected_tenant.id > 0) {\r\n console.log();\r\n // TODO : This should go inside effects. .. refactoring needed\r\n localStorage.setItem(\r\n 'TENANT_DEFAULT',\r\n tenant.selected_tenant.id.toString()\r\n );\r\n this.store.dispatch({ type: 'FETCH_STAFF_LIST' });\r\n this.store.dispatch({ type: 'FETCH_STAGE_MASTER' });\r\n this.store.dispatch({ type: 'FETCH_SERVICETYPE_LIST' });\r\n this.store.dispatch({ type: 'FETCH_CLASS_TYPE_LIST' });\r\n this.store.dispatch({ type: 'FETCH_CLASS_TYPE_LIST' });\r\n this.store.dispatch({ type: 'FETCH_COUNTRY_MASTER_LIST' });\r\n this.store.dispatch({ type: 'FETCH_STATE_MASTER_LIST' });\r\n this.store.dispatch({ type: 'FETCH_CITY_MASTER_LIST' });\r\n\r\n\r\n if (!this.selectedTenant)// IMPORTANT TO HIDE DROP DOWN..\r\n this.getGroupData(tenant.accessed_tenant);\r\n this.tenantOriginalValue = tenant;\r\n this.selectedTenant = tenant.selected_tenant;\r\n }\r\n });\r\n\r\n\r\n this.currentUserDetails = this.authService.currentUserDetails();\r\n\r\n if (this.currentUserDetails) {\r\n this.store.select(STAFF_STATE).subscribe((data: any) => {\r\n if (data && data.staffList && data.staffList.length > 0)\r\n var filterDate = data.staffList.filter((o: any) => { return o.id === parseInt(this.currentUserDetails.Id) });\r\n if (filterDate) {\r\n this.userDetails$.next(filterDate[0]);\r\n }\r\n });\r\n }\r\n\r\n }\r\n\r\n selectTenant(selected_tenant: TENANT_MODEL) {\r\n if (this.selectedTenant && selected_tenant.id == this.selectedTenant?.id)\r\n return;\r\n this.store.dispatch(FETCHED_TENANT_DETAILS({ selected_tenant }));\r\n\r\n this.emittedTenant.emit(selected_tenant);\r\n }\r\n\r\n get AllTenantsControls(): FormControl {\r\n return this.allTenantsControls as FormControl\r\n }\r\n\r\n getGroupData(tenantList: any): void {\r\n /* Filter tenant list zone wise */\r\n this.zoneWiseTenantList = _(tenantList)\r\n .groupBy('zone') // group the items\r\n .map((group, Zone) => ({ // map the groups to new objects\r\n Zone,\r\n Tenants: group\r\n }))\r\n .value();\r\n }\r\n\r\n hidePopup(isHide: boolean) {\r\n console.log(isHide);\r\n this.showCreateProspectPopup = of(isHide);\r\n }\r\n\r\n OpenPopup() {\r\n this.showCreateProspectPopup = of(true);\r\n }\r\n\r\n searchClient(event: any, pageNumber: number) {\r\n this.pageNumber = (pageNumber == 0) ? 0 : this.pageNumber;\r\n let request = {\r\n language: this.locale,\r\n query: event.query,\r\n providers: [{\r\n provider_name: ElasticProviderName.Clients,\r\n pagination: { page_number: 0, page_size: 10000 }\r\n }]\r\n };\r\n\r\n this.omniSearchService.Search(request).subscribe({\r\n next: (response: OmniSearchResponse) => {\r\n let client = response.searchResults.clients.items;\r\n this.filteredClient$.next(client);\r\n },\r\n error(msg) {\r\n console.log('Error Getting clients: ', msg);\r\n }\r\n });\r\n }\r\n\r\n navigateToClientProfile(client: Client) {\r\n this.selectedClient = null;\r\n this.router.navigate(['/client/profile/', client.clt_id]);\r\n }\r\n\r\n client2LetterName(name: string): string {\r\n if (name) {\r\n let nameArray: string[] = name.split(\" \");\r\n let newNameArray: string[] = [];\r\n for (let i = 0; i < nameArray.length; i++) {\r\n if (newNameArray.length >= 2)\r\n break;\r\n\r\n if (nameArray[i]) {\r\n newNameArray.push(nameArray[i]);\r\n }\r\n }\r\n return newNameArray.join(\" \");\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\r\n\r\n clientName(client: Client | null): string {\r\n if (client && client.clt_full_name)\r\n return client.clt_full_name.replace(this.selectedClient, '' + this.selectedClient + '');\r\n else\r\n return '';\r\n }\r\n\r\n clientStatus(client: Client | null): string {\r\n if (client && client.clt_client_status)\r\n return this.clientService.getClientStatusHtml(client.clt_client_status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [HeaderComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n CreateProspectComponentModule,\r\n StyleClassModule,\r\n DropdownModule,\r\n ButtonModule,\r\n AutoCompleteModule,\r\n\r\n SearchPipeModule,\r\n ShortNamePipeModule,\r\n DividerModule,\r\n AvatarModule,\r\n RouterModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [HeaderComponent]\r\n})\r\nexport class HeaderComponentModule {\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
    \r\n
  • \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n\r\n
  • \r\n\r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
  • \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, ViewChild, ElementRef, AfterViewInit, ChangeDetectorRef, } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ScrollPanelModule } from 'primeng/scrollpanel';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { fromEvent, Observable } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class SidebarComponent implements OnInit, AfterViewInit {\r\n @ViewChild('sidebar', { static: true }) sidebar: ElementRef;\r\n companyDetails: any;\r\n companyLogo!: Observable | any;\r\n tenantLogo!: Observable | any;\r\n selectedUrl: string;\r\n\r\n public companyInfoDetail$!: Observable;\r\n public tenantInfoDetail$!: Observable;\r\n\r\n sidebarMinimized: boolean = false;\r\n hoveMenu = false;\r\n Menus: any;\r\n sidebarMinizeClass: string = 'lg:sticky'\r\n constructor(private store: Store,\r\n private cd: ChangeDetectorRef,\r\n private translate: TranslateService) {\r\n this.Menus = [\r\n {\r\n title: 'CRM',\r\n url: '',\r\n activeUrl: 'crm',\r\n icon: 'pi pi-chart-pie',\r\n icon2: 'pi pi-chevron-down',\r\n submenus: [\r\n {\r\n title: 'PIPELINE',\r\n url: '/crm/sales-pipeline',\r\n activeUrl: '/crm/sales-pipeline',\r\n icon: '',\r\n },\r\n {\r\n title: 'TASKS',\r\n url: '/crm/task-list',\r\n activeUrl: '/crm/task-list',\r\n icon: '',\r\n },\r\n {\r\n title: 'PROSPECTS',\r\n url: '/crm/prospect-list',\r\n activeUrl: '/crm/prospect-list',\r\n icon: '',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'CLIENT_MANAGEMENT',\r\n url: '/client-management',\r\n activeUrl: 'crm',\r\n icon: 'pi pi-users',\r\n icon2: 'pi pi-chevron-down',\r\n submenus: [\r\n {\r\n title: 'EX_CLIENTS',\r\n url: '/client-management/ex-clients',\r\n activeUrl: '/client-management/ex-clients',\r\n icon: 'pi pi-user-minus',\r\n },\r\n {\r\n title: 'ACTIVE_CLIENTS',\r\n url: '/client-management/active-clients',\r\n activeUrl: '/client-management/active-clients',\r\n icon: 'pi pi-user-plus',\r\n },\r\n {\r\n title: 'IRREGULAR_CLIENTS',\r\n url: '/client-management/irregular-clients',\r\n activeUrl: '/client-management/irregular-clients',\r\n icon: 'pi pi-user-minus',\r\n }\r\n ]\r\n },\r\n {\r\n title: 'FITNESS',\r\n url: 'schedule',\r\n activeUrl: '/schedule',\r\n icon: 'pi pi-calendar-plus',\r\n icon2: '',\r\n submenus: [\r\n {\r\n title: 'FITNESS_CALENDAR',\r\n url: '/schedule',\r\n activeUrl: '/schedule/fitness-calendar',\r\n icon: 'pi pi-calendar-plus',\r\n },\r\n ],\r\n },\r\n {\r\n title: 'POS',\r\n url: '/pos',\r\n activeUrl: 'pos',\r\n icon: 'pi pi-chart-line',\r\n icon2: 'pi pi-chevron-down',\r\n submenus: [\r\n {\r\n title: 'MEMBERSHIP-ADDONS',\r\n url: '/pos/membership-addons',\r\n activeUrl: '/pos/membership-addons',\r\n icon: '',\r\n },\r\n ],\r\n },\r\n\r\n {\r\n title: 'REPORT',\r\n url: '/report',\r\n activeUrl: 'reports',\r\n icon: 'pi pi-chart-bar',\r\n icon2: '',\r\n submenus: [],\r\n },\r\n {\r\n title: 'ADMIN',\r\n url: '/admin',\r\n activeUrl: 'admin',\r\n icon: 'pi pi-cog',\r\n icon2: '',\r\n submenus: [],\r\n },\r\n\r\n ];\r\n }\r\n\r\n ngOnInit(): void {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n this.tenantInfoDetail$ = this.store.select(TENANTS_INFO);\r\n\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n if (responseData.compDetails != null) { \r\n this.companyDetails = responseData.compDetails;\r\n //this.companyLogo = this.companyDetails.website + this.companyDetails.logo;\r\n this.companyLogo = this.companyDetails.logo;\r\n }\r\n });\r\n\r\n this.tenantInfoDetail$.subscribe((responseData) => { \r\n if (responseData.selected_tenant) {\r\n this.tenantLogo = responseData.selected_tenant.image;\r\n }\r\n });\r\n\r\n\r\n }\r\n ngAfterViewInit() {\r\n\r\n // fromEvent(this.sidebar.nativeElement, 'mouseenter')\r\n // .pipe(debounceTime(100)).subscribe((value)=>{\r\n // if(this.sidebarMinimized){\r\n\r\n // this.sidebarMinimized=false;\r\n // this.hoveMenu=true;\r\n // this.cd.detectChanges();\r\n // }\r\n // });\r\n }\r\n\r\n toggleSideBarMinimized() {\r\n if (this.hoveMenu) this.hoveMenu = false;\r\n this.sidebarMinimized = !this.sidebarMinimized;\r\n\r\n }\r\n\r\n\r\n selectedMenu(url: string) {\r\n this.selectedUrl = url;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [SidebarComponent],\r\n imports: [\r\n CommonModule,\r\n StyleClassModule,\r\n DropdownModule,\r\n InputTextModule,\r\n ScrollPanelModule,\r\n ButtonModule,\r\n RouterModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [SidebarComponent],\r\n})\r\nexport class SidebarComponentModule { }\r\n","","export * from './lib/enum.module';\r\nexport * from './lib/crm';\r\nexport * from './lib/rrule';\r\nexport * from './lib/httperrorresponsecode'\r\nexport * from './lib/enum.common';\r\nexport * from './lib/tableactionbuttons'\r\nexport * from './lib/plansubscription'\r\n\r\nexport * from './lib/enum.billing'\r\n// export * from './lib/TaxType'\r\nexport * from './lib/appointment-types';\r\nexport * from './lib/class-types'\r\nexport * from './lib/schedule'","export enum ClassAppointmentBehaviour {\r\n Free = 0,\r\n Paid = 1,\r\n Membership_Paid = 2,\r\n Free_for_Members = 3,\r\n}\r\n\r\nexport enum AppointmentCommissionMode{\r\n NoCommission=\"No Commission\",\r\n RevenueShare=\"Revenue Share\",\r\n FlatFees=\"FlatFees\",\r\n}\r\n\r\n\r\nexport enum AppointmentBehaviour {\r\n Paid = \"Paid\",\r\n Membership_Paid = \"Membership + Paid\",\r\n Free = \"Free\",\r\n Free_for_Members = \"Free for members\",\r\n // AppointmentBehaviour = \"AppointmentBehaviour\"\r\n}\r\n\r\nexport enum ThingsToCarry{\r\n Water_Bottle=\"Water Bottle\",\r\n Id_card=\"Id card\",\r\n Towel=\"Towel\",\r\n Resistance_N=\"Resistance N\",\r\n}\r\n\r\nexport enum AppointmentDurations{\r\n \"15 min\"=\"15\",\r\n \"30 min\"=\"30\",\r\n \"45 min\"=\"45\",\r\n \"60 min\"=\"60\",\r\n \"90 min\"=\"90\",\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","export enum ClassCommissionMode{\r\n NoCommission=\"No Commission\",\r\n RevenueShare=\"Revenue Share\",\r\n FlatFees=\"FlatFees\",\r\n}\r\n\r\nexport enum ClassBehaviour{\r\n Free=\"Free\",\r\n Paid=\"Paid\",\r\n Membership_Paid=\"Membership + Paid\",\r\n Free_for_Members=\"Free for members\"\r\n}\r\n\r\n","export enum TourOutcome {\r\n NotInterested = 1,\r\n NoShow = 2,\r\n Reschedule = 3,\r\n StillThinking = 4,\r\n SignUp = 5,\r\n BookTrial = 6\r\n}\r\nexport enum BOARD_MASTER_IDS {\r\n LOST = 14,\r\n WON = 15\r\n}\r\nexport enum CallOutcome {\r\n NoAnswer_LeftMessage = 1,\r\n ContactMade = 2,\r\n BookTour = 3,\r\n SignUp = 4,\r\n NotIntrested = 5\r\n\r\n}\r\n\r\nexport enum OpportunityStageForNonMember {\r\n NewLeads = 1,\r\n ContactMade = 2,\r\n TourBooked = 3,\r\n TourCompleted = 4,\r\n TrialBooked = 5,\r\n TrialCompleted = 6,\r\n Other = 7\r\n}\r\n\r\nexport enum OpportunityBoardType {\r\n NewMemberBoard = 1,\r\n ExistingMemberBoard = 2\r\n}\r\n\r\nexport enum OpportunitiesType {\r\n Cold = 1,\r\n Warm = 2,\r\n Hot = 3\r\n}\r\n\r\nexport enum OpportunitiesOutcome {\r\n InProgress = 0,\r\n Won = 1,\r\n Lost = 2,\r\n Nurture = 3\r\n}\r\n\r\n\r\nexport enum TaskAssignToType {\r\n SpecificStaff = 1,\r\n ClientRep = 2\r\n}\r\n\r\nexport enum TaskType {\r\n Call = 1,\r\n Sms = 2,\r\n Email = 3,\r\n Task = 4,\r\n Tour = 5\r\n}\r\n\r\nexport enum TaskPriority {\r\n High = 1,\r\n Med = 2,\r\n low = 3\r\n}\r\n","export enum TaxRegime {\r\n GSTIndia = 1,\r\n VAT = 2,\r\n SalesTaxUSA = 3\r\n}\r\n\r\nexport enum TaxType {\r\n CGST = 1,\r\n SGST = 2,\r\n IGST = 3,\r\n VAT = 4,\r\n SalesTax = 5\r\n}\r\n\r\nexport enum TaxCalculationMethod {\r\n Inclusive = 1,\r\n Exclusive = 2\r\n}\r\n\r\nexport enum InvoiceStatus\r\n{\r\n Void = 0,\r\n Open = 1,\r\n PartialOpen = 2,\r\n Closed = 3\r\n}\r\n\r\nexport enum PaymentStatus\r\n{\r\n Open = 1,\r\n PartiallyOpen = 2,\r\n Closed = 3,\r\n PendingRealization = 8,\r\n Erroneous = 9,\r\n Void = 10\r\n}\r\n\r\n","export enum PayLinkSteps {\r\n Details,\r\n Waiver,\r\n Information,\r\n Payment\r\n}\r\n\r\nexport enum WaiverSusbscriptionTrigger {\r\n FirstSingup = 1,\r\n AllSignup = 2,\r\n OnlyForSelectServiceCatogory = 3\r\n}\r\n\r\nexport enum TrackMode {\r\n StaffWebApp = 1,\r\n StaffMobileApp = 2,\r\n ClientMobileApp = 3,\r\n ClientPurchasePortal = 4,\r\n ClientWebsiteWidget = 5,\r\n FFMavrick = 6,\r\n ClientWebSignup = 7,\r\n FFHangfireJob = 8\r\n}\r\n\r\nexport enum Status {\r\n InActive = 0,\r\n Active = 1\r\n}\r\n\r\nexport interface Tenant_Access {\r\n id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n}\r\n\r\nexport interface Ienum {\r\n key: string | T,\r\n value: string | T\r\n}\r\n\r\n//#region Staff\r\n\r\nexport enum StaffStatus {\r\n Invited = 0,\r\n Active = 1,\r\n Suspended = 2,\r\n Terminated = 3\r\n}\r\n\r\nexport enum IPSettings {\r\n Unrestricted = 1,\r\n CentreIPs = 2,\r\n CentrePlusAdditionalIPs = 3\r\n}\r\n\r\nexport enum Roles {\r\n Admin = 1,\r\n Staff = 2,\r\n Member = 3,\r\n FFAdmin = 4\r\n}\r\n\r\nexport enum StaffGender {\r\n Female = 1,\r\n Male = 2,\r\n Transgender = 3,\r\n NonBinaryOrNonConforming = 4,\r\n PreferNotToRespond = 5\r\n}\r\n\r\n//#endregion Staff\r\n\r\n\r\n\r\n//#region Client\r\n// export enum Client {\r\n// status = 0\r\n// }\r\nexport enum ClientGender {\r\n Female = 1,\r\n Male = 2,\r\n Transgender = 3,\r\n NonBinaryOrNonConforming = 4,\r\n PreferNotToRespond = 5\r\n}\r\n\r\nexport enum Crown {\r\n SilverCrown = 'silver-crown',\r\n GrayCrown = 'gray-crown',\r\n GoldCrown = 'gold-crown',\r\n Default = 'default'\r\n}\r\nexport enum CoinIcons {\r\n LessSpentIcon = 'less-spent-icon',\r\n MediumSpentIcon = 'medium-spent-icon',\r\n MostSpentIcon = 'most-spent-icon',\r\n Default = 'default'\r\n}\r\nexport enum ClientRegular {\r\n Regular = 0,\r\n IRRegular = 1\r\n}\r\n\r\nexport enum ClientStatus {\r\n Prospect = 1,\r\n Trail = 2,\r\n Client = 3,\r\n ClientNonMember = 4,\r\n ExClient = 5,\r\n BlockedClient = 6\r\n}\r\n\r\nexport enum ClientSubStatus {\r\n FutureClient = 1,\r\n ActiveCLient = 2,\r\n FrozenClient = 3,\r\n SuspendedClient = 4,\r\n ExMemberCancelled = 5,\r\n ExMemberExpired = 6,\r\n ExMemberTransferred = 7,\r\n Prospect = 8,\r\n Trial = 9,\r\n BlockedClient = 10\r\n}\r\n\r\nexport enum ClientChannel {\r\n Online = 1,\r\n WalkIn = 2,\r\n Phone = 3,\r\n DataEntry = 4\r\n}\r\n\r\nexport enum Gender {\r\n male = \"Male\",\r\n female = 'Female',\r\n other = 'Other'\r\n}\r\nexport enum EnquirySource {\r\n web = 'web',\r\n walkIn = 'walk-in',\r\n phone = 'phone'\r\n}\r\n\r\nexport enum TimeLine {\r\n BeyondFiveYears = 5,\r\n BeyondThreeYears = 3,\r\n BeyondOneYears = 1,\r\n TimeAgo = 'ago',\r\n TimeToGO = 'togo'\r\n}\r\n\r\nexport enum GridData {\r\n RowLoaderTime = 1200,\r\n DefaultCurrentPage = 1,\r\n DefaultInitilaPage = 0,\r\n DefaultPageSize = 10,\r\n DefaultPageItems = 10,\r\n DefaultPages = 10\r\n}\r\nexport enum ElasticProviderName {\r\n Clients = \"Clients\",\r\n Actions = \"Actions\",\r\n KbDocuments = \"KbDocuments\"\r\n}\r\n//#endregion Client\r\n\r\n//#region paylink\r\n\r\nexport enum PaymentGatewaySupported {\r\n Offline = 0,\r\n RazorpayIndia = 1,\r\n PayenginUSA = 2,\r\n TwoC2pVietnam = 3,\r\n TwoC2pSingapore = 4,\r\n TwoC2pMalaysia = 5,\r\n EzypayAustralia = 6,\r\n EzypaySingapore = 7,\r\n EzypayMalaysia = 8,\r\n EzypayPhilippines = 9,\r\n PayenginePhilippines = 10\r\n}\r\n\r\nexport enum PaymentGatewayType {\r\n Primary = 1,\r\n ApplePay = 2,\r\n GooglePay = 3,\r\n AmazonPay = 4,\r\n UPI = 5,\r\n Paytm = 6\r\n}\r\n\r\nexport enum PayModeType {\r\n Cash = 1,\r\n Card = 2,\r\n NetBanking = 3,\r\n UPI = 4,\r\n Wallet = 5,\r\n ACH = 6,\r\n Cheque = 7,\r\n Other = 8,\r\n}\r\n//#endregion paylink\r\n\r\n\r\n//#region Waiver\r\nexport enum WaiverVariablesType {\r\n CheckBox,\r\n Date,\r\n Sign,\r\n TextBox\r\n}\r\n//#endregion Waiver","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n})\r\nexport class EnumModule {}\r\n","export enum HTTP_RES_ERROR_CODE {\r\n UNAUTHORIZED = 401,\r\n BADREQUEST = 400,\r\n FORBIDDEN = 403,\r\n NOTFOUND = 404,\r\n INTERNALSERVERERROR = 500 \r\n}","export enum PlanCategory {\r\n PayAsYouGo = 1,\r\n PaidInFull = 2,\r\n DropIn = 3,\r\n Contract = 4,\r\n ContractConvertsToPayAsYouGo = 5\r\n};\r\n\r\nexport enum PlanType {\r\n PayAsYouGo = \"Pay as you go\",\r\n PaidInFull = \"Paid in full\",\r\n DropIn = \"Drop-in\",\r\n Contract = \"Contract\",\r\n ContractConvertsToPayAsYouGo = \"Pay as you go with Contract\"\r\n}\r\n\r\nexport enum PlanIntervalType {\r\n Day=0,\r\n Week = 1,\r\n Month = 2,\r\n}\r\n\r\nexport enum PlanFreezeType {\r\n NoFreeze = \"No Freeze\",\r\n FreeFreeze = \"Free Freeze\",\r\n PaidFreeze = \"Paid Freeze\"\r\n}\r\n\r\nexport enum SignUpStatus {\r\n Created = 1,\r\n Open = 2,\r\n WaiverDone = 3,\r\n MandatoryInformationDone = 4,\r\n AwaitingPayment = 5,\r\n SignUpSuccessfull = 6,\r\n SignUpFailed = 7,\r\n SignUpExpired = 8\r\n}\r\n\r\nexport enum SignUpFinalStatus {\r\n Open = 0,\r\n Closed = 1\r\n}\r\n\r\nexport enum BillingCycleWeek {\r\n \"Sign-update\" = \"0\",\r\n \"Monday\" = \"-1\",\r\n \"Tuesday\" = \"-2\",\r\n \"Wednesday\" = \"-3\",\r\n \"Thursday\" = \"-4\",\r\n \"Friday\" = \"-5\",\r\n \"Saturday\" = \"-6\",\r\n \"Sunday\" = \"-7\"\r\n}\r\n\r\nexport enum BillingCycleMonth {\r\n \"Sign-up date\" = \"0\",\r\n \"1st of Every month\" = \"1\",\r\n \"2nd of Every month\" = \"2\",\r\n \"3rd of Every month\" = \"3\",\r\n \"4th of Every month\" = \"4\",\r\n \"5th of Every month\" = \"5\",\r\n \"6th of Every month\" = \"6\",\r\n \"7th of Every month\" = \"7\",\r\n \"8th of Every month\" = \"8\",\r\n \"9th of Every month\" = \"9\",\r\n \"10th of Every month\" = \"10\",\r\n \"11th of Every month\" = \"11\",\r\n \"12th of Every month\" = \"12\",\r\n \"13th of Every month\" = \"13\",\r\n \"14th of Every month\" = \"14\",\r\n \"15th of Every month\" = \"15\",\r\n \"16th of Every month\" = \"16\",\r\n \"17th of Every month\" = \"17\",\r\n \"18th of Every month\" = \"18\",\r\n \"19th of Every month\" = \"19\",\r\n \"20th of Every month\" = \"20\",\r\n \"21st of Every month\" = \"21\",\r\n \"22nd of Every month\" = \"22\",\r\n \"23rd of Every month\" = \"23\",\r\n \"24th of Every month\" = \"24\",\r\n \"25th of Every month\" = \"25\",\r\n \"26th of Every month\" = \"26\",\r\n \"27th of Every month\" = \"27\",\r\n \"28th of Every month\" = \"28\",\r\n \"29th of Every month\" = \"29\",\r\n \"30th of Every month\" = \"30\",\r\n \"31th of Every month\" = \"31\",\r\n}\r\n\r\nexport enum SignUpCharges {\r\n \"KeyFobFees\" = \"KeyFob Fees\",\r\n \"SignUpFees\" = \"Sign-up Fees\",\r\n \"TransferFees\" = \"Transfer Fees\",\r\n \"FreezeFees\" = \"Freeze Fees\"\r\n}\r\n\r\nexport enum MembershipBehaviour {\r\n MemberShip = \"Check-in\",\r\n AppointmentPackage = \"Appointment Session\",\r\n ClassPackage = \"Class Session\",\r\n}\r\n\r\nexport enum ServiceBehaviour {\r\n Membership = 1,\r\n AppointmentPackage = 2,\r\n ClassPackage = 3\r\n}\r\n\r\nexport enum PayModeLevel1 {\r\n Cash = 1,\r\n Card = 2,\r\n NetBanking = 3,\r\n UPI = 4,\r\n Wallet = 5,\r\n ACH = 6,\r\n Cheque = 7,\r\n Other = 8\r\n}\r\n\r\nexport enum PayModeLevel2 {\r\n Cash = 1,\r\n Debit = 2,\r\n Credit = 3,\r\n NetBanking = 4,\r\n UPI = 5,\r\n Paytm = 6,\r\n AmazonPay = 7,\r\n Venmo = 8,\r\n ACH = 9,\r\n Cheque = 10,\r\n Sodexo = 11\r\n}\r\n","export enum RRuleFrequency {\r\n YEARLY = 0,\r\n MONTHLY = 1,\r\n WEEKLY = 2,\r\n DAILY = 3,\r\n HOURLY = 4,\r\n MINUTELY = 5,\r\n SECONDLY = 6\r\n}\r\n","export enum ClientBookingStatus {\r\n NoStatus = \"NoStatus\",\r\n Booked = \"Booked\",\r\n Attended = \"Attended\",\r\n NoShow = \"NoShow\",\r\n Cancelled = \"Cancelled\",\r\n Erroneous = \"Erroneous\",\r\n Replaced = \"Replaced\",\r\n GiveUpSlot = \"GiveUpSlot\"\r\n}\r\n\r\nexport enum ClassStatus\r\n{\r\n Scheduled = \"Scheduled\",\r\n Cancelled = \"Cancelled\",\r\n Completed = \"Completed\"\r\n}\r\n\r\nexport enum AppointmentStatus\r\n{\r\n Booked = \"Booked\",\r\n Attended = \"Attended\",\r\n NoShow = \"NoShow\",\r\n Cancelled = \"Cancelled\",\r\n}\r\n\r\nexport enum CalendarView\r\n{\r\n Year = \"year\",\r\n Month = \"month\",\r\n Week = \"week\",\r\n Day = \"day\",\r\n Agenda = \"agenda\",\r\n Trainer = \"trainer\",\r\n Studio = \"studio\",\r\n Schedule = \"schedule\",\r\n}\r\n\r\n\r\nexport enum ScheduleType{\r\n Apppintment=\"appointment\",\r\n Class=\"class\"\r\n}\r\n\r\n\r\n\r\n","export enum TableAction{\r\n Opportunity=1,\r\n Task=2,\r\n SendEmail=3,\r\n SendSms=4\r\n }","export * from './lib/app.errors';\r\nexport * from './lib/not-found.error';\r\nexport * from './lib/error-msg/error-msg.component';\r\nexport * from './lib/unauthorized.errors';\r\nexport * from './lib/badrequest.errors'","export class AppErrors {\r\n constructor(public originalError?: any){}\r\n}\r\n","import { AppErrors } from \"./app.errors\";\r\n\r\nexport class BadRequestError extends AppErrors {\r\n}","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { AppInitService } from 'libs/api/src/lib/app-init/appinit.service';\r\n\r\n@Component({\r\n selector: 'app-error-msg',\r\n templateUrl: './error-msg.component.html',\r\n styleUrls: ['./error-msg.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ErrorMsgComponent implements OnInit {\r\n @Input() errors: any;\r\n @Input() fieldLabel: any;\r\n @Input() secondFieldLabel: any;\r\n errormsg = '';\r\n constructor(public translate: TranslateService, public appInit: AppInitService) {\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n console.log(\"...errors\");\r\n }\r\n parsedata(e:any){\r\n console.log('added', e)\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n@NgModule({\r\n declarations: [ErrorMsgComponent],\r\n imports: [\r\n CommonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n exports: [ErrorMsgComponent]\r\n})\r\nexport class ErrorMsgComponentModule {\r\n}\r\n","
\r\n
{{'common.errors.validations.REQUIRED' | translate : {fieldlabel:fieldLabel} }}
\r\n
{{'common.errors.validations.EMAIL' | translate}}
\r\n
{{'common.errors.validations.MINLENGTH' | translate : {minlength:errors.minlength.requiredLength} }}
\r\n
{{'common.errors.validations.MAXLENGTH' | translate : {maxlength:fieldLabel} }}
\r\n
{{'common.errors.validations.PASSWORD-NOT-MATCHED' | translate}}
\r\n
{{'common.errors.validations.CONFIRMATION-TEXT' | translate}}
\r\n
{{'common.errors.validations.PASSWORD_NUMBER' | translate}}
\r\n
{{'common.errors.validations.PASSWORD_SPECIAL_CHAR' | translate}}
\r\n
{{'common.errors.validations.IP_ADDRESS' | translate}}
\r\n
{{'common.errors.validations.VALID_DECIMAL' | translate}}
\r\n
{{'common.errors.validations.PATTERN' | translate}}
\r\n
{{'common.errors.validations.PASSWORD_LOWERCASE_CHAR' | translate}}
\r\n
{{'common.errors.validations.PASSWORD_UPPERCASE_CHAR' | translate}}
\r\n {{'common.errors.validations.Duplicate' | translate : {fieldlabel:fieldLabel} }}\r\n {{'common.errors.validations.FromToDate' | translate : {fieldlabel:fieldLabel,secondFieldLabel:secondFieldLabel} }}\r\n {{'POS.MEMBERSHIP_ADDON.CCNUMBER' | translate : {fieldlabel:fieldLabel} }}\r\n {{'POS.MEMBERSHIP_ADDON.CCEXPIRYDATE' | translate : {fieldlabel:fieldLabel} }}\r\n \r\n
\r\n","import { AppErrors } from \"./app.errors\";\r\n\r\nexport class NotFoundError extends AppErrors {\r\n}\r\n\r\nexport class FluentValidationError extends AppErrors {\r\n}\r\n\r\n\r\nexport class ConflictError extends AppErrors {\r\n constructor(public originalError?: any){\r\n super(originalError);\r\n }\r\n\r\n\r\n}\r\n","import { AppErrors } from \"./app.errors\";\r\n\r\nexport class UnauthorizedError extends AppErrors {\r\n}","export * from './lib/tenant';\r\nexport * from './lib/auth';\r\nexport * from './lib/company';\r\nexport * from './lib/router-serializer';\r\nexport * from './lib/staff';\r\nexport * from './lib/user';\r\nexport * from './lib/claims';\r\nexport * from './lib/paginationfilter';\r\nexport * from './lib/prospect';\r\nexport * from './lib/taskCallOutcome';\r\nexport * from './lib/serviceType';\r\nexport * from './lib/country';\r\nexport * from './lib/state';\r\nexport * from './lib/city';\r\n// export * from './lib/common';\r\nexport * from './lib/crm/opportunity';\r\nexport * from './lib/language/languages';\r\nexport * from './lib/reports/reports';\r\nexport * from './lib/reports/reportaccessrequest';\r\nexport * from './lib/reports/reportfilter';\r\nexport * from './lib/adminsettings';\r\nexport * from './lib/reports/reportdata';\r\nexport * from './lib/crm/opportunitystagemasterresponse';\r\nexport * from './lib/crm/taskOutcomedetails';\r\nexport * from './lib/generic/createresponse';\r\nexport * from './lib/rrule';\r\nexport * from './lib/crm/taskcategory';\r\nexport * from './lib/clients';\r\nexport * from './lib/omnisearchrequest';\r\nexport * from './lib/crm/task';\r\nexport * from './lib/stage-master';\r\nexport * from './lib/schedule/appointment/appointmentlistresponse';\r\nexport * from './lib/schedule/class/classlistresponse';\r\nexport * from './lib/master/plan-master';\r\nexport * from './lib/master/tax-master';\r\nexport * from './lib/master/payment-master';\r\nexport * from './lib/crm/billingcrm';\r\nexport * from './lib/billing/billing';\r\nexport * from './lib/billing/overlapping';\r\nexport * from './lib/billing/staffdiscountcalculation';\r\nexport * from './lib/getordersummaryresponse';\r\nexport * from './lib/getordersummarypaymenttimelineresponse';\r\nexport * from './lib/signuppaylink';\r\nexport * from './lib/waivermasterreponselist';\r\nexport * from './lib/clientmandatoryresponse';\r\nexport * from './lib/paymentmethods';\r\nexport * from './lib/admin/class-types';\r\nexport * from './lib/admin/subscription';\r\nexport * from './lib/schedule/appointment/appointmenttype';\r\nexport * from './lib/schedule/class/classtype';\r\nexport * from './lib/schedule/appointment/appointment-subtype';\r\nexport * from './lib/master/room';\r\nexport * from './lib/schedule/appointment/appointment';\r\nexport * from './lib/schedule/class/class';\r\nexport * from './lib/schedule/class/classbooking';\r\nexport * from './lib/ipsetting';\r\n\r\nexport * from './lib/billing/invoice&payments/payments';\r\nexport * from './lib/billing/invoice&payments/invoices';\r\nexport * from './lib/billing/invoice&payments/paymentmethods';\r\nexport * from './lib/clientwaiverpayload';\r\n","import { ClassBehaviour } from \"@fitness-force/enum\";\r\n\r\nexport interface ClassTypes {\r\n id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n behaviour: ClassBehaviour;\r\n color: string;\r\n status: boolean;\r\n maximum_capacity: number,\r\n maximum_waitlist: number,\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n logo: string;\r\n is_small_group_training: boolean;\r\n duration_in_minutes: number;\r\n is_room_mandatory: boolean;\r\n tags: Array;\r\n created_by: number;\r\n updated_by: number;\r\n created_date: Date;\r\n updated_date: Date;\r\n}\r\n\r\nexport interface ClassTags {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n class_types: Array;\r\n appointment_types: Array;\r\n}\r\n\r\n\r\n\r\nexport interface CreateClassTypesRequest {\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n service_type_id: number;\r\n behaviour: ClassBehaviour; // TODO: cross check reuse\r\n color: string;\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n commission_mode: string;\r\n minimum_booking_cancel_time: number;\r\n mark_trainer_busy: boolean;\r\n is_room_mandatory: boolean;\r\n booking_opens_in_minutes: number;\r\n is_online_cancel_booking_allowed: boolean;\r\n duration_in_minutes: number;\r\n tags: Array;\r\n logo_base64: string;\r\n}\r\n","export interface SubscriptionPlan {\r\n name_primary_language: string,\r\n name_secondary_language: string,\r\n description_primary_language: string,\r\n description_secondary_language: string,\r\n subscription_Category: string,\r\n billing_interval_type: string,\r\n billing_interval_value: number,\r\n bill_cycle_day: string,\r\n available_on_staff_facing_apps: boolean,\r\n available_on_member_facing_apps: boolean,\r\n available_on_website_widgits: boolean,\r\n contract_term: number,\r\n minimum_contract_commitment: number,\r\n number_of_occurance_as_deposit: number,\r\n auto_apply_deposit_end_minimum_commitment: boolean,\r\n feature_is_cash_recurring: boolean,\r\n feature_is_signup_fee_required: boolean,\r\n feature_is_early_cancellation_allowed: boolean,\r\n early_cancellation_charge_master_id: number,\r\n feature_is_online_termination_allowed: boolean,\r\n feature_is_freeze_allowed: boolean,\r\n freeze_type: string,\r\n freeze_allowed_number_of_attempts_in_year: number,\r\n freeze_can_only_billing_cycle: boolean,\r\n freeze_fee_per_instance_charge_master_id: number,\r\n freeze_max_days_per_instance: number,\r\n commission_value: number,\r\n commission_calculation_type: string,\r\n transferable: boolean,\r\n minimum_days_required_for_transfer: number,\r\n recurring_services: Array,\r\n non_recurring_services: Array,\r\n signup_charge_master_ids: Array\r\n}\r\n\r\nexport interface SubscriptionPlanService{\r\n base_cost_in_minor_currency: number,\r\n sessions: number,\r\n category_id: number,\r\n behaviour: string,\r\n tax_group_id: number,\r\n tax_item_code: string,\r\n require_base_membership: boolean,\r\n is_session_owner_required: boolean,\r\n is_base_membership: boolean,\r\n non_recurring_services?:boolean\r\n}\r\n","export interface Category {\r\n id:number,\r\n settingid:number,\r\n name: string;\r\n description: string;\r\n icon: string;\r\n redirectUrl:string\r\n}\r\n\r\nexport interface Settings {\r\n id:number,\r\n name: string;\r\n shortname: string;\r\n icon: string;\r\n categories: Category[];\r\n}","export interface LoginDataModel {\r\n \"email_id\": string;\r\n \"password\": string;\r\n \"company_id\": number\r\n }\r\n \r\n export interface SignupDataModel {\r\n name: string;\r\n email: string;\r\n password: string;\r\n confirmpassword: string;\r\n }\r\n\r\n\r\n export interface LoginData {\r\n username: string;\r\n password: string;\r\n }","import { BOARD_MASTER_IDS, OpportunityBoardType, PayModeLevel1, PayModeLevel2, TaxType } from \"@fitness-force/enum\";\r\nimport { OverLappingSubscriptionSignUpResponse } from \"@fitness-force/models\";\r\nimport { getDayMilliseconds } from \"@mobiscroll/angular/dist/js/core/util/datetime\";\r\n\r\nexport interface PlanBreakUpCalculationRequest {\r\n client_id: number;\r\n issue_date: string;\r\n subscription_start_date: string;\r\n subscription_bill_cycle_day: number;\r\n is_coupon_code_applied: boolean;\r\n coupon_code: string;\r\n }\r\n\r\nexport interface PlanBreakUpCalculationResponse {\r\n overlapping_subscription: OverLappingSubscriptionSignUpResponse;\r\n plan_breakup_calculation: PlanBreakUpCalculation;\r\n}\r\n\r\nexport interface PlanBreakUpCalculation {\r\n charging_today: ChargingToday;\r\n charging_recurring: RecurringBreakUp;\r\n}\r\n\r\nexport interface ChargingToday {\r\n service_first_charge: ServiceFirstCharge;\r\n service_non_recurring: NonRecurringBreakUp;\r\n signup_charges: ChargeBreakUp[];\r\n}\r\n\r\nexport interface ServiceFirstCharge {\r\n service_start_date: string;\r\n service_end_date: string;\r\n service_prorata_days: number;\r\n services: ServiceBreakUp[];\r\n}\r\n\r\nexport interface ChargeBreakUp {\r\n id: number;\r\n name_primary_language:string;\r\n name_secondary_language:string;\r\n amount_in_minor_currency: number;\r\n discount_amt_in_minor_currency: number;\r\n taxable_cost_in_minor_currency: number;\r\n taxgrp_id: number;\r\n tax: TaxLineItemBreakUp[];\r\n}\r\n\r\nexport interface RecurringBreakUp {\r\n services: ServiceBreakUp[];\r\n}\r\n\r\nexport interface NonRecurringBreakUp {\r\n services: ServiceBreakUp[];\r\n}\r\n\r\nexport interface ServiceBreakUp {\r\n id: number;\r\n category_id:number;\r\n base_cost_in_minor_currency: number;\r\n discount_amt_in_minor_currency: number;\r\n taxable_cost_in_minor_currency: number;\r\n taxgrp_id: number;\r\n tax: TaxLineItemBreakUp[];\r\n}\r\n\r\nexport interface TaxLineItemBreakUp {\r\n id: number;\r\n type: TaxType;\r\n amt_in_minor_currency: number;\r\n rate: number;\r\n}\r\n\r\n\r\nexport interface TaxAggregate { \r\n type: TaxType;\r\n amt_in_minor_currency: number;\r\n rate: number;\r\n}\r\n\r\n//------------------------\r\n\r\nexport interface SignUpResponse {\r\n clientsignupuuId: string;\r\n clientsubscriptionuuId: string;\r\n}\r\n\r\nexport interface SignUpRequest {\r\n plan_id: number;\r\n start_date: string;\r\n bill_cycle_day: number;\r\n sales_rep: number;\r\n issue_date: string;\r\n billing_name: string;\r\n current_keyfob: string;\r\n is_offline_payment: boolean;\r\n offline_payment: PaymentSignUp;\r\n is_coupon_code_applied: boolean;\r\n sigup_coupon_code: string;\r\n charging_today: ChargingTodaySignUp;\r\n charging_recurring: RecurringSignUp;\r\n crm: Crm;\r\n schedule: ScheduleSignUp;\r\n}\r\n\r\nexport interface PaymentSignUp {\r\n paymode_level1: PayModeLevel1;\r\n paymode_level2_id: PayModeLevel2;\r\n amount_in_minor_currency: number;\r\n upi_provider: string;\r\n vpa_id: string;\r\n card_number: string;\r\n network_type: string;\r\n auth_code: string;\r\n exp_date: Date | null;\r\n bank_name: string;\r\n cheque_date: Date | null;\r\n}\r\n\r\nexport interface ServiceFirstChargeSignUp {\r\n service_start_date: string;\r\n service_end_date: string;\r\n service_prorata_days: number;\r\n services: ServiceSignUp[];\r\n}\r\n\r\nexport interface ChargeSignUp {\r\n id: number;\r\n amount_in_minor_currency: number;\r\n discount_amt_in_minor_currency: number;\r\n taxable_cost_in_minor_currency: number;\r\n taxgrp_id: number;\r\n tax: TaxLineItemSignUp[];\r\n}\r\n\r\nexport interface RecurringSignUp {\r\n services: ServiceSignUp[];\r\n}\r\n\r\nexport interface NonRecurringSignUp {\r\n services: ServiceSignUp[];\r\n}\r\n\r\nexport interface ServiceSignUp {\r\n id: number;\r\n category_id: number;\r\n base_cost_in_minor_currency: number;\r\n discount_amt_in_minor_currency: number;\r\n taxable_cost_in_minor_currency: number;\r\n taxgrp_id: number;\r\n tax: TaxLineItemSignUp[];\r\n}\r\n\r\nexport interface ChargingTodaySignUp {\r\n service_first_charge: ServiceFirstChargeSignUp;\r\n service_non_recurring: NonRecurringSignUp;\r\n signup_charges: ChargeSignUp[];\r\n}\r\n\r\nexport interface RecurringSignUp {\r\n services: ServiceSignUp[];\r\n}\r\n\r\nexport interface Crm {\r\n sigup_sts_tsk_id: number;\r\n sigup_sts_opp_id: number;\r\n sigup_sts_board_type: OpportunityBoardType;\r\n}\r\n\r\nexport interface ScheduleSignUp {\r\n signup_sts_class_booking_id: number;\r\n signup_sts_appt_id: number;\r\n}\r\n\r\nexport interface TaxLineItemSignUp {\r\n id: number;\r\n type: TaxType;\r\n amt_in_minor_currency: number;\r\n rate: number;\r\n}\r\n\r\n\r\n","import { InvoiceStatus, TrackMode } from \"@fitness-force/enum\";\r\n\r\n export interface Invoice {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n client_id: number;\r\n is_recurring: boolean;\r\n client_subscription_id: number;\r\n number: number;\r\n number_prefix: string;\r\n billing_name: string;\r\n sales_representative: number;\r\n total_base_amount_in_minor_currency: number;\r\n total_tax_amount_in_minor_currency: number;\r\n total_amount_in_minor_currency: number;\r\n total_payment_in_minor_currency: number;\r\n total_balance_due_in_minor_currency: number;\r\n issue_date: Date;\r\n track_mode: TrackMode;\r\n due_date: Date;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n status: InvoiceStatus;\r\n invoiceNumbers:string[]\r\n }\r\n\r\n\r\n export interface SalesReturnLineItem {\r\n invoice_line_id: number;\r\n description: string;\r\n net_unit_cost_in_minor_currency: number;\r\n quantity: number;\r\n }\r\n\r\n export interface RaiseSalesReturnRequest {\r\n sales_rep: number;\r\n issue_date: Date;\r\n migration_id: string;\r\n sales_return_line_items: SalesReturnLineItem[];\r\n }\r\n\r\n export interface voidInvoiceRequest{\r\n void_reason:string;\r\n }\r\n\r\n\r\n\r\n","import { Status } from \"@fitness-force/enum\";\r\n\r\nexport interface PaymentMethod {\r\n id: number;\r\n level1: string;\r\n network_type: string;\r\n expiry_date: Date;\r\n bank_name: string;\r\n cardholder_name: string;\r\n masked_account_number: string;\r\n upi_provider: string;\r\n vpa_id: string;\r\n masked_card_number: string;\r\n status: Status;\r\n}","import { PaymentStatus, PayModeLevel1 } from \"@fitness-force/enum\";\r\nimport { Invoice } from \"./invoices\";\r\n\r\nexport interface Payments {\r\n id: number;\r\n log_id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n paid_by_client_id: number;\r\n paid_for_client_id: number;\r\n amount_in_minor_currency: number;\r\n is_online: boolean;\r\n paymode_level1: PayModeLevel1;\r\n payment_mode_level2_id: string;\r\n payment_mode_master_id: number;\r\n number: number;\r\n number_prefix: string;\r\n status: PaymentStatus;\r\n void_reason: string;\r\n bulk_uuid: string;\r\n is_number_generated: boolean;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number | null;\r\n updated_date: Date | null;\r\n invoices: Invoice[];\r\n invoiceNumbers:string[]\r\n}","import { PlanCategory, PlanIntervalType, SignUpStatus } from \"@fitness-force/enum\";\r\n\r\nexport interface OverLappingSubscriptionRequest {\r\n planId: number;\r\n planCompanyId: number;\r\n planTenantId: number;\r\n planClientId: number;\r\n planSubscriptionCategory: PlanCategory;\r\n planBillingIntervalValue: number;\r\n planBillingIntervalType: PlanIntervalType;\r\n planContractTerm: number;\r\n planBillingCycleDay: number;\r\n planMinimumContractCommitment: number;\r\n planFeatureIsCashRecurring: boolean;\r\n planStartDate: string;\r\n services: OverLappingServiceCategory[];\r\n}\r\n\r\nexport interface OverLappingServiceCategory {\r\n serviceId: number;\r\n serviceCategoryId: number;\r\n serviceIsBaseMembership: boolean;\r\n}\r\n\r\nexport interface OverLappingSubscriptionResponse {\r\n overlapping_errormessage: string;\r\n new_date: OverLappingSubscriptionNewDate;\r\n overlapping_subscription: OverLappingSubscriptionAndServiceDetails[];\r\n}\r\n\r\nexport interface OverLappingSubscriptionNewDate {\r\n subs_plan_id: number;\r\n subs_category: PlanCategory;\r\n subs_start_date: string;\r\n subs_end_date: string;\r\n}\r\n\r\nexport interface OverLappingSubscriptionAndServiceDetails {\r\n subs_id: number;\r\n subs_plan_id: number;\r\n subs_company_id: number;\r\n subs_client_id: number;\r\n subs_tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n subs_start_date: string;\r\n subs_end_date: string;\r\n}\r\n\r\nexport interface OverLappingSubscriptionSignUpServices {\r\n id: number;\r\n category_id: number;\r\n is_basemembership: boolean;\r\n is_recurring: boolean;\r\n}\r\n\r\nexport interface OverLappingSubscriptionSignUpResponse {\r\n overlapping_subscription_signup: OverLappingSubscriptionSignUp;\r\n overlapping_client_subscription: OverLappingSubscriptionResponse;\r\n}\r\n\r\nexport interface OverLappingSubscriptionSignUp {\r\n overlapping_errormessage: string;\r\n new_date: OverLappingSubscriptionNewDate;\r\n overlapping_subscription_signup_details: OverLappingSubscriptionSignUpDetails[];\r\n}\r\n\r\nexport interface OverLappingSubscriptionSignUpDetails {\r\n sigup_sts_id: number;\r\n sigup_sts_company_id: number;\r\n sigup_sts_client_id: number;\r\n subs_plan_id: number;\r\n sigup_sts_tenant_id: number;\r\n sigup_sts_status: SignUpStatus;\r\n sigup_sts_short_link: string;\r\n subs_category: PlanCategory;\r\n subs_start_date: string;\r\n subs_end_date: string | null;\r\n services: OverLappingSubscriptionSignUpServices[];\r\n}","export interface StaffDiscountCalculationRequest {\r\n client_id: number;\r\n subscription_bill_cycle_day: number;\r\n subscription_start_date: string;\r\n issue_date: string;\r\n charging_today: StaffDiscountChargingTodayRequest;\r\n charging_recurring: StaffDiscountChargeRecurring;\r\n}\r\n\r\nexport interface StaffDiscountChargeRecurring {\r\n service_recurring: StaffDiscountServiceRecurringRequest;\r\n}\r\n\r\nexport interface StaffDiscountChargingTodayRequest {\r\n service_first_charge: StaffDiscountServiceFirstChargeRequest;\r\n service_non_recurring: StaffDiscountServiceNonRecurringRequest;\r\n signup_charges: StaffDiscountSignUpChargeRequest[];\r\n}\r\n\r\nexport interface StaffDiscountServiceFirstChargeRequest {\r\n discount_amt_in_minor_currency: number;\r\n}\r\n\r\nexport interface StaffDiscountSignUpChargeRequest {\r\n id: number;\r\n discount_amt_in_minor_currency: number;\r\n}\r\n\r\nexport interface StaffDiscountServiceNonRecurringRequest {\r\n discount_amt_in_minor_currency: number;\r\n}\r\n\r\nexport interface StaffDiscountServiceRecurringRequest {\r\n discount_amt_in_minor_currency: number;\r\n}","export interface City {\r\n id: number;\r\n name: string;\r\n code: string;\r\n state_code: string;\r\n state_id: number;\r\n}\r\n\r\nexport interface Cities {\r\n city: City;\r\n cities: Array;\r\n};","export interface Claim {\r\n id: number;\r\n company_id: number;\r\n status: string;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n true_count: number;\r\n name: string;\r\n description: string\r\n can_do_client_profiles: boolean;\r\n can_manage_client_profiles: boolean;\r\n can_admin_client_profiles: boolean;\r\n can_do_billing: boolean;\r\n can_admin_billing: boolean;\r\n can_manage_membership_basic: boolean;\r\n can_admin_membership: boolean;\r\n can_manage_class: boolean;\r\n can_admin_class: boolean;\r\n can_manage_appointments: boolean;\r\n can_admin_appointments: boolean;\r\n can_do_member_communication: boolean;\r\n can_manage_member_communication: boolean;\r\n can_admin_member_communication: boolean;\r\n can_see_reports_finance: boolean;\r\n can_see_reports_clients: boolean;\r\n can_see_reports_operational: boolean;\r\n can_see_reports_appointment: boolean;\r\n can_see_reports_class: boolean;\r\n can_see_reports_sales: boolean;\r\n can_see_reports_staff: boolean;\r\n can_see_reports_marketing: boolean;\r\n can_see_reports_security: boolean;\r\n can_export_reports: boolean;\r\n can_export_report_with_sensetive_info: boolean;\r\n can_manage_staff: boolean;\r\n}\r\n\r\nexport interface CLAIMSSTATEINTERFACE {\r\n claims: {\r\n Id: string,\r\n accessed_tenant: Array,\r\n all_tenant: Array,\r\n can_admin_appointments: string,\r\n can_admin_billing: string,\r\n can_admin_class: string,\r\n can_admin_client_profiles: string,\r\n can_admin_membercommunication: string,\r\n can_admin_membership: string,\r\n can_do_billing: string,\r\n can_do_client_profiles: string,\r\n can_do_membercommunication: string,\r\n can_export_report_with_sensetiveinfo: string,\r\n can_export_reports: string,\r\n can_manage_appointments: string,\r\n can_manage_class: string,\r\n can_manage_client_profiles: string,\r\n can_manage_membercommunication: string,\r\n can_manage_membership_basic: string,\r\n can_manage_staff: string,\r\n can_manage_tags: string,\r\n can_see_reports_appointment: string,\r\n can_see_reports_class: string,\r\n can_see_reports_clients: string,\r\n can_see_reports_finance: string,\r\n can_see_reports_marketing: string,\r\n can_see_reports_operational: string,\r\n can_see_reports_sales: string,\r\n can_see_reports_security: string,\r\n can_see_reports_staff: string,\r\n companyid: string,\r\n email: string,\r\n exp: number,\r\n iat: number,\r\n jti: string,\r\n language_iso_code: string,\r\n nbf: number,\r\n role: string,\r\n sub: string,\r\n trackmode: string\r\n }\r\n}\r\n\r\n\r\nexport class ClaimConstant {\r\n\r\n static can_admin_appointments: string = \"can_admin_appointments\";\r\n static can_admin_billing: string = \"can_admin_billing\";\r\n static can_admin_class: string = \"can_admin_class\";\r\n static can_admin_client_profiles: string = \"can_admin_client_profiles\";\r\n static can_admin_membercommunication: string = \"can_admin_membercommunication\";\r\n static can_admin_membership: string = \"can_admin_membership\";\r\n static can_do_billing: string = \"can_do_billing\";\r\n static can_do_client_profiles: string = \"can_do_client_profiles\";\r\n static can_do_membercommunication: string = \"can_do_membercommunication\";\r\n static can_export_report_with_sensetiveinfo: string = \"can_export_report_with_sensetiveinfo\";\r\n static can_export_reports: string = \"can_export_reports\";\r\n static can_manage_appointments: string = \"can_manage_appointments\";\r\n static can_manage_class: string = \"can_manage_class\";\r\n static can_manage_client_profiles: string = \"can_manage_client_profiles\";\r\n static can_manage_membercommunication: string = \"can_manage_membercommunication\";\r\n static can_manage_membership_basic: string = \"can_manage_membership_basic\";\r\n static can_manage_staff: string = \"can_manage_staff\";\r\n static can_manage_tags: string = \"can_manage_tags\";\r\n static can_see_reports_appointment: string = \"can_see_reports_appointment\";\r\n static can_see_reports_class: string = \"can_see_reports_class\";\r\n static can_see_reports_clients: string = \"can_see_reports_clients\";\r\n static can_see_reports_finance: string = \"can_see_reports_finance\";\r\n static can_see_reports_marketing: string = \"can_see_reports_marketing\";\r\n static can_see_reports_operational: string = \"can_see_reports_operational\";\r\n static can_see_reports_sales: string = \"can_see_reports_sales\";\r\n static can_see_reports_security: string = \"can_see_reports_security\";\r\n static can_see_reports_staff: string = \"can_see_reports_staff\";\r\n}\r\n","export interface ClientMandatoryFieldResponse {\r\n field_required: any;\r\n field_control_type: any;\r\n}","import { ClientGender, ClientStatus, ClientSubStatus, TrackMode } from \"@fitness-force/enum\";\r\n\r\nexport interface Client {\r\n clt_id: number;\r\n clt_createdin_tenant_id: number;\r\n clt_company_id: number;\r\n clt_full_name: string;\r\n clt_gender: ClientGender | null;\r\n clt_dateofbirth: string | null;\r\n clt_emailid: string;\r\n clt_image: string;\r\n clt_mobile_no: number;\r\n clt_mobile_country_code: string;\r\n clt_client_status: ClientStatus | null;\r\n clt_second_mobile_no: number | null;\r\n clt_second_mobile_country_code: string;\r\n clt_addr: string;\r\n clt_location: string;\r\n clt_country_code: string;\r\n clt_state_code: string;\r\n clt_city_code: string;\r\n clt_addr_pincode: number;\r\n clt_place_id: string;\r\n clt_placeid_request: string;\r\n clt_preferred_language: string;\r\n clt_emergency_contact_no: string;\r\n clt_emergency_contact_person: string;\r\n clt_medical_alert: string;\r\n clt_note: string;\r\n clt_outstanding_due: number;\r\n clt_source: string;\r\n clt_channel: string;\r\n clt_referred_by: number;\r\n clt_heartrate_monitoring_id: string;\r\n clt_dropout_score: number;\r\n clt_lifetime_value: number;\r\n clt_taxnumber: string;\r\n clt_bulk_insert_guid: string;\r\n clt_client_rep_id: number | null;\r\n clt_home_club_tenant_id: number;\r\n clt_latest_waiver_date: string;\r\n clt_latest_waiver_path: string;\r\n clt_password_hash: string;\r\n clt_checkin_status: boolean;\r\n clt_last_visited_date: string;\r\n clt_last_visited_centre: number;\r\n clt_is_erroneous: boolean;\r\n clt_is_mobile_verified: boolean;\r\n clt_is_email_verified: boolean;\r\n clt_is_blacklisted: boolean;\r\n clt_is_waiver: boolean;\r\n clt_promotional_sms: boolean;\r\n clt_promotional_email: boolean;\r\n clt_migration_id: string;\r\n clt_custom_fields: string;\r\n clt_current_keyfob: string;\r\n clt_is_irregular: boolean;\r\n clt_created_by: number;\r\n clt_updated_by: number;\r\n clt_created_date: string;\r\n clt_updated_date: string;\r\n clt_track_mode: TrackMode | null;\r\n clt_online_booking_stopped_until: string;\r\n clt_total_outstanding_in_minor_curr: number;\r\n clt_client_since: string;\r\n clt_app_installed: boolean;\r\n clt_sub_status: ClientSubStatus | null;\r\n}\r\n\r\n\r\nexport interface clientInterface {\r\n id: number\r\n company_id: number;\r\n client_status: string,\r\n is_mobile_verified: boolean;\r\n is_email_verified: boolean;\r\n image: string | null;\r\n home_club_tenant_id: number;\r\n is_waiver: boolean;\r\n is_blacklisted: boolean;\r\n online_booking_stopped_until: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n full_name: string;\r\n mobile_country_code: string;\r\n mobile_no: number;\r\n email_id: string;\r\n date_of_birth: string;\r\n gender: string;\r\n location: string;\r\n client_representative_id: number;\r\n createdin_tenant_id: number;\r\n source: string;\r\n channel: string;\r\n total_outstanding_in_minor_currency: number;\r\n client_since: string;\r\n application_installed: boolean;\r\n lifetime_value: number;\r\n stage_master_id: number;\r\n opportunity_board_type: string\r\n}","// import { WaiverVariables } from \"./waiverVariables\";\r\n\r\nimport { WaiverVariablesType } from \"@fitness-force/enum\";\r\n\r\nexport interface CreateClientWaiversRequest {\r\n waiver_master_id: number;\r\n waiver_payload: WaiverVariables[];\r\n}\r\n\r\nexport interface WaiverVariables {\r\n type: WaiverVariablesType | string;\r\n key: string;\r\n value: any;\r\n}","\r\ninterface PreferedLanguages {\r\n COUNTRY: string;\r\n LANG_CODE: string;\r\n LANG_ABBRE: string;\r\n}\r\n\r\ninterface CompanyDetailsInterafce {\r\n id: number;\r\n account_manager: CompanyAccountManager;\r\n status: string;\r\n ff_package_template_name: string;\r\n logo: string;\r\n member_portal_url: string;\r\n reservation_portal_url: string;\r\n purchase_portal_url: string;\r\n app_type: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n ff_package_template_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n subdomain: string;\r\n purchase_portal_enable: boolean;\r\n member_portal_enable: boolean;\r\n member_app_android_link: string;\r\n member_app_ios_link: string;\r\n primary_language: string;\r\n is_secondary_language: boolean;\r\n secondary_language: string;\r\n email_id: string;\r\n website: string;\r\n phone1: string;\r\n phone2: string;\r\n address1: string;\r\n address2: string;\r\n about_us_primary_language: string;\r\n about_us_secondary_language: string;\r\n is_privacy_policy_url: false;\r\n is_terms_of_service_url: false;\r\n privacy_policy: string;\r\n terms_of_service: string;\r\n privacy_policy_url: string;\r\n terms_of_service_url: string;\r\n suspended_by: number;\r\n suspended_date: string;\r\n cancelled_by: number;\r\n cancelled_date: string;\r\n supported_languages: Array;\r\n suspension_reason: string;\r\n cancelled_reason: string;\r\n allow_remote_fflogin: boolean;\r\n}\r\n\r\ninterface AccMgrTiming {\r\n day: number;\r\n start_time: string;\r\n end_time: string;\r\n is_holiday: boolean;\r\n}\r\n\r\ninterface CompanyAccountManager {\r\n id: number;\r\n name: string;\r\n picture: string;\r\n phone_number: string;\r\n email: string;\r\n description: string;\r\n timing: Array;\r\n}\r\n\r\nexport interface CompanyInfoStoreInterface {\r\n compDetails: CompanyDetailsInterafce;\r\n selectedLang: PreferedLanguages;\r\n direction: string;\r\n err: { details: object, error: boolean }\r\n}\r\n","export interface Country {\r\n id: number;\r\n name: string;\r\n dial_code: string;\r\n two_letter_code: string;\r\n three_letter_code: string;\r\n currency_code: string;\r\n currency_name: string;\r\n currency_symbol: string;\r\n iso_numeric: number;\r\n miner_currency: number;\r\n};\r\n\r\nexport interface Countries {\r\n country: Country\r\n countries: Array\r\n};","import { OpportunityBoardType } from \"@fitness-force/enum\";\r\n\r\nexport interface PlanSummaryCRM {\r\n opp_id: number;\r\n task_id: number;\r\n board_id:OpportunityBoardType\r\n}\r\n\r\nexport interface PlanSummaryClient {\r\n client_id: number;\r\n client_name: string;\r\n client_status: string;\r\n}","import { OpportunitiesOutcome, OpportunitiesType, OpportunityBoardType } from \"@fitness-force/enum\";\r\n\r\nexport interface OpportunityResponse {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n board_type: OpportunityBoardType;\r\n name: string;\r\n client_info: OpportunityClientInfo;\r\n stage_master_id: number;\r\n service_type: OpportunityCardServicety[];\r\n value_in_minor_currency:number;\r\n expected_closure_date:Date;\r\n assigned_to_staff_id:number;\r\n opp_staff_info: OpportunityStaffInfo;\r\n tour_id: number;\r\n trial_id: number;\r\n comments:string;\r\n hot_warm_cold: OpportunitiesType;\r\n is_fresh: boolean;\r\n is_stale: boolean;\r\n outcome: OpportunitiesOutcome;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n latest_task:LatestTask\r\n}\r\n\r\nexport interface LatestTask{\r\n id:number;\r\n type: string;\r\n category_id:number;\r\n name_primary_language:string;\r\n name_secondary_language:string;\r\n priority:string;\r\n scheduled_date:string;\r\n status:string;\r\n title:string;\r\n}\r\n\r\n\r\n\r\n// export interface CreateOpportunityRequest {\r\n// name: string;\r\n// client_id: number;\r\n// opp_stage_master_id: number;\r\n// service_type_id: number[];\r\n// staff_id: number;\r\n// comments: string;\r\n// hot_warm_cold: OpportunitiesType;\r\n// outcome: OpportunitiesOutcome;\r\n// }\r\n\r\n// import { OpportunitiesType } from \"./opportunitiesType\";\r\n\r\nexport interface CreateOpportunityRequest {\r\n name: string;\r\n client_id: number[];\r\n stage_master_id: number;\r\n service_type_ids: number[];\r\n value_in_minor_currency: number;\r\n expected_closure_date?: Date;\r\n assigned_to_staff_id: number;\r\n comments: string;\r\n hot_warm_cold: OpportunitiesType;\r\n}\r\n\r\nexport interface UpdateOpportunityRequest { \r\n name: string;\r\n service_type_ids: number[];\r\n value_in_minor_currency:number;\r\n expected_closure_date?:Date | null;\r\n assigned_to_staff_id:number;\r\n comments: string;\r\n hot_warm_cold: OpportunitiesType;\r\n stage_master_id:number;\r\n}\r\n\r\nexport interface OpportunityClientInfo {\r\n client_id: number;\r\n client_full_name: string;\r\n mobile_country_code: string;\r\n mobile_no: number;\r\n email_id: string;\r\n image: string;\r\n}\r\n\r\nexport interface OpportunityCardServicety {\r\n servicety_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n}\r\n\r\nexport interface OpportunityStaffInfo {\r\n staff_id: number;\r\n staff_name: string;\r\n staff_image: string;\r\n}\r\n\r\n\r\nexport interface ListOpportunityResponse {\r\n items: OpportunityResponse[];\r\n}","import { OpportunityBoardType, OpportunityStageForNonMember, Status } from \"@fitness-force/enum\";\r\n\r\nexport interface OpportunityStageMasterResponse {\r\n id: number;\r\n board_type: OpportunityBoardType;\r\n company_id: number;\r\n tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n order: number;\r\n stage_master_key: OpportunityStageForNonMember,\r\n tour_guard: boolean;\r\n trial_guard: boolean;\r\n status: Status;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n}\r\n\r\nexport interface ListOpportunityStageMasterResponse {\r\n items: OpportunityStageMasterResponse[];\r\n}","import { TaskAssignToType, TaskPriority, TaskType, TourOutcome } from \"@fitness-force/enum\";\r\n\r\nexport interface CreateTaskByClientRequest {\r\n client_id: number[];\r\n assigned_to_type: TaskAssignToType;\r\n assigned_to_staff_id: number;\r\n type: TaskType;\r\n category_id: number;\r\n title: string;\r\n notes: string;\r\n priority: TaskPriority;\r\n scheduled_date: Date;\r\n}\r\n\r\nexport interface CreateTaskByOpportunityRequest {\r\n opportunity_id: number[];\r\n assigned_to_type: TaskAssignToType;\r\n assigned_to_staff_id: number;\r\n type: TaskType;\r\n category_id: number;\r\n title: string;\r\n notes: string;\r\n priority: TaskPriority;\r\n scheduled_date: Date;\r\n}\r\n\r\nexport interface CreateRecurringTaskByClientRequest {\r\n client_id: number[];\r\n assigned_to_type: TaskAssignToType;\r\n assigned_to_staff_id: number;\r\n type: TaskType;\r\n category_id: number;\r\n title: string;\r\n notes: string;\r\n priority: TaskPriority;\r\n start_date: Date;\r\n time: string;\r\n repeat_rule: string;\r\n}\r\n\r\nexport interface CreateRecurringTaskByOpportunityRequest {\r\n opportunity_id: number[];\r\n assigned_to_type: TaskAssignToType;\r\n assigned_to_staff_id: number;\r\n type: TaskType;\r\n category_id: number;\r\n title: string;\r\n notes: string;\r\n priority: TaskPriority;\r\n start_date: Date;\r\n time: string;\r\n repeat_rule: string;\r\n}\r\n\r\nexport interface UpdateTask {\r\n category_id: number,\r\n assigned_to_type: TaskAssignToType,\r\n assigned_to_staff_id: number,\r\n priority: TaskPriority,\r\n title: string,\r\n notes: string,\r\n scheduled_date: string\r\n}\r\nexport interface TASK_TYPE {\r\n paramName: string;\r\n paramValue: string | Date;\r\n}\r\n","import { OpportunityBoardType } from \"@fitness-force/enum\";\r\nimport { LatestTask } from \"./opportunity\";\r\n\r\nexport interface TaskOutcomeDetails{\r\n assignedId:number;\r\n convertibilityType:string\r\n opportunityBoardType:number;\r\n outcome:number;\r\n taskNotes:string;\r\n taskTitle:string;\r\n taskType:string; \r\n taskId:number;\r\n client_details: ClientDetails;\r\n expected_closure_date: string;\r\n value_in_minor_currency:number;\r\n latest_task:LatestTask;\r\n stage_master_id:number;\r\n opportunityId:number;\r\n}\r\n\r\nexport interface ClientDetails{\r\n clientId:number;\r\n name:string;\r\n emailId: string;\r\n image:string;\r\n mobileNo: number;\r\n countryCode: string;\r\n status: string;\r\n}\r\n","export interface TaskCategoryResponse {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n status: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n}\r\n\r\nexport interface ListTaskCategoryResponse {\r\n items: TaskCategoryResponse[];\r\n}\r\n","export enum ValidationSeverity {\r\n Error = 0,\r\n Warning = 1,\r\n Info = 2\r\n}\r\n\r\nexport interface PagedResults {\r\n items: T[];\r\n total_items: number;\r\n total_pages: number;\r\n current_page: number;\r\n }\r\n\r\nexport interface CreateResponse {\r\n id: any;\r\n info?: ValidationError[];\r\n}\r\n \r\nexport interface ValidationError {\r\n severity?: ValidationSeverity;\r\n errorCode: string;\r\n errorMessage: string;\r\n identifier: string;\r\n helptext?: string;\r\n}","export interface SubscriptionSignUpOrderSummaryBillingDateResponse {\r\n subscription_start_date: Date;\r\n subscription_minimum_contract_commitment_end_date: Date | null;\r\n subscription_end_date: Date;\r\n billing_occurance: Date[];\r\n}","import { PlanType, PlanIntervalType, ServiceBehaviour, TaxType, PlanCategory, SignUpStatus, SignUpFinalStatus, TrackMode } from \"@fitness-force/enum\";\r\n\r\nexport interface SubscriptionPayload {\r\n orderSummary: SubscriptionSignUpOrderSummaryResponse;\r\n err: any;\r\n}\r\n\r\n\r\nexport interface SubscriptionSignUpWithBillingJsonResponse {\r\n id: number;\r\n uuid: string;\r\n company_id: number;\r\n tenant_id: number;\r\n client_id: number;\r\n plan_id: number;\r\n client_subscription_id: number;\r\n status: SignUpStatus;\r\n final_status: SignUpFinalStatus;\r\n short_link: string;\r\n full_link: string;\r\n track_mode: TrackMode;\r\n link_expiry_date: string;\r\n link_last_opened: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n order_details: SubscriptionSignUpOrderSummaryResponse;\r\n task_id: number;\r\n opportunity_id: number;\r\n booking_id: number;\r\n appointment_id: number;\r\n}\r\n\r\nexport interface SubscriptionSignUpOrderSummaryResponse {\r\n subscription_start_date: string;\r\n subscription_end_date: string;\r\n subscription_bill_cycle_day: number;\r\n subscription_category: PlanCategory;\r\n billing_interval_type: PlanIntervalType;\r\n billing_interval_value: number;\r\n minimum_contract_commitment: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n invoice_issue_date: string;\r\n invoice_billing_name: string;\r\n prorata_days_calculated: number;\r\n is_coupon_code_applied: boolean;\r\n coupon_code: string;\r\n charging_today: SubscriptionSignUpChargingToday;\r\n charging_recurring: SubscriptionSignupRecurringService;\r\n}\r\n\r\nexport interface SubscriptionSignupRecurringService {\r\n services: SubscriptionSignupService[];\r\n}\r\n\r\nexport interface SubscriptionSignUpChargingToday {\r\n service_first_charge: SubscriptionSignupServiceFirstCharge;\r\n service_non_recurring: SubscriptionSignupNonRecurringService;\r\n signup_charges: SubscriptionSignupCharges[];\r\n}\r\n\r\nexport interface SubscriptionSignupServiceFirstCharge {\r\n service_start_date: string;\r\n service_end_date: string;\r\n service_prorata_days: number;\r\n services: SubscriptionSignupService[];\r\n}\r\n\r\nexport interface SubscriptionSignupNonRecurringService {\r\n services: SubscriptionSignupService[];\r\n}\r\n\r\nexport interface SubscriptionSignupCharges {\r\n chrgmst_id: number;\r\n chrgmst_chrg_category_id: number;\r\n chrgmst_name_pri_lang: string;\r\n chrgmst_name_sec_lang: string;\r\n chrgty_name_pri_lang: string;\r\n chrgty_name_sec_lang: string;\r\n chrgmst_net_cost_in_minor_curr: number;\r\n chrgmst_base_cost_in_minor_curr: number;\r\n chrgmst_discount_amount_in_minor_curr: number;\r\n chrgmst_tax_grp_id: number;\r\n chrgmst_migration_id: string;\r\n tax: SubscriptionSignupTax;\r\n}\r\n\r\nexport interface SubscriptionSignupService {\r\n id: number;\r\n category_id: number;\r\n taxable_cost_in_minor_curr: number;\r\n base_cost_in_minor_curr: number;\r\n discount_amount_in_minor_curr: number;\r\n sessions: number;\r\n category_name_pri_lang: string;\r\n category_name_sec_lang: string;\r\n category_description_pri_lang: string;\r\n category_description_sec_lang: string;\r\n behaviour: ServiceBehaviour;\r\n tax_item_code: string;\r\n is_base_membership: boolean;\r\n require_base_membership: boolean;\r\n is_session_owner_required: boolean;\r\n category_icon: string;\r\n taxgrp_id: number;\r\n tax: SubscriptionSignupTax;\r\n}\r\n\r\nexport interface SubscriptionSignupTax {\r\n taxgrp_id: number;\r\n taxgrp_name_pri_lang: string;\r\n taxgrp_name_sec_lang: string;\r\n tax_line_items: SubscriptionSignupTaxLineItem[];\r\n}\r\n\r\nexport interface SubscriptionSignupTaxLineItem {\r\n id: number;\r\n amt_in_minor_curr: number;\r\n name_pri_lang: string;\r\n name_sec_lang: string;\r\n type: TaxType;\r\n rate: number;\r\n}\r\n\r\nexport interface SubscriptionSignUpStatus {\r\n title: string;\r\n text: string;\r\n icon: string;\r\n step: number;\r\n status: string;\r\n}\r\n\r\nexport interface StatusandSubscriptionDetails{\r\n client_subscription_id :number;\r\n status : SignUpStatus;\r\n client_id:number;\r\n}\r\n ","export interface IPSetting {\r\n as: string;\r\n city: string;\r\n country: string;\r\n countryCode: string;\r\n isp: string;\r\n lat: number;\r\n lon: number;\r\n org: string;\r\n query: string;\r\n region: string;\r\n regionName: string;\r\n status: string;\r\n timezone: string;\r\n zip: string;\r\n}\r\n\r\nexport interface LocationStore {\r\n location: IPSetting;\r\n}","export interface LANGUAGE {\r\n COUNTRY: string, \r\n LANG_CODE: string,\r\n LANG_ABBRE: string\r\n}","import { PayModeLevel1, Status } from \"@fitness-force/enum\";\r\n\r\nexport interface ListPaymentModeMastersResponse {\r\n items: PaymentModeMastersResponse[];\r\n}\r\n\r\nexport interface PaymentModeMastersResponse {\r\n id: number;\r\n tenant_id: number;\r\n company_id: number;\r\n type: PayModeLevel1;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n status: Status;\r\n created_by: number;\r\n updated_by: number;\r\n created_date: string;\r\n updated_date: string;\r\n}","import { Status, PlanIntervalType, PlanFreezeType, PlanCategory, PlanType } from \"@fitness-force/enum\";\r\nimport { PlanTaxGroup } from \"@fitness-force/models\";\r\nimport { PlanSummaryScheduling } from \"../admin/appointment-types\";\r\nimport { PlanSummaryClient, PlanSummaryCRM } from \"../crm/billingcrm\";\r\n\r\nexport interface GetPlanMasterListResponse {\r\n items: PlanMasterList[];\r\n}\r\n\r\nexport interface GetPlanMasterByIdResponse {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n status: Status;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n subscription_category: PlanType;\r\n billing_interval_type: PlanIntervalType;\r\n billing_interval_value: number;\r\n bill_cycle_day: string;\r\n available_on_staff_facing_apps: boolean;\r\n available_on_member_facing_apps: boolean;\r\n available_on_website_widgits: boolean;\r\n contract_term: number;\r\n minimum_contract_commitment: number;\r\n number_of_occurance_as_deposit: number;\r\n auto_apply_deposit_end_min_commitment: boolean;\r\n feature_is_signup_fee_required: boolean;\r\n feature_is_cash_recurring: boolean;\r\n feature_is_early_cancellation_allowed: boolean;\r\n early_cancellation_chrgmst_id: PlanChargeMasterDetails;\r\n feature_is_online_termination_allowed: boolean;\r\n feature_is_freeze_allowed: boolean;\r\n freeze_type: PlanFreezeType;\r\n freeze_allowed_number_of_attempts_in_year: number;\r\n freeze_can_only_billing_cycle: boolean;\r\n freeze_fee_per_instance_chrgmst_id: PlanChargeMasterDetails;\r\n freeze_max_days_per_instance: number;\r\n commission_value: number;\r\n commission_calculation_type: number;\r\n transferable: boolean;\r\n min_days_req_for_transfer: number;\r\n recurring_services: PlanMasterServices[];\r\n non_recurring_services: PlanMasterServices[];\r\n signup_chrgmst_ids: PlanChargeMasterDetails[];\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n}\r\n\r\nexport interface PlanMasterList {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n status: Status;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string\r\n description_secondary_language: string\r\n subscription_category: PlanCategory;\r\n billing_interval_type: PlanIntervalType;\r\n billing_interval_value: number;\r\n bill_cycle_day: string;\r\n contract_term: number;\r\n minimum_contract_commitment: number;\r\n feature_is_signup_fee_required: boolean;\r\n signup_chrgmst_ids: PlanChargeMasterList[];\r\n feature_is_cash_recurring: boolean;\r\n feature_is_freeze_allowed: boolean;\r\n freeze_type: PlanFreezeType;\r\n recurring_services_in_minor_currency: number;\r\n non_recurring_services_in_minor_currency: number;\r\n recurring_service_catagories: number[];\r\n non_recurring_service_catagories: number[];\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n}\r\n\r\nexport interface PlanMasterServices {\r\n id: number;\r\n type_id: number;\r\n base_cost_in_minor_curr: number;\r\n sessions: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n behaviour: string;\r\n taxgrp_id: number;\r\n tax_item_code: string;\r\n is_base_membership: boolean;\r\n require_base_membership: boolean;\r\n is_session_owner_required: boolean;\r\n icon: string;\r\n migration_id: string;\r\n taxes: PlanTaxGroup;\r\n}\r\n\r\nexport interface PlanChargeMasterDetails {\r\n id: number;\r\n chrg_category_id: number;\r\n amount_in_minor_currency: number;\r\n icon: string;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n comment: string;\r\n status: string;\r\n tax_grp_id: number;\r\n tax_item_code: string;\r\n migration_id: string;\r\n taxes: PlanTaxGroup;\r\n}\r\n\r\nexport interface PlanChargeMasterList {\r\n id: number;\r\n chrg_category_id: number;\r\n amount_in_minor_currency: number;\r\n icon: string;\r\n category_primary_language: string;\r\n category_secondary_language: string;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n}\r\n\r\nexport interface PlanSummary {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n client: PlanSummaryClient;\r\n startdate: Date;\r\n couponcode: string | null;\r\n plan_selectable: boolean;\r\n CRM: PlanSummaryCRM;\r\n Scheduling: PlanSummaryScheduling | null;\r\n}","export interface Room {\r\n id: number;\r\n company_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n tenant_id: number;\r\n status: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n}\r\n\r\nexport interface ListRoomResponse {\r\n items: Room[];\r\n}\r\n\r\nexport interface RoomStore {\r\n rooms: Room[];\r\n}","import { TaxType } from \"@fitness-force/enum\";\r\n\r\nexport interface PlanTaxGroup {\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n tax_line_items: PlanTaxLineItems[];\r\n}\r\n\r\nexport interface PlanTaxLineItems {\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n type: TaxType;\r\n rate: number;\r\n}","import { Client, PagedResults } from '@fitness-force/models';\r\n\r\n//#region request\r\n\r\nexport interface OmniSearchRequest {\r\n language: string,\r\n query: string,\r\n providers: Providers[]\r\n};\r\n\r\nexport interface Providers {\r\n provider_name: string,\r\n pagination: Pagination\r\n}\r\n\r\nexport interface Pagination {\r\n page_number: number,\r\n page_size: number\r\n}\r\n\r\n//#endregion request\r\n\r\n//#region response\r\n\r\nexport interface OmniSearchResponse {\r\n original_query: string;\r\n autocomplete_suggestion: string;\r\n language: string;\r\n baseurl: string;\r\n searchResults: searchResultsDummy;\r\n}\r\n\r\nexport interface searchResultsDummy {\r\n clients: PagedResults;\r\n prospects: PagedResults;\r\n actions: PagedResults;\r\n kbdocs: PagedResults;\r\n}\r\n\r\nexport interface actionresponseDummy {\r\n srch_act_name: string;\r\n srch_act_module: string;\r\n srch_act_url: string;\r\n srch_act_desc: string;\r\n}\r\n\r\nexport interface kbdocsresponseDummy {\r\n kb_articles_url: string;\r\n kb_articles_module: string;\r\n kb_articles_title: string;\r\n kb_articles_desc: string;\r\n}\r\n\r\n//#endregion response","export interface PaginationFilter {\r\n page_number: number;\r\n page_size: number;\r\n}\r\n\r\n","import { PaymentGatewaySupported, PaymentGatewayType } from \"@fitness-force/enum\";\r\n\r\nexport interface GetSignUpPaymentMethodResponse {\r\n pgw_details: PaymentGatewayDetails[];\r\n doing_business_as: string;\r\n saved_payment_methods: SavedPaymentMethods[];\r\n}\r\n\r\nexport interface PaymentGatewayDetails {\r\n payment_gateway_type: PaymentGatewayType;\r\n payment_gateway: PaymentGatewaySupported;\r\n merchant_publickey: string;\r\n}\r\n\r\nexport interface SavedPaymentMethods {\r\n pay_token_id: string;\r\n pay_token_paymode_level1: string;\r\n pay_token_network_type: string;\r\n pay_token_exp_date: string;\r\n pay_token_bank_name: string;\r\n pay_token_masked_account_number: string;\r\n pay_token_upi_provider: string;\r\n pay_token_masked_vpa_id: string;\r\n pay_token_masked_card_number: string;\r\n}\r\n\r\n\r\nexport interface CreateClientPaymentTokenResponse {\r\n id: number\r\n}","import { ClientGender, ClientStatus, OpportunitiesType, OpportunityStageForNonMember, TaskAssignToType, TaskPriority, TaskType } from \"@fitness-force/enum\";\r\n\r\nexport interface CreateProspectRequest {\r\n Prospect: CreateClientRequest;\r\n Opportunity: CreateOpportunityOnClientRequest;\r\n Task: CreateTaskByOpportunityOnClientRequest;\r\n}\r\n\r\nexport interface CreateClientRequest {\r\n full_name: string | null;\r\n mobile_country_code: string | null;\r\n mobile_number: number;\r\n email_id: string | null;\r\n date_of_birth: Date | null;\r\n gender: ClientGender | null;\r\n location: string | null;\r\n second_mobile_country_code: string | null;\r\n second_mobile_number: number | null;\r\n preferred_language: string | null;\r\n place_id: string | null;\r\n address: string | null;\r\n state_code: string | null;\r\n city_code: string | null;\r\n country_code: string | null;\r\n address_pin_code: number;\r\n emergency_contact_number: string | null;\r\n emergency_contact_person: string | null;\r\n source: string | null;\r\n channel: string | null;\r\n heartrate_monitoring_id: string | null;\r\n referred_by: number;\r\n promotional_sms: boolean;\r\n promotional_email: boolean;\r\n promotional_phone: boolean;\r\n medical_alert: string | null;\r\n note: string | null;\r\n taxnumber: string | null;\r\n custom_fields: string | null;\r\n current_keyfob: string | null;\r\n client_representative_id: number;\r\n createdin_tenant_id: number;\r\n place_id_request: string | null;\r\n migration_id: string | null;\r\n image_base64: string | null;\r\n password: string | null;\r\n}\r\n\r\nexport interface CreateOpportunityOnClientRequest {\r\n name: string | null;\r\n stage_master_id: OpportunityStageForNonMember;\r\n service_type_ids: number[];\r\n value_in_minor_currency: number;\r\n expected_closure_date: Date;\r\n assigned_to_staff_id: number;\r\n comments: string | null;\r\n hot_warm_cold: OpportunitiesType;\r\n}\r\n\r\nexport interface CreateTaskByOpportunityOnClientRequest {\r\n assigned_to_type: TaskAssignToType | string;\r\n assigned_to_staff_id: number | null;\r\n type: TaskType | string;\r\n category_id: number;\r\n title: string | null;\r\n notes: string | null;\r\n priority: TaskPriority | string;\r\n call_id: number | null;\r\n email_id: number | null;\r\n sms_id: number | null;\r\n scheduled_date: string | null;\r\n}\r\n\r\n\r\nexport interface ListClientResponse {\r\n id: number;\r\n company_id: number;\r\n client_status: ClientStatus;\r\n is_mobile_verified: boolean;\r\n is_email_verified: boolean;\r\n image: string | null;\r\n home_club_tenant_id: number;\r\n is_waiver: boolean;\r\n is_blacklisted: boolean;\r\n online_booking_stopped_until: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n full_name: string;\r\n mobile_number: number;\r\n mobile_country_code: string;\r\n email_id: string;\r\n date_of_birth: Date | null;\r\n gender: ClientGender | null;\r\n location: string;\r\n client_representative_id: number;\r\n createdin_tenant_id: number;\r\n source: string;\r\n channel: string;\r\n total_outstanding_in_minor_currency: number;\r\n client_since: string;\r\n application_installed: boolean;\r\n}","import { ɵHttpInterceptingHandler } from \"@angular/common/http\";\r\n\r\nexport interface ReportAccessRequest {\r\n claim:string;\r\n access_requested_friendly_name:string;\r\n request_access_comment:string\r\n}\r\n\r\nexport interface GetReportRequest {\r\n tenant_id: number;\r\n report_key: string;\r\n rpt_fltr_relative_date_range: RelativeDate;\r\n rpt_fltr_payload: string;\r\n} \r\n\r\nexport enum RelativeDate\r\n{\r\n Yesterday = -1,\r\n LastMonth = -3,\r\n LastSevenDays = -7,\r\n LastThirtyDays = -30,\r\n Today = 0,\r\n Tomorrow = 1,\r\n ThisMonth = 3,\r\n ThisQuarter = 33,\r\n CustomDateRange = 99\r\n}\r\n\r\nexport enum FilterTimePeriod\r\n{\r\n Today = \"0\",\r\n Tomorrow = \"1\",\r\n ThisMonth = \"3\",\r\n ThisQuarter = \"33\",\r\n CustomDateRange = \"99\"\r\n}","import { TableAction } from \"@fitness-force/enum\";\r\nimport { ClientGenderComponent, ClientRegularStatusComponent } from \"@fitness-force/shared\";\r\n\r\nexport class ReportFormBase {\r\n value: any | undefined;\r\n key: string;\r\n label: string;\r\n required: boolean;\r\n order: number;\r\n controlType: string;\r\n type: string;\r\n options: { key: string; value: string }[];\r\n\r\n constructor(\r\n options: {\r\n value?: any;\r\n key?: string;\r\n label?: string;\r\n required?: boolean;\r\n order?: number;\r\n controlType?: string;\r\n type?: string;\r\n options?: { key: string; value: string }[] | any;\r\n } = {}\r\n ) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.required = !!options.required;\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.type = options.type || '';\r\n this.options = options.options || [];\r\n }\r\n}\r\n\r\nexport class Dropdown extends ReportFormBase {\r\n override controlType = 'dropdown';\r\n}\r\n\r\nexport class TimePeriodDropdown extends ReportFormBase {\r\n override controlType = 'timeperioddropdown';\r\n}\r\n\r\nexport class Textbox extends ReportFormBase {\r\n override controlType = 'textbox';\r\n}\r\n\r\nexport class HiddenField extends ReportFormBase {\r\n override controlType = 'hiddenfield';\r\n}\r\n\r\n\r\n\r\nexport const ReportTableColumnData = [\r\n {\r\n report_key: 'ClientListReport',\r\n actions:[\r\n {\r\n label: 'Create Apportunity',\r\n class: 'p-button-text text-xs md:text-sm mb-1 xl:mb-2',\r\n type: \"button\",\r\n actionType: TableAction.Opportunity,\r\n icon:\"pi pi-plus\"\r\n },\r\n {\r\n label: 'Create Task',\r\n class: 'p-button-text text-xs md:text-sm mb-1 xl:mb-2',\r\n type: \"button\",\r\n actionType: TableAction.Task,\r\n icon:\"pi pi-list\",\r\n }\r\n ],\r\n columns: [\r\n {\r\n title: 'CLIENT NAME',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_full_name',\r\n type: 'default',\r\n data: {},\r\n },\r\n {\r\n title: 'EMAIL',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_emailid',\r\n type: 'default',\r\n },\r\n {\r\n title: 'MOBILE NO',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_mobile_no',\r\n type: 'default',\r\n },\r\n {\r\n title: 'DATE OF BIRTH',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_dateofbirth',\r\n type: 'default',\r\n },\r\n {\r\n title: 'GENDER',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_gender',\r\n type: 'component',\r\n data: {name: ClientGenderComponent}\r\n },\r\n {\r\n title: 'CLIENT IRREGULAR',\r\n classes: 'py-2 text-gray-600 w-15rem white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'clt_is_irregular',\r\n type: 'component',\r\n data: {name: ClientRegularStatusComponent}\r\n }\r\n ],\r\n },\r\n];\r\n","import { RRuleFrequency } from '@fitness-force/enum';\r\nimport { RelativeDate } from './reportaccessrequest';\r\n\r\nexport interface CreateReportFilterRequest {\r\n name: string;\r\n payload: string;\r\n relative_date: string;\r\n}\r\n\r\nexport interface CreateLongReportFilterRequest {\r\n payload: string;\r\n relative_date_range: RelativeDate;\r\n}\r\n\r\nexport interface UpdateReportFilterRequest {\r\n name: string;\r\n payload: string;\r\n relative_date: RelativeDate;\r\n}\r\n\r\nexport interface ReportFilter {\r\n created_by: number;\r\n created_date: string;\r\n id: number;\r\n name: string;\r\n payload: string;\r\n relative_date_range: string;\r\n updated_date: string;\r\n}\r\n\r\nexport interface ScheduleReportFilterRequest {\r\n rule: string;\r\n start_date: string;\r\n email_ids: string;\r\n}\r\n\r\nexport interface LongReportRequest {\r\n payload: string;\r\n email_id: string;\r\n}\r\n\r\nexport interface ScheduleFilterDeleteRequest {\r\n tenant_id: number;\r\n report_key : string;\r\n filter_id : number;\r\n schedule_id : number;\r\n}\r\n\r\nexport interface ReportFilterResponse {\r\n items: ReportFilter[];\r\n}\r\n\r\nexport interface ReportFilterScheduleResponse\r\n{\r\n id: number;\r\n report_filter_id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n report_key: string;\r\n status: boolean;\r\n rule: string;\r\n ruleFrequency: string;\r\n email_ids: string;\r\n next_run_date: string;\r\n last_run_date: string;\r\n retry_count: number;\r\n track_mode: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_date:string;\r\n}\r\n","import { RelativeDate } from \"./reportaccessrequest\";\r\nimport { ReportFormBase } from \"./reportdata\";\r\nimport { ClientReportList } from \"./reportsresponse\";\r\n\r\n\r\nexport enum ConstFilterIds{\r\n defaultFilterId =1000,\r\n newFilterId =999\r\n }\r\nexport interface Report {\r\n report_key: string;\r\n favourite:boolean;\r\n report_description:string;\r\n claims:any[];\r\n}\r\n\r\nexport interface ReportListResponse {\r\n category: string;\r\n icon:string;\r\n reports: Report[]\r\n}\r\n\r\nexport interface REPORTSTOREINTERFACE{\r\n report_key:string;\r\n claims:any[],\r\n payload:string,\r\n default_payload:string,\r\n default_relative_Date:string,\r\n mandatory_fields:any\r\n}\r\n\r\nexport interface payload{\r\n from_date:string;\r\n to_date:string;\r\n plan_id:number;\r\n time_zone:string;\r\n current_page:number;\r\n page_size: number;\r\n}\r\n\r\nexport interface ReportResponse {\r\n current_page: number;\r\n items:ClientReportList[] | any[];\r\n statistics: ClientReportList[] | any[];\r\n total_items:number;\r\n total_pages:number\r\n }\r\n\r\n\r\n\r\n","import { Params } from \"@angular/router\";\r\n\r\nexport interface ROUTER_SERIALIZER_INTERFACE {\r\n url: string;\r\n params: Params;\r\n queryParams: Params\r\n}","export interface RepeatRule {\r\n repeat: string;\r\n interval: number;\r\n until: Date | null;\r\n count: number | null;\r\n weekDays: string[] | null;\r\n monthDays: number | null;\r\n};\r\n\r\nexport interface RepeatRuleResponse {\r\n RRule: string,\r\n RRuleText: string\r\n};"," export interface AppointmentSubType {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n appt_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n things_to_carry_primary_language: string;\r\n things_to_carry_secondary_language: string;\r\n status: string;\r\n }\r\n\r\n export interface ListAppointmentSubTypeResponse {\r\n items: AppointmentSubType[];\r\n }\r\n\r\n export interface AppointmentSubTypeStore {\r\n appointmentSubTypes: AppointmentSubType[]\r\n };\r\n\r\n\r\n\r\n\r\n","export interface CreateAppointmentRequest {\r\n appointment_type_id: number;\r\n subtype_id: number;\r\n client_id: number;\r\n coach_id: number;\r\n start_date_time: Date | string;\r\n room_id: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n comments: string;\r\n}\r\n\r\nexport interface CreateRecurringAppointmentRequest extends CreateAppointmentRequest {\r\n recurring_start_date?: Date | string;\r\n start_time?: string;\r\n recurring_rule?:string;\r\n}\r\n\r\nexport interface CancelAppointmentRequest{\r\n cancellation_reason:string;\r\n}\r\n\r\nexport interface UpdateAppointmentRequest {\r\n room_id: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n comments: string;\r\n}\r\nexport interface SubstituteCoachRequest{\r\n coach_id:number;\r\n}\r\n\r\nexport interface RescheduleAppointmentRequest{\r\n start_datetime:Date | string;\r\n}\r\n\r\nexport interface RescheduleRecurringAppointmentRequest {\r\n recurring_start_date: Date | string;\r\n start_time: string;\r\n recurring_rule: string;\r\n}"," export interface Appointment {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n type_id: number;\r\n subtype_id: number;\r\n client_id: number;\r\n status: string;\r\n start_datetime: string| Date;\r\n end_datetime: string| Date;\r\n type_name_primary_language: string;\r\n type_name_secondary_language: string;\r\n tenant_name_primary_language: string;\r\n tenant_name_secondary_language: string;\r\n recurring_template_id: number;\r\n recurring_rule:string;\r\n type_color: string;\r\n subtype_name_primary_language: string;\r\n subtype_name_secondary_language: string;\r\n subtype_description_primary_language: string;\r\n subtype_description_secondary_language: string;\r\n subtype_things_to_carry_primary_language: string;\r\n subtype_things_to_carry_secondary_language: string;\r\n behaviour: string;\r\n booking_opens_in_minutes: number;\r\n duration_in_minutes: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n tag_name_primary_language: string[];\r\n tag_name_secondary_language: string[];\r\n coach_id: number;\r\n coach_name: string;\r\n coach_description: string;\r\n coach_image_url: string;\r\n room_id:number;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n guid:string;\r\n type:string;\r\n clients:Clients[]\r\n }\r\n\r\n export interface Statistic {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n type_id: number;\r\n subtype_id: number;\r\n client_id: number;\r\n status: string;\r\n start_datetime: Date;\r\n end_datetime: Date;\r\n type_name_primary_language: string;\r\n type_name_secondary_language: string;\r\n tenant_name_primary_language: string;\r\n tenant_name_secondary_language: string;\r\n recurring_template_id: number;\r\n type_color: string;\r\n subtype_name_primary_language: string;\r\n subtype_name_secondary_language: string;\r\n subtype_description_primary_language: string;\r\n subtype_description_secondary_language: string;\r\n subtype_things_to_carry_primary_language: string;\r\n subtype_things_to_carry_secondary_language: string;\r\n behaviour: string;\r\n booking_opens_in_minutes: number;\r\n duration_in_minutes: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n tag_name_primary_language: string[];\r\n tag_name_secondary_language: string[];\r\n coach_id: number;\r\n coach_name: string;\r\n coach_description: string;\r\n coach_image_url: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n clients:Clients[]\r\n }\r\n\r\n export interface Clients {\r\n client_id: number,\r\n full_name: string,\r\n mobile_country_code: string,\r\n mobile_no: 0,\r\n emailid: string,\r\n image: string\r\n }\r\n\r\n export interface AppointmentListResponse {\r\n items: Appointment[];\r\n statistics: Statistic[];\r\n total_items: number;\r\n total_pages: number;\r\n current_page: number;\r\n }\r\n\r\n export interface ListAppointmentRequest {\r\n tenant_id:number;\r\n start_datetime: string;\r\n end_datetime: string;\r\n }\r\n\r\n export interface AppointmentById extends Appointment {\r\n subscription_id: number;\r\n membership_id: number;\r\n room_id: number;\r\n room_name_primary_language: string;\r\n room_name_secondary_language: string;\r\n is_recurring: boolean;\r\n is_payment_required: boolean;\r\n is_first_time_appt: boolean;\r\n is_comp_session: boolean;\r\n appt_comp_id: number;\r\n session_revenue: number;\r\n commission_mode: string;\r\n commission_flatfee_amount_in_minor_currency: number;\r\n commission_revenue_share_percentage: number;\r\n is_commission_processed: boolean;\r\n comments: string;\r\n minimum_booking_cancel_time: number;\r\n is_late_cancel: boolean;\r\n cancellation_reason: string;\r\n created_track_mode: string;\r\n status_updated_track_mode: string;\r\n }\r\n\r\n","\r\n export interface Tag {\r\n id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n }\r\n\r\n export interface AppointmentType {\r\n id: number;\r\n service_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n behaviour: string;\r\n color: string;\r\n status: string;\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n logo: string;\r\n duration_in_minutes: number;\r\n is_room_mandatory: boolean;\r\n tags: Tag[];\r\n created_by: number;\r\n updated_by: number;\r\n created_date: Date;\r\n updated_date: Date;\r\n }\r\n\r\n export interface AppointmentTypeList {\r\n items: AppointmentType[];\r\n }\r\n\r\n export interface AppointmentTypeStore {\r\n appointmentTypes: AppointmentType[]\r\n };\r\n\r\n\r\n\r\n export interface ApptSubtype {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n created_by: number;\r\n created_date: Date;\r\n appt_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n things_to_carry_primary_language: string;\r\n things_to_carry_secondary_language: string;\r\n }\r\n\r\n export interface AppointmentTypeById {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n service_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n behaviour: string;\r\n color: string;\r\n status: string;\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n logo: string;\r\n commission_mode: string;\r\n minimum_booking_cancel_time: number;\r\n mark_trainer_busy: boolean;\r\n is_room_mandatory: boolean;\r\n booking_opens_in_minutes: number;\r\n is_online_cancel_booking_allowed: boolean;\r\n duration_in_minutes: number;\r\n tags: Tag[];\r\n created_by: number;\r\n updated_by: number;\r\n created_date: Date;\r\n updated_date: Date;\r\n subtypes: ApptSubtype[];\r\n }\r\n\r\n","export interface CreateClassRequest {\r\n class_type_id: number;\r\n start_date_time: Date | string;\r\n comments: string;\r\n room_id: number;\r\n sub_type_id: number;\r\n max_capacity: number;\r\n max_waitlist: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n coach_id: number;\r\n is_dropin_allowed: boolean;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n}\r\n\r\nexport interface CreateRecurringClassRequest extends CreateClassRequest {\r\n start_date?: string;\r\n start_time?: string;\r\n recurring_rule?: string;\r\n}\r\n\r\nexport interface UpdateClassRequest {\r\n is_dropin_allowed: boolean;\r\n comments: string;\r\n room_id: number;\r\n max_capacity: number;\r\n max_waitlist: number;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n}\r\n\r\n\r\nexport interface SubstituteCoachInClassRequest{\r\n coach_id:number;\r\n}\r\n\r\nexport interface RescheduleClassRequest{\r\n start_datetime:Date | string;\r\n}\r\n\r\nexport interface CancelClassRequest{\r\n cancellation_reason:string;\r\n}\r\n\r\nexport interface RescheduleRecurringClassRequest {\r\n start_date: string;\r\n start_time: string;\r\n recurring_rule: string;\r\n}","export interface ClassBookingRequest {\r\n client_ids: number[];\r\n add_to_waitlist: boolean;\r\n}\r\n\r\nexport interface RemoveClientFromClassRequest {\r\n client_ids: number[];\r\n}\r\n\r\nexport interface MarkClientNoshowRequest {\r\n client_ids: number[];\r\n}\r\n\r\nexport interface MarkClientCheckedinRequest {\r\n client_ids: number[];\r\n}\r\n","\r\n export interface Class {\r\n id: number;\r\n type_id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n type_name_primary_language: string;\r\n type_name_secondary_language: string;\r\n start_datetime: string| Date;\r\n end_datetime: string| Date;\r\n tenant_name_primary_language: string;\r\n tenant_name_secondary_language: string;\r\n recurring_id: number;\r\n type_color: string;\r\n subtype_name_primary_language: string;\r\n subtype_name_secondary_language: string;\r\n sub_type_id: number;\r\n max_capacity: number;\r\n max_waitlist:number;\r\n behaviour: string;\r\n is_dropin_allowed: boolean;\r\n is_virtual: boolean;\r\n booking_opens_in_minutes: number;\r\n tag_name_primary_language: string[];\r\n tag_name_secondary_language: string[];\r\n coach_id: number;\r\n coach_name: string;\r\n coach_image_url: string;\r\n total_booking: number;\r\n total_waitlist_booking:number;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n class_duration:number;\r\n room_id:number;\r\n class_clients: ClassClient[];\r\n status: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n guid:string;\r\n type:string;\r\n }\r\n\r\n export interface ClassStatistic {\r\n id: number;\r\n type_id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n type_name_primary_language: string;\r\n type_name_secondary_language: string;\r\n start_datetime: Date;\r\n end_datetime: Date;\r\n tenant_name_primary_language: string;\r\n tenant_name_secondary_language: string;\r\n recurring_id: number;\r\n type_color: string;\r\n subtype_name_primary_language: string;\r\n subtype_name_secondary_language: string;\r\n sub_type_id: number;\r\n max_capacity: number;\r\n behaviour: string;\r\n is_dropin_allowed: boolean;\r\n is_virtual: boolean;\r\n booking_opens_in_minutes: number;\r\n tag_name_primary_language: string[];\r\n tag_name_secondary_language: string[];\r\n coach_id: number;\r\n coach_name: string;\r\n coach_image_url: string;\r\n total_booking: number;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n }\r\n\r\n export interface ClassListResponse {\r\n items: Class[];\r\n }\r\n\r\n export interface ListClassRequest {\r\n tenant_id:number;\r\n start_date: string;\r\n end_date: string;\r\n getClientDetails:boolean\r\n }\r\n\r\n export interface ClassClient {\r\n class_booking_Id: number;\r\n class_booking_client_Id: number;\r\n full_name: string;\r\n mobile_country_code: string;\r\n mobile_no: number;\r\n emailid: string;\r\n image: string;\r\n class_booking_status: string;\r\n class_booking_is_waitlist: boolean;\r\n class_booking_is_payment_required: boolean;\r\n class_booking_is_first_time_class: boolean;\r\n class_booking_is_comp_session: boolean;\r\n }\r\n\r\n export interface ClassById extends Class {\r\n cancellation_reason: string;\r\n room_name_primary_language: string;\r\n room_name_secondary_language: string;\r\n subtype_description_primary_language: string;\r\n subtype_description_secondary_language: string;\r\n subtype_things_to_carry_primary_language: string;\r\n subtype_things_to_carry_secondary_language: string;\r\n is_recuring: boolean;\r\n recurring_rule: string;\r\n commission_mode: string;\r\n commission_flatfee_amount_in_minor_currency: number;\r\n commission_revenue_share_percentage: number;\r\n is_commission_processed: boolean;\r\n min_booking_cancel_time: number;\r\n virtual_url: string;\r\n coach_description: string;\r\n total_revenue: number;\r\n comments: string;\r\n track_mode: string;\r\n \r\n }\r\n\r\n export interface ListClassRecurringTemplate {\r\n items: Classes[];\r\n }\r\n export interface Classes {\r\n recurring_template_id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n coach_id: number;\r\n class_type: ClassTypeObject;\r\n room: RoomObject;\r\n class_subtype: ClassSubtype;\r\n status: string;\r\n recurring_start_date: Date;\r\n recurring_end_date: Date;\r\n start_time: string;\r\n end_time: string;\r\n is_virtual: boolean;\r\n virtual_url: string;\r\n recurring_rule: string;\r\n tag_name_primary_language: string[];\r\n tag_name_secondary_language: string[];\r\n track_mode: string;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n update_date: Date;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n comments: string;\r\n }\r\n\r\n export interface ClassTypeObject {\r\n type_id: number;\r\n type_name_primary_language: string;\r\n type_name_secondary_language: string;\r\n behaviour: string;\r\n type_color: string;\r\n }\r\n\r\n export interface RoomObject {\r\n room_id: number;\r\n room_name_primary_language: string;\r\n room_name_secondary_language: string;\r\n }\r\n\r\n export interface ClassSubtype {\r\n subtype_id: number;\r\n subtype_name_primary_language: string;\r\n subtype_name_secondary_language: string;\r\n }\r\n\r\n export interface ListRecurringClassRequest {\r\n tenant_id:number;\r\n class_recurring_template_id : number;\r\n page_number: number;\r\n page_size: number;\r\n }\r\n\r\n \r\n\r\n\r\n\r\n","import { Tag } from \"@fitness-force/models\";\r\n\r\n export interface ClassType {\r\n id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n behaviour: string;\r\n color: string;\r\n status: string;\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n logo: string;\r\n is_small_group_training: boolean;\r\n duration_in_minutes: number;\r\n is_room_mandatory: boolean;\r\n tags: Tag[];\r\n created_by: number;\r\n updated_by: number;\r\n created_date: Date;\r\n updated_date: Date;\r\n }\r\n\r\n export interface ClassTypeList {\r\n items: ClassType[];\r\n }\r\n\r\n export interface ClassTypeStore {\r\n classTypes: ClassType[]\r\n };\r\n export interface Subtype {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n created_by: number;\r\n created_date: Date;\r\n class_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n description_primary_language: string;\r\n description_secondary_language: string;\r\n things_to_carry_primary_language: string;\r\n things_to_carry_secondary_language: string;\r\n }\r\n\r\n export interface ClassTypeById {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n service_type_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n behaviour: string;\r\n color: string;\r\n status: string;\r\n accessible_on_staff_facing_apps: boolean;\r\n accessible_on_member_facing_apps: boolean;\r\n accessible_on_website_widgits: boolean;\r\n logo: string;\r\n is_small_group_training: boolean;\r\n maximum_capacity: number;\r\n maximum_waitlist: number;\r\n commission_mode: string;\r\n minimum_booking_cancel_time: number;\r\n mark_trainer_busy: boolean;\r\n is_room_mandatory: boolean;\r\n maximum_booking_client_side: number;\r\n maximum_booking_staff_side: number;\r\n booking_opens_in_minutes: number;\r\n is_online_cancel_booking_allowed: boolean;\r\n duration_in_minutes: number;\r\n tags: Tag[];\r\n updated_date: Date;\r\n dropin_plan_id: number;\r\n subtypes: Subtype[];\r\n }\r\n\r\n","import { Status } from \"@fitness-force/enum\";\r\n\r\nexport interface ListServiceTypeResponse {\r\n items: ServiceTypeResponse[];\r\n}\r\n\r\nexport interface ServiceTypeResponse {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n status: Status;\r\n icon: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n}","import { PayLinkSteps } from \"@fitness-force/enum\";\r\n\r\nexport interface PayLinkStepOption {\r\n name: PayLinkSteps;\r\n isProcessed: boolean;\r\n data: any;\r\n redirectPath: string;\r\n isCurrentPage: boolean\r\n}\r\n\r\nexport interface PayLinkStepOptionPayload {\r\n steps: any;\r\n}","\r\nimport { IPSettings, Roles, StaffGender, StaffStatus, Tenant_Access } from '@fitness-force/enum';\r\n\r\n\r\nexport interface STATE_STAFF_LIST {\r\n staffList: STAFFINTERFACE[],\r\n staffListAll: STAFFINTERFACE[]\r\n}\r\n\r\nexport interface STAFFINTERFACE {\r\n id: number;\r\n company_id: number;\r\n password_last_changed: string;\r\n reports_to_name: string | null;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n is_system_staff: boolean;\r\n can_take_class: boolean;\r\n can_take_appointment: boolean;\r\n can_be_client_rep: boolean;\r\n name: string;\r\n claim_template_id: number;\r\n department: string;\r\n designation: string;\r\n role: Roles;\r\n is_public_bio_enabled: boolean;\r\n ip_setting: IPSettings;\r\n email_id: string;\r\n is_owner: boolean;\r\n status: StaffStatus;\r\n claim_template_name: string;\r\n ff_picture: string;\r\n mobile_number: number;\r\n mobile_country_code: string;\r\n tenant_access_id: number[];\r\n}\r\n\r\nexport interface STAFF_RESPONSE {\r\n items: STAFFINTERFACE[],\r\n total_items: number,\r\n total_pages: number,\r\n current_page: number\r\n}\r\n\r\nexport interface STAFF_LIST {\r\n staffList: STAFF_RESPONSE\r\n}\r\n\r\nexport interface STAFF_MODEL {\r\n id: number;\r\n company_id: number;\r\n password_last_changed: Date;\r\n reports_to_id: number | null;\r\n reports_to_name: string | null;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n is_system_staff: boolean;\r\n can_take_class: boolean;\r\n can_take_appointment: boolean;\r\n can_be_client_rep: boolean;\r\n password_expires_in_hrs: number;\r\n claim_template_name: string;\r\n name: string;\r\n claim_template_id: number;\r\n department: string;\r\n designation: string;\r\n role: Roles;\r\n is_public_bio_enabled: boolean;\r\n ip_setting: IPSettings;\r\n mobile_country_code: string;\r\n mobile_number: number;\r\n birth_date: Date;\r\n gender: StaffGender;\r\n address: string;\r\n image: string;\r\n external_employee_id?: number;\r\n public_bio_video_url: string;\r\n public_bio_description_primary_language: string;\r\n public_bio_description_secondary_language: string;\r\n public_bio_achievements_primary_language: string;\r\n public_bio_achievements_secondary_language: string;\r\n additional_ips: string;\r\n referral_code: string;\r\n language_preference: string;\r\n phone_verified: boolean;\r\n email_verified: boolean;\r\n email_id: string;\r\n is_owner: boolean;\r\n status: StaffStatus;\r\n tenant_access: Tenant_Access[];\r\n zip: string;\r\n}\r\n\r\nexport interface CREATE_STAFF {\r\n name: string,\r\n email_id: string,\r\n password: string,\r\n role: Roles,\r\n can_take_class: boolean,\r\n can_take_appointment: boolean,\r\n can_be_client_representative: boolean,\r\n reports_to_id: number,\r\n department: string,\r\n designation: string,\r\n ip_setting: IPSettings,\r\n additional_ips: string,\r\n mobile_number: number,\r\n mobile_country_code: string,\r\n birth_date: Date,\r\n ff_picture_base64: string,\r\n external_employee_id: string,\r\n gender: StaffGender,\r\n address: string,\r\n is_public_bio_enabled: boolean,\r\n public_bio_video_url: string,\r\n public_bio_description_primary_language: string,\r\n public_bio_description_secondary_language: string,\r\n public_bio_achievements_primary_language: string,\r\n public_bio_achievements_secondary_language: string,\r\n referral_code: string,\r\n language_preference: string,\r\n claim_template_id: number,\r\n tenant_access_id: number[],\r\n country: string,\r\n state: string,\r\n city: string,\r\n zip: string\r\n}\r\n\r\nexport interface UPDATE_STAFF {\r\n name: string,\r\n email_id: string,\r\n role: Roles,\r\n can_take_class: boolean,\r\n can_take_appointment: boolean,\r\n can_be_client_rep: boolean,\r\n reports_to_id: number,\r\n department: string,\r\n designation: string,\r\n ip_setting: IPSettings,\r\n additional_ips: string,\r\n mobile_number: number,\r\n mobile_country_code: string,\r\n birth_date: Date,\r\n ff_picture_base64: string,\r\n external_employee_id: string,\r\n gender: StaffGender,\r\n address: string,\r\n is_public_bio_enabled: boolean,\r\n public_bio_video_url: string,\r\n public_bio_description_primary_language: string,\r\n public_bio_description_secondary_language: string,\r\n public_bio_achievements_primary_language: string,\r\n public_bio_achievements_secondary_language: string,\r\n referral_code: string,\r\n language_preference: string,\r\n claim_template_id: number,\r\n tenant_access_id: number[],\r\n country: string,\r\n state: string,\r\n city: string,\r\n zip: string\r\n}\r\n\r\nexport interface StaffClaimFilter { \r\n claim: string[], \r\n role:string[],\r\n stricktlyFilter:boolean\r\n}\r\n\r\n\r\n","export interface STAGE_MASTER_MODEL {\r\n id: number;\r\n board_type: string;\r\n company_id: number;\r\n tenant_id: number;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n order: number;\r\n status: string;\r\n stage_master_key: number;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n}\r\n\r\nexport interface STAGE_MASTER_RESPONSE_MODEL {\r\n stages: Array\r\n}","export interface State {\r\n id: number,\r\n name: string,\r\n code: string,\r\n country_code: string,\r\n country_id: number\r\n}\r\n\r\nexport interface States {\r\n state: State\r\n states: Array\r\n};","import { CallOutcome, TourOutcome } from \"@fitness-force/enum\";\r\n\r\nexport interface TaskCommonAttributes {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n}\r\n\r\nexport interface CreateLogCallNotesRequest {\r\n transaction_notes: string;\r\n transaction_log_date: string;\r\n}\r\n\r\nexport interface CreateFollowupTaskByDateRequest {\r\n scheduled_datetime: string | null;\r\n}\r\n\r\nexport interface CreateCallOutcomeRequest extends TaskCommonAttributes {\r\n outcome: CallOutcome;\r\n mark_as_complete: boolean;\r\n log_call: CreateLogCallNotesRequest;\r\n book_tour: CreateTourRequest;\r\n book_trial: CreateFollowupTaskByDateRequest;\r\n reschedule_task: CreateFollowupTaskByDateRequest;\r\n}\r\n\r\nexport interface CreateTourOutcomeRequest {\r\n tour_outcome: TourOutcome;\r\n log_tour: CreateLogTourNotesRequest;\r\n book_trial: CreateFollowupTaskByDateRequest | null;\r\n reschedule_task: CreateFollowupTaskByDateRequest;\r\n mark_as_complete: boolean;\r\n}\r\nexport interface CreateLogTourNotesRequest {\r\n transaction_notes: string;\r\n staff_id: number;\r\n transaction_log_date: string\r\n}\r\n\r\n\r\nexport interface CreateTourRequest {\r\n assigned_to_staff_id: number;\r\n scheduled_datetime: string | null;\r\n}\r\n","export interface TENANT_MODEL {\r\n id: number;\r\n company_id: number;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n status: string;\r\n name_primary_language: string;\r\n name_secondary_language: string;\r\n primary_language: string;\r\n secondary_language: string;\r\n phone1: string;\r\n email_id: string;\r\n website: string;\r\n zone: string;\r\n place_id: string;\r\n latitude: number;\r\n longitude: number;\r\n city: string;\r\n state: string;\r\n country: string;\r\n zip_code: string;\r\n ip_setting: string;\r\n live_members: number;\r\n image: string;\r\n exclude_from_app: boolean;\r\n}\r\n\r\nexport interface ALL_TENANTS {\r\n items: Array;\r\n}\r\nexport interface TENANTSINTERFACE {\r\n accessed_tenant: Array;\r\n selected_tenant: TENANT_MODEL;\r\n}\r\n","import { IPSettings, Roles, StaffStatus } from \"@fitness-force/enum\";\r\n\r\nexport interface User {\r\n firstName?: string;\r\n lastName?: string;\r\n emailName?: string;\r\n}\r\n\r\nexport interface GetStaffListResponse {\r\n id: number;\r\n company_id: number;\r\n password_last_changed: string;\r\n reports_to_name: string;\r\n created_by: number;\r\n created_date: string;\r\n updated_by: number;\r\n updated_date: string;\r\n is_system_staff: boolean;\r\n can_take_class: boolean;\r\n can_take_appointment: boolean;\r\n can_be_client_rep: boolean;\r\n name: string;\r\n claim_template_id: number;\r\n department: string;\r\n designation: string;\r\n role: Roles;\r\n is_public_bio_enabled: boolean;\r\n ip_setting: IPSettings;\r\n email_id: string;\r\n is_owner: boolean;\r\n status: StaffStatus;\r\n ff_picture:string;\r\n}\r\n","import { Status, WaiverSusbscriptionTrigger } from \"@fitness-force/enum\";\r\n\r\nexport interface WaiverMasterResponse {\r\n id: number;\r\n company_id: number;\r\n tenant_id: number;\r\n title_primary_language: string;\r\n title_secondary_language: string;\r\n content_primary_language_md: string;\r\n content_secondary_language_md: string;\r\n susbscription_trigger: WaiverSusbscriptionTrigger;\r\n for_service_catagory_id: number[];\r\n at_trial: boolean;\r\n status: Status | null;\r\n created_by: number;\r\n created_date: Date;\r\n updated_by: number;\r\n updated_date: Date;\r\n}\r\n\r\nexport interface WaiverMasterResponseList {\r\n items: WaiverMasterResponse[];\r\n}","/*SHARED COMPONENTS*/\r\nexport * from './lib/components/autentication/about-us/about-us.component';\r\nexport * from './lib/components/autentication/footer/footer.component';\r\nexport * from './lib/components/autentication/carousel/carousel.component';\r\nexport * from './lib/components/helpsupport/helpsupport.component';\r\nexport * from './lib/components/toast/toast.component';\r\nexport * from './lib/components/langdropdown/langdropdown.component';\r\nexport * from './lib/components/crm/out-come/task-opportunity-info/task-opportunity-info.component';\r\nexport * from './lib/components/form-datepicker/form-datepicker.component';\r\nexport * from './lib/components/errors/errors.component';\r\nexport * from './lib/components/staff/assigned-to/assigned-to.component';\r\nexport * from './lib/components/task/task-create/task-create.component';\r\nexport * from './lib/components/hotwarmcold/hotwarmcold.component';\r\nexport * from './lib/components/report/dynamic-form/dynamic-form.component';\r\nexport * from './lib/components/rrule/rrule.component';\r\nexport * from './lib/components/data-grid/data-grid.component';\r\nexport * from './lib/components/data-grid/utility/opportunity-status/opportunity-status.component';\r\nexport * from './lib/components/data-grid/utility/grid-cell/grid-cell.component'\r\nexport * from './lib/components/omnisearch/create-prospect/create-prospect.component';\r\nexport * from './lib/components/crm/create-opportunity/create-opportunity.component';\r\nexport * from './lib/components/staff/change-password/staff-change-password.component';\r\nexport * from './lib/components/staff/change-reporting-manager/change-reporting-manager.component';\r\nexport * from './lib/components/staff/change-tenant-access/change-tenant-access.component';\r\nexport * from './lib/components/staff/staff-info/staff-info.component';\r\nexport * from './lib/components/search/mini-search/mini-search.component';\r\nexport * from './lib/components/crm/task-type-dropdown/task-type-dropdown.component';\r\nexport * from './lib/components/crm/lost-deal/lost-deal.component';\r\nexport * from './lib/components/data-grid/utility/client-info/client-info.component'\r\nexport * from './lib/components/data-grid/utility/track-status/track-status.component'\r\nexport * from './lib/components/data-grid/utility/task-type/task-type.component'\r\nexport * from './lib/components/data-grid/utility/assign-to-staff/assign-to-staff.component'\r\nexport * from './lib/components/data-grid/utility/opportunity-type/opportunity-type.component'\r\nexport * from './lib/components/data-grid/utility/client-regular-status/client-regular-status.component';\r\nexport * from './lib/components/report/table-action-buttons/table-action-buttons.component';\r\nexport * from './lib/components/data-grid/utility/client-gender/client-gender.component'\r\nexport * from './lib/components/data-grid/utility/prospect-info/prospect-info.component'\r\nexport * from './lib/components/data-grid/utility/client-representative/client-representative.component'\r\nexport * from './lib/components/data-grid/utility/prospect-list-actions/prospect-list-actions.component'\r\nexport * from './lib/components/out-come/call-outcome/call-outcome.component'\r\nexport * from './lib/components/out-come/tour-outcome/tour-outcome.component'\r\nexport * from './lib/components/data-grid/utility/date-cell/date-cell.component'\r\nexport * from './lib/components/paymentgateway/payengine/payengine.component';\r\nexport * from './lib/components/paymentgateway/razorpay/razorpay.component';\r\nexport * from './lib/components/staff/multi-select-staff/multi-select-staff.component'\r\n\r\nexport * from './lib/components/billing/billing-summary/billing-summary.component'\r\nexport * from './lib/components/billing/payment-summary/payment-summary.component';\r\nexport * from './lib/components/billing/billing/billing.component';\r\n\r\nexport * from './lib/components/tax-category-modal/tax-category-modal.component';\r\nexport * from './lib/components/client-profile/edit-profile/edit-profile.component';\r\nexport * from './lib/components/client-profile/change-password/change-password.component';\r\nexport * from './lib/components/client-profile/block-client/block-client.component'\r\nexport * from './lib/components/client-profile/assign-key-fob/assign-key-fob.component';\r\nexport * from './lib/components/client-profile/change-sales-representative/change-sales-representative.component';\r\nexport * from './lib/components/client-profile/send-email/send-email.component';\r\nexport * from './lib/components/client-profile/create-sms/create-sms.component';\r\nexport * from './lib/components/client-profile/basic-info-header/basic-info-header.component';\r\nexport * from './lib/components/client-profile/subscription-list/subscription-list.component'\r\nexport * from './lib/components/data-grid/utility/currency/currency.component';\r\nexport * from './lib/components/data-grid/utility/invoice-data/invoice-data.component';\r\nexport * from './lib/components/data-grid/utility/invoice-status/invoice-status.component';\r\nexport * from './lib/components/data-grid/utility/member-crown/member-crown.component';\r\nexport * from './lib/components/data-grid/utility/member-since/member-since.component';\r\nexport * from './lib/components/schedule/appointment/book-appointment/book-appointment.component'\r\nexport * from './lib/components/image-crop-dialog/image-crop-dialog.component'\r\nexport * from './lib/components/service-category/service-category.component';\r\nexport * from './lib/components/plan-service-modal/plan-service-modal.component'\r\nexport * from './lib/components/schedule/appointment/book-appointment/book-appointment.component'\r\nexport * from './lib/components/data-grid/utility/actions/actions.component';\r\nexport * from './lib/components/data-grid/utility/entity-status/entity-status.component';\r\nexport * from './lib/components/behaviour-view/behaviour-view.component';\r\nexport * from './lib/components/auto-appointment-create/auto-appointment-create.component';\r\nexport * from './lib/components/data-grid/utility/wrapped-column/wrapped-column.component';\r\nexport * from './lib/components/data-grid/utility/subscription-category-display/subscription-category-display.component'\r\nexport * from './lib/components/data-grid/utility/contract-term-view/contract-term-view.component'\r\nexport * from './lib/components/data-grid/utility/commitment-view/commitment-view.component'\r\nexport * from './lib/components/data-grid/utility/trim-text/trim-text.component';\r\n\r\nexport * from './lib/components/data-grid/utility/member-nonmember/member-nonmember.component';\r\nexport * from './lib/components/schedule/class/create-class/create-class.component';\r\nexport * from './lib/components/data-grid/utility/date-formated/date-formated.component'\r\nexport * from './lib/components/data-grid/utility/tax-with-status/tax-with-status.component'\r\nexport * from './lib/components/tax-group-create/tax-group-create.component'\r\nexport * from './lib/components/data-grid/utility/with-link/with-link.component';\r\nexport * from './lib/components/data-grid/empty-state/new-prospect/new-prospect.component'\r\nexport * from './lib/components/data-grid/utility/member-since-large/member-since-large.component';\r\nexport * from './lib/components/staff/multi-select-staff/multi-select-staff.component'\r\nexport * from './lib/components/admin-form-right-side/admin-form-right-side.component';\r\nexport * from './lib/components/data-grid/utility/action-column/action-column.component';\r\nexport * from './lib/components/data-grid/empty-state/no-component/no-component.component'\r\nexport * from './lib/components/data-grid/utility/default-date-time/default-date-time.component'\r\nexport * from './lib/components/breadcrumb/breadcrumb.component';\r\nexport * from './lib/components/create-charge-category/create-charge-category.component'\r\nexport * from './lib/components/data-grid/empty-state/empty-state-container/empty-state-container.component';\r\nexport * from './lib/components/digital-signature/digital-signature.component';\r\nexport * from './lib/components/data-grid/utility/age-cell/age-cell.component'\r\nexport * from './lib/components/data-grid/utility/irregular-age-cell/irregular-age-cell.component'\r\nexport * from './lib/components/data-grid/empty-state/no-services/no-services.component';\r\nexport * from './lib/components/data-grid/utility/payment-data/payment-data.component';\r\nexport * from './lib/components/confim-category/confirm-category.component';\r\n\r\n\r\nexport * from './lib/components/membership-behaviour/membership-behaviour.component'\r\nexport * from './lib/components/confirm-page-change/confirm-page-change.component';\r\n\r\nexport * from './lib/components/client-profile/invoice-details/invoice-details.component';\r\nexport * from './lib/components/client-profile/payment-details/payment-details.component';\r\nexport * from './lib/components/service-category-create/service-category-create.component';\r\n\r\n\r\n\r\n\r\n/*ROUTER GUARD*/\r\nexport * from './lib/router-guard/domainguard.service';\r\nexport * from './lib/router-guard/authguard.service';\r\nexport * from './lib/router-guard/claimsguard.service';\r\nexport * from './lib/resolve/tenant-resolver.service';\r\nexport * from './lib/router-guard/can-deactivate.ts/can-deactivate.guard';\r\nexport * from './lib/router-guard/can-deactivate.ts/component-can-deactivate'\r\nexport * from './lib/router-guard/can-deactivate.ts/form-can-deactivate';\r\n\r\n/*VALIDATORS*/\r\nexport * from './lib/validators/decimal.validator';\r\nexport * from './lib/validators/ipAddress.validator';\r\nexport * from './lib/validators/minimumLowercaseCheck.validator';\r\nexport * from './lib/validators/minimumUppercaseCheck.validator';\r\nexport * from './lib/validators/minimunNumericCharCheck.validator';\r\nexport * from './lib/validators/passwordMismatch.validator';\r\nexport * from './lib/validators/specialCharacter.validator';\r\nexport * from './lib/validators/decimal.validator';\r\nexport * from './lib/validators/confitmationText.validator';\r\nexport * from './lib/validators/custome-date-validators';\r\n\r\n/*FILTERS*/\r\nexport * from './lib/filters/common.filter.pipe';\r\nexport * from './lib/filters/name-initials.pipe';\r\nexport * from './lib/filters/dayago.pipe';\r\nexport * from './lib/filters/searchtenant.pipe';\r\nexport * from './lib/filters/currencyformat.pipe';\r\nexport * from './lib/filters/datetimeformat.pipe';\r\nexport * from './lib/filters/timeline.pipe';\r\nexport * from './lib/filters/bday.pipe';\r\nexport * from './lib/filters/text-transform.pipe';\r\nexport * from './lib/filters/age.pipe';\r\n\r\n/*DIRECTIVES*/\r\nexport * from './lib/directives/scroll-spy.directive';\r\nexport * from './lib/components/task/inplace-category-edit/inplace-category-edit.component';\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'admin-form-right-side',\r\n templateUrl: './admin-form-right-side.component.html',\r\n styleUrls: ['./admin-form-right-side.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AdminFormRightSideComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [AdminFormRightSideComponent],\r\n imports: [CommonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),],\r\n exports: [AdminFormRightSideComponent]\r\n})\r\nexport class AdminFormRightSideComponentModule {\r\n}\r\n","\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { AuthFooterComponentModule } from '../footer/footer.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-about-us',\r\n templateUrl: './about-us.component.html',\r\n styleUrls: ['./about-us.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AboutUsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [AboutUsComponent],\r\n imports: [\r\n CommonModule,\r\n AuthFooterComponentModule\r\n ],\r\n exports: [AboutUsComponent]\r\n})\r\nexport class AboutUsComponentModule {\r\n}\r\n","
\r\n
About FitnessForce
\r\n

Amazon Web Services uses information from your Amazon.com account to\r\n identify you and allow access to Amazon Web Services. Your use of this site is governed by our Terms of Use\r\n and Privacy Policy linked below. Your use of Amazon Web Services products and services is governed by the AWS\r\n Customer Agreement linked below unless you have entered into a separate agreement with Amazon Web Services or\r\n an AWS Value Added Reseller to purchase these products and services. The AWS Customer Agreement was updated on\r\n March 31, 2017. For more information about these updates, see Recent Changes.

\r\n \r\n
","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n} from '@angular/core';\r\nimport { AppInitService } from '@fitness-force/api';\r\nimport { CarouselModule } from 'primeng/carousel';\r\n\r\ninterface CData {\r\n title: string | null;\r\n category: string[];\r\n pubDate: string | null;\r\n description: string | null;\r\n}\r\n\r\n@Component({\r\n selector: 'app-carousel',\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class CarouselComponent implements OnInit {\r\n xmlData: any;\r\n blogData: CData[] = [];\r\n xmlString: any;\r\n xmlDoc: XMLDocument;\r\n constructor(private appInitService: AppInitService) {}\r\n\r\n ngOnInit(): void {\r\n this.appInitService.getBlogData().subscribe({\r\n next: (response: any) => {\r\n this.xmlData = response;\r\n let parser = new DOMParser();\r\n this.xmlDoc = parser.parseFromString(this.xmlData, 'text/xml');\r\n\r\n for (let j = 0;j < this.xmlDoc.getElementsByTagName('item').length;j++) {\r\n let d: CData = {} as CData;\r\n d.category = [];\r\n\r\n for (let i = 0;i < this.xmlDoc.getElementsByTagName('item')[j].childNodes.length;i++) {\r\n let key = this.xmlDoc.getElementsByTagName('item')[j].childNodes[i];\r\n switch (key.nodeName) {\r\n case 'title':\r\n d.title = key.textContent;\r\n break;\r\n case 'pubDate':\r\n d.pubDate = key.textContent;\r\n break;\r\n case 'category':\r\n d.category.push(key.textContent!);\r\n break;\r\n case 'description':\r\n d.description = key.textContent;\r\n break;\r\n }\r\n }\r\n this.blogData.push(d);\r\n }\r\n },\r\n error: (error) => {\r\n console.log(error);\r\n },\r\n });\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [CarouselComponent],\r\n imports: [CommonModule, CarouselModule],\r\n exports: [CarouselComponent],\r\n})\r\nexport class CarouselComponentModule {}\r\n","\r\n \r\n
\r\n
{{feature.pubDate | date: 'dd MMM YYYY' }}
\r\n
{{feature.title }}
\r\n
\r\n
\r\n
\r\n
","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { Observable } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'app-auth-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FooterComponent implements OnInit {\r\n public companyInfoDetail$!: Observable;\r\n companyDetails: any;\r\n constructor(\r\n private store: Store,\r\n public translate: TranslateService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n componentInit(){\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n \r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [FooterComponent],\r\n imports: [\r\n CommonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [FooterComponent]\r\n})\r\nexport class AuthFooterComponentModule {\r\n}\r\n","
\r\n\r\n

Grip Technologies Pvt Ltd. All rights reserved. Terms\r\n of Use | Privacy\r\n Policy

\r\n\r\n \"Fitness\r\n","import { Router, RouterModule } from '@angular/router';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CarouselModule } from 'primeng/carousel';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { TableModule } from 'primeng/table';\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'auto-appointment-create',\r\n templateUrl: './auto-appointment-create.component.html',\r\n styleUrls: ['./auto-appointment-create.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AutoAppointmentCreateComponent implements OnInit {\r\n\r\n items:any[];\r\n classes: any[];\r\n\r\n serviceCategories: any[];\r\n selectedServiceCategory: { name: string; } | undefined;\r\n\r\n dropInPlans: any[];\r\n selectedDropInPlan: { name: string; } | undefined;\r\n\r\n responsiveOptions: any[];\r\n\r\n amountVal: number | undefined;\r\n\r\n constructor() {\r\n this.items = [\r\n {label: 'Admin'},\r\n {label: 'Appointment Master'},\r\n {label: 'Appointment List'},\r\n ];\r\n\r\n this.responsiveOptions = [\r\n {\r\n breakpoint: '1024px',\r\n numVisible: 2,\r\n numScroll: 2\r\n },\r\n {\r\n breakpoint: '600px',\r\n numVisible: 1,\r\n numScroll: 1\r\n }\r\n];\r\n\r\n this.serviceCategories = [\r\n { name: 'Service Category 1' },\r\n { name: 'Service Category 2' },\r\n { name: 'Service Category 3' },\r\n { name: 'Service Category 4' },\r\n { name: 'Service Category 5' },\r\n ];\r\n\r\n this.dropInPlans = [\r\n { name: 'Plan 1' },\r\n { name: 'Plan 2' },\r\n { name: 'Plan 3' },\r\n { name: 'Plan 4' },\r\n { name: 'Plan 5' },\r\n ];\r\n\r\n this.classes = [\r\n {\r\n color:\"green-400\",\r\n bg_color: \"bg-green-50\",\r\n title: \"Personal Training\",\r\n behaviour: \"Paid\",\r\n behaviour_icon: \"pi pi-dollar\",\r\n note: \"Lorem Ipsum is simply dummy text of the printing and typesetting industry.\",\r\n successfully_added: true\r\n },\r\n {\r\n color:\"orange-500\",\r\n bg_color: \"bg-orange-50\",\r\n title: \"P.T. Trail\",\r\n behaviour: \"Free\",\r\n behaviour_icon: \"pi pi-wallet\",\r\n note: \"Lorem Ipsum is simply dummy text of the printing and typesetting industry.\",\r\n successfully_added: false\r\n },\r\n {\r\n color:\"blue-300\",\r\n bg_color: \"bg-blue-50\",\r\n title: \"Massage\",\r\n behaviour: \"Paid\",\r\n behaviour_icon: \"pi pi-dollar\",\r\n note: \"Lorem Ipsum is simply dummy text of the printing and typesetting industry.\",\r\n successfully_added: false\r\n },\r\n {\r\n color:\"pink-700\",\r\n bg_color: \"bg-red-50\",\r\n title: \"Diet Counselling\",\r\n behaviour: \"Paid\",\r\n behaviour_icon: \"pi pi-dollar\",\r\n note: \"Lorem Ipsum is simply dummy text of the printing and typesetting industry.\",\r\n successfully_added: false\r\n },\r\n\r\n ];\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [AutoAppointmentCreateComponent],\r\n\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n TableModule,\r\n ButtonModule,\r\n InputTextModule,\r\n RippleModule,\r\n DividerModule,\r\n OverlayPanelModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n CarouselModule,\r\n DropdownModule,\r\n RouterModule\r\n ],\r\n exports: [AutoAppointmentCreateComponent]\r\n})\r\nexport class AutoAppointmentCreateComponentModule {\r\n}\r\n"," \r\n
\r\n\r\n
\r\n\r\n \r\n\r\n OR\r\n\r\n
\r\n

Auto create a Appointment Type

\r\n

You can edit the appointment to change / tweak settings after defining.

\r\n\r\n \r\n \r\n\r\n
\r\n
\r\n
Successfully added!
\r\n\r\n \r\n
{{class.title}}
\r\n \r\n\r\n
\r\n \r\n {{class.behaviour}}\r\n
\r\n\r\n \r\n
{{class.note}}
\r\n \r\n\r\n
Service Category *
\r\n

P.T. 12 Sessions

\r\n
Drop-in Plan *
\r\n

Yes

\r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n {{class.title}}
\r\n \r\n\r\n
\r\n \r\n {{class.behaviour}}\r\n
\r\n\r\n \r\n
{{class.note}}
\r\n \r\n\r\n
\r\n
    \r\n
  • \r\n \r\n Free for all members\r\n
  • \r\n
  • \r\n \r\n Included with the membership\r\n
  • \r\n
  • \r\n \r\n Lorem ipsum\r\n
  • \r\n
  • \r\n \r\n Dummy text\r\n
  • \r\n
\r\n
\r\n\r\n \r\n
Service Category *
\r\n \r\n \r\n
{{selectedServiceCategory.name}}
\r\n
\r\n \r\n
{{serviceCategory.name}}
\r\n
\r\n
\r\n
Drop-in Plan *
\r\n \r\n \r\n
{{selectedDropInPlan.name}}
\r\n
\r\n \r\n
{{dropInPlan.name}}
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n} from '@angular/core';\r\nimport { AppointmentBehaviour } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'behaviour-view',\r\n templateUrl: './behaviour-view.component.html',\r\n styleUrls: ['./behaviour-view.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BehaviourViewComponent implements OnInit {\r\n @Input() behavior: any;\r\n activeBehavior: any;\r\n @Input() columnData:any = ''\r\n @Input() additionData:any\r\n icon: string;\r\n appointmentBehaviour: any[] = [];\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe({next:(cData:any)=>{\r\n for (let [key, value] of Object.entries(AppointmentBehaviour)) {\r\n if ( key == cData?.behaviour) {\r\n this.activeBehavior = { name: value, key };\r\n this.setIcon();\r\n }\r\n }\r\n }})\r\n\r\n }\r\n\r\n setIcon() {\r\n switch (this.activeBehavior.key) {\r\n case 'Free':\r\n this.icon=\"pi-money-bill\";\r\n break;\r\n case 'Paid':\r\n this.icon=\"pi-dollar\";\r\n break;\r\n case 'Membership_Paid':\r\n this.icon=\"pi-dollar\";\r\n break;\r\n case 'Free_for_Members':\r\n this.icon=\"pi-money-bill\";\r\n break;\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [BehaviourViewComponent],\r\n imports: [CommonModule],\r\n exports: [BehaviourViewComponent],\r\n})\r\nexport class BehaviourViewComponentModule {}\r\n","
{{activeBehavior.name}}
\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, DebugElement, ComponentFactoryResolver } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormArray, FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators, FormArrayName } from '@angular/forms';\r\nimport {\r\n FooterComponentModule,\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n} from '@fitness-force/core';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { AvatarGroupModule } from 'primeng/avatargroup';\r\nimport { DropdownModule } from 'primeng/dropdown'\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ChargeBreakUp, ChargingTodaySignUp, Claim, Crm, GetPlanMasterByIdResponse, GetPlanMasterListResponse, ListPaymentModeMastersResponse, ListServiceTypeResponse, OverLappingSubscriptionResponse, OverLappingSubscriptionSignUpResponse, PaymentModeMastersResponse, PaymentSignUp, PlanBreakUpCalculation, PlanBreakUpCalculationRequest, PlanBreakUpCalculationResponse, PlanMasterList, PlanMasterServices, PlanSummary, RecurringSignUp, ServiceBreakUp, ServiceTypeResponse, SignUpRequest, SignUpResponse, StaffDiscountCalculationRequest, StaffDiscountChargeRecurring, StaffDiscountChargingTodayRequest, StaffDiscountServiceFirstChargeRequest, StaffDiscountServiceNonRecurringRequest, StaffDiscountServiceRecurringRequest, StaffDiscountSignUpChargeRequest, STAFFINTERFACE, TaxLineItemBreakUp, TENANTSINTERFACE, ValidationError } from '@fitness-force/models';\r\nimport { BehaviorSubject, combineLatestWith, map, Observable, of } from 'rxjs';\r\nimport { AdvancedSettingService, AuthSevices, ClaimService, ClientService, CommonService, PaymentModeService, PlanmasterService, PlansubscriptionService, ServiceCategoryService, ServiceTypeService, TimeconversionService } from '@fitness-force/api';\r\nimport { AppErrors, NotFoundError, ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader, AssignedToComponentModule, ErrorsComponentModule } from '@fitness-force/shared';\r\n\r\nimport { DateTimeFormatPipeModule } from '../../../../../../../libs/shared/src/lib/filters/datetimeformat.pipe';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { PayModeLevel1, PayModeLevel2, PlanCategory, PlanIntervalType, PlanType, Roles, Status } from '@fitness-force/enum';\r\nimport { COMPANY_INFO, STAFF_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { Store } from '@ngrx/store';\r\nimport { SkeletonModule } from \"primeng/skeleton\";\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { CreditCardValidators } from 'angular-cc-library';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\n\r\n\r\n@Component({\r\n selector: 'billing-summary',\r\n templateUrl: './billing-summary.component.html',\r\n styleUrls: ['./billing-summary.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BillingSummaryComponent implements OnInit {\r\n\r\n disablePlanDropdown: boolean = false;\r\n\r\n getAccessTenantList$: Observable;\r\n tenantId: number = 0;\r\n subscriptionPlanId: number = 0;\r\n clientId: number = 0;\r\n clientName: string = '';\r\n isInclusive: boolean = false;\r\n isContract$ = new BehaviorSubject(false);\r\n isCashRecurring: boolean = false;\r\n otherpayment: boolean = false;\r\n billing_interval_type$ = new BehaviorSubject('');\r\n billing_interval_value$ = new BehaviorSubject(0);\r\n subscription_category$ = new BehaviorSubject('');\r\n bill_cycle_day: string;\r\n fg: FormGroup = new FormGroup({});\r\n planIntervalType = PlanIntervalType;\r\n planCategory = PlanType;\r\n oJSON: JSON;\r\n\r\n serviceTypeCollection!: Option[];\r\n errMsg: Error | any;\r\n\r\n claim$: Observable = new Observable();\r\n monthNames: string[] = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\r\n\r\n fgProducts: FormGroup = new FormGroup({\r\n frmFirstTimeBaseCostAmt: new FormControl(''),\r\n frmFirstTimeAmt: new FormControl('', [Validators.required]),\r\n frmFirstTimeDis: new FormControl('', [Validators.required]),\r\n frmFirstTimeTaxAmt: new FormControl('', []),\r\n frmNonRecurringBaseCostAmt: new FormControl(''),\r\n frmNonRecurringAmt: new FormControl('', [Validators.required]),\r\n frmNonRecurringDis: new FormControl('', [Validators.required]),\r\n frmNonRecurringTaxAmt: new FormControl('', []),\r\n charges: new FormArray([])\r\n });\r\n\r\n fgProductsRecurring: FormGroup = new FormGroup({\r\n frmRecurringMembershipBaseCostAmt: new FormControl('', []),\r\n frmRecurringMembershipAmt: new FormControl('', []),\r\n frmRecurringMembershipDis: new FormControl('', []),\r\n frmRecurringMembershipTaxAmt: new FormControl('', []),\r\n });\r\n\r\n fgPayment: FormGroup = new FormGroup({\r\n //Default mode Selection.\r\n otherPaymentMode: new FormControl('cash', [Validators.required]),\r\n\r\n //CASH\r\n frmCashAmount: new FormControl('', [Validators.required, Validators.min(0)]),\r\n\r\n //Credit CARD\r\n frmCCNumber: new FormControl('', [Validators.required, CreditCardValidators.validateCCNumber]),\r\n frmCCNetworkType: new FormControl('', [Validators.required]),\r\n frmCCExpiryDate: new FormControl('', [CreditCardValidators.validateExpDate]),\r\n frmCCAuthCode: new FormControl('', [Validators.required, Validators.minLength(3), Validators.maxLength(4)]),\r\n frmCCAmt: new FormControl('', [Validators.required, Validators.min(0)]),\r\n\r\n //Credit CARD\r\n frmDCNumber: new FormControl('', [CreditCardValidators.validateCCNumber]),\r\n frmDCNetworkType: new FormControl('', [Validators.required]),\r\n frmDCExpiryDate: new FormControl('', [CreditCardValidators.validateExpDate]),\r\n frmDCAuthCode: new FormControl('', [Validators.required, Validators.minLength(3), Validators.maxLength(4)]),\r\n frmDCAmt: new FormControl('', [Validators.required, Validators.min(0)]),\r\n\r\n //CHEQUE\r\n frmChequeBankName: new FormControl('', [Validators.required]),\r\n frmChequeDate: new FormControl('', [Validators.required]),\r\n frmChequeAmount: new FormControl('', [Validators.required, Validators.min(0)]),\r\n\r\n //UPI\r\n frmUpiProvider: new FormControl('', [Validators.required]),\r\n frmUpiVpaid: new FormControl('', [Validators.required]),\r\n frmUpiAmount: new FormControl('', [Validators.required, Validators.min(0)]),\r\n });\r\n\r\n\r\n userDiscountLimit: number = 0;\r\n single_staff_discount: number = 0;\r\n recurring_staff_discount: number = 0;\r\n\r\n\r\n @Input('visible') showPaidFullSidebar: boolean = false;\r\n // @Input('visible') showPaidFullSidebar$: BehaviorSubject = new BehaviorSubject(false as boolean);\r\n @Input('planSummarydata') planSummary$: Observable;\r\n\r\n @Output() hideSidePopup: EventEmitter<{ hideSidebar: boolean, clientSignupUUID: string }> = new EventEmitter();\r\n @Output() closeSidePopup: EventEmitter<{ hideSidebar: boolean, clientSignupUUID: string }> = new EventEmitter();\r\n\r\n\r\n planDetail$: Observable = new Observable();\r\n billingCycleOption$ = new BehaviorSubject([]);\r\n isProRata$ = new BehaviorSubject(true);\r\n paymentModeMaster$: Observable = new Observable();\r\n paymentMode$: Observable = new Observable();\r\n paymentModeBS$ = new BehaviorSubject([]);\r\n\r\n totalNonRecurringAmt$ = new BehaviorSubject(0);\r\n _selectedstaff = new BehaviorSubject(0);\r\n _filterStaff = new BehaviorSubject([0]);\r\n\r\n isCoupounEnabled: boolean = false;\r\n isTaxInClusive: boolean = false;\r\n\r\n weekDays: string[] = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\r\n billOwnerId$ = new BehaviorSubject(0);\r\n\r\n planBreakUpCalculationResponse$ = new BehaviorSubject(null!);\r\n overLappingSubscriptionSignUp$ = new BehaviorSubject(null!);\r\n planBreakUpCalculation$: BehaviorSubject = new BehaviorSubject(null);\r\n planSubscription$: BehaviorSubject = new BehaviorSubject(null);\r\n // firstTimeCharge$ = new BehaviorSubject(null!);\r\n // oneTimeCharge$ = new BehaviorSubject(null!);\r\n\r\n billdate: Date = new Date();\r\n\r\n planSubscriptionList: {\r\n id: number, name_primary_language: string, name_secondary_language: string\r\n , subscription_category: PlanCategory, recurring_services_in_minor_curr: number;\r\n }[];\r\n\r\n\r\n clientSignupUUID: string = \"\";\r\n selectedMembership: { name: string, duration: string, amount: string; } | undefined;\r\n billOwners: any[];\r\n selectedBillOwners: { name: string, image: string, initials: string; } | undefined;\r\n startDate: Date | undefined;\r\n selectedValue: string = 'creditcard';\r\n selectedBilling: { name: string } | undefined;\r\n\r\n // Variables used in controls\r\n showContractSidebar: boolean = true;\r\n applyDiscount: boolean = false;\r\n applyCoupon: boolean = true;\r\n couponApplied: boolean = true;\r\n discountApplied: boolean = false;\r\n inValidDiscount: Boolean = true;\r\n onlinePayment: boolean = false;\r\n // otherPayment: boolean = false;\r\n requiredInformation: boolean = false;\r\n\r\n //#region \"Static Payments\" \r\n isCashAllowed: boolean = false;\r\n isDebitCardAllowed: boolean = false;\r\n isCreditCardAllowed: boolean = false;\r\n isNetBankingAllowed: boolean = false;\r\n isUpiAllowed: boolean = false;\r\n isWalletAllowed: boolean = false;\r\n isAmazonPayAllowed: boolean = false;\r\n isPayTMAllowed: boolean = false;\r\n isVenmoAllowed: boolean = false;\r\n isChequeAllowed: boolean = false;\r\n //#endregion\r\n\r\n\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n errorDataModal = [] as ValidationError[];\r\n currentUserDetails: any;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private store: Store,\r\n private translate: TranslateService,\r\n private clientService: ClientService,\r\n private planmasterService: PlanmasterService,\r\n private plansubscriptionService: PlansubscriptionService,\r\n private commonService: CommonService,\r\n public authService: AuthSevices,\r\n public paymentModeService: PaymentModeService,\r\n private timeService: TimeconversionService,\r\n private advanceSettingService: AdvancedSettingService,\r\n private serviceCategoryService: ServiceCategoryService,\r\n private serviceType: ServiceTypeService,\r\n private claimService: ClaimService,\r\n ) {\r\n this.componentInit();\r\n this.SetFormFields();\r\n\r\n }\r\n\r\n componentInit() {\r\n let companyInfoDetail$: Observable = this.store.select(COMPANY_INFO);\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.claim$ = this.claimService.GetClaim(environment.BASE_URL);\r\n\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n })\r\n\r\n companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n this.GetAdvanceSetting();\r\n }\r\n })\r\n\r\n\r\n this.currentUserDetails = this.authService.decodedToken;\r\n this.single_staff_discount = this.currentUserDetails.single_staff_discount;\r\n this.recurring_staff_discount = this.currentUserDetails.recurring_staff_discount;\r\n\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.planSummary$.subscribe((plan: PlanSummary) => {\r\n this.tenantId = plan.tenant_id;\r\n this.clientId = plan.client.client_id;\r\n this.clientName = plan.client.client_name;\r\n this.subscriptionPlanId = plan.id;\r\n this.disablePlanDropdown = plan.id == 0;\r\n\r\n this.filterStaff();\r\n\r\n this.createDymamicPaymentControl();\r\n this.BindOtherPaymentMode(plan.tenant_id);\r\n this.setPaymentValidator();\r\n this.BindPlanList(plan.tenant_id);\r\n this.BindPlanById(plan.tenant_id, plan.id, plan.client.client_id);\r\n\r\n });\r\n\r\n this._selectedstaff.next(Number(this.authService.loggedInStaffId));\r\n //this.fg.controls.billdata.setValue((new Date())); \r\n }\r\n\r\n\r\n\r\n GetAdvanceSetting() {\r\n let tenant_settings = this.advanceSettingService.getAdvanceSetting(this.tenantId, 'tax_calculation');\r\n if (tenant_settings) {\r\n console.log(tenant_settings);\r\n tenant_settings.subscribe({\r\n next: (res) => {\r\n if (res.value == \"inclusive\") {\r\n this.isInclusive = true;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n setPaymentValidator() {\r\n this.fgPayment.controls['otherPaymentMode'].valueChanges.subscribe(\r\n val => {\r\n\r\n let otherPaymentModeid = 0;\r\n let mode = '';\r\n\r\n if (val.toLowerCase().startsWith(\"otherpaymentmode_rb_\")) {\r\n otherPaymentModeid = parseInt(val.toLowerCase().replace(\"otherpaymentmode_rb_\", \"\"))\r\n val = \"otherpaymentmode\";\r\n }\r\n //this.clearPaymentValidator();\r\n\r\n console.log(val);\r\n switch (val) {\r\n case \"cash\":\r\n this.frmCash_AmountFormControl.clearValidators();\r\n this.frmCash_AmountFormControl.addValidators([Validators.required]);\r\n this.frmCash_AmountFormControl.updateValueAndValidity();\r\n break;\r\n case \"cheque\":\r\n this.frmCheque_AmountFormControl.clearValidators();\r\n this.frmCheque_AmountFormControl.addValidators([Validators.required]);\r\n this.frmCheque_AmountFormControl.updateValueAndValidity();\r\n break;\r\n case \"upi\":\r\n this.frmUpi_AmountFormControl.clearValidators();\r\n this.frmUpi_AmountFormControl.addValidators([Validators.required]);\r\n this.frmUpi_AmountFormControl.updateValueAndValidity();\r\n break;\r\n case \"debit\":\r\n this.frmDC_AmountFormControl.clearValidators();\r\n this.frmDC_AmountFormControl.addValidators([Validators.required]);\r\n this.frmDC_AmountFormControl.updateValueAndValidity();\r\n\r\n break;\r\n case \"credit\":\r\n this.frmCC_AmountFormControl.clearValidators();\r\n this.frmCC_AmountFormControl.addValidators([Validators.required]);\r\n this.frmCC_AmountFormControl.updateValueAndValidity();\r\n break;\r\n case \"otherpaymentmode\":\r\n this.fgPayment.controls[\"inp_otherPaymentMode_\" + otherPaymentModeid].addValidators([Validators.required]);\r\n this.fgPayment.controls[\"inp_otherPaymentMode_\" + otherPaymentModeid].updateValueAndValidity();\r\n break;\r\n }\r\n }\r\n )\r\n }\r\n\r\n clearPaymentValidator() {\r\n this.frmCash_AmountFormControl.removeValidators([Validators.required]);\r\n\r\n this.frmCheque_AmountFormControl.removeValidators([Validators.required]);\r\n\r\n this.frmUpi_AmountFormControl.removeValidators([Validators.required]);\r\n\r\n this.frmDC_AmountFormControl.removeValidators([Validators.required]);\r\n\r\n this.frmCC_AmountFormControl.removeValidators([Validators.required]);\r\n\r\n Object.keys(this.fgPayment.controls).forEach(key => {\r\n if (key.toLowerCase().startsWith(\"inp_otherpaymentmode_\")) {\r\n this.fgPayment.controls[key].removeValidators([Validators.required]);\r\n }\r\n });\r\n this.frmCheque_AmountFormControl.updateValueAndValidity();\r\n\r\n }\r\n\r\n SetFormFields(): void {\r\n this.fg = this.fb.group({\r\n ddlMembership: new FormControl('', []),\r\n ddlplanSubscriptionList: new FormControl('', []),\r\n ddlBillingCycle: new FormControl('', []),\r\n billdata: new FormControl(new Date(), []),\r\n billingOwner: new FormControl('', []),\r\n subscriptionstartdate: new FormControl((new Date()), []),\r\n });\r\n\r\n this.fg.controls.ddlplanSubscriptionList.valueChanges.subscribe((plan: any) => {\r\n if (plan && plan.id) {\r\n this.subscriptionPlanId = plan.id;\r\n this.BindPlanById(plan.tenant_id, plan.id, this.clientId);\r\n }\r\n });\r\n }\r\n\r\n closeBillingSideBar(sGuid: string) {\r\n this.closeSidePopup.emit({ hideSidebar: false, clientSignupUUID: this.clientSignupUUID });\r\n }\r\n\r\n\r\n BindPlanList(tenant_id: number) {\r\n this.planmasterService.getSubscriptionPlanService(tenant_id).subscribe({\r\n next: (planList: GetPlanMasterListResponse) => {\r\n let oPlan: PlanMasterList[] = planList.items.filter((o) => {\r\n return o.status == Status.Active || o.status.toString() == Status[Status.Active];\r\n });\r\n this.planSubscription$.next(oPlan);\r\n if (this.subscriptionPlanId > 0) {\r\n let selectedPlan = oPlan.find((o) => o.id == this.subscriptionPlanId);\r\n this.fg.controls.ddlplanSubscriptionList.setValue(selectedPlan);\r\n }\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n console.log(JSON.stringify(error));\r\n } else {\r\n alert('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n BindOtherPaymentMode(tenant_id: number) {\r\n this.paymentModeMaster$ = this.paymentModeService.listPaymentMode(tenant_id)\r\n\r\n this.paymentModeMaster$.subscribe({\r\n next: (listpaymentMode: ListPaymentModeMastersResponse) => {\r\n CONSTANTS_DATA.PAYMENTMODE.IN.forEach(obj => {\r\n listpaymentMode.items.push(obj as any);\r\n });\r\n\r\n this.isCashAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Cash && e.id == PayModeLevel2.Cash).length > 0\r\n this.isDebitCardAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Card && e.id == PayModeLevel2.Debit).length > 0\r\n this.isCreditCardAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Card && e.id == PayModeLevel2.Credit).length > 0\r\n this.isNetBankingAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.NetBanking && e.id == PayModeLevel2.NetBanking).length > 0\r\n this.isUpiAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.UPI && e.id == PayModeLevel2.UPI).length > 0\r\n this.isAmazonPayAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Wallet && e.id == PayModeLevel2.AmazonPay).length > 0\r\n this.isPayTMAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Wallet && e.id == PayModeLevel2.Paytm).length > 0\r\n this.isVenmoAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Wallet && e.id == PayModeLevel2.Venmo).length > 0\r\n this.isChequeAllowed = listpaymentMode.items.filter(e => e.status == Status.Active && e.type == PayModeLevel1.Cheque && e.id == PayModeLevel2.Cheque).length > 0\r\n\r\n this.paymentModeBS$.next(listpaymentMode.items.filter(e => {\r\n return (e.status == Status.Active || e.status.toString() == Status[Status.Active]) && (e.type == PayModeLevel1.Other || e.type.toString() == PayModeLevel1[PayModeLevel1.Other])\r\n }));\r\n\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n // this.errMsg = error;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n createDymamicPaymentControl() {\r\n this.paymentModeBS$.subscribe({\r\n next: (paymentModeMastersResponse: PaymentModeMastersResponse[]) => {\r\n console.log(paymentModeMastersResponse);\r\n paymentModeMastersResponse.forEach((value: PaymentModeMastersResponse, index: number) => {\r\n this.fgPayment.addControl('inp_otherPaymentMode_' + value.id.toString(), new FormControl(0, []));\r\n });\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n // this.errMsg = error;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n SaveSubscription(isOfflinePayment: boolean) {\r\n let paymentSignUp: PaymentSignUp = {} as PaymentSignUp;\r\n if (isOfflinePayment) {\r\n\r\n // this.fgPayment.markAllAsTouched();\r\n // if (!this.fgPayment.valid) {\r\n // return;\r\n // }\r\n\r\n paymentSignUp = this.getPaymentObject();\r\n this.fgPayment.markAllAsTouched();\r\n if (!this.validatePaymentObject()) {\r\n return;\r\n }\r\n }\r\n else {\r\n paymentSignUp = {} as PaymentSignUp;\r\n }\r\n\r\n let orgPlanSummary: PlanSummary = {} as PlanSummary;\r\n let crm: Crm = {} as Crm;\r\n this.planSummary$.subscribe(\r\n {\r\n next: (res) => {\r\n orgPlanSummary = res;\r\n crm.sigup_sts_opp_id = res?.CRM?.opp_id;\r\n crm.sigup_sts_tsk_id = res?.CRM?.task_id;\r\n crm.sigup_sts_board_type = res?.CRM?.board_id;\r\n }\r\n });\r\n\r\n let signUpRequest = {\r\n\r\n plan_id: this.subscriptionPlanId,\r\n start_date: this.subscriptionStartdate.value,\r\n bill_cycle_day: (this.subscription_category$.value.toString() == PlanCategory.DropIn.toString() || this.subscription_category$.value == PlanCategory[PlanCategory.DropIn]) ? this.subscriptionStartdate.value.getDate() : this.billingCycle.value.value,\r\n sales_rep: this.billingOwner.value.id,\r\n issue_date: this.billDate.value,\r\n billing_name: this.clientName,\r\n is_offline_payment: isOfflinePayment,\r\n offline_payment: paymentSignUp,\r\n is_coupon_code_applied: false,\r\n sigup_coupon_code: \"\",\r\n charging_today: {} as ChargingTodaySignUp,\r\n charging_recurring: {} as RecurringSignUp,\r\n //current_keyfob: \"\", //need to set\r\n crm: crm,\r\n //schedule: {} as ScheduleSignUp\r\n } as SignUpRequest;\r\n\r\n this.planBreakUpCalculation$.subscribe((_objResponse: PlanBreakUpCalculation | null) => {\r\n console.log(_objResponse);\r\n if (_objResponse) {\r\n signUpRequest.charging_today = _objResponse.charging_today;\r\n signUpRequest.charging_recurring = _objResponse.charging_recurring;\r\n console.log(\"signUpRequest\", signUpRequest);\r\n //Payment\r\n let val = this.otherPaymentMethod;\r\n this.plansubscriptionService.SubscriptionSignup(this.tenantId, this.clientId, signUpRequest).subscribe({\r\n next: (_objResponse: SignUpResponse) => {\r\n this.clientSignupUUID = _objResponse.clientsignupuuId;\r\n this.closeBillingSideBar(_objResponse.clientsignupuuId);\r\n },\r\n error: (_obj: any) => {\r\n\r\n },\r\n complete: () => {\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n\r\n getPaymentObject() {\r\n let paymentSignUp = {} as PaymentSignUp;\r\n var mode = this.otherPaymentMethod;\r\n var otherPaymentModeid = 0;\r\n paymentSignUp.vpa_id = \"\";\r\n paymentSignUp.upi_provider = \"\";\r\n paymentSignUp.network_type = \"\";\r\n paymentSignUp.card_number = \"\";\r\n paymentSignUp.bank_name = \"\";\r\n paymentSignUp.auth_code = \"\";\r\n\r\n if (mode.toLowerCase().startsWith(\"otherpaymentmode_rb_\")) {\r\n otherPaymentModeid = parseInt(mode.toLowerCase().replace(\"otherpaymentmode_rb_\", \"\"))\r\n mode = \"otherpaymentmode\";\r\n }\r\n\r\n switch (mode) {\r\n case \"cash\":\r\n paymentSignUp.amount_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.frmCash_Amount);\r\n paymentSignUp.paymode_level1 = PayModeLevel1.Cash;\r\n paymentSignUp.paymode_level2_id = PayModeLevel2.Cash;\r\n break;\r\n case \"cheque\":\r\n paymentSignUp.amount_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.frmCheque_Amount);\r\n paymentSignUp.cheque_date = this.frmCheque_Date;\r\n paymentSignUp.bank_name = this.frmCheque_BankName;\r\n paymentSignUp.paymode_level1 = PayModeLevel1.Cheque;\r\n paymentSignUp.paymode_level2_id = PayModeLevel2.Cheque;\r\n break;\r\n case \"upi\":\r\n paymentSignUp.paymode_level1 = PayModeLevel1.UPI;\r\n paymentSignUp.paymode_level2_id = PayModeLevel2.UPI;\r\n break;\r\n case \"debit\":\r\n paymentSignUp.amount_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.frmDC_Amount);\r\n paymentSignUp.network_type = this.frmDC_NetworkType;\r\n paymentSignUp.exp_date = this.frmDC_ExpiryDate;\r\n paymentSignUp.card_number = this.frmDC_Number.toString();\r\n paymentSignUp.auth_code = this.frmDC_AuthCode.toString();\r\n paymentSignUp.paymode_level1 = PayModeLevel1.Card;\r\n paymentSignUp.paymode_level2_id = PayModeLevel2.Debit;\r\n break;\r\n case \"credit\":\r\n paymentSignUp.amount_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.frmCC_Amount);\r\n paymentSignUp.network_type = this.frmCC_NetworkType;\r\n paymentSignUp.exp_date = this.frmCC_ExpiryDate;\r\n paymentSignUp.card_number = this.frmCC_Number.toString();\r\n paymentSignUp.auth_code = this.frmCC_AuthCode.toString();\r\n paymentSignUp.paymode_level1 = PayModeLevel1.Card;\r\n paymentSignUp.paymode_level2_id = PayModeLevel2.Credit;\r\n break;\r\n case \"otherpaymentmode\":\r\n paymentSignUp.amount_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.fgPayment.controls[\"inp_otherPaymentMode_\" + otherPaymentModeid].value);\r\n paymentSignUp.paymode_level1 = PayModeLevel1.Other;\r\n break;\r\n }\r\n return paymentSignUp;\r\n }\r\n\r\n validatePaymentObject(): boolean {\r\n let paymentSignUp = {} as PaymentSignUp;\r\n var mode = this.otherPaymentMethod;\r\n var otherPaymentModeid = 0;\r\n var isValid = true;\r\n\r\n if (mode.toLowerCase().startsWith(\"otherpaymentmode_rb_\")) {\r\n otherPaymentModeid = parseInt(mode.toLowerCase().replace(\"otherpaymentmode_rb_\", \"\"))\r\n mode = \"otherpaymentmode\";\r\n }\r\n\r\n switch (mode) {\r\n case \"cash\":\r\n if (this.frmCash_AmountFormControl.status == \"INVALID\")\r\n isValid = false;\r\n break;\r\n case \"cheque\":\r\n if (this.frmCheque_AmountFormControl.status == \"INVALID\"\r\n || this.frmCheque_DateFormControl.status == \"INVALID\"\r\n || this.frmCheque_BankNameFormControl.status == \"INVALID\"\r\n )\r\n isValid = false;\r\n break;\r\n case \"upi\":\r\n if (this.frmUpi_AmountFormControl.status == \"INVALID\"\r\n || this.frmUpiVpaidFormControl.status == \"INVALID\"\r\n || this.frmUpiProviderFormControl.status == \"INVALID\"\r\n )\r\n isValid = false;\r\n break;\r\n case \"debit\":\r\n if (this.frmDC_AmountFormControl.status == \"INVALID\"\r\n || this.frmDC_AuthCodeFormControl.status == \"INVALID\"\r\n || this.frmDC_CardExpiryFormControl.status == \"INVALID\"\r\n || this.frmDC_NetworkTypeFormControl.status == \"INVALID\"\r\n || this.frmDC_NumberFormControl.status == \"INVALID\"\r\n )\r\n isValid = false;\r\n break;\r\n case \"credit\":\r\n if (this.frmCC_AmountFormControl.status == \"INVALID\"\r\n || this.frmCC_AuthCodeFormControl.status == \"INVALID\"\r\n || this.frmCC_CardExpiryFormControl.status == \"INVALID\"\r\n || this.frmCC_NetworkTypeFormControl.status == \"INVALID\"\r\n || this.frmCC_NumberFormControl.status == \"INVALID\"\r\n )\r\n isValid = false;\r\n break;\r\n case \"otherpaymentmode\":\r\n if (this.fgPayment.controls[\"inp_otherPaymentMode_\" + otherPaymentModeid].status == \"INVALID\")\r\n isValid = false;\r\n break;\r\n }\r\n return isValid;\r\n }\r\n\r\n\r\n BindPlanById(tenant_id: number, plan_id: number, client_id: number) {\r\n if (plan_id > 0) {\r\n this.planDetail$ = this.planmasterService.getSubscriptionPlanServiceById(tenant_id, plan_id);\r\n this.planDetail$.subscribe({\r\n next: (i: GetPlanMasterByIdResponse) => {\r\n console.log('planDetail$');\r\n this.bill_cycle_day = i.bill_cycle_day;\r\n this.billing_interval_type$.next(i.billing_interval_type.toString());\r\n this.billing_interval_value$.next(i.billing_interval_value);\r\n this.subscription_category$.next(i.subscription_category);\r\n\r\n if (i.subscription_category == PlanType.Contract || i.subscription_category == PlanType.ContractConvertsToPayAsYouGo\r\n || i.subscription_category == PlanType.PayAsYouGo || i.feature_is_cash_recurring) {\r\n this.onlinePayment = true;\r\n }\r\n if (\r\n i.subscription_category == PlanCategory.DropIn.toString()\r\n || i.subscription_category == PlanCategory[PlanCategory.DropIn]\r\n || i.subscription_category == PlanCategory.PaidInFull.toString()\r\n || i.subscription_category == PlanCategory[PlanCategory.PaidInFull]\r\n || i.feature_is_cash_recurring) {\r\n this.isCashRecurring = true;\r\n }\r\n\r\n //set is Contract.\r\n this.SetContractRecurring(i.contract_term, i.feature_is_cash_recurring);\r\n\r\n this.SetBillingCycle_init();\r\n\r\n this.bindPlanBreakUp(tenant_id, plan_id, client_id);\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorMessages = [];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n this.errorMessages = [];\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n\r\n }\r\n }\r\n },\r\n complete: () => {\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n SetContractRecurring(contract_term: number, feature_is_cash_recurring: boolean) {\r\n if (contract_term != 1)\r\n this.isContract$.next(true);\r\n if (feature_is_cash_recurring)\r\n this.isCashRecurring = true;\r\n\r\n }\r\n\r\n getPlanType(c: PlanCategory): string {\r\n let strCategory: string = '';\r\n switch (c.toString()) {\r\n case PlanCategory.Contract.toString():\r\n case PlanCategory[PlanCategory.Contract]:\r\n strCategory = PlanType.Contract.toUpperCase();\r\n break;\r\n case PlanCategory.ContractConvertsToPayAsYouGo.toString():\r\n case PlanCategory[PlanCategory.ContractConvertsToPayAsYouGo]:\r\n strCategory = PlanType.ContractConvertsToPayAsYouGo.toUpperCase();\r\n break;\r\n case PlanCategory.DropIn.toString():\r\n case PlanCategory[PlanCategory.DropIn]:\r\n strCategory = PlanType.DropIn.toUpperCase();\r\n break;\r\n case PlanCategory.PaidInFull.toString():\r\n case PlanCategory[PlanCategory.PaidInFull]:\r\n strCategory = PlanType.PaidInFull.toUpperCase();\r\n break;\r\n case PlanCategory.PayAsYouGo.toString():\r\n case PlanCategory[PlanCategory.PayAsYouGo]:\r\n strCategory = PlanType.PayAsYouGo.toUpperCase();\r\n break;\r\n }\r\n return strCategory;\r\n }\r\n\r\n getPlanAmount(p: PlanMasterList): number {\r\n let amt: number = 0;\r\n switch (p.subscription_category.toString()) {\r\n case PlanCategory.Contract.toString():\r\n case PlanCategory[PlanCategory.Contract]:\r\n amt = p.recurring_services_in_minor_currency;\r\n break;\r\n case PlanCategory.ContractConvertsToPayAsYouGo.toString():\r\n case PlanCategory[PlanCategory.ContractConvertsToPayAsYouGo]:\r\n amt = p.recurring_services_in_minor_currency;\r\n break;\r\n case PlanCategory.DropIn.toString():\r\n case PlanCategory[PlanCategory.DropIn]:\r\n amt = p.non_recurring_services_in_minor_currency;\r\n break;\r\n case PlanCategory.PaidInFull.toString():\r\n case PlanCategory[PlanCategory.PaidInFull]:\r\n amt = p.non_recurring_services_in_minor_currency;\r\n break;\r\n case PlanCategory.PayAsYouGo.toString():\r\n case PlanCategory[PlanCategory.PayAsYouGo]:\r\n amt = p.recurring_services_in_minor_currency;\r\n break;\r\n }\r\n return amt;\r\n }\r\n\r\n SetBillingCycle() {\r\n let day: number = 0;\r\n let weekDays: number = (this.subscriptionStartdate.value).getDay();\r\n let days: any[] = [];\r\n\r\n if (this.billing_interval_type$.value.toString() == PlanIntervalType[PlanIntervalType.Month]) {\r\n let d: string[] = this.bill_cycle_day.split(',');\r\n day = new Date(this.subscriptionStartdate.value).getDate();\r\n\r\n if (this.billingCycleOption$.value.find((v: any) => v.isSignup == true)) {\r\n this.billingCycleOption$.value.find((v: any) => v.isSignup == true).value = day.toString();\r\n }\r\n }\r\n if (this.billing_interval_type$.value.toString() == PlanIntervalType[PlanIntervalType.Week]) {\r\n let d: string[] = this.bill_cycle_day.split(',');\r\n day = new Date(this.subscriptionStartdate.value).getDay();\r\n\r\n if (this.billingCycleOption$.value.find((v: any) => v.isSignup == true)) {\r\n this.billingCycleOption$.value.find((v: any) => v.isSignup == true).value = (weekDays + 1) * -1;\r\n }\r\n }\r\n }\r\n\r\n SetBillingCycle_init() {\r\n let day: number = 0;\r\n let weekDays: number = (this.subscriptionStartdate.value).getDay();\r\n let days: any[] = [];\r\n\r\n if (this.billing_interval_type$.value.toString() == PlanIntervalType[PlanIntervalType.Month]) {\r\n let d: string[] = this.bill_cycle_day.split(',');\r\n day = new Date(this.subscriptionStartdate.value).getDate();\r\n\r\n d.forEach((obj: string) => {\r\n if (parseInt(obj) == 0) {\r\n //if (d.indexOf(day.toString()) < 0) {\r\n this.translate.get('POS.MEMBERSHIP_ADDON').subscribe(translation => {\r\n days.push({ value: day, name: translation.SIGNUPDATE, isSignup: true });\r\n });\r\n //}\r\n }\r\n else\r\n days.push({ value: parseInt(obj), name: this.nth(parseInt(obj)) + ' of month', isSignup: false });\r\n });\r\n //let nearestDay = days.find((v: any) => v.value >= days) || null;\r\n\r\n let nearestDay: number = 0;\r\n let subDate = this.subscriptionStartdate.value;\r\n\r\n for (let i = 0; i < 32; i++) {\r\n days.forEach((obj: any) => {\r\n if (subDate.getDate() == parseInt(obj[\"value\"])) {\r\n nearestDay = days.find((v: any) => v.value == obj[\"value\"]) || null;\r\n }\r\n });\r\n if (nearestDay)\r\n break;\r\n subDate.setDate(subDate.getDate() + 1);\r\n }\r\n\r\n if (nearestDay)\r\n this.billingCycle.setValue(nearestDay);\r\n else\r\n this.billingCycle.setValue(days[0]);\r\n }\r\n\r\n if (this.billing_interval_type$.value.toString() == PlanIntervalType[PlanIntervalType.Week]) {\r\n let d: string[] = this.bill_cycle_day.split(',');\r\n day = new Date(this.subscriptionStartdate.value).getDay();\r\n\r\n d.forEach((obj: string) => {\r\n if (parseInt(obj) == 0) {\r\n //if (d.indexOf(((weekDays + 1) * -1).toString()) < 0)\r\n //days.push({ value: (weekDays + 1) * -1, name: this.weekDays[weekDays], isSignup: true });\r\n\r\n this.translate.get('POS.MEMBERSHIP_ADDON').subscribe(translation => {\r\n days.push({ value: (weekDays + 1) * -1, name: translation.SIGNUPDATE, isSignup: true });\r\n });\r\n }\r\n else\r\n days.push({ value: parseInt(obj), name: this.weekDays[(parseInt(obj) * -1) - 1], isSignup: false });\r\n });\r\n\r\n let nearestDay: number = 0;\r\n //let nearestDay = days.find((v: any) => v.value <= days) || null; \r\n\r\n let subDate = this.subscriptionStartdate.value;\r\n\r\n for (let i = 0; i < 8; i++) {\r\n days.forEach((obj: any) => {\r\n if ((subDate.getDay() + 1) * -1 == parseInt(obj[\"value\"])) {\r\n nearestDay = days.find((v: any) => v.value == obj[\"value\"]) || null;\r\n }\r\n });\r\n if (nearestDay)\r\n break;\r\n subDate.setDate(subDate.getDate() + 1);\r\n }\r\n\r\n if (nearestDay)\r\n this.billingCycle.setValue(nearestDay);\r\n else\r\n this.billingCycle.setValue(days[0]);\r\n }\r\n this.billingCycleOption$.next(days);\r\n }\r\n\r\n\r\n //#region\r\n\r\n allServiceNameHtml(oData: GetPlanMasterByIdResponse): string {\r\n let serviceCategoryName: string[] = [];\r\n let serviceCategory: any[] = [];\r\n oData.recurring_services.forEach((oService: PlanMasterServices) => {\r\n if (serviceCategoryName.indexOf(oService.name_primary_language) == -1) {\r\n serviceCategoryName.push(oService.name_primary_language);\r\n serviceCategory.push({ name: oService.name_primary_language, isBaseMembership: oService.is_base_membership });\r\n }\r\n });\r\n\r\n let str: string = `\r\n {{First}}\r\n {{Others}}\r\n `;\r\n\r\n let other: string = '';\r\n let first: string = '';\r\n for (let i = 0; i < serviceCategory.length; i++) {\r\n if (i == 0)\r\n first = serviceCategory[i].name + (serviceCategory[i].isBaseMembership ? ' Base Membership ' : '');\r\n else\r\n other = other + '
+ ' + serviceCategory[i].name + (serviceCategory[i].isBaseMembership ? ' Base Membership ' : '');\r\n }\r\n\r\n return str.replace('{{First}}', first).replace('{{Others}}', other);\r\n }\r\n\r\n\r\n bindPlanBreakUp(tenant_id: number, plan_id: number, client_id: number): void {\r\n let planBreakUpCalculationRequest: PlanBreakUpCalculationRequest = {\r\n client_id: this.clientId,\r\n coupon_code: '',\r\n is_coupon_code_applied: false,\r\n issue_date: this.formatDate(this.billDate.value),\r\n subscription_bill_cycle_day: (this.subscription_category$.value.toString() == PlanCategory.DropIn.toString()\r\n || this.subscription_category$.value == PlanCategory[PlanCategory.DropIn])\r\n ? this.subscriptionStartdate.value.getDate() : this.billingCycle.value.value,\r\n subscription_start_date: this.formatDate(this.subscriptionStartdate.value)\r\n }; \r\n this.plansubscriptionService.getPlanBreakUpCalculation(tenant_id, plan_id, planBreakUpCalculationRequest).subscribe({\r\n next: (_objResponse: PlanBreakUpCalculationResponse) => {\r\n this.errorMessages = [];\r\n\r\n if (_objResponse.plan_breakup_calculation != null) {\r\n this.planBreakUpCalculationResponse$.next(_objResponse);\r\n this.planBreakUpCalculation$.next(_objResponse.plan_breakup_calculation);\r\n this.overLappingSubscriptionSignUp$.next(_objResponse.overlapping_subscription);\r\n this.initializeDynamicControl(_objResponse.plan_breakup_calculation);\r\n }\r\n else {\r\n if (_objResponse.overlapping_subscription.overlapping_subscription_signup != null) {\r\n this.errorMessages.push(_objResponse.overlapping_subscription.overlapping_subscription_signup.overlapping_errormessage);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (_objResponse.overlapping_subscription.overlapping_client_subscription.new_date != null) {\r\n this.translate.get('POS.MEMBERSHIP_ADDON.OVERLAP_SUBSCRIPTION',\r\n {\r\n date:\r\n this.timeService.formatDate(_objResponse.overlapping_subscription.overlapping_client_subscription.new_date.subs_start_date, 'mediumdate')\r\n }).subscribe(translation => {\r\n this.errorMessages.push(translation);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n });\r\n }\r\n else {\r\n this.errorMessages.push(_objResponse.overlapping_subscription.overlapping_client_subscription.overlapping_errormessage);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorMessages = [];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n },\r\n complete: () => {\r\n\r\n }\r\n });\r\n }\r\n\r\n\r\n getChargesNetCost(taxableAmount: number, taxAmount: number): number {\r\n return (this.isInclusive) ? taxableAmount + taxAmount : taxableAmount;\r\n }\r\n\r\n getNetCost(taxableAmount: number, taxAmount: number): number {\r\n return (this.isInclusive) ? taxableAmount + taxAmount : taxableAmount;\r\n }\r\n\r\n nth(i: number) {\r\n var j = i % 10, k = i % 100;\r\n if (j == 1 && k != 11) { return i + \"st\"; }\r\n if (j == 2 && k != 12) { return i + \"nd\"; }\r\n if (j == 3 && k != 13) { return i + \"rd\"; }\r\n return i + \"th\";\r\n }\r\n\r\n\r\n initializeDynamicControl(_objResponse: PlanBreakUpCalculation) {\r\n\r\n this.frmFirstTimeBaseCostAmount = this.getTotalBaseCost(_objResponse.charging_today.service_first_charge.services);\r\n this.netCost$.subscribe((obj: number) => {\r\n this.firstTimeAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n })\r\n this.firstTimeTaxAmount = this.getTotalTaxAmount(_objResponse.charging_today.service_first_charge.services);\r\n\r\n\r\n this.frmNonRecurringBaseCostAmount = this.getTotalBaseCost(_objResponse.charging_today.service_non_recurring.services);\r\n\r\n this.nonRecurringNetCost$.subscribe((obj: number) => {\r\n this.nonRecurringAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n })\r\n // this.nonRecurringAmount = this.commonService.ConvertAmountFromMinorCurrency(parseInt(this.getTotal(_objResponse.charging_today.service_non_recurring.services)));\r\n this.nonRecurringTaxAmount = this.getTotalTaxAmount(_objResponse.charging_today.service_non_recurring.services);\r\n\r\n this.recurringMembershipBaseCost = this.getTotalBaseCost(_objResponse.charging_recurring.services);\r\n\r\n // //DEME\r\n // this.recurringMembershipAmount = \r\n // this.commonService.ConvertAmountFromMinorCurrency(parseInt(this.getTotal(_objResponse.charging_recurring.services)));\r\n\r\n // //DEME\r\n\r\n this.netCostRecurring$.subscribe((obj: number) => {\r\n this.recurringMembershipAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n })\r\n\r\n this.recurringMembershipTaxAmount = this.getTotalTaxAmount(_objResponse.charging_recurring.services);\r\n\r\n this.firstTimeDiscountFormControl.addValidators([Validators.required, Validators.min(0)]);\r\n this.nonRecurringDiscountFormControl.addValidators([Validators.required, Validators.min(0)]);\r\n\r\n\r\n let fg: FormGroup = new FormGroup({});\r\n _objResponse.charging_today.signup_charges.forEach((value: ChargeBreakUp, index: number) => {\r\n\r\n fg.addControl('chargesbasecost_' + value.id.toString(), new FormControl(value.amount_in_minor_currency, [Validators.required]));\r\n fg.addControl('charges_' + value.id.toString(), new FormControl(this.commonService.ConvertAmountFromMinorCurrency(this.getChargeNetCost(value)), [Validators.required]));\r\n fg.addControl('discount_' + value.id.toString(), new FormControl(value.discount_amt_in_minor_currency, Validators.required));\r\n\r\n });\r\n this.charges.push(fg);\r\n\r\n }\r\n\r\n calculateDiscount(basePriceCtrl: FormControl, amtCtrl: FormControl, disCtrl: FormControl) {\r\n\r\n let lineItemChargeAmount: number = 0;\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(basePriceCtrl.value);\r\n if (\r\n lineItemChargeAmount - (lineItemChargeAmount * this.single_staff_discount / 100) <= amtCtrl.value\r\n && lineItemChargeAmount >= amtCtrl.value\r\n ) {\r\n disCtrl.setValue(100 - ((amtCtrl.value * 100) / lineItemChargeAmount)); // set discount\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n //await this.timeout(1000);\r\n this.userDiscountLimit = this.single_staff_discount;\r\n amtCtrl.setValue(lineItemChargeAmount);\r\n disCtrl.setValue(0);\r\n this.inValidDiscount = true\r\n }\r\n }\r\n\r\n\r\n calculateAmount(basePriceCtrl: FormControl, amtCtrl: FormControl, disCtrl: FormControl) {\r\n\r\n let lineItemChargeAmount: number = basePriceCtrl.value;\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(lineItemChargeAmount);\r\n let netValue = lineItemChargeAmount - (lineItemChargeAmount * disCtrl.value / 100);\r\n if (lineItemChargeAmount - (lineItemChargeAmount * this.single_staff_discount / 100) <= netValue) {\r\n amtCtrl.setValue(netValue);\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n setTimeout((obj: any) => {\r\n this.userDiscountLimit = this.single_staff_discount;\r\n\r\n amtCtrl.setValue(lineItemChargeAmount);\r\n disCtrl.setValue(0);\r\n this.inValidDiscount = false\r\n }, 10)\r\n }\r\n }\r\n\r\n calculateChargeDiscount(lineItemChargeAmount: number, amtCtrl: string, disCtrl: string) {\r\n\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(lineItemChargeAmount);\r\n\r\n let amtControl: any = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup).controls[amtCtrl];\r\n let disControl: any = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup).controls[disCtrl];\r\n\r\n if (lineItemChargeAmount - (lineItemChargeAmount * this.single_staff_discount / 100) <= amtControl.value\r\n && lineItemChargeAmount >= amtControl.value) {\r\n disControl.setValue(100 - ((amtControl.value * 100) / lineItemChargeAmount)); // set discount\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n setTimeout((obj: any) => {\r\n this.userDiscountLimit = this.single_staff_discount;\r\n\r\n amtControl.setValue(lineItemChargeAmount);\r\n disControl.setValue(0);\r\n this.inValidDiscount = false\r\n\r\n }, 10)\r\n }\r\n }\r\n\r\n calculateChargeAmount(lineItemChargeAmount: number, amtCtrl: string, disCtrl: string) {\r\n\r\n let amtControl: any = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup).controls[amtCtrl];\r\n let disControl: any = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup).controls[disCtrl];\r\n\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(lineItemChargeAmount);\r\n let netValue = lineItemChargeAmount - (lineItemChargeAmount * disControl.value / 100);\r\n\r\n if (lineItemChargeAmount - (lineItemChargeAmount * this.single_staff_discount / 100) <= netValue) {\r\n amtControl.setValue(netValue);\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n setTimeout((obj: any) => {\r\n this.userDiscountLimit = this.single_staff_discount;\r\n amtControl.setValue(lineItemChargeAmount);\r\n disControl.setValue(0);\r\n this.inValidDiscount = false\r\n\r\n }, 10)\r\n }\r\n }\r\n\r\n calculateRecurringAmount(basePriceCtrl: FormControl, amtCtrl: FormControl, disCtrl: FormControl) {\r\n\r\n let lineItemChargeAmount: number = basePriceCtrl.value;\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(lineItemChargeAmount);\r\n let netValue = lineItemChargeAmount - (lineItemChargeAmount * disCtrl.value / 100);\r\n if (lineItemChargeAmount - (lineItemChargeAmount * this.recurring_staff_discount / 100) <= netValue) {\r\n amtCtrl.setValue(netValue);\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n setTimeout((obj: any) => {\r\n this.userDiscountLimit = this.recurring_staff_discount;\r\n amtCtrl.setValue(lineItemChargeAmount);\r\n disCtrl.setValue(0);\r\n this.inValidDiscount = false\r\n }, 10)\r\n }\r\n }\r\n\r\n calculateRecurringDiscount(basePriceCtrl: FormControl, amtCtrl: FormControl, disCtrl: FormControl) {\r\n\r\n let lineItemChargeAmount: number = 0;\r\n lineItemChargeAmount = this.commonService.ConvertAmountFromMinorCurrency(basePriceCtrl.value);\r\n if (\r\n lineItemChargeAmount - (lineItemChargeAmount * this.recurring_staff_discount / 100) <= amtCtrl.value\r\n && lineItemChargeAmount >= amtCtrl.value\r\n ) {\r\n disCtrl.setValue(100 - ((amtCtrl.value * 100) / lineItemChargeAmount)); // set discount\r\n this.inValidDiscount = true;\r\n }\r\n else {\r\n setTimeout((obj: any) => {\r\n this.userDiscountLimit = this.recurring_staff_discount;\r\n // await this.timeout(1000);\r\n amtCtrl.setValue(lineItemChargeAmount);\r\n disCtrl.setValue(0);\r\n this.inValidDiscount = true\r\n }, 10)\r\n }\r\n }\r\n\r\n get charges(): FormArray { return this.fgProducts.get('charges') as FormArray; }\r\n\r\n ordinal_suffix_of(i: any) {\r\n var j = i % 10,\r\n k = i % 100;\r\n if (j == 1 && k != 11) {\r\n return i + \"st\";\r\n }\r\n if (j == 2 && k != 12) {\r\n return i + \"nd\";\r\n }\r\n if (j == 3 && k != 13) {\r\n return i + \"rd\";\r\n }\r\n return i + \"th\";\r\n }\r\n\r\n getTotalBaseCost(serviceBreakUp: ServiceBreakUp[]): number {\r\n return serviceBreakUp?.reduce(function (acc, obj) { return acc + obj.base_cost_in_minor_currency; }, 0);\r\n }\r\n\r\n getTotal(serviceBreakUp: ServiceBreakUp[]): string {\r\n return serviceBreakUp.reduce(function (acc, obj) { return acc + obj.taxable_cost_in_minor_currency; }, 0).toString();\r\n }\r\n\r\n getTotalTaxAmount(serviceBreakUp: ServiceBreakUp[]): number {\r\n let taxAmount = 0;\r\n serviceBreakUp?.forEach((value: ServiceBreakUp, index: number) => {\r\n if (value.tax)\r\n taxAmount = taxAmount + (value.tax.reduce(function (acc, obj) { return acc + obj.amt_in_minor_currency; }, 0))\r\n })\r\n\r\n return taxAmount;\r\n }\r\n\r\n getTaxAmount(tax: TaxLineItemBreakUp[]): number {\r\n let taxAmount = 0;\r\n if (tax)\r\n taxAmount = tax.reduce(function (acc, obj) { return acc + obj.amt_in_minor_currency; }, 0)\r\n return taxAmount;\r\n }\r\n\r\n getTotalChargeTaxAmount(charge: ChargeBreakUp[]): number {\r\n let taxAmount = 0;\r\n charge.forEach((value: ChargeBreakUp, index: number) => {\r\n taxAmount = taxAmount + (value.tax.reduce(function (acc, obj) { return acc + obj.amt_in_minor_currency; }, 0))\r\n })\r\n return taxAmount;\r\n }\r\n\r\n getConcatStringfromArray(serviceBreakUp: PlanMasterServices[]): string {\r\n let cats = serviceBreakUp?.map((item) => {\r\n return item.name_primary_language;\r\n }).join(\"+ \");\r\n return cats;\r\n }\r\n\r\n StaffDiscountCancel() {\r\n this.inValidDiscount = true;\r\n this.planBreakUpCalculation$.subscribe((_objResponse: PlanBreakUpCalculation | null) => {\r\n if (_objResponse) {\r\n this.netCost$.subscribe((obj: number) => {\r\n this.firstTimeAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n if (this.getTotalBaseCost(_objResponse.charging_today.service_first_charge.services) - this.commonService.ConvertMinorCurrencyFromAmount(this.firstTimeAmount) == 0) {\r\n this.firstTimeDiscount = 0;\r\n }\r\n else {\r\n this.firstTimeDiscount = 100 - this.commonService.ConvertMinorCurrencyFromAmount(this.firstTimeAmount) * 100 / this.getTotalBaseCost(_objResponse.charging_today.service_first_charge.services);\r\n }\r\n })\r\n\r\n this.nonRecurringNetCost$.subscribe((obj: number) => {\r\n this.nonRecurringAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n\r\n if (this.getTotalBaseCost(_objResponse.charging_today.service_non_recurring.services) - this.commonService.ConvertMinorCurrencyFromAmount(this.nonRecurringAmount) == 0) {\r\n this.nonRecurringDiscount = 0;\r\n }\r\n else {\r\n this.nonRecurringDiscount = 100 - this.commonService.ConvertMinorCurrencyFromAmount(this.nonRecurringAmount) * 100 / this.getTotalBaseCost(_objResponse.charging_today.service_non_recurring.services);\r\n }\r\n })\r\n\r\n this.netCostRecurring$.subscribe((obj: number) => {\r\n this.recurringMembershipAmount = this.commonService.ConvertAmountFromMinorCurrency(obj);\r\n\r\n if (this.getTotalBaseCost(_objResponse.charging_recurring.services) - this.commonService.ConvertMinorCurrencyFromAmount(this.recurringMembershipAmount) == 0) {\r\n this.recurringMembershipDiscount = 0;\r\n }\r\n else {\r\n this.recurringMembershipDiscount = 100 - this.commonService.ConvertMinorCurrencyFromAmount(this.recurringMembershipAmount) * 100 / this.getTotalBaseCost(_objResponse.charging_recurring.services);\r\n }\r\n })\r\n\r\n let frmCharges: FormGroup = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup);\r\n let controlIds: Array = [];\r\n\r\n Object.keys(frmCharges.controls).forEach(key => {\r\n if (!controlIds.includes(parseInt(key.substring(key.indexOf('_') + 1))))\r\n controlIds.push(parseInt(key.substring(key.indexOf('_') + 1)));\r\n });\r\n\r\n let fg: FormGroup = new FormGroup({});\r\n _objResponse.charging_today.signup_charges.forEach((value: ChargeBreakUp, index: number) => {\r\n controlIds.forEach(val => {\r\n if (value.id.toString() == val.toString()) {\r\n\r\n frmCharges.controls['charges_' + val.toString()].setValue(\r\n this.commonService.ConvertAmountFromMinorCurrency(this.getChargeNetCost(value)));\r\n if (frmCharges.controls['chargesbasecost_' + val.toString()].value - this.getChargeNetCost(value) == 0) {\r\n frmCharges.controls['discount_' + val.toString()].setValue(0);\r\n }\r\n else {\r\n frmCharges.controls['discount_' + val.toString()].setValue(\r\n 100 - (this.getChargeNetCost(value) * 100 / frmCharges.controls['chargesbasecost_' + val.toString()].value));\r\n }\r\n }\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n StaffDiscountBreakup() {\r\n let staffDiscountCalculationRequest = {} as StaffDiscountCalculationRequest;\r\n let staffDiscountChargeRecurring = {} as StaffDiscountChargeRecurring;\r\n let staffDiscountChargingTodayRequest = {} as StaffDiscountChargingTodayRequest;\r\n let staffDiscountSignUpChargeRequest: StaffDiscountSignUpChargeRequest[] = [];\r\n\r\n staffDiscountChargingTodayRequest.service_first_charge = {} as StaffDiscountServiceFirstChargeRequest;\r\n staffDiscountChargingTodayRequest.service_non_recurring = {} as StaffDiscountServiceNonRecurringRequest;\r\n staffDiscountChargeRecurring.service_recurring = {} as StaffDiscountServiceRecurringRequest;\r\n staffDiscountCalculationRequest.client_id = this.clientId;\r\n staffDiscountCalculationRequest.subscription_bill_cycle_day = this.billingCycle.value.value;\r\n staffDiscountCalculationRequest.issue_date = this.billDate.value;\r\n staffDiscountCalculationRequest.subscription_start_date = this.subscriptionStartdate.value;\r\n staffDiscountChargingTodayRequest.service_first_charge.discount_amt_in_minor_currency = 0;\r\n staffDiscountChargingTodayRequest.service_non_recurring.discount_amt_in_minor_currency = 0;\r\n staffDiscountChargeRecurring.service_recurring.discount_amt_in_minor_currency = 0;\r\n\r\n if (this.frmFirstTimeBaseCostAmount)\r\n staffDiscountChargingTodayRequest.service_first_charge.discount_amt_in_minor_currency =\r\n this.frmFirstTimeBaseCostAmount - Math.round(this.commonService.ConvertMinorCurrencyFromAmount(this.firstTimeAmount));\r\n\r\n if (this.frmNonRecurringBaseCostAmount)\r\n staffDiscountChargingTodayRequest.service_non_recurring.discount_amt_in_minor_currency =\r\n this.frmNonRecurringBaseCostAmount - Math.round(this.commonService.ConvertMinorCurrencyFromAmount(this.nonRecurringAmount));\r\n\r\n if (this.recurringMembershipBaseCost)\r\n staffDiscountChargeRecurring.service_recurring.discount_amt_in_minor_currency =\r\n this.recurringMembershipBaseCost - Math.round(this.commonService.ConvertMinorCurrencyFromAmount(this.recurringMembershipAmount));\r\n\r\n staffDiscountCalculationRequest.charging_recurring = staffDiscountChargeRecurring;\r\n\r\n let frmCharges: FormGroup = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup);\r\n let controlIds: Array = [];\r\n\r\n //get charges control id.\r\n Object.keys(frmCharges.controls).forEach(key => {\r\n if (!controlIds.includes(parseInt(key.substring(key.indexOf('_') + 1))))\r\n controlIds.push(parseInt(key.substring(key.indexOf('_') + 1)));\r\n });\r\n\r\n controlIds.forEach(val => {\r\n let staffDiscountSignupCharge = {} as StaffDiscountSignUpChargeRequest;\r\n staffDiscountSignupCharge.id = val;\r\n staffDiscountSignupCharge.discount_amt_in_minor_currency =\r\n frmCharges.controls['chargesbasecost_' + val.toString()].value\r\n - Math.round(this.commonService.ConvertMinorCurrencyFromAmount(frmCharges.controls['charges_' + val.toString()].value));\r\n\r\n staffDiscountSignUpChargeRequest.push(staffDiscountSignupCharge);\r\n\r\n //Set Value.\r\n staffDiscountChargingTodayRequest.signup_charges = staffDiscountSignUpChargeRequest;\r\n staffDiscountCalculationRequest.charging_today = staffDiscountChargingTodayRequest;\r\n\r\n });\r\n\r\n this.plansubscriptionService.getStaffDiscountCalculation(this.tenantId, this.subscriptionPlanId, staffDiscountCalculationRequest).subscribe({\r\n next: (_objResponse: PlanBreakUpCalculationResponse) => {\r\n console.log(_objResponse);\r\n this.planBreakUpCalculationResponse$.next(_objResponse);\r\n this.planBreakUpCalculation$.next(_objResponse.plan_breakup_calculation);\r\n this.overLappingSubscriptionSignUp$.next(_objResponse.overlapping_subscription);\r\n\r\n }\r\n });\r\n\r\n //get value and store it in the object\r\n //get MonthlyFees\r\n //get MonthlyFees\r\n\r\n\r\n }\r\n\r\n RemoveDiscount(): void {\r\n\r\n let staffDiscountCalculationRequest = {} as StaffDiscountCalculationRequest;\r\n\r\n let staffDiscountChargeRecurring = {} as StaffDiscountChargeRecurring;\r\n let staffDiscountChargingTodayRequest = {} as StaffDiscountChargingTodayRequest;\r\n let staffDiscountSignUpChargeRequest: StaffDiscountSignUpChargeRequest[] = [];\r\n\r\n staffDiscountChargingTodayRequest.service_first_charge = {} as StaffDiscountServiceFirstChargeRequest;\r\n staffDiscountChargingTodayRequest.service_non_recurring = {} as StaffDiscountServiceNonRecurringRequest;\r\n staffDiscountChargeRecurring.service_recurring = {} as StaffDiscountServiceRecurringRequest;\r\n\r\n\r\n staffDiscountCalculationRequest.client_id = this.clientId;\r\n staffDiscountCalculationRequest.subscription_bill_cycle_day = this.billingCycle.value.value;\r\n staffDiscountCalculationRequest.issue_date = this.billDate.value;\r\n staffDiscountCalculationRequest.subscription_start_date = this.subscriptionStartdate.value;\r\n\r\n staffDiscountChargingTodayRequest.service_first_charge.discount_amt_in_minor_currency = 0;\r\n staffDiscountChargingTodayRequest.service_non_recurring.discount_amt_in_minor_currency = 0;\r\n staffDiscountChargeRecurring.service_recurring.discount_amt_in_minor_currency = 0;\r\n staffDiscountCalculationRequest.charging_recurring = staffDiscountChargeRecurring;\r\n\r\n let frmCharges: FormGroup = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup);\r\n let controlIds: Array = [];\r\n\r\n //get charges control id.\r\n Object.keys(frmCharges.controls).forEach(key => {\r\n if (!controlIds.includes(parseInt(key.substring(key.indexOf('_') + 1))))\r\n controlIds.push(parseInt(key.substring(key.indexOf('_') + 1)));\r\n });\r\n\r\n controlIds.forEach(val => {\r\n let staffDiscountSignupCharge = {} as StaffDiscountSignUpChargeRequest;\r\n staffDiscountSignupCharge.id = val;\r\n staffDiscountSignupCharge.discount_amt_in_minor_currency = 0;\r\n staffDiscountSignUpChargeRequest.push(staffDiscountSignupCharge);\r\n //Set Value.\r\n staffDiscountChargingTodayRequest.signup_charges = staffDiscountSignUpChargeRequest;\r\n staffDiscountCalculationRequest.charging_today = staffDiscountChargingTodayRequest;\r\n });\r\n\r\n this.plansubscriptionService.getStaffDiscountCalculation(this.tenantId, this.subscriptionPlanId, staffDiscountCalculationRequest).subscribe({\r\n next: (_objResponse: PlanBreakUpCalculationResponse) => {\r\n console.log(_objResponse);\r\n this.planBreakUpCalculationResponse$.next(_objResponse);\r\n this.planBreakUpCalculation$.next(_objResponse.plan_breakup_calculation);\r\n this.overLappingSubscriptionSignUp$.next(_objResponse.overlapping_subscription);\r\n\r\n this.firstTimeDiscount = 0;\r\n this.nonRecurringDiscount = 0;\r\n this.recurringMembershipDiscount = 0;\r\n\r\n let frmCharges: FormGroup = (((this.fgProducts.controls.charges as FormArray).controls)[0] as FormGroup);\r\n\r\n _objResponse.plan_breakup_calculation.charging_today.signup_charges.forEach((value: ChargeBreakUp, index: number) => {\r\n\r\n frmCharges.controls['chargesbasecost_' + value.id.toString()].setValue(value.amount_in_minor_currency);\r\n frmCharges.controls['charges_' + value.id.toString()].setValue(this.commonService.ConvertAmountFromMinorCurrency(this.getChargeNetCost(value)));\r\n frmCharges.controls['discount_' + value.id.toString()].setValue(value.discount_amt_in_minor_currency);\r\n\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n GetTaxMode(tenant_id: number) {\r\n this.paymentModeMaster$ = this.paymentModeService.listPaymentMode(tenant_id)\r\n this.paymentModeMaster$.subscribe({\r\n next: (listpaymentMode: ListPaymentModeMastersResponse) => {\r\n return listpaymentMode;\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n // this.errMsg = error;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n\r\n async GetRevisedPrice_OnStartDateChange() {\r\n this.fgProducts.controls.charges = new FormArray([]);\r\n this.SetBillingCycle();\r\n this.bindPlanBreakUp(this.tenantId, this.subscriptionPlanId, this.clientId);\r\n }\r\n\r\n async GetRevisedPrice_OnCycleChange() {\r\n this.fgProducts.controls.charges = new FormArray([]);\r\n ////this.SetBillingCycle();\r\n this.bindPlanBreakUp(this.tenantId, this.subscriptionPlanId, this.clientId);\r\n }\r\n\r\n\r\n //#region \"getproperty\"\r\n get planList() {\r\n return this.fg.controls.ddlplanSubscriptionList as FormControl;\r\n }\r\n\r\n get billingCycle() {\r\n return this.fg.controls.ddlBillingCycle as FormControl;\r\n }\r\n\r\n get billCycle() {\r\n return this.billingCycle.value;\r\n }\r\n\r\n get billingOwner() {\r\n return this.fg.controls.billingOwner as FormControl;\r\n }\r\n\r\n get billDate() {\r\n return this.fg.controls.billdata as FormControl;\r\n }\r\n\r\n get subscriptionStartdate() {\r\n return this.fg.controls.subscriptionstartdate as FormControl;\r\n }\r\n\r\n //#endregion \"getproperty\"\r\n\r\n\r\n // #region \"TotalCost\"\r\n\r\n\r\n get frmgetRecurringAmount(): number {\r\n return this.frmFirstTimeBaseCostAmountFormControl.value as number;\r\n }\r\n\r\n // #endregion \"TotalCost\"\r\n\r\n\r\n\r\n //#region BaseCost\r\n get frmFirstTimeBaseCostAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmFirstTimeBaseCostAmt as FormControl;\r\n }\r\n\r\n get frmFirstTimeBaseCostAmount(): number {\r\n return this.frmFirstTimeBaseCostAmountFormControl.value as number;\r\n }\r\n\r\n set frmFirstTimeBaseCostAmount(val: number) {\r\n this.frmFirstTimeBaseCostAmountFormControl.setValue(val);\r\n }\r\n\r\n get frmNonRecurringBaseCostAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmNonRecurringBaseCostAmt as FormControl;\r\n }\r\n\r\n get frmNonRecurringBaseCostAmount(): number {\r\n return this.frmNonRecurringBaseCostAmountFormControl.value as number;\r\n }\r\n\r\n set frmNonRecurringBaseCostAmount(val: number) {\r\n this.frmNonRecurringBaseCostAmountFormControl.setValue(val);\r\n }\r\n\r\n //#region BaseCost\r\n\r\n get recurringCost$(): Observable {\r\n let oThis = this;\r\n return this.planBreakUpCalculation$.pipe(\r\n map((value: PlanBreakUpCalculation | null) => {\r\n if (value) {\r\n return value.charging_recurring.services.reduce(function (acc, obj) {\r\n return acc + obj.taxable_cost_in_minor_currency + oThis.getTaxAmount(obj.tax);\r\n }, 0);\r\n }\r\n else\r\n return 0;\r\n })\r\n );\r\n }\r\n\r\n isPlanBehaviourRecurring(planCategory: string): boolean {\r\n return (\r\n planCategory == PlanCategory.Contract.toString()\r\n || planCategory == PlanCategory[PlanCategory.Contract]\r\n || planCategory == PlanCategory.ContractConvertsToPayAsYouGo.toString()\r\n || planCategory == PlanCategory[PlanCategory.ContractConvertsToPayAsYouGo]\r\n || planCategory == PlanCategory.PayAsYouGo.toString()\r\n || planCategory == PlanCategory[PlanCategory.PayAsYouGo]\r\n );\r\n }\r\n\r\n get netCost$(): Observable {\r\n let oThis = this;\r\n return this.planBreakUpCalculationResponse$.pipe(\r\n map((value: PlanBreakUpCalculationResponse) => {\r\n if (value) {\r\n return value.plan_breakup_calculation.charging_today.service_first_charge.services?.reduce(function (acc, obj) {\r\n return acc + oThis.getNetCost(obj.taxable_cost_in_minor_currency, oThis.getTaxAmount(obj.tax));\r\n }, 0);\r\n }\r\n else {\r\n return 0;\r\n }\r\n })\r\n );\r\n }\r\n\r\n get nonRecurringNetCost$(): Observable {\r\n let oThis = this;\r\n return this.planBreakUpCalculationResponse$.pipe(\r\n map((value: PlanBreakUpCalculationResponse) => {\r\n if (value) {\r\n return value.plan_breakup_calculation.charging_today.service_non_recurring.services.reduce(function (acc, obj) {\r\n return acc + oThis.getNetCost(obj.taxable_cost_in_minor_currency, oThis.getTaxAmount(obj.tax));\r\n }, 0);\r\n }\r\n else\r\n return 0;\r\n })\r\n );\r\n }\r\n\r\n getChargeNetCost(charge: ChargeBreakUp): number {\r\n return this.getNetCost(charge.taxable_cost_in_minor_currency, this.getTaxAmount(charge.tax));\r\n }\r\n\r\n get netCostRecurring$(): Observable {\r\n let oThis = this;\r\n return this.planBreakUpCalculationResponse$.pipe(\r\n map((value: PlanBreakUpCalculationResponse) => {\r\n if (value) {\r\n return value.plan_breakup_calculation.charging_recurring.services.reduce(function (acc, obj) {\r\n return acc + oThis.getNetCost(obj.taxable_cost_in_minor_currency, oThis.getTaxAmount(obj.tax));\r\n }, 0);\r\n }\r\n else\r\n return 0;\r\n })\r\n );\r\n }\r\n\r\n get baseCostRecurring$(): Observable {\r\n let oThis = this;\r\n return this.planBreakUpCalculationResponse$.pipe(\r\n map((value: PlanBreakUpCalculationResponse) => {\r\n if (value) {\r\n return value.plan_breakup_calculation.charging_recurring.services.reduce(function (acc, obj) {\r\n return acc + oThis.getNetCost(obj.base_cost_in_minor_currency, oThis.getTaxAmount(obj.tax));\r\n }, 0);\r\n }\r\n else\r\n return 0;\r\n })\r\n );\r\n }\r\n\r\n\r\n\r\n get totalOneTimeCost$(): Observable {\r\n return this.planBreakUpCalculationResponse$.pipe(\r\n map((value: PlanBreakUpCalculationResponse) => {\r\n if (value) {\r\n let firstChargeCost: number = 0\r\n let firstChargeTaxCost: number = 0\r\n let nonRecurringChargeCost: number = 0\r\n let nonRecurringTaxChargeCost: number = 0\r\n let chargeCost: number = 0\r\n let chargeTaxCost: number = 0\r\n if (value && value.plan_breakup_calculation) {\r\n if (value.plan_breakup_calculation.charging_today.service_first_charge.services) {\r\n firstChargeCost = value.plan_breakup_calculation.charging_today.service_first_charge.services.reduce(function (acc, obj) {\r\n return acc + obj.taxable_cost_in_minor_currency;\r\n }, 0);\r\n }\r\n\r\n if (value.plan_breakup_calculation.charging_today.service_first_charge.services) {\r\n firstChargeTaxCost = this.getTotalTaxAmount(value.plan_breakup_calculation.charging_today.service_first_charge.services);\r\n }\r\n\r\n nonRecurringChargeCost = value.plan_breakup_calculation.charging_today.service_non_recurring.services.reduce(function (acc, obj) {\r\n return acc + obj.taxable_cost_in_minor_currency;\r\n }, 0);\r\n\r\n nonRecurringTaxChargeCost = this.getTotalTaxAmount(value.plan_breakup_calculation.charging_today.service_non_recurring.services);\r\n\r\n chargeCost = value.plan_breakup_calculation.charging_today.signup_charges.reduce(function (acc, obj) {\r\n return acc + obj.taxable_cost_in_minor_currency;\r\n }, 0);\r\n\r\n chargeTaxCost = this.getTotalChargeTaxAmount(value.plan_breakup_calculation.charging_today.signup_charges)\r\n\r\n }\r\n return firstChargeCost + firstChargeTaxCost + nonRecurringChargeCost + nonRecurringTaxChargeCost + chargeCost + chargeTaxCost;\r\n }\r\n else\r\n return 0;\r\n })\r\n );\r\n }\r\n\r\n\r\n\r\n //#region firstTimeAmount\r\n get firstTimeAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmFirstTimeAmt as FormControl;\r\n }\r\n\r\n get firstTimeAmount(): number {\r\n return this.firstTimeAmountFormControl.value as number;\r\n }\r\n\r\n set firstTimeAmount(val: number) {\r\n this.firstTimeAmountFormControl.setValue(val);\r\n }\r\n\r\n get firstTimeTaxAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmFirstTimeTaxAmt as FormControl;\r\n }\r\n\r\n get firstTimeTaxAmount(): number {\r\n return this.firstTimeTaxAmountFormControl.value as number;\r\n }\r\n\r\n set firstTimeTaxAmount(val: number) {\r\n this.firstTimeTaxAmountFormControl.setValue(val);\r\n }\r\n\r\n get firstTimeDiscountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmFirstTimeDis as FormControl;\r\n }\r\n\r\n get firstTimeDiscount(): number {\r\n return this.firstTimeDiscountFormControl.value as number;\r\n }\r\n\r\n set firstTimeDiscount(val: number) {\r\n this.firstTimeDiscountFormControl.setValue(val);\r\n }\r\n\r\n //#endregion firstTimeAmount\r\n\r\n //#region nonRecurringAmount\r\n\r\n get nonRecurringAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmNonRecurringAmt as FormControl;\r\n }\r\n\r\n get nonRecurringAmount(): number {\r\n return this.nonRecurringAmountFormControl.value as number;\r\n }\r\n\r\n set nonRecurringAmount(val: number) {\r\n this.nonRecurringAmountFormControl.setValue(val);\r\n }\r\n\r\n get nonRecurringTaxAmountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmNonRecurringTaxAmt as FormControl;\r\n }\r\n\r\n get nonRecurringTaxAmount(): number {\r\n return this.nonRecurringTaxAmountFormControl.value as number;\r\n }\r\n\r\n set nonRecurringTaxAmount(val: number) {\r\n this.nonRecurringTaxAmountFormControl.setValue(val);\r\n }\r\n\r\n get nonRecurringDiscountFormControl(): FormControl {\r\n return this.fgProducts.controls.frmNonRecurringDis as FormControl;\r\n }\r\n\r\n get nonRecurringDiscount(): number {\r\n return this.nonRecurringDiscountFormControl.value as number;\r\n }\r\n\r\n set nonRecurringDiscount(val: number) {\r\n this.nonRecurringDiscountFormControl.setValue(val);\r\n }\r\n\r\n //#endregion nonRecurringAmount\r\n\r\n //#region RecurringAmount\r\n\r\n get recurringMembershipBaseCostFormControl(): FormControl {\r\n return this.fgProductsRecurring.controls.frmRecurringMembershipBaseCostAmt as FormControl;\r\n }\r\n\r\n get recurringMembershipBaseCost(): number {\r\n return this.recurringMembershipBaseCostFormControl.value as number;\r\n }\r\n\r\n set recurringMembershipBaseCost(val: number) {\r\n this.recurringMembershipBaseCostFormControl.setValue(val);\r\n }\r\n\r\n get recurringMembershipFormControl(): FormControl {\r\n return this.fgProductsRecurring.controls.frmRecurringMembershipAmt as FormControl;\r\n }\r\n\r\n get recurringMembershipAmount(): number {\r\n return this.recurringMembershipFormControl.value as number;\r\n }\r\n\r\n set recurringMembershipAmount(val: number) {\r\n\r\n this.recurringMembershipFormControl.setValue(val);\r\n }\r\n\r\n get recurringMembershipDiscountFormControl(): FormControl {\r\n return this.fgProductsRecurring.controls.frmRecurringMembershipDis as FormControl;\r\n }\r\n\r\n get recurringMembershipDiscount(): number {\r\n return this.recurringMembershipDiscountFormControl.value as number;\r\n }\r\n\r\n set recurringMembershipDiscount(val: number) {\r\n this.recurringMembershipDiscountFormControl.setValue(val);\r\n }\r\n\r\n get recurringMembershipTaxAmountFormControl(): FormControl {\r\n return this.fgProductsRecurring.controls.frmRecurringMembershipTaxAmt as FormControl;\r\n }\r\n\r\n get recurringMembershipTaxAmount(): number {\r\n return this.recurringMembershipTaxAmountFormControl.value as number;\r\n }\r\n\r\n set recurringMembershipTaxAmount(val: number) {\r\n this.recurringMembershipTaxAmountFormControl.setValue(val);\r\n }\r\n\r\n getfrmCash_Amount() {\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.frmCash_Amount);\r\n }\r\n\r\n getfrmCheque_Amount() {\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.frmCheque_Amount);\r\n }\r\n\r\n getfrmUpi_Amount() {\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.frmUpi_Amount);\r\n }\r\n\r\n\r\n getfrmCC_Amount() {\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.frmCC_Amount);\r\n }\r\n\r\n getfrmDC_Amount() {\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.frmDC_Amount);\r\n }\r\n\r\n changePaymentMode(evt: any) {\r\n console.log(\"event\", evt);\r\n }\r\n\r\n //#endregion nonRecurringAmount\r\n\r\n\r\n //#region \"Payment\"\r\n\r\n //#region Dynamic Control\r\n\r\n get otherPaymentMethodFormControl(): FormControl {\r\n return this.fgPayment.controls.otherPaymentMode as FormControl;\r\n }\r\n\r\n get otherPaymentMethod(): string {\r\n console.log(this.otherPaymentMethodFormControl.value);\r\n return this.otherPaymentMethodFormControl.value as string;\r\n }\r\n\r\n set otherPaymentMethod(val: string) {\r\n this.otherPaymentMethodFormControl.setValue(val);\r\n }\r\n\r\n //#endregion Dynamic Control\r\n\r\n //#region Credit Card\r\n\r\n get frmCC_NumberFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCCNumber as FormControl;\r\n }\r\n\r\n get frmCC_Number(): number {\r\n return this.frmCC_NumberFormControl.value as number;\r\n }\r\n\r\n set frmCC_Number(val: number) {\r\n this.frmCC_NumberFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmCC_NetworkTypeFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCCNetworkType as FormControl;\r\n }\r\n\r\n get frmCC_NetworkType(): string {\r\n return this.frmCC_NetworkTypeFormControl.value as string;\r\n }\r\n\r\n set frmCC_NetworkType(val: string) {\r\n this.frmCC_NetworkTypeFormControl.setValue(val);\r\n }\r\n\r\n get frmCC_CardExpiryFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCCExpiryDate as FormControl;\r\n }\r\n\r\n get frmCC_ExpiryDate(): Date {\r\n return this.frmCC_CardExpiryFormControl.value as Date;\r\n }\r\n\r\n set frmCC_ExpiryDate(val: Date) {\r\n this.frmCC_CardExpiryFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmCC_AuthCodeFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCCAuthCode as FormControl;\r\n }\r\n\r\n get frmCC_AuthCode(): number {\r\n return this.frmCC_AuthCodeFormControl.value as number;\r\n }\r\n\r\n set frmCC_AuthCode(val: number) {\r\n this.frmCC_AuthCodeFormControl.setValue(val);\r\n }\r\n\r\n get frmCC_AmountFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCCAmt as FormControl;\r\n }\r\n\r\n get frmCC_Amount(): number {\r\n return this.frmCC_AmountFormControl.value as number;\r\n }\r\n\r\n set frmCC_Amount(val: number) {\r\n this.frmCC_AmountFormControl.setValue(val);\r\n }\r\n //#endregion Credit Card\r\n\r\n //#region Debit Card\r\n get frmDC_NumberFormControl(): FormControl {\r\n return this.fgPayment.controls.frmDCNumber as FormControl;\r\n }\r\n\r\n get frmDC_Number(): number {\r\n return this.frmDC_NumberFormControl.value as number;\r\n }\r\n\r\n set frmDC_Number(val: number) {\r\n this.frmDC_NumberFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmDC_NetworkTypeFormControl(): FormControl {\r\n return this.fgPayment.controls.frmDCNetworkType as FormControl;\r\n }\r\n\r\n get frmDC_NetworkType(): string {\r\n return this.frmDC_NetworkTypeFormControl.value as string;\r\n }\r\n\r\n set frmDC_NetworkType(val: string) {\r\n this.frmDC_NetworkTypeFormControl.setValue(val);\r\n }\r\n\r\n get frmDC_CardExpiryFormControl(): FormControl {\r\n return this.fgPayment.controls.frmDCExpiryDate as FormControl;\r\n }\r\n\r\n get frmDC_ExpiryDate(): Date {\r\n return this.frmDC_NetworkTypeFormControl.value as Date;\r\n }\r\n\r\n set frmDC_ExpiryDate(val: Date) {\r\n this.frmDC_NetworkTypeFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmDC_AuthCodeFormControl(): FormControl {\r\n return this.fgPayment.controls.frmDCAuthCode as FormControl;\r\n }\r\n\r\n get frmDC_AuthCode(): number {\r\n return this.frmDC_AuthCodeFormControl.value as number;\r\n }\r\n\r\n set frmDC_AuthCode(val: number) {\r\n this.frmDC_AuthCodeFormControl.setValue(val);\r\n }\r\n\r\n get frmDC_AmountFormControl(): FormControl {\r\n return this.fgPayment.controls.frmDCAmt as FormControl;\r\n }\r\n\r\n get frmDC_Amount(): number {\r\n return this.frmDC_AmountFormControl.value as number;\r\n }\r\n\r\n set frmDC_Amount(val: number) {\r\n this.frmDC_AmountFormControl.setValue(val);\r\n }\r\n //#endregion Debit Card\r\n\r\n\r\n //#region Cheque\r\n get frmCheque_BankNameFormControl(): FormControl {\r\n return this.fgPayment.controls.frmChequeBankName as FormControl;\r\n }\r\n\r\n get frmCheque_BankName(): string {\r\n return this.frmCheque_BankNameFormControl.value as string;\r\n }\r\n\r\n set frmCheque_BankName(val: string) {\r\n this.frmCheque_BankNameFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmCheque_DateFormControl(): FormControl {\r\n return this.fgPayment.controls.frmChequeDate as FormControl;\r\n }\r\n\r\n get frmCheque_Date(): Date {\r\n return this.frmCheque_DateFormControl.value as Date;\r\n }\r\n\r\n set frmCheque_Date(val: Date) {\r\n this.frmCheque_DateFormControl.setValue(val);\r\n }\r\n\r\n get frmCheque_AmountFormControl(): FormControl {\r\n return this.fgPayment.controls.frmChequeAmount as FormControl;\r\n }\r\n\r\n get frmCheque_Amount(): number {\r\n return this.frmCheque_AmountFormControl.value as number;\r\n }\r\n\r\n set frmCheque_Amount(val: number) {\r\n this.frmCheque_AmountFormControl.setValue(val);\r\n }\r\n //#endregion Debit Card\r\n\r\n //#region UPI\r\n\r\n get frmCash_AmountFormControl(): FormControl {\r\n return this.fgPayment.controls.frmCashAmount as FormControl;\r\n }\r\n\r\n get frmCash_Amount(): number {\r\n return this.frmCash_AmountFormControl.value as number;\r\n }\r\n\r\n set frmCash_Amount(val: number) {\r\n this.frmCash_AmountFormControl.setValue(val);\r\n }\r\n\r\n //#endregion UPI\r\n\r\n //#region Cash\r\n\r\n get frmUpi_AmountFormControl(): FormControl {\r\n return this.fgPayment.controls.frmUpiAmount as FormControl;\r\n }\r\n\r\n get frmUpi_Amount(): number {\r\n return this.frmUpi_AmountFormControl.value as number;\r\n }\r\n\r\n set frmUpi_Amount(val: number) {\r\n this.frmUpi_AmountFormControl.setValue(val);\r\n }\r\n\r\n get frmUpiProviderFormControl(): FormControl {\r\n return this.fgPayment.controls.frmUpiProvider as FormControl;\r\n }\r\n\r\n get frmUpiProvider(): number {\r\n return this.frmUpiProviderFormControl.value as number;\r\n }\r\n\r\n set frmUpiProvider(val: number) {\r\n this.frmUpiProviderFormControl.setValue(val);\r\n }\r\n\r\n\r\n get frmUpiVpaidFormControl(): FormControl {\r\n return this.fgPayment.controls.frmUpiVpaid as FormControl;\r\n }\r\n\r\n get frmUpiVpaid(): number {\r\n return this.frmUpiVpaidFormControl.value as number;\r\n }\r\n\r\n set frmUpiVpaid(val: number) {\r\n this.frmUpiVpaidFormControl.setValue(val);\r\n }\r\n\r\n get billingInterval(): number {\r\n return this.billing_interval_value$.value;\r\n }\r\n\r\n get biilingIntervalType(): string {\r\n return this.billing_interval_type$.value;\r\n }\r\n //#endregion Cash\r\n\r\n //#endregion \"Payment\"\r\n\r\n formatDate(date: Date) {\r\n var d = new Date(date),\r\n month = '' + (d.getMonth() + 1),\r\n day = '' + d.getDate(),\r\n year = d.getFullYear();\r\n\r\n if (month.length < 2)\r\n month = '0' + month;\r\n if (day.length < 2)\r\n day = '0' + day;\r\n\r\n return [year, month, day].join('-');\r\n }\r\n\r\n getPaymentBalance(totalAmt: number, ctrl: string) {\r\n console.log(totalAmt, this.fgPayment.get('inp_otherPaymentMode_' + ctrl.toString())?.value);\r\n return this.commonService.ConvertMinorCurrencyFromAmount(this.commonService.ConvertAmountFromMinorCurrency(totalAmt) - this.fgPayment.get('inp_otherPaymentMode_' + ctrl.toString())?.value)\r\n }\r\n\r\n paymentModeValidationSet() {\r\n\r\n this.totalOneTimeCost$.subscribe({\r\n next: (val: number) => {\r\n\r\n this.frmCash_AmountFormControl.addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.frmCash_AmountFormControl.updateValueAndValidity();\r\n\r\n\r\n this.frmCheque_AmountFormControl.addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.frmCheque_AmountFormControl.updateValueAndValidity();\r\n\r\n\r\n this.frmCC_AmountFormControl.addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.frmCC_AmountFormControl.updateValueAndValidity();\r\n\r\n\r\n this.frmDC_AmountFormControl.addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.frmDC_AmountFormControl.updateValueAndValidity();\r\n\r\n\r\n this.frmUpi_AmountFormControl.addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.frmUpi_AmountFormControl.updateValueAndValidity();\r\n\r\n Object.keys(this.fgPayment.controls).forEach(key => {\r\n console.log(this.fgPayment.controls[key]);\r\n if (key.toLowerCase().startsWith(\"inp_otherpaymentmode_\")) {\r\n this.fgPayment.controls[key].addValidators([Validators.max(this.commonService.ConvertAmountFromMinorCurrency(val))]);\r\n this.fgPayment.controls[key].updateValueAndValidity();\r\n }\r\n });\r\n console.log(val);\r\n },\r\n error: (error) => {\r\n }\r\n\r\n\r\n });\r\n }\r\n\r\n //#region \"Error\"\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n GetErrorData(event: any) {\r\n this.errorMessages = event.errors;\r\n this.showErrorPopup?.next(event.showErrors);\r\n }\r\n\r\n get ShowErrorPopup(): Observable {\r\n return this.showErrorPopup?.asObservable() || of(false);\r\n }\r\n\r\n getInterval(billing_interval_value: number, billing_interval_type: PlanIntervalType) {\r\n\r\n let str: string = \"\";\r\n if (billing_interval_type == PlanIntervalType.Month || billing_interval_type.toString() == PlanIntervalType[PlanIntervalType.Month]) {\r\n if (billing_interval_value > 1)\r\n str = \"months\";\r\n else\r\n str = \"month\";\r\n }\r\n else if (billing_interval_type == PlanIntervalType.Week\r\n || billing_interval_type.toString() == PlanIntervalType[PlanIntervalType.Week]) {\r\n if (billing_interval_value > 1)\r\n str = \"weeks\";\r\n else\r\n str = \"week\";\r\n }\r\n return str.toUpperCase();\r\n }\r\n\r\n isTypeContract(subscription_category: PlanCategory): boolean {\r\n if (\r\n (subscription_category == PlanCategory.DropIn || subscription_category.toString() == PlanCategory[PlanCategory.DropIn])\r\n || (subscription_category == PlanCategory.PaidInFull || subscription_category.toString() == PlanCategory[PlanCategory.PaidInFull])\r\n ) {\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.client_status)\r\n return this.clientService.getClientStatusHtml(client.client_status.toString());\r\n else\r\n return '';\r\n }\r\n //#endregion \"Error\"\r\n\r\n filterStaff() {\r\n let claim: Claim[] = {} as Claim[];\r\n let staffs: STAFFINTERFACE[] = [];\r\n ;\r\n\r\n let validStaff: number[] = [];\r\n this.claim$.pipe(\r\n combineLatestWith(this.store.select(STAFF_STATE))\r\n )\r\n .subscribe(([objClaim, objStaff]) => {\r\n claim = objClaim;\r\n staffs = objStaff.staffList;\r\n\r\n if (staffs.length > 0) {\r\n staffs.forEach((stf) => {\r\n if ((stf.role == Roles.Admin || stf.role.toString() == Roles[Roles.Admin] || stf.role == Roles.FFAdmin || stf.role.toString() == Roles[Roles.FFAdmin])\r\n || claim.filter(o => o.id == stf.claim_template_id && (o.can_admin_billing == true || o.can_do_billing == true)).length > 0)\r\n validStaff.push(stf.id);\r\n });\r\n this._filterStaff.next(validStaff);\r\n }\r\n })\r\n }\r\n\r\n ordinalNumber(n: number | null | undefined): string {\r\n if (n) {\r\n let s = [\"th\", \"st\", \"nd\", \"rd\"];\r\n let v: number = n % 100;\r\n return n.toString() + \"\" + (s[(v - 20) % 10] || s[v] || s[0]).toString() + \" \";\r\n }\r\n else\r\n return '';\r\n }\r\n\r\n monthName(data: Date): string {\r\n return this.monthNames[new Date(data).getMonth()];\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [BillingSummaryComponent],\r\n imports: [\r\n FormsModule,\r\n InputNumberModule,\r\n ButtonModule,\r\n FooterComponentModule,\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n SidebarModule,\r\n AvatarModule,\r\n AvatarGroupModule,\r\n DropdownModule,\r\n DividerModule,\r\n CalendarModule,\r\n ReactiveFormsModule,\r\n RadioButtonModule,\r\n MessagesModule,\r\n CommonModule,\r\n SkeletonModule,\r\n CurrencyformatPipeModule,\r\n AssignedToComponentModule,\r\n BrowserModule,\r\n DateTimeFormatPipeModule,\r\n ErrorsComponentModule,\r\n ErrorMsgComponentModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [BillingSummaryComponent]\r\n})\r\nexport class BillingSummaryComponentModule {\r\n}\r\ninterface Option {\r\n name: string, value: number\r\n}","Ì¥\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n

\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.BILL_SUMMARY' | translate}}\r\n \r\n

\r\n\r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n

\r\n \r\n {{planSummary.client.client_name}}\r\n \r\n \r\n {{'common.DATA.CLIENT_ID' | translate}} - {{planSummary.client.client_id}}\r\n\r\n \r\n

\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n {{getPlanType(planList.value.subscription_category)}}\r\n \r\n\r\n \r\n {{planList.value.name_primary_language}}\r\n \r\n \r\n {{getPlanAmount(planList.value) | currencyformat}}\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n {{getPlanType(memberships.subscription_category)}}\r\n \r\n\r\n \r\n {{memberships.name_primary_language}}\r\n \r\n \r\n {{getPlanAmount(memberships) | currencyformat}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n {{'POS.PLANTYPE.' + obj.subscription_category.toUpperCase() | translate }}\r\n
\r\n\r\n
\r\n
\r\n

\r\n {{obj.name_primary_language}}\r\n

\r\n

\r\n {{obj.description_primary_language}}\r\n

\r\n
\r\n
\r\n \r\n \r\n {{ recurringCost | currencyformat }}\r\n \r\n /\r\n {{ (this.billingInterval> 1)? this.billingInterval.toString() : \"\"}}\r\n {{ 'POS.MEMBERSHIP_ADDON.' +\r\n this.getInterval(this.billingInterval,this.biilingIntervalType) |\r\n translate}}\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.PRICEWITHTAX' | translate}}\r\n \r\n \r\n \r\n \r\n {{ totalOneTimeCost | currencyformat }}\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.PRICEWITHTAX' | translate}}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n

\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.START_DATE' | translate}}\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BILLING_CYCLE' | translate}}\r\n
\r\n\r\n \r\n \r\n
\r\n {{billingCycle.value.name}}\r\n
\r\n
\r\n \r\n
\r\n {{billingCycle.name}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
0\">\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
{{'POS.MEMBERSHIP_ADDON.BILLDETAILS' | translate}}
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n 1st {{'POS.MEMBERSHIP_ADDON.FIRSTCHARGE' | translate}}\r\n
\r\n (
\r\n
\r\n \r\n {{\r\n monthName(billingBreakup.charging_today.service_first_charge.service_start_date)\r\n }}\r\n to\r\n
\r\n
\r\n \r\n {{\r\n monthName(billingBreakup.charging_today.service_first_charge.service_end_date)\r\n }}\r\n )\r\n
\r\n {{ netCost | currencyformat }}\r\n
\r\n
\r\n
\r\n \r\n\r\n 0\">\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.ONETIMECHARGE' | translate}}\r\n
\r\n {{getConcatStringfromArray(serv.non_recurring_services)}}\r\n
\r\n \r\n {{ netCost | currencyformat }}\r\n \r\n
\r\n \r\n\r\n \r\n \r\n {{charges.name_primary_language}}\r\n \r\n {{ getChargeNetCost(charges) | currencyformat}}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.TAXES' | translate}}\r\n
\r\n \r\n {{\r\n getTotalTaxAmount(billingBreakup.charging_today.service_first_charge.services)\r\n +\r\n getTotalTaxAmount(billingBreakup.charging_today.service_non_recurring.services)\r\n + getTotalChargeTaxAmount(billingBreakup.charging_today.signup_charges)\r\n | currencyformat\r\n }}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {{'POS.MEMBERSHIP_ADDON.GRAND_TOTAL' | translate}}\r\n \r\n {{totalOneTimeCost | currencyformat}}\r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n One-time Discount \r\n
\r\n
\r\n \r\n 1st {{'POS.MEMBERSHIP_ADDON.FIRSTCHARGE' | translate}}\r\n \r\n \r\n \r\n
\r\n \r\n {{getTotalBaseCost(billingBreakup.charging_today.service_first_charge.services)\r\n | currencyformat}}\r\n \r\n \r\n \r\n
\r\n %\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
0\"\r\n class=\"px-3 py-2 flex align-items-center justify-content-between servicechargecontainer_edit\">\r\n {{'POS.MEMBERSHIP_ADDON.ONETIMECHARGE'\r\n |\r\n translate}}
\r\n {{getConcatStringfromArray(serv.non_recurring_services)}}\r\n
\r\n\r\n
\r\n \r\n {{getTotalBaseCost(billingBreakup.charging_today.service_non_recurring.services)\r\n | currencyformat}}\r\n \r\n\r\n \r\n \r\n
\r\n %\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n {{charges.name_primary_language}}\r\n
\r\n {{charges.amount_in_minor_currency |\r\n currencyformat}}\r\n \r\n \r\n
\r\n %\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{ 'POS.MEMBERSHIP_ADDON.YOUCANNOTAPPLY' | translate }}\r\n {{ userDiscountLimit }} %\r\n {{ 'POS.MEMBERSHIP_ADDON.DISCOUNT' | translate }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Recurring Discount\r\n \r\n \r\n \r\n
\r\n \r\n Recurring Charge\r\n
\r\n {{ baseCost |\r\n currencyformat }}\r\n \r\n \r\n
\r\n %\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
{{'POS.MEMBERSHIP_ADDON.PLEASE_SELECT_PRODUCT' | translate}}
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.PAYING_TODAY' | translate}}\r\n
\r\n \r\n {{totalOneTimeCost | currencyformat}}\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.PRICEWITHTAX' | translate}}\r\n \r\n
\r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.RECURRING' | translate}}\r\n
\r\n \r\n {{ recurringCost | currencyformat }}\r\n \r\n \r\n {{'POS.MEMBERSHIP_ADDON.PRICEWITHTAX' | translate}}\r\n \r\n
\r\n \r\n {{ 'POS.MEMBERSHIP_ADDON.EVERY' | translate}}\r\n {{ (this.billingInterval> 1)? this.billingInterval.toString() : \"\"}}\r\n {{ 'POS.MEMBERSHIP_ADDON.' +\r\n this.getInterval(this.billingInterval,this.biilingIntervalType) |\r\n translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BILL_OWNER' | translate}}\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BILL_DATE' | translate}}\r\n
\r\n

\r\n {{this.billDate.value | datetimeformat:'usformat'}}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.CHOOSE_PAYMENT_METHOD' | translate}}\r\n
\r\n\r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.ONLINE_PAYMENT' | translate}}\r\n \r\n \r\n
\r\n
\r\n
\"{{'POS.MEMBERSHIP_ADDON.DIGITALWAIVER' | translate}}\"
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.OTHER_PAYMENT' | translate}}\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n {{(totalOneTimeCost - getfrmCC_Amount()) | currencyformat}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n {{(totalOneTimeCost - getfrmDC_Amount()) | currencyformat}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n {{(totalOneTimeCost - getfrmCash_Amount()) | currencyformat}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n {{(totalOneTimeCost - getfrmCheque_Amount()) | currencyformat}}\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n {{(totalOneTimeCost - getfrmUpi_Amount()) | currencyformat}}\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{'POS.MEMBERSHIP_ADDON.BALANCE' |\r\n translate}}\r\n \r\n \r\n {{ getPaymentBalance(totalOneTimeCost,paymentMode1.id) |\r\n currencyformat}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{'POS.MEMBERSHIP_ADDON.BALANCEPAYMENT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, NgModule, OnInit, Output, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FooterComponentModule, HeaderComponentModule, SidebarComponentModule } from '@fitness-force/core';\r\nimport { PlanSummary } from '@fitness-force/models';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { BillingSummaryComponentModule } from '../billing-summary/billing-summary.component';\r\nimport { PaymentSummaryComponentModule } from '../payment-summary/payment-summary.component';\r\n\r\n@Component({\r\n selector: 'billing',\r\n templateUrl: './billing.component.html',\r\n styleUrls: ['./billing.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BillingComponent implements OnInit {\r\n\r\n @Input('planSummarydata') planSummary$: Observable;\r\n @Input('showBilling') showbilling: boolean = false;\r\n\r\n @Output() closeSidePopupMember: EventEmitter<{ hideSidebar: boolean, uuid: string | null }> = new EventEmitter();\r\n\r\n showPaidFullSidebar$: Observable | any = false;\r\n showPaymentStatusSidebar$: Observable | any = false;\r\n uuid: string;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.showPaidFullSidebar$ = this.showbilling;\r\n }\r\n\r\n HidePaymentSummary(evt: any) {\r\n this.showPaymentStatusSidebar$ = false;\r\n this.closeSidePopupMember.emit({ hideSidebar: false, uuid: this.uuid });\r\n }\r\n\r\n CloseBillingSummary(evt: any) {\r\n if (evt.clientSignupUUID) {\r\n this.showPaidFullSidebar$ = false;\r\n this.uuid = evt.clientSignupUUID;\r\n this.showPaymentStatusSidebar$ = true;\r\n }\r\n else {\r\n this.closeSidePopupMember.emit({ hideSidebar: false, uuid: this.uuid });\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [BillingComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n ReactiveFormsModule,\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n FooterComponentModule,\r\n FormsModule,\r\n PaymentSummaryComponentModule,\r\n BillingSummaryComponentModule,\r\n ],\r\n exports: [BillingComponent]\r\n})\r\nexport class BillingComponentModule {\r\n}\r\n","\r\n\r\n\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { HeaderComponentModule } from '@fitness-force/core';\r\n\r\n\r\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { BehaviorSubject, map, Observable, combineLatest, of, Subscription, timer } from 'rxjs';\r\n\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { StatusandSubscriptionDetails, SubscriptionSignupCharges, SubscriptionSignUpOrderSummaryResponse, SubscriptionSignupService, SubscriptionSignUpStatus, SubscriptionSignupTaxLineItem, SubscriptionSignUpWithBillingJsonResponse, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { SubscriptionSignupByUuidService } from '@fitness-force/api';\r\n\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { PlanIntervalType, SignUpStatus } from '@fitness-force/enum';\r\nimport { CurrencyformatPipe, CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { QrCodeModule } from 'ng-qrcode';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\n\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { SkeletonModule } from 'primeng/skeleton';\r\n\r\n\r\n@Component({\r\n selector: 'payment-summary',\r\n templateUrl: './payment-summary.component.html',\r\n styleUrls: ['./payment-summary.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class PaymentSummaryComponent implements OnInit {\r\n\r\n @Input('uuid') uuid: string = '';\r\n @Input('visible') showPaymentStatusSidebar: boolean = false;\r\n @Output() hidePaymentSummaryPopup: EventEmitter = new EventEmitter();\r\n\r\n subsData$ = new BehaviorSubject({} as SubscriptionSignUpOrderSummaryResponse);\r\n\r\n getAccessTenantList$: Observable;\r\n tenantId: number = 0;\r\n\r\n bitlyLink: string = \"\";\r\n\r\n showContractSidebar: boolean = false;\r\n showSkeleton: boolean = true;\r\n showLoader: boolean = true;\r\n isOffline: boolean = false;\r\n\r\n planIntervalType?: PlanIntervalType;\r\n paymentStatus2: any[];\r\n timerSubscription: Subscription;\r\n subscriptionSignUpStatusArray: SubscriptionSignUpStatus[] = [];\r\n subscriptionSignUpStatus$ = new BehaviorSubject([]);\r\n clientId: number;\r\n subscriptionId: number;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private store: Store,\r\n private subscriptionSignUp: SubscriptionSignupByUuidService,\r\n private messageService: MessageService,\r\n public currencyPipe: CurrencyformatPipe,\r\n private translate: TranslateService,\r\n ) {\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n this.getOrderDetails(this.uuid);\r\n\r\n // timer(0, 10000) call the function immediately and every 10 seconds\r\n this.timerSubscription = timer(0, 3000).pipe(\r\n map(() => {\r\n this.GetOrderSubscriptionStatus(this.uuid); // load data contains the http request\r\n })\r\n ).subscribe();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.timerSubscription.unsubscribe();\r\n }\r\n\r\n componentInit(): void {\r\n\r\n let companyInfoDetail$: Observable = this.store.select(COMPANY_INFO);\r\n\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n })\r\n\r\n companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n })\r\n\r\n if (this.uuid) {\r\n this.subscriptionSignUpStatusArray.push(\r\n { title: \"SENDWAIVER\", text: \"SENDWAIVER_DTL\", icon: \"pi pi-check\", step: 1, status: \"Pending\", }\r\n , { title: \"CLIENTSIGN_WAIVER\", text: \"CLIENTSIGN_WAIVER_DTL\", icon: \"\", step: 2, status: \"Not Done\", }\r\n , { title: \"MEMBERDETAILS\", text: \"MEMBERDETAILS_DTL\", icon: \"\", step: 3, status: \"Not Done\", }\r\n , { title: \"SUBSCRIPTIONCREATED\", text: \"SUBSCRIPTIONCREATED_DTL\", icon: \"\", step: 4, status: \"Not Done\" },\r\n );\r\n }\r\n this.subscriptionSignUpStatus$.next(this.subscriptionSignUpStatusArray);\r\n }\r\n\r\n getOrderDetails(uuid: string): void {\r\n //let subscriptionPayload: SubscriptionSignUpOrderSummaryResponse =\r\n\r\n this.subscriptionSignUp.GetOrderDetails(environment.BASE_URL, uuid).subscribe({\r\n next: (subscriptionSignUpWithBillingJsonResponse: SubscriptionSignUpWithBillingJsonResponse) => {\r\n this.subsData$.next(subscriptionSignUpWithBillingJsonResponse.order_details);\r\n this.showSkeleton = false;\r\n if (\r\n subscriptionSignUpWithBillingJsonResponse.status == SignUpStatus.SignUpSuccessfull || subscriptionSignUpWithBillingJsonResponse.status.toString() == SignUpStatus[SignUpStatus.SignUpSuccessfull]\r\n || subscriptionSignUpWithBillingJsonResponse.status == SignUpStatus.SignUpFailed || subscriptionSignUpWithBillingJsonResponse.status.toString() == SignUpStatus[SignUpStatus.SignUpFailed]\r\n || subscriptionSignUpWithBillingJsonResponse.status == SignUpStatus.SignUpExpired || subscriptionSignUpWithBillingJsonResponse.status.toString() == SignUpStatus[SignUpStatus.SignUpExpired]\r\n ) {\r\n this.isOffline = true;\r\n }\r\n this.bitlyLink = subscriptionSignUpWithBillingJsonResponse.full_link\r\n this.planIntervalType = subscriptionSignUpWithBillingJsonResponse.order_details.billing_interval_type;\r\n console.log(\"subscriptionSignUpOrderSummaryResponse object : \", subscriptionSignUpWithBillingJsonResponse)\r\n }\r\n });\r\n\r\n }\r\n\r\n GetOrderSubscriptionStatus(uuid: string): void {\r\n this.subscriptionSignUp.GetOrderSubscriptionStatus(environment.BASE_URL, uuid).subscribe({\r\n next: (res: StatusandSubscriptionDetails) => {\r\n // if (res.client_subscription_id > 0)\r\n // this.setTimeLineStatus(SignUpStatus.SignUpSuccessfull);\r\n // else\r\n // this.setTimeLineStatus(res.status);\r\n \r\n if ((res.client_subscription_id && res.client_subscription_id > 0)\r\n || res.status == SignUpStatus.SignUpSuccessfull || res.status.toString() == SignUpStatus[SignUpStatus.SignUpSuccessfull]) {\r\n\r\n this.setTimeLineStatus(SignUpStatus.SignUpSuccessfull);\r\n // this.timerSubscription.unsubscribe();\r\n // this.showLoader = false;\r\n this.clientId = res.client_id;\r\n this.subscriptionId = res.client_subscription_id;\r\n }\r\n else if (res.status == SignUpStatus.SignUpFailed || res.status.toString() == SignUpStatus[SignUpStatus.SignUpFailed]\r\n || res.status == SignUpStatus.SignUpExpired || res.status.toString() == SignUpStatus[SignUpStatus.SignUpExpired]) {\r\n this.showLoader = false;\r\n this.timerSubscription.unsubscribe();\r\n }\r\n else\r\n this.setTimeLineStatus(res.status);\r\n this.subscriptionSignUpStatus$.next(this.subscriptionSignUpStatusArray);\r\n }\r\n });\r\n }\r\n\r\n\r\n setHidePaymentSideBar() {\r\n this.showPaymentStatusSidebar = false;\r\n this.hidePaymentSummaryPopup.emit(this.showPaymentStatusSidebar);\r\n }\r\n\r\n // firePaymentHideEvent(event: any) {\r\n // this.showPaymentStatusSidebar = false;\r\n // this.hidePaymentSummaryPopup.emit(this.showPaymentStatusSidebar);\r\n // }\r\n\r\n\r\n\r\n payingToday(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n return (\r\n this.nonRecurringAmount(oData) + this.nonRecurringTaxAmount(oData)\r\n + this.proRataAmount(oData) + this.proRataTaxAmount(oData)\r\n + this.chargeAmount(oData) + this.chargeTaxAmount(oData)\r\n );\r\n }\r\n\r\n proRataAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.service_first_charge && oData.charging_today.service_first_charge.services) {\r\n for (let i = 0; i < oData.charging_today.service_first_charge.services.length; i++) {\r\n amount = amount + oData.charging_today.service_first_charge.services[i].taxable_cost_in_minor_curr;\r\n }\r\n }\r\n return amount;\r\n }\r\n\r\n proRataTaxAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.service_first_charge && oData.charging_today.service_first_charge.services) {\r\n for (let i = 0; i < oData.charging_today.service_first_charge.services.length; i++) {\r\n for (let j = 0; j < oData.charging_today.service_first_charge.services[i].tax.tax_line_items.length; j++) {\r\n amount = amount + oData.charging_today.service_first_charge.services[i].tax.tax_line_items[j].amt_in_minor_curr;\r\n }\r\n }\r\n }\r\n\r\n return amount;\r\n }\r\n\r\n recurringAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_recurring && oData.charging_recurring.services) {\r\n for (let i = 0; i < oData.charging_recurring.services.length; i++) {\r\n amount = amount + oData.charging_recurring.services[i].taxable_cost_in_minor_curr;\r\n }\r\n }\r\n\r\n return amount;\r\n }\r\n\r\n recurringTaxAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_recurring && oData.charging_recurring.services) {\r\n for (let i = 0; i < oData.charging_recurring.services.length; i++) {\r\n for (let j = 0; j < oData.charging_recurring.services[i].tax.tax_line_items.length; j++) {\r\n amount = amount + oData.charging_recurring.services[i].tax.tax_line_items[j].amt_in_minor_curr;\r\n }\r\n }\r\n }\r\n\r\n return amount;\r\n }\r\n\r\n nonRecurringAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.service_non_recurring && oData.charging_today.service_non_recurring.services) {\r\n for (let i = 0; i < oData.charging_today.service_non_recurring.services.length; i++) {\r\n amount = amount + oData.charging_today.service_non_recurring.services[i].taxable_cost_in_minor_curr;\r\n }\r\n }\r\n return amount;\r\n }\r\n\r\n nonRecurringTaxAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.service_non_recurring && oData.charging_today.service_non_recurring.services) {\r\n for (let i = 0; i < oData.charging_today.service_non_recurring.services.length; i++) {\r\n for (let j = 0; j < oData.charging_today.service_non_recurring.services[i].tax.tax_line_items.length; j++) {\r\n amount = amount + oData.charging_today.service_non_recurring.services[i].tax.tax_line_items[j].amt_in_minor_curr;\r\n }\r\n }\r\n }\r\n\r\n return amount;\r\n }\r\n\r\n chargeAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.signup_charges) {\r\n for (let i = 0; i < oData.charging_today.signup_charges.length; i++) {\r\n amount = amount + oData.charging_today.signup_charges[i].chrgmst_net_cost_in_minor_curr;\r\n }\r\n }\r\n return amount;\r\n }\r\n\r\n chargeTaxAmount(oData: SubscriptionSignUpOrderSummaryResponse): number {\r\n let amount: number = 0;\r\n if (oData.charging_today && oData.charging_today.signup_charges) {\r\n for (let i = 0; i < oData.charging_today.signup_charges.length; i++) {\r\n for (let j = 0; j < oData.charging_today.signup_charges[i].tax.tax_line_items.length; j++) {\r\n amount = amount + oData.charging_today.signup_charges[i].tax.tax_line_items[j].amt_in_minor_curr;\r\n }\r\n }\r\n }\r\n return amount;\r\n }\r\n\r\n allServiceNameHtml(oData: SubscriptionSignUpOrderSummaryResponse): string {\r\n let serviceCategoryName: string[] = [];\r\n let serviceCategory: any[] = [];\r\n oData.charging_recurring?.services?.forEach((oService: SubscriptionSignupService) => {\r\n if (serviceCategoryName.indexOf(oService.category_name_pri_lang) == -1) {\r\n serviceCategoryName.push(oService.category_name_pri_lang);\r\n serviceCategory.push({ name: oService.category_name_pri_lang, isBaseMembership: oService.is_base_membership });\r\n }\r\n });\r\n\r\n oData.charging_today?.service_non_recurring?.services?.forEach((oService: SubscriptionSignupService) => {\r\n if (serviceCategoryName.indexOf(oService.category_name_pri_lang) == -1) {\r\n serviceCategoryName.push(oService.category_name_pri_lang);\r\n serviceCategory.push({ name: oService.category_name_pri_lang, isBaseMembership: oService.is_base_membership });\r\n }\r\n });\r\n\r\n let str: string = `\r\n
\r\n
\r\n {{First}}\r\n {{Others}}\r\n
\r\n
\r\n `;\r\n //
{{recurringAmount}}
\r\n\r\n let other: string = '';\r\n let first: string = '';\r\n for (let i = 0; i < serviceCategory.length; i++) {\r\n if (i == 0)\r\n first = serviceCategory[i].name + (serviceCategory[i].isBaseMembership ? ' Base Membership ' : '');\r\n else\r\n other = other + '
+ ' + serviceCategory[i].name + (serviceCategory[i].isBaseMembership ? ' Base Membership ' : '');\r\n }\r\n\r\n let strAmount: string = this.currencyPipe.transform(this.recurringAmount(oData) + this.recurringTaxAmount(oData), undefined);\r\n return str.replace('{{First}}', first).replace('{{Others}}', other).replace('{{recurringAmount}}', strAmount);\r\n }\r\n\r\n serviceNonRecurringNameHtml(oData: SubscriptionSignUpOrderSummaryResponse): string {\r\n let serviceCategoryName: string[] = [];\r\n let serviceCategory: any[] = [];\r\n oData.charging_today?.service_non_recurring?.services?.forEach((oService: SubscriptionSignupService) => {\r\n if (serviceCategoryName.indexOf(oService.category_name_pri_lang) == -1) {\r\n serviceCategoryName.push(oService.category_name_pri_lang);\r\n serviceCategory.push({ name: oService.category_name_pri_lang, isBaseMembership: oService.is_base_membership });\r\n }\r\n });\r\n\r\n let str: string = `\r\n
\r\n
One time add-ons
\r\n
\r\n {{First}}\r\n {{Others}}\r\n
\r\n
\r\n
{{recurringAmount}}
\r\n `;\r\n\r\n let other: string = '';\r\n let first: string = '';\r\n for (let i = 0; i < serviceCategory.length; i++) {\r\n if (i == 0)\r\n first = serviceCategory[i].name;\r\n else\r\n other = other + '
+ ' + serviceCategory[i].name;\r\n }\r\n\r\n let strAmount: string = this.currencyPipe.transform(this.nonRecurringAmount(oData), undefined);\r\n return str.replace('{{First}}', first).replace('{{Others}}', other).replace('{{recurringAmount}}', strAmount);\r\n }\r\n\r\n\r\n\r\n getTaxDetails(oData: SubscriptionSignUpOrderSummaryResponse): string {\r\n let tax: string[] = [];\r\n oData.charging_today?.signup_charges?.forEach((oCharges: SubscriptionSignupCharges) => {\r\n if (oCharges.tax && oCharges.tax.tax_line_items && oCharges.tax.tax_line_items.length > 0)\r\n oCharges.tax.tax_line_items.forEach((oTax: SubscriptionSignupTaxLineItem) => {\r\n if (tax.indexOf(oTax.name_pri_lang) == -1) tax.push(oTax.name_pri_lang);\r\n });\r\n });\r\n\r\n oData.charging_today?.service_first_charge?.services?.forEach((oService: SubscriptionSignupService) => {\r\n if (oService.tax && oService.tax.tax_line_items && oService.tax.tax_line_items.length > 0)\r\n oService.tax.tax_line_items.forEach((oTax: SubscriptionSignupTaxLineItem) => {\r\n if (tax.indexOf(oTax.name_pri_lang) == -1) tax.push(oTax.name_pri_lang);\r\n });\r\n });\r\n\r\n oData.charging_today?.service_non_recurring?.services?.forEach((oService: SubscriptionSignupService) => {\r\n if (oService.tax && oService.tax.tax_line_items && oService.tax.tax_line_items.length > 0)\r\n oService.tax.tax_line_items.forEach((oTax: SubscriptionSignupTaxLineItem) => {\r\n if (tax.indexOf(oTax.name_pri_lang) == -1) tax.push(oTax.name_pri_lang);\r\n });\r\n });\r\n\r\n return tax.join(\"
\");\r\n }\r\n\r\n\r\n\r\n ordinalNumber(n: number | null | undefined): string {\r\n if (n) {\r\n let s = [\"th\", \"st\", \"nd\", \"rd\"];\r\n let v: number = n % 100;\r\n return n.toString() + (s[(v - 20) % 10] || s[v] || s[0]).toString();\r\n }\r\n else\r\n return '';\r\n }\r\n\r\n get isWeeklyPlan(): boolean {\r\n\r\n return (this.planIntervalType && this.planIntervalType?.toString() == PlanIntervalType[PlanIntervalType.Week]) || false;\r\n }\r\n\r\n get isDayPlan(): boolean {\r\n return false;\r\n // return (this.planIntervalType && this.planIntervalType?.toString() == PlanIntervalType[PlanIntervalType.Day]) || false;\r\n }\r\n\r\n get isMonthlyPlan(): boolean {\r\n return (this.planIntervalType && this.planIntervalType?.toString() == PlanIntervalType[PlanIntervalType.Month]) || false;\r\n }\r\n\r\n ResendPaymentLink(mode: string) {\r\n if (mode == 'email') {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: 'Email send' });\r\n }\r\n else if (mode == 'sms') {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: 'Email send' });\r\n }\r\n\r\n }\r\n\r\n setTimeLineStatus(res: SignUpStatus) {\r\n if (res == SignUpStatus.Open || res.toString() == SignUpStatus[SignUpStatus.Open]) {\r\n this.subscriptionSignUpStatusArray[0].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[0].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[1].status = \"Pending\";\r\n }\r\n else if (res == SignUpStatus.WaiverDone || res.toString() == SignUpStatus[SignUpStatus.WaiverDone]) {\r\n //else if (res < 5) {\r\n this.subscriptionSignUpStatusArray[0].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[0].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[1].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[1].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[2].status = \"Pending\";\r\n }\r\n else if (res == SignUpStatus.MandatoryInformationDone || res.toString() == SignUpStatus[SignUpStatus.MandatoryInformationDone]) {\r\n this.subscriptionSignUpStatusArray[0].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[0].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[1].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[1].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[2].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[2].icon = \"pi pi-check\";\r\n\r\n this.subscriptionSignUpStatusArray[3].status = \"Pending\";\r\n\r\n\r\n }\r\n else if (res == SignUpStatus.SignUpSuccessfull || res.toString() == SignUpStatus[SignUpStatus.SignUpSuccessfull]) {\r\n this.subscriptionSignUpStatusArray[0].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[0].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[1].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[1].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[2].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[2].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[3].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[3].icon = \"pi pi-check\";\r\n this.timerSubscription.unsubscribe();\r\n this.showLoader = false;\r\n }\r\n else if (res == SignUpStatus.SignUpFailed || res.toString() == SignUpStatus[SignUpStatus.SignUpFailed]\r\n || res == SignUpStatus.SignUpExpired || res.toString() == SignUpStatus[SignUpStatus.SignUpExpired]) {\r\n this.subscriptionSignUpStatusArray[0].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[0].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[1].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[1].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[2].status = \"Done\";\r\n this.subscriptionSignUpStatusArray[2].icon = \"pi pi-check\";\r\n this.subscriptionSignUpStatusArray[3].status = \"Error\";\r\n this.subscriptionSignUpStatusArray[3].icon = \"Not Done\";\r\n this.showLoader = false;\r\n this.timerSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [PaymentSummaryComponent],\r\n imports: [\r\n CommonModule,\r\n OverlayPanelModule,\r\n DividerModule,\r\n TimelineModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n TooltipModule,\r\n HeaderComponentModule,\r\n ProgressBarModule,\r\n SidebarModule,\r\n CurrencyformatPipeModule,\r\n QrCodeModule,\r\n ToastModule,\r\n MessagesModule,\r\n SkeletonModule,\r\n RouterModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [PaymentSummaryComponent]\r\n})\r\nexport class PaymentSummaryComponentModule {\r\n}\r\nfunction SIGNUPSTEP_INFO(SIGNUPSTEP_INFO: any) {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\nfunction title(title: any, arg1: string, text: any, arg3: string, icon: any, arg5: string, step: any, arg7: number, status: string, arg9: string) {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n","\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n

\r\n \r\n {{'POS.PAYMENT_SUCCESS.PAYMENT_INITATED' | translate}}\r\n

\r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n {{'POS.PLANTYPE.' + subscription.subscription_category.toUpperCase() |translate }}\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n

{{subscription.name_primary_language}}

\r\n

{{subscription.description_primary_language}}

\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {{charge.chrgmst_name_pri_lang}} + {{charge.chrgmst_net_cost_in_minor_curr |\r\n currencyformat}}\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n \r\n\r\n \r\n \"Image\"\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {{'POS.PAYMENT_SUCCESS.CLOSE_WINDOW_ANYTIME' |\r\n translate}}\r\n {{'POS.PAYMENT_SUCCESS.PAYMENT_RUN_BACKGROUND' | translate}} \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n

{{'POS.PAYMENT_SUCCESS.ALMOST_DONE' | translate}}

\r\n

{{'POS.PAYMENT_SUCCESS.GREATJOB' | translate}}

\r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{event.step}}\r\n \r\n \r\n {{event.step}}\r\n \r\n \r\n {{event.step}}\r\n \r\n \r\n \r\n
\r\n

\r\n {{'POS.PAYMENT_SUCCESS.' + event.title.toUpperCase() |translate }}

\r\n

\r\n {{'POS.PAYMENT_SUCCESS.' + event.text.toUpperCase() |translate }}

\r\n\r\n\r\n
\r\n
{{'POS.PAYMENT_SUCCESS.WAIVER_LINK' | translate}} {{bitlyLink}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n {{'POS.PAYMENT_SUCCESS.RESEND_LINK' | translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
0\">\r\n \r\n
\r\n \r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n} from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { BreadcrumbModule } from 'primeng/breadcrumb';\r\nimport { BehaviorSubject, filter, Subject, takeUntil } from 'rxjs';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\n@Component({\r\n selector: 'app-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BreadcrumbComponent implements OnInit {\r\n static readonly ROUTE_DATA_BREADCRUMB = 'breadcrumb';\r\n menuItems = new BehaviorSubject([]);\r\n\r\n // debug code\r\n counter=0;\r\n\r\n constructor(\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n public translate: TranslateService,\r\n private store: Store\r\n ) {\r\n this.router.events\r\n .pipe(filter((event) => event instanceof NavigationEnd))\r\n .subscribe(async () =>\r\n this.menuItems.next(\r\n await this.createBreadcrumbs(this.activatedRoute.root)\r\n )\r\n );\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n timeout(ms: any) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n private async createBreadcrumbs(route: ActivatedRoute,url: string = '',breadcrumbs: MenuItem[] = []): Promise {\r\n await this.timeout(100);\r\n const children: ActivatedRoute[] = route.children;\r\n\r\n if (children.length === 0) {\r\n return breadcrumbs;\r\n }\r\n\r\n for (const child of children) {\r\n const routeURL: string = child.snapshot.url\r\n .map((segment) => segment.path)\r\n .join('/');\r\n if (routeURL !== '') {\r\n url += `/${routeURL}`;\r\n }\r\n\r\n const label = child.snapshot.data[BreadcrumbComponent.ROUTE_DATA_BREADCRUMB];\r\n \r\n this.counter++;\r\n if (label) {\r\n this.translate.get(`BREADCRUM.LABELS.${label}`)\r\n .subscribe((translation: string) => {\r\n breadcrumbs.push({ label: translation, url });\r\n });\r\n }\r\n return this.createBreadcrumbs(child, url, breadcrumbs);\r\n }\r\n return breadcrumbs;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [BreadcrumbComponent],\r\n imports: [CommonModule, BrowserModule, BreadcrumbModule],\r\n exports: [BreadcrumbComponent],\r\n})\r\nexport class BreadcrumbComponentModule {}\r\n","","import { ClientService } from '@fitness-force/api';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, AfterViewInit } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { BadRequestError, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'assign-key-fob',\r\n templateUrl: './assign-key-fob.component.html',\r\n styleUrls: ['./assign-key-fob.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AssignKeyFobComponent implements OnInit {\r\n @Input() assignKeyFobModal: boolean | null = false;\r\n @Input() clientData$:any = new BehaviorSubject(null)\r\n @Output() closeassignKeyFobModalDialog = new EventEmitter()\r\n assignKeyFobFormGroup: FormGroup = new FormGroup({})\r\n validAlphaNumericPattern = \"^[a-zA-Z0-9]{12}$\";\r\n allClientData:any\r\n constructor(private fb: FormBuilder,public translate: TranslateService, private clientService: ClientService, private messageService: MessageService) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n \r\n componentInit(){\r\n this.assignKeyFobFormGroup = this.fb.group({\r\n keyBobNumber: ['', [Validators.required, Validators.maxLength(12), Validators.pattern(this.validAlphaNumericPattern)]]\r\n })\r\n this.clientData$.subscribe((res:any)=>{\r\n this.allClientData = res\r\n })\r\n }\r\n defaultAssignKeyFobFormValue(){\r\n this.KeyBobNumber.setValue( this.allClientData.mobile_number)\r\n }\r\n get KeyBobNumber(): FormControl{\r\n return this.assignKeyFobFormGroup.get('keyBobNumber') as FormControl;\r\n }\r\n closeDialogEvent(){\r\n this.closeassignKeyFobModalDialog.emit(false)\r\n }\r\n postAssignKeyFob(){\r\n const updateProfileData = {\r\n \"home_club_tenant_id\": this.allClientData.home_club_tenant_id,\r\n \"full_name\": this.allClientData.full_name,\r\n \"mobile_country_code\": this.allClientData.mobile_country_code,\r\n \"mobile_number\": this.allClientData.mobile_number,\r\n \"email_id\": this.allClientData.email_id,\r\n \"date_of_birth\": this.allClientData.date_of_birth,\r\n \"gender\": this.allClientData.gender,\r\n \"location\": this.allClientData.location,\r\n \"second_mobile_country_code\": this.allClientData.second_mobile_country_code,\r\n \"second_mobile_number\": this.allClientData.second_mobile_number,\r\n \"preferred_language\": this.allClientData.preferred_language,\r\n \"place_id\": this.allClientData.place_id,\r\n \"address\": this.allClientData.address,\r\n \"city_code\": this.allClientData.city_code,\r\n \"state_code\":this.allClientData.state_code,\r\n \"country_code\": this.allClientData.country_code,\r\n \"address_pin_code\": this.allClientData.address_pin_code,\r\n \"emergency_contact_number\": this.allClientData.emergency_contact_number,\r\n \"emergency_contact_person\": this.allClientData.emergency_contact_person,\r\n \"source\": this.allClientData.source,\r\n \"channel\": this.allClientData.channel,\r\n \"heartrate_monitoring_id\": this.allClientData.heartrate_monitoring_id,\r\n \"referred_by\": this.allClientData.referred_by,\r\n \"promotional_sms\": this.allClientData.promotional_sms,\r\n \"promotional_email\": this.allClientData.promotional_email,\r\n \"medical_alert\": this.allClientData.medical_alert,\r\n \"note\": this.allClientData.note,\r\n \"taxnumber\":this.allClientData.taxnumber,\r\n \"custom_fields\":this.allClientData.custom_fields,\r\n \"current_keyfob\": this.KeyBobNumber.value ? this.KeyBobNumber.value : this.allClientData.current_keyfob ,\r\n \"client_representative_id\": this.allClientData.client_representative_id,\r\n \"createdin_tenant_id\": this.allClientData.createdin_tenant_id,\r\n \"place_id_request\": this.allClientData.place_id_request,\r\n \"migration_id\": this.allClientData.migration_id,\r\n \"image_base64\": this.allClientData.image_base64,\r\n \"password\": this.allClientData.password\r\n }\r\n this.clientService.updateClientById(this.allClientData.id, this.allClientData.home_club_tenant_id, updateProfileData).subscribe({\r\n next: (res)=>{\r\n console.log('res', res)\r\n this.closeDialogEvent()\r\n },\r\n error: (error)=>{\r\n console.log('errrr', error)\r\n if (error instanceof NotFoundError) {\r\n \r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: error.originalError.error[0].errorMessage});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n }\r\n )\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [AssignKeyFobComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [AssignKeyFobComponent]\r\n})\r\nexport class AssignKeyFobComponentModule {\r\n}\r\n","\r\n\r\n\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n

\r\n {{'CLIENT_PROFILE.KYE_FOB.ASSIGN_KEY_FOB_FOR' | translate}} {{$.allClientData.full_name}} \r\n - {{$.allClientData.id}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n {{$.allClientData.current_keyfob}}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n","import {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n HostListener,\r\n Input,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\r\nimport { ClientService } from '@fitness-force/api';\r\nimport {\r\n CreateOpportunityComponentModule,\r\n CreateSmsComponentModule,\r\n FactoryHttpLoader,\r\n ProspectListActionsComponentModule,\r\n SendEmailComponentModule,\r\n TaskCreateComponentModule,\r\n timeLineService,\r\n} from '@fitness-force/shared';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n STAFF_STATE,\r\n STAGE_MASTER_STATE,\r\n TENANTS_INFO,\r\n} from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MessageService } from 'primeng/api';\r\nimport {\r\n BehaviorSubject,\r\n Observable,\r\n Subject,\r\n switchMap,\r\n combineLatest,\r\n map,\r\n} from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { DateTimeFormatPipeModule } from '../../../filters/datetimeformat.pipe';\r\nimport { CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { MemberCrownComponentModule } from '../../data-grid/utility/member-crown/member-crown.component';\r\nimport { MemberSinceComponentModule } from '../../data-grid/utility/member-since/member-since.component';\r\n\r\nimport { SubscriptionListComponentModule } from '../subscription-list/subscription-list.component';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BdayPipeModule } from '../../../filters/bday.pipe';\r\nimport { TextTransFormPipeModule } from '../../../filters/text-transform.pipe';\r\nimport { STAGE_MASTER_MODEL } from '@fitness-force/models';\r\n@Component({\r\n selector: 'basic-info',\r\n templateUrl: './basic-info-header.component.html',\r\n styleUrls: ['./basic-info-header.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BasicInfoComponent implements OnInit {\r\n\r\n @Input('activeTab') activeTab: string = 'Subscription';\r\n\r\n toggleSendEmailDialog$: any = new BehaviorSubject(false);\r\n toggleCreateSmsDialog$: any = new BehaviorSubject(false);\r\n getAccessTenantList$: Observable | any | null;\r\n allTenants: any = [];\r\n tenantId: number = 0;\r\n allStaffs: any = [];\r\n allClients$ = new BehaviorSubject(null);\r\n stageMaster$: Observable = new Subject();\r\n tags: string[];\r\n\r\n editorText: string | undefined;\r\n\r\n channels: any;\r\n selectedChannel: { name: string };\r\n\r\n templates: any;\r\n selectedTemplate: { name: string } | any;\r\n\r\n attachments: any;\r\n selectedAttachment: { name: string };\r\n\r\n followUpDate: Date;\r\n\r\n tableData: any;\r\n showMoreTags: boolean = true;\r\n\r\n shareAppModal: boolean = false;\r\n sendEmailModal: boolean = false;\r\n sendEmailModal2: boolean = false;\r\n showEmailPreview: boolean = false;\r\n sendSMSModal: boolean = false;\r\n sendSMSModal2: boolean = false;\r\n createTemplateModal: boolean = false;\r\n showSmsToast: boolean = false;\r\n\r\n blockProfileModal: boolean = false;\r\n selectedtenant: any;\r\n showCreateOpportunityPopup = false;\r\n showTaskCreate: boolean = false;\r\n clientIds: number[] = [];\r\n isTabMenuSticky: boolean = false;\r\n\r\n clientDetails: any;\r\n clientId: number = 0;\r\n\r\n constructor(\r\n private store: Store,\r\n private clientService: ClientService,\r\n private messageService: MessageService,\r\n private activatedRouter: ActivatedRoute,\r\n public changeDetectorRef: ChangeDetectorRef,\r\n private translate: TranslateService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n componentInit() {\r\n this.tags = ['New Member', 'High Value', 'Allergy'];\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.stageMaster$ = this.store.select(STAGE_MASTER_STATE);\r\n\r\n const getClientDetails$ = this.activatedRouter.params.pipe(\r\n switchMap((r: any) => {\r\n this.clientId = r.clientid;\r\n this.clientIds.push(r.clientid);\r\n return combineLatest([\r\n this.store.select(STAFF_STATE),\r\n this.store.select(TENANTS_INFO),\r\n this.clientService.getClientById(r.clientid),\r\n ]);\r\n })\r\n );\r\n\r\n getClientDetails$.subscribe((res) => {\r\n this.allStaffs = res[0].staffList;\r\n this.allTenants = res[1].accessed_tenant;\r\n this.tenantId = res[1].selected_tenant.id;\r\n this.selectedtenant = res[1].selected_tenant;\r\n this.clientDetails = res[2];\r\n this.allClients$.next(res[2] ? res[2] : []);\r\n });\r\n }\r\n @HostListener('window:scroll', ['$event']) stickyProfileInfo() {\r\n if (window.scrollY > 200) {\r\n this.isTabMenuSticky = true;\r\n } else {\r\n this.isTabMenuSticky = false;\r\n }\r\n }\r\n\r\n changeInAction(e: any) {\r\n this.componentInit();\r\n }\r\n\r\n addTags() {\r\n this.showMoreTags = false;\r\n this.tags = [\r\n 'New Member',\r\n 'High Value',\r\n 'Allergy',\r\n 'New Member',\r\n 'High Value',\r\n 'Allergy',\r\n 'New Item',\r\n ];\r\n }\r\n isBday(bDate: string): boolean {\r\n if (timeLineService(bDate).label.toLowerCase() == 'today') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n memberSince(fromDate: string) {\r\n return timeLineService(fromDate);\r\n }\r\n\r\n crownType(clientSince: string) {\r\n let ValidDate = new Date(clientSince);\r\n if (!isNaN(ValidDate.getDate())) {\r\n return { crown: 'silver-crown', coin: 'less-spent-icon' };\r\n }\r\n const duration = timeLineService(clientSince);\r\n if (\r\n duration.timeline !== 'day' &&\r\n duration.value >= 1 &&\r\n duration.value < 3 &&\r\n duration.type == 'ago'\r\n ) {\r\n return { crown: 'silver-crown', coin: 'less-spent-icon' };\r\n } else if (\r\n duration.timeline !== 'day' &&\r\n duration.value >= 3 &&\r\n duration.value < 5 &&\r\n duration.type == 'ago'\r\n ) {\r\n return { crown: 'gray-crown', coin: 'medium-spent-icon' };\r\n } else if (\r\n duration.timeline !== 'day' &&\r\n duration.value >= 5 &&\r\n duration.type == 'ago'\r\n ) {\r\n return { crown: 'gold-crown', coin: 'most-spent-icon' };\r\n } else {\r\n return { crown: 'default', coin: 'default' };\r\n }\r\n }\r\n\r\n toggleSendEmailDialog() {\r\n this.toggleSendEmailDialog$.next(true);\r\n }\r\n closeSendEmailDialog(e: boolean) {\r\n this.toggleSendEmailDialog$.next(false);\r\n }\r\n\r\n toggleCreateSmsDialog() {\r\n this.toggleCreateSmsDialog$.next(true);\r\n }\r\n closeCreateSmsDialog(e: boolean) {\r\n this.toggleCreateSmsDialog$.next(false);\r\n }\r\n hideOpportunity(isHide: any) {\r\n this.showCreateOpportunityPopup = false;\r\n }\r\n HideTaskCreate(e: any) {\r\n this.showTaskCreate = false;\r\n }\r\n newTask() {\r\n this.showTaskCreate = true;\r\n }\r\n\r\n goToTransactionTab() {\r\n this.router.navigate(['/client/profile', this.clientId, 'transaction']);\r\n }\r\n goToSubscriptionTab() {\r\n this.router.navigate(['/client/profile', this.clientId]);\r\n }\r\n\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.client_status)\r\n return this.clientService.getClientStatusHtml(client.client_status.toString());\r\n else\r\n return '';\r\n }\r\n\r\n getStageStatus(stageMasterid: number): Observable {\r\n return this.store.select(STAGE_MASTER_STATE).pipe(\r\n map((value: STAGE_MASTER_MODEL[]) => value.find(obj => obj.id == stageMasterid)?.name_primary_language)\r\n );\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [BasicInfoComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DropdownModule,\r\n AvatarModule,\r\n TagModule,\r\n StyleClassModule,\r\n ChipsModule,\r\n DialogModule,\r\n MessagesModule,\r\n MessageModule,\r\n TableModule,\r\n OverlayPanelModule,\r\n BlockUIModule,\r\n EditorModule,\r\n PasswordModule,\r\n DateTimeFormatPipeModule,\r\n CurrencyformatPipeModule,\r\n\r\n SendEmailComponentModule,\r\n CreateSmsComponentModule,\r\n CreateOpportunityComponentModule,\r\n TaskCreateComponentModule,\r\n RouterModule,\r\n DividerModule,\r\n TimelineModule,\r\n ToastModule,\r\n BdayPipeModule,\r\n SubscriptionListComponentModule,\r\n MemberCrownComponentModule,\r\n MemberSinceComponentModule,\r\n ProspectListActionsComponentModule,\r\n TextTransFormPipeModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ShortNamePipeModule,\r\n ],\r\n exports: [BasicInfoComponent],\r\n})\r\nexport class BasicInfoComponentModule { }\r\n","
\r\n\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {{s.name_primary_language | titlecase}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \"Icon\"\r\n \"Icon\"\r\n
\r\n
\r\n \r\n

{{client.full_name}}\r\n

\r\n

- {{client.id}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \"Birthday\"\r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n \"Icon\"\r\n \"Icon\"\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ getStageStatus(s.stage_master_id) | async }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{client.full_name}}

\r\n

- {{client.id}}

\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CLIENT_PROFILE.SMS' | translate}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CLIENT_PROFILE.EMAIL' | translate}}
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n
    \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.PENDING_AMOUNT' | translate}} -\r\n  {{client.total_outstanding_in_minor_currency | currencyformat}}.00\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.MOBILE' | translate}} -\r\n  {{client.mobile_country_code}}\r\n {{client.mobile_number}}\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.APP' | translate}} - \r\n  {{'CLIENT_PROFILE.INSTALLED' |\r\n translate}}\r\n  {{'CLIENT_PROFILE.NOT_INSTALLED' | translate}}\r\n ({{'CLIENT_PROFILE.SEND_LINK' |\r\n translate}})\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.BIRTHDAY' | translate}} - \r\n  {{client.date_of_birth | datetimeformat: 'mediumDate'}}\r\n Not Specified\r\n
  • \r\n
\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n

{{'CLIENT_PROFILE.HOME_CLUB' | translate}}

\r\n \r\n

{{tenant.status}}\r\n {{tenant.name_primary_language}}, {{tenant.city}}

\r\n
\r\n\r\n\r\n
\r\n
\r\n

{{'CLIENT_PROFILE.MEMBER_SINCE' | translate}}

\r\n\r\n

\r\n {{client.client_since | datetimeformat: 'mediumDate'}}\r\n ({{memberSince(client.client_since).exact}})\r\n \"Icon\"\r\n

\r\n\r\n

Not Specified

\r\n
\r\n
\r\n

{{'CLIENT_PROFILE.LIFETIME_VALUE' | translate}}

\r\n

\r\n {{client.lifetime_value | currencyformat}}\r\n\r\n \"Icon\"\r\n

\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \"Icon\"\r\n
\r\n
\r\n \r\n {{client.full_name}}\r\n \r\n
\r\n
\r\n \r\n \r\n {{ getStageStatus(s.stage_master_id) | async }}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n
\r\n\r\n
\r\n MEMBER\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{'CLIENT_PROFILE.SMS' | translate}}
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
{{'CLIENT_PROFILE.EMAIL' | translate}}
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n

{{'CLIENT_PROFILE.HOME_CLUB' | translate}}

\r\n \r\n

{{tenant.status}}\r\n {{tenant.name_primary_language}}, {{tenant.city}}

\r\n
\r\n
\r\n
\r\n

{{'CLIENT_PROFILE.MEMBER_SINCE' | translate}}

\r\n

\r\n {{client.client_since | datetimeformat: 'mediumDate'}}\r\n ({{memberSince(client.client_since).exact}})\r\n \r\n \"Icon\"\r\n

\r\n
\r\n
\r\n

{{'CLIENT_PROFILE.LIFETIME_VALUE' | translate}}

\r\n

\r\n {{client.lifetime_value | currencyformat}}.00\r\n \"Icon\"\r\n

\r\n
\r\n
\r\n\r\n \r\n
    \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.PENDING_AMOUNT' | translate}} -\r\n  {{client.total_outstanding_in_minor_currency | currencyformat}}.00\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.MOBILE' | translate}} # -\r\n  {{client.mobile_country_code}} {{client.mobile_no}}\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.APP' | translate}} - \r\n  {{'CLIENT_PROFILE.INSTALLED' | translate}}\r\n  {{'CLIENT_PROFILE.NOT_INSTALLED' | translate}}\r\n ({{'CLIENT_PROFILE.SEND_LINK' |\r\n translate}})\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'CLIENT_PROFILE.BIRTHDAY' | translate}} -  {{client.date_of_birth | datetimeformat: 'mediumDate'}}\r\n
  • \r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n

Share App link via Email or SMS with Andrea\r\n Solan - 45653663

\r\n\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n Share link via SMS\r\n
\r\n

Link shared 2 mins ago.

\r\n
\r\n
\r\n\r\n
\r\n Share link via Email\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n \r\n
\r\n \"Apple\r\n \"Apple\r\n
\r\n Link for Apple Appstore and Google Play store will be sent to the\r\n customer.\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n

Send email for Andrea Solan

\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n From:\r\n Anytime Fitness, Juhu\r\n
\r\n \r\n\r\n \r\n
\r\n To:\r\n Davis Macey 560901 (andrea@andreasolan.com)\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n {{selectedAttachment.name}}\r\n \r\n \r\n
{{attachment.name}}
\r\n
\r\n
\r\n\r\n \r\n \r\n {{selectedTemplate.name}}\r\n \r\n \r\n
{{template.name}}
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n
\r\n

Create SMS for Andrea Solan

\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n From:\r\n Anytime Fitness, Juhu\r\n
\r\n \r\n\r\n \r\n
\r\n To:\r\n Davis Macey 560901 (+91 9898987678)\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n {{selectedAttachment.name}}\r\n \r\n \r\n
{{attachment.name}}
\r\n
\r\n
\r\n\r\n \r\n \r\n {{selectedTemplate.name}}\r\n \r\n \r\n
{{template.name}}
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n
\r\n

Create a New Template

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n

Please enter a new template name:\r\n

\r\n \r\n\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n App link shared via SMS\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","import { RouterModule, Routes } from '@angular/router';\r\nimport { ClientService } from '@fitness-force/api';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, AfterViewInit } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, Validators, FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { BadRequestError, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { confirmationTextValidator, FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { TranslateModule, TranslateLoader, TranslateService } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ShortNamePipeModule } from '../../../filters/name-initials.pipe'\r\n@Component({\r\n selector: 'block-client',\r\n templateUrl: './block-client.component.html',\r\n styleUrls: ['./block-client.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BlockClientComponent implements OnInit {\r\n @Input() blockClientModal: boolean | null = false;\r\n @Input() clientData$:any = new BehaviorSubject(null)\r\n @Output() closeBlockClientDialog = new EventEmitter()\r\n\r\n blockClientFromGroup: FormGroup = new FormGroup({})\r\n\r\n allClientData:any\r\n constructor(private fb: FormBuilder, public translate: TranslateService, private clientService: ClientService, private messageService: MessageService) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n\r\n componentInit(){\r\n this.blockClientFromGroup = this.fb.group({\r\n confirmationText: [''],\r\n confirmationDescription: [''],\r\n clientName: []\r\n })\r\n this.clientData$.subscribe(\r\n (client:any)=>{\r\n this.allClientData = client\r\n\r\n if(this.allClientData.is_blacklisted){\r\n this.ConfirmationText.setValidators([Validators.required, confirmationTextValidator('clientName','unblocked', false)]);\r\n\r\n } else {\r\n this.ConfirmationText.setValidators([Validators.required, confirmationTextValidator('clientName','blocked', false)]);\r\n this.ConfirmationDescription.setValidators([Validators.required]);\r\n }\r\n this.ClientName.setValue(this.allClientData.full_name)\r\n })\r\n\r\n\r\n }\r\n closeDialogEvent(action:string|null=null){\r\n this.closeBlockClientDialog.emit({close:true,action})\r\n this.ConfirmationDescription.setValidators(null);\r\n }\r\n\r\n blockUnBlockClient(){\r\n const blockClientModel = {\r\n \"reason\": this.ConfirmationDescription.value\r\n }\r\n if(this.allClientData.is_blacklisted){\r\n this.clientService.clientRemoveFromBlacklist(this.allClientData.id, this.allClientData.home_club_tenant_id).subscribe({\r\n next: (res:any) =>{\r\n // console.log('resunblocked', res)\r\n this.messageService.add({severity:'success', summary:'Success!', detail: `${this.allClientData.full_name} has been unblocked.`});\r\n this.closeDialogEvent(\"block\");\r\n },\r\n error: (error)=>{\r\n // console.log('errrr', error)\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: error.originalError.error[0].errorMessage});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n })\r\n } else {\r\n this.clientService.clientAddToBlacklist(this.allClientData.id,this.allClientData.home_club_tenant_id, blockClientModel).subscribe({\r\n next: (res:any) =>{\r\n // console.log('resonblocked', res)\r\n this.messageService.add({severity:'success', summary:'Success!', detail: `${this.allClientData.full_name} has been blocked.`});\r\n this.closeDialogEvent(\"unblock\")\r\n },\r\n error: (error)=>{\r\n // console.log('errrr', error)\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: error.originalError.error[0].errorMessage});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n })\r\n }\r\n }\r\n get ConfirmationText(): FormControl{\r\n return this.blockClientFromGroup.get('confirmationText') as FormControl;\r\n }\r\n get ConfirmationDescription(): FormControl{\r\n return this.blockClientFromGroup.get('confirmationDescription') as FormControl;\r\n }\r\n\r\n get ClientName(): FormControl{\r\n return this.blockClientFromGroup.get('clientName') as FormControl;\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [BlockClientComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n InputTextareaModule,\r\n PasswordModule,\r\n ShortNamePipeModule,\r\n AvatarModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [BlockClientComponent]\r\n})\r\nexport class BlockClientComponentModule {\r\n}\r\n","\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n

{{'BLOCK_CLIENT.BLOCK' | translate}}{{'BLOCK_CLIENT.UNBLOCK' | translate}}\r\n {{allClientData.full_name}}{{'BLOCK_CLIENT.CLIENT_PROFILE' | translate}}

\r\n

{{'BLOCK_CLIENT.ARE_YOU_SURE_YOU_WANT_TO_BLOCK' | translate}} {{'BLOCK_CLIENT.BLOCK' | translate}} {{'BLOCK_CLIENT.UNBLOCK' | translate}}\r\n {{'BLOCK_CLIENT.THIS_PROFILE' | translate}}

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n {{'BLOCK_CLIENT.PLEASE_CONFIRM' | translate}}{{allClientData.full_name}}\r\n {{'BLOCK_CLIENT.CAN_BE' | translate}} {{'BLOCK_CLIENT.BLOCKED' | translate}} {{'BLOCK_CLIENT.UNBLOCKED' | translate}}{{'BLOCK_CLIENT.ON_THE_BELOW_TEXT_BOX' | translate}}\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {{'BLOCK_CLIENT.REASON_FOR_BLOCKING' | translate}} {{allClientData.full_name}}
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
    \r\n
  1. {{'BLOCK_CLIENT.CONTENT_LINE_1' | translate}}
  2. \r\n
  3. {{'BLOCK_CLIENT.CONTENT_LINE_2' | translate}}
  4. \r\n
  5. {{'BLOCK_CLIENT.CONTENT_LINE_3' | translate}}
  6. \r\n
  7. {{'BLOCK_CLIENT.CONTENT_LINE_4' | translate}}
  8. \r\n
  9. {{'BLOCK_CLIENT.CONTENT_LINE_5' | translate}}
  10. \r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\n\r\n@Component({\r\n selector: 'client-profile-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ChangePasswordComponent implements OnInit {\r\n @Input() changePasswordModal: boolean | null = false;\r\n @Output() closechangePasswordDialog = new EventEmitter()\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ChangePasswordComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n PasswordModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [ChangePasswordComponent]\r\n})\r\nexport class ChangePasswordComponentModule {\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

Change Password for Andrea Solan \r\n - 45653663\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n

New Password

\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

Confirm New Password

\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
    \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n At least 8 characters long\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n One lowercase character\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n One uppercase character\r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n One number, symbol, or whitespace character\r\n
  • \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n","import { ClientService } from '@fitness-force/api';\r\nimport { Store } from '@ngrx/store';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';\r\nimport { BadRequestError, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { AssignedToComponentModule, FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject, concatMap } from 'rxjs';\r\nimport { STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'change-sales-representative',\r\n templateUrl: './change-sales-representative.component.html',\r\n styleUrls: ['./change-sales-representative.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ChangeSalesRepresentativeComponent implements OnInit {\r\n @Input() changeRepresentativeModal: boolean | null = false;\r\n @Input() clientData$ = new BehaviorSubject(null)\r\n @Output() closeChangeRepresentativeDialog = new EventEmitter()\r\n attachments: any;\r\n allClientData$ = new BehaviorSubject({})\r\n clientData:any\r\n currentStaff$ = new BehaviorSubject({})\r\n selectedStaff$ = new BehaviorSubject({})\r\n allStaffs$ = new BehaviorSubject([])\r\n updateClientRepFormGroup: FormGroup = new FormGroup({})\r\n isClientRepresentative = new BehaviorSubject(true);\r\n claims: string[] = ['can_be_client_rep'];\r\n\r\n constructor(private store: Store, public translate: TranslateService, private clientService: ClientService, private fb: FormBuilder, private messageService: MessageService) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n componentInit(){\r\n this.updateClientRepFormGroup = this.fb.group({\r\n newRepresentative: ['', [Validators.required]]\r\n })\r\n this.clientData$.subscribe(\r\n (client:any)=>{\r\n this.allClientData$.next(client)\r\n this.isClientRepresentative.next(false)\r\n this.clientData = client\r\n console.log('allClientData', this.allClientData$)\r\n this.store.select(STAFF_STATE).subscribe((staff:any)=>{\r\n this.allStaffs$.next(staff.staffListAll)\r\n const defaultStaff = staff.staffListAll.find((s:any) => client.client_representative_id == s.id)\r\n this.currentStaff$.next(defaultStaff)\r\n this.selectedStaff$.next(defaultStaff)\r\n this.NewRepresentative.setValue(defaultStaff.id)\r\n console.log('staffff', staff)\r\n })\r\n })\r\n }\r\n get NewRepresentative(): FormControl{\r\n return this.updateClientRepFormGroup.get('newRepresentative') as FormControl;\r\n }\r\n selectStaff(staff:any){\r\n this.selectedStaff$.next(staff)\r\n this.NewRepresentative.setValue(staff.id)\r\n }\r\n closeDialogEvent(){\r\n this.closeChangeRepresentativeDialog.emit(false)\r\n }\r\n updateClientRepresentative(){\r\n console.log('NewRepresentative', this.NewRepresentative.value)\r\n const client_rep_model = {\r\n \"home_club_tenant_id\": this.clientData.home_club_tenant_id,\r\n \"full_name\": this.clientData.full_name,\r\n \"mobile_country_code\": this.clientData.mobile_country_code,\r\n \"mobile_number\": this.clientData.mobile_number,\r\n \"email_id\": this.clientData.email_id,\r\n \"date_of_birth\": this.clientData.date_of_birth,\r\n \"gender\": this.clientData.gender,\r\n \"location\": this.clientData.location,\r\n \"second_mobile_country_code\": this.clientData.second_mobile_country_code,\r\n \"second_mobile_number\": this.clientData.second_mobile_number,\r\n \"preferred_language\": this.clientData.preferred_language,\r\n \"place_id\": this.clientData.place_id,\r\n \"address\": this.clientData.address,\r\n \"city_code\": this.clientData.city_code,\r\n \"state_code\":this.clientData.state_code,\r\n \"country_code\": this.clientData.country_code,\r\n \"address_pin_code\": this.clientData.address_pin_code,\r\n \"emergency_contact_number\": this.clientData.emergency_contact_number,\r\n \"emergency_contact_person\": this.clientData.emergency_contact_person,\r\n \"source\": this.clientData.source,\r\n \"channel\": this.clientData.channel,\r\n \"heartrate_monitoring_id\": this.clientData.heartrate_monitoring_id,\r\n \"referred_by\": this.clientData.referred_by,\r\n \"promotional_sms\": this.clientData.promotional_sms,\r\n \"promotional_email\": this.clientData.promotional_email,\r\n \"medical_alert\": this.clientData.medical_alert,\r\n \"note\": this.clientData.note,\r\n \"taxnumber\":this.clientData.taxnumber,\r\n \"custom_fields\":this.clientData.custom_fields,\r\n \"current_keyfob\": this.clientData.current_keyfob,\r\n \"client_representative_id\": this.NewRepresentative.value.id,\r\n \"createdin_tenant_id\": this.clientData.createdin_tenant_id,\r\n \"place_id_request\": this.clientData.place_id_request,\r\n \"migration_id\": this.clientData.migration_id,\r\n \"image_base64\": this.clientData.image_base64,\r\n \"password\": this.clientData.password\r\n }\r\n \r\n \r\n this.allClientData$.subscribe((client:any)=>{\r\n this.clientService.changeClientRepresentative(client.id, client.home_club_tenant_id, client_rep_model).subscribe({\r\n next:(res:any)=>{\r\n this.closeDialogEvent()\r\n this.messageService.add({severity:'success', summary:'Success!', detail: `${client.full_name} has been assinged.`});\r\n },\r\n error: (error)=>{\r\n console.log('errrr', error)\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: error.originalError.error[0].errorMessage});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n })\r\n })\r\n \r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ChangeSalesRepresentativeComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n PasswordModule,\r\n ShortNamePipeModule,\r\n AvatarModule,\r\n AssignedToComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [ChangeSalesRepresentativeComponent]\r\n})\r\nexport class ChangeSalesRepresentativeComponentModule {\r\n}\r\n","\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n

{{'SALE_REPRESENTATIVE.CHANGE_SALES_REP' | translate}} {{$.client.full_name}}\r\n - {{$.client.id}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{$.staff.name}}\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n","import { SmsService } from './../../../../../../api/src/lib/sms/sms.service';\r\nimport { Store } from '@ngrx/store';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormGroup, FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { BadRequestError, ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject, NotFoundError, Observable } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { MessageService } from 'primeng/api';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\n\r\n@Component({\r\n selector: 'create-sms',\r\n templateUrl: './create-sms.component.html',\r\n styleUrls: ['./create-sms.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CreateSmsComponent implements OnInit {\r\n @Input() createSmsModal: boolean | null = false;\r\n @Input() clientData$ = new BehaviorSubject(null)\r\n @Output() closeCreateSmsDialog = new EventEmitter()\r\n\r\n smsUtilityForm: FormGroup = new FormGroup({})\r\n smsFormGroup: FormGroup = new FormGroup({})\r\n attachments: any;\r\n selectedAttachment: { name: string } | undefined;\r\n editorText: string | undefined;\r\n allClientData$ = new BehaviorSubject([])\r\n getAccessTenantList$: Observable\r\n selectedtenant:any\r\n clientData:any\r\n allSmsTemplates$ = new BehaviorSubject([])\r\n constructor(private store: Store, private smsService: SmsService, public translate: TranslateService, private fb: FormBuilder, private messageService: MessageService) { }\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n componentInit(){\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.selectedtenant = tenant.selected_tenant\r\n\r\n })\r\n this.clientData$.subscribe(\r\n (client:any)=>{\r\n this.clientData = client\r\n\r\n this.allClientData$.next(client)\r\n })\r\n this.smsUtilityForm = this.fb.group({\r\n smsTemplates: ['']\r\n })\r\n this.smsFormGroup = this.fb.group({\r\n smsDesc: ['', [Validators.required]]\r\n })\r\n this.fetchSmsTemplates()\r\n }\r\n get SmsTemplates(): FormControl {\r\n return this.smsUtilityForm.get('smsTemplates') as FormControl\r\n }\r\n get SmsDesc(): FormControl{\r\n return this.smsFormGroup.get('smsDesc') as FormControl\r\n }\r\n closeDialogEvent(){\r\n this.closeCreateSmsDialog.emit(false)\r\n }\r\n fetchSmsTemplates(){\r\n this.smsService.fetchAllSMSTemplates(this.selectedtenant.id).subscribe((tenantData:any)=>{\r\n\r\n this.allSmsTemplates$.next(tenantData.items)\r\n })\r\n }\r\n sendSms(){\r\n const sendSmsModal = {\r\n \"tenant_id\": this.selectedtenant.id,\r\n \"oppotunity_id\": 0,\r\n \"task_id\": 0,\r\n \"template_master_id\": this.SmsTemplates.value.id,\r\n \"custom_content\": this.SmsTemplates.value.id ? null: this.SmsDesc.value\r\n }\r\n this.smsService.sendSMSTemplates(this.clientData.id, sendSmsModal).subscribe({\r\n next: (res:any)=>{\r\n\r\n this.messageService.add({severity:'success', summary:'Success!', detail: `SMS sent successfully`});\r\n },\r\n error:(error:any)=>{\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: 'Bad Request'});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n })\r\n }\r\n selectedTemplate(){\r\n const selectedTempId = this.SmsTemplates.value.id\r\n this.smsService.fetchSMSTemplatesById(this.selectedtenant.id, selectedTempId).subscribe((res:any)=>{\r\n this.SmsDesc.setValue(res.body_primary_language)\r\n })\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [CreateSmsComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n PasswordModule,\r\n FileUploadModule,\r\n InputTextareaModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [CreateSmsComponent]\r\n})\r\nexport class CreateSmsComponentModule {\r\n}\r\n","\r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n

{{'SMS.CREATE_SMS_FOR' | translate}} {{$.client.full_name}}

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n {{'SMS.FROM' | translate}}\r\n {{$.tenants?.selected_tenant?.name_primary_language}}, {{$.tenants?.selected_tenant?.city}}\r\n
\r\n \r\n\r\n \r\n
\r\n {{'SMS.TO' | translate}}\r\n \r\n {{c?.full_name}} {{ c?.id}} ({{ c?.mobile_country_code}} {{c?.mobile_number}}),\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{SmsTemplates.value.name_primary_language}}\r\n \r\n \r\n
{{template.name_primary_language}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n","import { ClientService } from '@fitness-force/api';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FormsModule, ReactiveFormsModule, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, EventEmitter, Output, ViewChild, ElementRef } from '@angular/core';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BlockUIModule} from 'primeng/blockui';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BadRequestError, ErrorMsgComponentModule, NotFoundError, UnauthorizedError } from '@fitness-force/errors';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { ClientChannel, ClientGender, EnquirySource, Gender } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'edit-profile',\r\n templateUrl: './edit-profile.component.html',\r\n styleUrls: ['./edit-profile.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EditProfileComponent implements OnInit {\r\n \r\n @Input() editProfileModal: boolean | null = false;\r\n @Input() clientData$ = new BehaviorSubject(null)\r\n @Output() closeEditProfileDialog = new EventEmitter()\r\n @ViewChild(\"uploadClientImage\") uploadClientImage: ElementRef;\r\n \r\n\r\n editProfileFormGroup: FormGroup = new FormGroup({})\r\n channelSource:string = EnquirySource.phone\r\n promotionPreferenceMap = new Map()\r\n \r\n selectedGender: { name: string };\r\n uploadedImageSrc = null\r\n allClientData:any\r\n clientInputData$ = new BehaviorSubject(null)\r\n EnumGender = Object.entries(ClientGender).filter(key => typeof key[1] != 'number').map(([key, value]) => ({ key, value }));\r\n channelCollection: any[] = [\r\n { channel: ClientChannel[ClientChannel.Online], source: ['Facebook', 'Website', 'Instagram', 'Class Pass', 'Gym Pass'] },\r\n { channel: ClientChannel[ClientChannel.WalkIn], source: ['Hoarding', 'Referral', 'Passing By'] },\r\n { channel: ClientChannel[ClientChannel.Phone], source: ['Hoarding', 'Website', 'Referral', 'Passing By'] },\r\n { channel: ClientChannel[ClientChannel.DataEntry], source: ['Pop-up Store', 'Referral'] },\r\n ];\r\n constructor(private fb: FormBuilder,public translate: TranslateService, private clientService: ClientService, private messageService: MessageService,) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n componentInit(){\r\n this.editProfileFormGroup = this.fb.group({\r\n mobileNumber: ['', [Validators.required]],\r\n fullName: ['', [Validators.required]],\r\n gender: ['', [Validators.required]],\r\n emailId: ['', [Validators.required, Validators.email]],\r\n channel: ['', [Validators.required]],\r\n source: ['', [Validators.required]],\r\n referedBy: ['', []],\r\n promotionPreferance: ['', [Validators.required]],\r\n clientProfile: ['', [Validators.required]]\r\n })\r\n \r\n this.addProfileData();\r\n\r\n this.editProfileFormGroup.controls.channel.valueChanges.subscribe((mode: any) => {\r\n if (mode && mode.channel) {\r\n this.editProfileFormGroup.controls.source.setValidators([Validators.required]);\r\n }\r\n else {\r\n this.editProfileFormGroup.controls.source.clearValidators();\r\n }\r\n this.editProfileFormGroup.controls.source.updateValueAndValidity();\r\n });\r\n }\r\n get MobileNumber(): FormControl{\r\n return this.editProfileFormGroup.get('mobileNumber') as FormControl;\r\n }\r\n get FullName(): FormControl{\r\n return this.editProfileFormGroup.get('fullName') as FormControl;\r\n }\r\n get Gender(): FormControl{\r\n return this.editProfileFormGroup.get('gender') as FormControl;\r\n }\r\n get EmailId(): FormControl{\r\n return this.editProfileFormGroup.get('emailId') as FormControl;\r\n }\r\n get Channel(): FormControl{\r\n return this.editProfileFormGroup.get('channel') as FormControl;\r\n }\r\n get SourceControl(): FormControl { return this.editProfileFormGroup.controls.source as FormControl; }\r\n\r\n get ReferedBy(): FormControl{\r\n return this.editProfileFormGroup.get('referedBy') as FormControl;\r\n }\r\n\r\n get PromotionPreferance(): FormControl{\r\n return this.editProfileFormGroup.get('promotionPreferance') as FormControl;\r\n }\r\n\r\n get ClientProfile(): FormControl{\r\n return this.editProfileFormGroup.get('clientProfile') as FormControl;\r\n }\r\n\r\n get Source(): string[] {\r\n return this.Channel.value.source;\r\n }\r\n\r\n set Channel(value: any) {\r\n this.Channel.setValue(value);\r\n }\r\n\r\n get DisableSource(): boolean {\r\n return !(this.Source && this.Source.length > 0);\r\n }\r\n\r\n GetSelectedGender(): ClientGender {\r\n let selectedGender: ClientGender = ClientGender.PreferNotToRespond;\r\n let gender = this.Gender.value;\r\n switch (String(gender.value).toLowerCase()) {\r\n case \"male\": selectedGender = ClientGender.Male; break;\r\n case \"female\": selectedGender = ClientGender.Female; break;\r\n case \"nonbinaryornonconforming\": selectedGender = ClientGender.NonBinaryOrNonConforming; break;\r\n case \"prefernottorespond\": selectedGender = ClientGender.PreferNotToRespond; break;\r\n case \"transgender\": selectedGender = ClientGender.Transgender; break;\r\n default: console.log('wrong gender selected'); break;\r\n }\r\n return selectedGender;\r\n }\r\n\r\n addProfileData(){\r\n this.clientData$.subscribe(\r\n (client:any)=>{\r\n this.allClientData = client\r\n this.MobileNumber.setValue(client.mobile_number)\r\n this.FullName.setValue(client.full_name)\r\n this.Gender.setValue(this.EnumGender.find(g => g.value == client.gender))\r\n this.EmailId.setValue(client.email_id)\r\n this.Channel.setValue(this.channelCollection.find(c=> c.channel.toLowerCase() == client.channel.toLowerCase())!);\r\n this.SourceControl.setValue(this.Channel.value.source.find((s: any)=> s.toLowerCase() == client.source.toLowerCase())!);\r\n this.channelSource = client.channel ? client.channel.toLowerCase() : '';\r\n this.promotionPreferenceMap.set(client.source.toLowerCase(), client.source.toLowerCase())\r\n this.PromotionPreferance.setValue(this.getPromotionPreferenceMapData)\r\n this.ClientProfile.setValue(client.image)\r\n })\r\n }\r\n\r\n closeDialogEvent(){\r\n this.closeEditProfileDialog.emit(false)\r\n }\r\n\r\n updateProfile(){\r\n const updateProfileData = {\r\n \"home_club_tenant_id\": this.allClientData.home_club_tenant_id,\r\n \"full_name\": this.FullName.value,\r\n \"mobile_country_code\": this.allClientData.mobile_country_code,\r\n \"mobile_number\": this.MobileNumber.value,\r\n \"email_id\": this.EmailId.value,\r\n \"date_of_birth\": this.allClientData.date_of_birth,\r\n \"gender\": this.GetSelectedGender(),\r\n \"location\": this.allClientData.location,\r\n \"second_mobile_country_code\": this.allClientData.second_mobile_country_code,\r\n \"second_mobile_number\": this.allClientData.second_mobile_number,\r\n \"preferred_language\":this.allClientData.preferred_language,\r\n \"place_id\": this.allClientData.place_id,\r\n \"address\":this.allClientData.address,\r\n \"city_code\": this.allClientData.city_code,\r\n \"state_code\": this.allClientData.state_code,\r\n \"country_code\": this.allClientData.country_code,\r\n \"address_pin_code\": this.allClientData.address_pin_code,\r\n \"emergency_contact_number\": this.allClientData.emergency_contact_number,\r\n \"emergency_contact_person\": this.allClientData.emergency_contact_person,\r\n \"source\": this.SourceControl.value,\r\n \"channel\": this.Channel.value.channel,\r\n \"heartrate_monitoring_id\": this.allClientData.heartrate_monitoring_id,\r\n \"referred_by\": this.allClientData.referred_by,\r\n \"promotional_sms\": this.hasPromotionalPreference('sms'),\r\n \"promotional_email\": this.hasPromotionalPreference('web'),\r\n \"medical_alert\": this.allClientData.medical_alert,\r\n \"note\": this.allClientData.note,\r\n \"taxnumber\":this.allClientData.taxnumber,\r\n \"custom_fields\": this.allClientData.custom_fields,\r\n \"current_keyfob\": this.allClientData.current_keyfob,\r\n \"client_representative_id\": this.allClientData.client_representative_id,\r\n \"createdin_tenant_id\": this.allClientData.createdin_tenant_id,\r\n \"place_id_request\": this.allClientData.place_id_request,\r\n \"migration_id\": this.allClientData.migration_id,\r\n \"image_base64\": this.ClientProfile.value ? this.ClientProfile.value.substr(this.ClientProfile.value.indexOf(',') + 1) : null,\r\n \"password\": this.allClientData.password\r\n }\r\n this.clientService.updateClientById(this.allClientData.id, this.allClientData.home_club_tenant_id, updateProfileData).subscribe({\r\n next: (res)=>{\r\n this.closeDialogEvent()\r\n },\r\n error: (error)=>{\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Page Not Found'});\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail: error.originalError.error[0].errorMessage});\r\n }\r\n else {\r\n this.messageService.add({severity:'error', summary:'Error has occured!', detail:'Something went wrong'});\r\n }\r\n }\r\n }\r\n )\r\n }\r\n\r\n promotionalPreferenceSelection(preference:string){\r\n if( this.promotionPreferenceMap.has(preference)){\r\n this.promotionPreferenceMap.delete(preference)\r\n } else {\r\n this.promotionPreferenceMap.set(preference, preference)\r\n }\r\n this.PromotionPreferance.setValue(this.getPromotionPreferenceMapData)\r\n }\r\n \r\n imageUpload(){\r\n const uploadedImageRef = this.uploadClientImage.nativeElement\r\n if (uploadedImageRef.files && uploadedImageRef.files[0]) {\r\n let fileToUpload = uploadedImageRef.files[0];\r\n let reader = new FileReader();\r\n reader.readAsDataURL(fileToUpload);\r\n reader.onloadend = (files:any) => {\r\n console.log('fileToUpload', fileToUpload,files.target.result)\r\n this.uploadedImageSrc = files.target.result\r\n this.ClientProfile.setValue(files.target.result)\r\n }\r\n }\r\n }\r\n \r\n hasPromotionalPreference(key:string){\r\n return this.promotionPreferenceMap.has(key)\r\n }\r\n get getPromotionPreferenceMapData(): Array {\r\n return [...this.promotionPreferenceMap.values()];\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [EditProfileComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [EditProfileComponent]\r\n})\r\nexport class EditProfileComponentModule {\r\n}\r\n"," \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n

{{'EDIT_CLIENT_PROFILE.EDIT_PROFILE_OF' | translate}}\r\n {{FullName.value | titlecase}} - {{$.id}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.MOBILE_NUMBER' | translate}}*

\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.FULL_NAME' | translate}}*

\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.GENDER' | translate}} *

\r\n \r\n \r\n
\r\n {{Gender.value.value}}\r\n
\r\n
\r\n \r\n
{{gender.value}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.EMAIL_ID' | translate}}

\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.CHANNEL' | translate}}

\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.ENQUIRY_SOURCE' | translate}}

\r\n \r\n \r\n
\r\n {{SourceControl.value}}\r\n
\r\n
\r\n \r\n
{{source}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.PROMOTIONAL_PREFRENCE' | translate}} *\r\n

\r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{'EDIT_CLIENT_PROFILE.CHANGE_PROFILE_PIC' | translate}}

\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n \r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {Component,OnInit,ChangeDetectionStrategy,NgModule,Input,EventEmitter,Output} from '@angular/core';\r\nimport {ReactiveFormsModule,FormsModule,FormGroup,FormBuilder} from '@angular/forms';\r\nimport { InvoiceService } from '@fitness-force/api';\r\nimport { AppErrors } from '@fitness-force/errors';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport {InputTextareaModule} from 'primeng/inputtextarea';\r\nimport { PdfViewerModule } from 'ng2-pdf-viewer';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { MessageService } from 'primeng/api';\r\nimport { voidInvoiceRequest } from '@fitness-force/models';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'invoice-details',\r\n templateUrl: './invoice-details.component.html',\r\n styleUrls: ['./invoice-details.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class InvoiceDetailsComponent implements OnInit {\r\n @Input('showInvoice') showInvoicePopup: boolean = false;\r\n @Input('invoiceDetails') invoiceDetails: any;\r\n @Input('clientId') clientId: number = 0;\r\n @Input('tenantId') tenantId: number = 0;\r\n\r\n @Output('closeInvoice') closeInvoice: EventEmitter =new EventEmitter();\r\n \r\n pdfSrc= new BehaviorSubject('');\r\n showVoidInvoiceModal: boolean = false;\r\n voidInvoiceForm: FormGroup = new FormGroup({});\r\n\r\n constructor(\r\n private invoiceService: InvoiceService,\r\n private translate: TranslateService,\r\n private messageService: MessageService,\r\n private fb: FormBuilder\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.GetInvoicePdf();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.voidInvoiceForm = this.fb.group({\r\n void_reason: [''],\r\n });\r\n }\r\n\r\n \r\n\r\n GetInvoicePdf() {\r\n this.invoiceService.getInvoicePDF(this.clientId, this.invoiceDetails.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n this.pdfSrc.next(data);\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n printInvoice() {\r\n window.open(this.pdfSrc.value, '_blank');\r\n }\r\n\r\n downloadInvoice() {\r\n var file = new Blob([this.pdfSrc.value], { type: 'application/pdf' });\r\n var fileURL = URL.createObjectURL(file);\r\n var a = document.createElement('a');\r\n a.href = fileURL;\r\n a.download = this.pdfSrc.value;\r\n document.body.appendChild(a);\r\n a.click();\r\n }\r\n\r\n SendInvoiceEmail() {\r\n this.invoiceService.SendEmail(this.clientId, this.invoiceDetails.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n this.translate\r\n .get('TRANSACTION.MSG.INVOICE_MAIL_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n deleteInvoice(form: FormGroup) {\r\n let voidRequest: voidInvoiceRequest = {} as voidInvoiceRequest;\r\n voidRequest.void_reason = form.value.void_reason;\r\n this.invoiceService.voidInvoice(\r\n this.tenantId,\r\n this.clientId,\r\n this.invoiceDetails.id,\r\n voidRequest\r\n )\r\n .subscribe({\r\n next: (data: any) => {\r\n this.translate\r\n .get('TRANSACTION.MSG.INVOICE_VOID_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n this.showVoidInvoiceModal= false;\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n closeInvoicePopup()\r\n {\r\n this.showInvoicePopup= false;\r\n this.closeInvoice.emit(false);\r\n }\r\n\r\n ShowToastErrors(error: any) {\r\n if (error.originalError.error.length > 0) {\r\n error.originalError.error.forEach((e: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: e.errorMessage,\r\n });\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: error.originalError.error.errorMessage,\r\n });\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [InvoiceDetailsComponent],\r\n imports: [\r\n CommonModule,\r\n DividerModule,\r\n TimelineModule,\r\n ToastModule,\r\n TableModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DropdownModule,\r\n AvatarModule,\r\n TagModule,\r\n InputTextareaModule,\r\n StyleClassModule,\r\n DialogModule,\r\n PdfViewerModule,\r\n OverlayPanelModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [InvoiceDetailsComponent],\r\n})\r\nexport class InvoiceDetailsComponentModule {}\r\n","\r\n\r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n

{{'INVOICE.INVOICE_TTTLE' | translate}}\r\n {{invoiceDetails.number_prefix}}

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    \r\n
  • \r\n \r\n {{'ADMIN.COMMON.VOID' | translate}}\r\n
  • \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \"Image\"\r\n\r\n

{{'INVOICE.INVOICE_DEL_CONFI'| translate}}
{{invoiceDetails.number_prefix}} ?

\r\n

{{'INVOICE.INVOICE_DEL_INFO'| translate}}

\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n ElementRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n ReactiveFormsModule,\r\n FormsModule,\r\n FormGroup,\r\n FormBuilder,\r\n} from '@angular/forms';\r\nimport { PaymentService } from '@fitness-force/api';\r\nimport { AppErrors } from '@fitness-force/errors';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport {InputTextareaModule} from 'primeng/inputtextarea';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { PdfViewerModule } from 'ng2-pdf-viewer';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { MessageService } from 'primeng/api';\r\nimport { voidInvoiceRequest } from '@fitness-force/models';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'payment-details',\r\n templateUrl: './payment-details.component.html',\r\n styleUrls: ['./payment-details.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class PaymentDetailsComponent implements OnInit {\r\n\r\n @Input('showPayment') showPaymentPopup: boolean = false;\r\n @Input('paymentDetails') paymentDetails: any;\r\n @Input('clientId') clientId: number = 0;\r\n @Input('tenantId') tenantId: number = 0;\r\n\r\n @Output('closePayment') closePayment: EventEmitter =new EventEmitter();\r\n \r\n\r\n\r\n showVoidPaymentModal: boolean = false;\r\n voidPaymentForm: FormGroup = new FormGroup({});\r\n pdfSrc= new BehaviorSubject('');\r\n\r\n constructor(\r\n private paymentService: PaymentService,\r\n private translate: TranslateService,\r\n private messageService: MessageService,\r\n private fb: FormBuilder\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.GetPaymentPdf();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.voidPaymentForm = this.fb.group({\r\n void_reason: [''],\r\n });\r\n }\r\n\r\n\r\n\r\n GetPaymentPdf() {\r\n this.paymentService.getPaymentPDF(this.clientId, this.paymentDetails.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n this.pdfSrc.next(data);\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n printPaymentPDF() {\r\n window.open(this.pdfSrc.value, '_blank');\r\n }\r\n\r\n downloadPaymentPDF() {\r\n var file = new Blob([this.pdfSrc.value], { type: 'application/pdf' });\r\n var fileURL = URL.createObjectURL(file);\r\n var a = document.createElement('a');\r\n a.href = fileURL;\r\n a.download = this.pdfSrc.value;\r\n document.body.appendChild(a);\r\n a.click();\r\n }\r\n\r\n SendPaymentEmail() {\r\n this.paymentService.SendEmail(this.clientId, this.paymentDetails.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n this.translate.get('TRANSACTION.MSG.PAYMENT_MAIL_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n deletePayment(form: FormGroup) {\r\n let voidRequest: voidInvoiceRequest = {} as voidInvoiceRequest;\r\n voidRequest.void_reason = form.value.void_reason;\r\n this.paymentService.voidPayment(\r\n this.tenantId,\r\n this.clientId,\r\n this.paymentDetails.id,\r\n voidRequest\r\n )\r\n .subscribe({\r\n next: (data: any) => {\r\n this.translate\r\n .get('TRANSACTION.MSG.PAYMENT_VOID_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n this.showVoidPaymentModal= false;\r\n },\r\n error: (error: AppErrors) => {\r\n this.ShowToastErrors(error);\r\n },\r\n });\r\n }\r\n\r\n closePaymentPopup()\r\n {\r\n this.showPaymentPopup= false;\r\n this.closePayment.emit(false);\r\n }\r\n\r\n ShowToastErrors(error: any) {\r\n if (error.originalError.error.length > 0) {\r\n error.originalError.error.forEach((e: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: e.errorMessage,\r\n });\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error',\r\n detail: error.originalError.error.errorMessage,\r\n });\r\n }\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [PaymentDetailsComponent],\r\n imports: [\r\n CommonModule,\r\n DividerModule,\r\n TimelineModule,\r\n ToastModule,\r\n TableModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DropdownModule,\r\n AvatarModule,\r\n TagModule,\r\n StyleClassModule,\r\n DialogModule,\r\n InputTextareaModule,\r\n PdfViewerModule,\r\n OverlayPanelModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n })],\r\n exports: [PaymentDetailsComponent]\r\n})\r\nexport class PaymentDetailsComponentModule {\r\n}\r\n","\r\n\r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n

{{'PAYMENT.PAYMENTS_TTTLE' | translate}}\r\n {{paymentDetails.number_prefix}}

\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    \r\n
  • \r\n \r\n {{'ADMIN.COMMON.VOID' | translate}}\r\n
  • \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n \"Image\"\r\n\r\n

{{'PAYMENT.PAYMENT_DEL_CONFI'| translate}}
{{paymentDetails.number_prefix}} ?

\r\n

{{'PAYMENT.PAYMENT_DEL_INFO'| translate}}

\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'send-email',\r\n templateUrl: './send-email.component.html',\r\n styleUrls: ['./send-email.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SendEmailComponent implements OnInit {\r\n @Input() sendEmailModal: boolean | null = false;\r\n @Input() clientData$:any = new BehaviorSubject(null)\r\n @Output() closeSendEmailDialog = new EventEmitter()\r\n editorText: string | undefined;\r\n attachments: any;\r\n selectedAttachment: { name: string } | undefined;\r\n templates: any;\r\n selectedTemplate: { name: string } | any;\r\n allClientData$ = new BehaviorSubject({})\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n }\r\n componentInit(){\r\n this.clientData$.subscribe(\r\n (client:any)=>{\r\n this.allClientData$.next(client)\r\n })\r\n }\r\n closeDialogEvent(){\r\n this.closeSendEmailDialog.emit(false)\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [SendEmailComponent],\r\n imports: [\r\n CommonModule,\r\n DropdownModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n AvatarModule,\r\n ButtonModule,\r\n RippleModule,\r\n BlockUIModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n PasswordModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n ToastModule\r\n ],\r\n exports: [SendEmailComponent]\r\n})\r\nexport class SendEmailComponentModule {\r\n}\r\n","\r\n\r\n\r\n\r\n \r\n\r\n \r\n
\r\n

Send email for {{$.client.full_name}}

\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n From:\r\n Anytime Fitness, Juhu\r\n
\r\n \r\n\r\n \r\n
\r\n To:\r\n Davis Macey 560901 (andrea@andreasolan.com)\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n {{selectedAttachment.name}}\r\n \r\n \r\n
{{attachment.name}}
\r\n
\r\n
\r\n\r\n \r\n \r\n {{selectedTemplate.name}}\r\n \r\n \r\n
{{template.name}}
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\r\nimport { ClientService } from '@fitness-force/api';\r\nimport { PlanIntervalType } from '@fitness-force/enum';\r\nimport { BadRequestError, NotFoundError } from '@fitness-force/errors';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BlockUIModule } from 'primeng/blockui';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { DateTimeFormatPipeModule } from '../../../filters/datetimeformat.pipe';\r\nimport { timeLineService } from '../../../filters/timeline.pipe';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'subscription-list',\r\n templateUrl: './subscription-list.component.html',\r\n styleUrls: ['./subscription-list.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class SubscriptionListComponent implements OnInit {\r\n allSubscriptions$ = new BehaviorSubject([]);\r\n allSubscriptionsSingups$ = new BehaviorSubject([]);\r\n showsubscriptionDetails: boolean = false;\r\n clientId: number = 0;\r\n pendingDuesTableData: any[] = [];\r\n\r\n subscriptionProgress: any[] = [\r\n {\r\n title: 'Initiated',\r\n step: 1,\r\n status: 'Done',\r\n },\r\n {\r\n title: 'In-Progress',\r\n step: 2,\r\n status: 'Done',\r\n },\r\n {\r\n title: 'Completed',\r\n step: 3,\r\n status: 'Pending',\r\n },\r\n ];\r\n constructor(\r\n private store: Store,\r\n private clientService: ClientService,\r\n private messageService: MessageService,\r\n private activatedRouter: ActivatedRoute,\r\n public changeDetectorRef: ChangeDetectorRef,\r\n private router: Router,\r\n private translate: TranslateService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n componentInit() {\r\n this.activatedRouter.params.subscribe((r: any) => {\r\n this.clientId = r.clientid;\r\n this.getAllSubscriptions(r.clientid);\r\n this.getSubscriptionSignups(r.clientid);\r\n });\r\n }\r\n getAllSubscriptions(clientId: any) {\r\n this.clientService.getSubscriptions(clientId).subscribe({\r\n next: (subscp: any) => {\r\n this.allSubscriptions$.next(subscp.items);\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: 'Page Not Found',\r\n });\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: error.originalError.error[0].errorMessage,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: 'Something went wrong',\r\n });\r\n }\r\n },\r\n });\r\n }\r\n\r\n getSubscriptionSignups(clientId: any) {\r\n this.clientService.getSubscriptionSignup(clientId).subscribe({\r\n next: (subscp: any) => {\r\n if (subscp.items)\r\n this.allSubscriptionsSingups$.next(subscp.items.filter((x: any) => x.final_status.toLowerCase() != 'closed'));\r\n\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: 'Page Not Found',\r\n });\r\n } else if (error instanceof BadRequestError) {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: error.originalError.error[0].errorMessage,\r\n });\r\n } else {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'Error has occured!',\r\n detail: 'Something went wrong',\r\n });\r\n }\r\n },\r\n });\r\n }\r\n BacktoAllSubscriptions() {\r\n this.showsubscriptionDetails = false;\r\n }\r\n\r\n billingInterval(interval_type: string, interval_value: number): string {\r\n if (interval_value && interval_type.toLowerCase() == 'month') {\r\n if (interval_value > 1) {\r\n return `${interval_value} Months`;\r\n } else if (interval_value == 1) {\r\n return 'Month';\r\n } else if (interval_value == 3) {\r\n return 'Quater';\r\n } else if (interval_value == 6) {\r\n return 'Half yearly';\r\n } else {\r\n return interval_type;\r\n }\r\n } else if (interval_value && interval_type.toLowerCase() == 'week') {\r\n if (interval_value > 1) {\r\n return `${interval_value} Weeks`;\r\n } else if (interval_value == 1) {\r\n return 'Week';\r\n } else {\r\n return interval_type;\r\n }\r\n } else {\r\n return interval_type;\r\n }\r\n }\r\n ordinalSuffixOfBillingCycle(billingCycleDate: number) {\r\n let billingCycleDateBuff = billingCycleDate % 10,\r\n billingCycleDateBuffAvg = billingCycleDate % 100;\r\n if (billingCycleDateBuff == 1 && billingCycleDateBuffAvg != 11) {\r\n return 'st';\r\n }\r\n if (billingCycleDateBuff == 2 && billingCycleDateBuffAvg != 12) {\r\n return 'nd';\r\n }\r\n if (billingCycleDateBuff == 3 && billingCycleDateBuffAvg != 13) {\r\n return 'rd';\r\n }\r\n return 'th';\r\n }\r\n reloadDates(next_Billing_Date: any) {\r\n const duration = timeLineService(next_Billing_Date);\r\n return `${duration.label} ${duration.type}`;\r\n }\r\n goToSubscriptionDetails(ss: any) {\r\n this.router.navigate([\r\n `client/profile/${ss.client_id}/subscriptions/${ss.id}`,\r\n ]);\r\n }\r\n\r\n getInterval(billing_interval_value: number, billing_interval_type: PlanIntervalType) {\r\n let str: string = \"\";\r\n if (billing_interval_type == PlanIntervalType.Month || billing_interval_type.toString() == PlanIntervalType[PlanIntervalType.Month]) {\r\n if (billing_interval_value > 1)\r\n str = \"months\";\r\n else\r\n str = \"month\";\r\n }\r\n else if (billing_interval_type == PlanIntervalType.Week\r\n || billing_interval_type.toString() == PlanIntervalType[PlanIntervalType.Week]) {\r\n if (billing_interval_value > 1)\r\n str = \"weeks\";\r\n else\r\n str = \"week\";\r\n }\r\n return str.toUpperCase();\r\n }\r\n getYear(dateYear: Date) {\r\n return new Date(dateYear).getFullYear();\r\n }\r\n\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [SubscriptionListComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DropdownModule,\r\n AvatarModule,\r\n TagModule,\r\n StyleClassModule,\r\n ChipsModule,\r\n DialogModule,\r\n MessagesModule,\r\n MessageModule,\r\n TableModule,\r\n OverlayPanelModule,\r\n BlockUIModule,\r\n EditorModule,\r\n RouterModule,\r\n DividerModule,\r\n TimelineModule,\r\n ToastModule,\r\n DateTimeFormatPipeModule,\r\n CurrencyformatPipeModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [SubscriptionListComponent],\r\n})\r\nexport class SubscriptionListComponentModule { }\r\n","\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{'SUBSCRIPTIONS.TOTAL-SUBSCRIPTION' | translate}} - {{$.subscription.length}}0\r\n
\r\n
\r\n \r\n {{'SUBSCRIPTIONS.BACK' | translate}}\r\n \r\n
\r\n {{'SUBSCRIPTIONS.SUBSCRIPTION-DETAILS' | translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{'POS.PLANTYPE.'+ ss.subscription_category.toUpperCase() | translate}}\r\n \r\n {{ss.status\r\n | titlecase}}\r\n
\r\n

\r\n {{ss.name_primary_language || name_secondary_language | titlecase}}\r\n

\r\n

\r\n \r\n \r\n {{membership.service_type_name_primary_language\r\n || membership.service_type_name_secondary_language}}\r\n {{'SUBSCRIPTIONS.BASE-MEMEBERSHIP' | translate}}\r\n
\r\n {{'SUBSCRIPTIONS.UNKNOWN'\r\n | translate}}\r\n 0 && ((ss.recurring_template_recurring_services.length - 1) !== i)\">\r\n , \r\n
\r\n

\r\n

\r\n {{ss.description_primary_language}}\r\n

\r\n

\r\n \r\n \r\n {{membership.service_type_name_primary_language\r\n || membership.service_type_name_secondary_language}}\r\n {{'SUBSCRIPTIONS.BASE-MEMEBERSHIP' | translate}}\r\n
\r\n {{'SUBSCRIPTIONS.UNKNOWN'\r\n | translate}}\r\n 0 && ((ss.recurring_template_recurring_services.length - 1) !== i)\">\r\n , \r\n
\r\n

\r\n\r\n
\r\n \r\n \r\n {{ss.recurring_revenue | currencyformat}}\r\n /\r\n {{ (ss.billing_interval_value> 1)? ss.billing_interval_value.toString() :\"\"}}\r\n {{ 'POS.MEMBERSHIP_ADDON.' + getInterval(ss.billing_interval_value,ss.billing_interval_type) | translate}}\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.START-DATE' | translate}}
\r\n {{ss.start_date |\r\n datetimeformat: 'mediumDate'}}\r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.NEXT-BILLING-DATE' | translate}}
\r\n {{ss.next_charge_date |\r\n datetimeformat: 'mediumDate'}}\r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.BILLING-CYCLE' | translate}}
\r\n {{ss.bill_cycle_day}}{{ordinalSuffixOfBillingCycle(ss.bill_cycle_day)}}\r\n {{'SUBSCRIPTIONS.OFEVERY' | translate}}{{billingInterval(ss.billing_interval_type,\r\n ss.billing_interval_value)}}\r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.END_DATE' | translate}}
\r\n {{ss.end_date |\r\n datetimeformat: 'mediumDate'}} \r\n
\r\n\r\n
\r\n
\r\n
\r\n {{'SUBSCRIPTIONS.PAYMENT-METHOD' | translate}}\r\n
\r\n \r\n \"Visa\"{{'SUBSCRIPTIONS.CARD-ENDING-WITH'\r\n | translate}}\r\n {{ss.payment_method.masked_card_number}}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
    \r\n \r\n
  • \r\n
    \r\n {{mm?.service_type_name_primary_language || mm?.service_type_name_secondary_language | titlecase}}\r\n
    \r\n
    {{'SUBSCRIPTIONS.SESSIONS' | translate}} - {{mm.service_sessions}}
    \r\n
  • \r\n
    \r\n
\r\n
    \r\n \r\n
  • \r\n
    \r\n \r\n {{mm?.service_type_name_primary_language || mm?.service_type_name_secondary_language |\r\n titlecase}}\r\n
    \r\n
    {{'SUBSCRIPTIONS.SESSIONS' | translate}} - {{mm.service_sessions}}
    \r\n
  • \r\n
    \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{progress.title}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n

{{ss.plan_primary_name || ss.plan_secondary_name }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.SIGNUP_LINK_EXPIRY' | translate}}
\r\n {{ss.link_expiry_date | datetimeformat:\r\n 'mediumDate'}}\r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.SIGNUP_LINK'| translate}}
\r\n
\r\n {{ss.short_link}}\r\n
\r\n \r\n
\r\n {{ 'SUBSCRIPTIONS.RESEND_LINK' |\r\n translate}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{'SUBSCRIPTIONS.LAST_LINKED_OPENED' | translate}}
\r\n {{ (getYear(ss.link_last_opened)==\r\n 1)?'-': (ss.link_last_opened | datetimeformat: 'mediumDate') }}\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n\r\n \r\n \r\n\r\n\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\n\r\nimport {DynamicDialogModule, DynamicDialogRef} from 'primeng/dynamicdialog';\r\nimport {DynamicDialogConfig} from 'primeng/dynamicdialog';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'confirm-category-dialog',\r\n templateUrl: './confirm-category.component.html',\r\n\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ConfirmCategoryComponent implements OnInit {\r\n\r\n constructor(public ref: DynamicDialogRef, public config: DynamicDialogConfig) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ConfirmCategoryComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n DialogModule,\r\n FormsModule],\r\n exports: [ConfirmCategoryComponent]\r\n})\r\nexport class ConfirmCategoryComponentModule {\r\n}\r\n","\r\n Are you sure you want to change Pay as you Go to Drop-in? If yes, then the services associated will be removed.\r\n buttons: Cancel / Yes, Continue\r\n \r\n \r\n \r\n \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n} from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DynamicDialogModule, DynamicDialogRef } from 'primeng/dynamicdialog';\r\nimport { DynamicDialogConfig } from 'primeng/dynamicdialog';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'confirm-page-change',\r\n templateUrl: './confirm-page-change.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ConfirmPageChangeComponent implements OnInit {\r\n constructor(\r\n public ref: DynamicDialogRef,\r\n public config: DynamicDialogConfig\r\n ) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n close(value:boolean=false) {\r\n this.ref.close(value);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ConfirmPageChangeComponent],\r\n imports: [CommonModule, ButtonModule, DialogModule, DynamicDialogModule],\r\n exports: [ConfirmPageChangeComponent],\r\n})\r\nexport class ConfirmPageChangeComponentModule {}\r\n","\r\n\r\n
\r\n

Confirm

\r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n

Are you sure you don't want to save changes?

\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, ChangeDetectorRef } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule, FormBuilder, FormGroup, AbstractControl, Validators } from '@angular/forms';\r\nimport { ChargeMasterService } from '@fitness-force/api';\r\nimport { ConflictError, ErrorMsgComponentModule, NotFoundError, UnauthorizedError } from '@fitness-force/errors';\r\nimport { TENANTSINTERFACE, ValidationError } from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateModule, TranslateLoader, TranslateService } from '@ngx-translate/core';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DynamicDialogConfig, DynamicDialogModule, DynamicDialogRef } from 'primeng/dynamicdialog';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'create-charge-category',\r\n templateUrl: './create-charge-category.component.html',\r\n styleUrls: ['./create-charge-category.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CreateChargeCategoryComponent implements OnInit {\r\n getAccessTenantList$!: Observable;\r\n chargeCategoryForm!: FormGroup;\r\n chargeCategory!: any;\r\n tenantId!: number;\r\n\r\n primaryLanguage!: string;\r\n secondaryLanguage!: string;\r\n\r\n // ERRors\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages: ValidationError[] = [];\r\n\r\n constructor(\r\n private store: Store,\r\n public ref: DynamicDialogRef,\r\n public config: DynamicDialogConfig,\r\n private chargeMasterService: ChargeMasterService,\r\n public translate: TranslateService,\r\n private messageService: MessageService,\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef,\r\n ) {\r\n this.chargeCategory = this.config.data?.chargeCategory;\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n\r\n }\r\n\r\n componentInit() {\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n\r\n this.translate\r\n .get([\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase(),\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase(),\r\n ])\r\n .subscribe((translations) => {\r\n this.primaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase()\r\n ];\r\n this.secondaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase()\r\n ];\r\n });\r\n this.createChargeCategoryFrom();\r\n }\r\n });\r\n }\r\n\r\n close() {\r\n this.ref.close();\r\n }\r\n\r\n createChargeCategoryFrom() {\r\n this.chargeCategoryForm = this.fb.group({\r\n name_primary_language: [\r\n this.chargeCategory ? this.chargeCategory.name_primary_language : '',\r\n Validators.required,\r\n ],\r\n name_secondary_language: [\r\n this.chargeCategory ? this.chargeCategory.name_secondary_language : '',\r\n Validators.required,\r\n ],\r\n description_primary_language: [\r\n this.chargeCategory ? this.chargeCategory.description_primary_language : '',\r\n Validators.required,\r\n ],\r\n description_secondary_language: [\r\n this.chargeCategory ? this.chargeCategory.description_secondary_language : '',\r\n Validators.required,\r\n ],\r\n });\r\n }\r\n\r\n get CatNamePrimary(): AbstractControl | null {\r\n return this.chargeCategoryForm?this.chargeCategoryForm.get('name_primary_language'):null;\r\n }\r\n get CatNameSecondary(): AbstractControl | null {\r\n return this.chargeCategoryForm?this.chargeCategoryForm.get('name_secondary_language'):null;\r\n }\r\n\r\n get DescPrimary(): AbstractControl | null {\r\n return this.chargeCategoryForm?this.chargeCategoryForm.get('description_primary_language'):null;\r\n }\r\n get DescSecondary(): AbstractControl | null {\r\n return this.chargeCategoryForm?this.chargeCategoryForm.get('description_secondary_language'):null;\r\n }\r\n\r\n saveChargeCategory() {\r\n if (this.chargeCategoryForm.valid) {\r\n let formData = { ...this.chargeCategoryForm.getRawValue() };\r\n if (this.chargeCategory) {\r\n this.chargeMasterService.updateChargeCategoryMaster(this.tenantId, this.chargeCategory.id, formData)\r\n .subscribe({\r\n next: (res:any) => {\r\n this.ref.close({ result: res });\r\n },\r\n error: (error:any) => {\r\n this.handleError(error);\r\n },\r\n });\r\n } else {\r\n this.chargeMasterService.createChargeCategoryMasters(this.tenantId, formData)\r\n .subscribe({\r\n next: (res:any) => {\r\n this.ref.close(res);\r\n },\r\n error: (error:any) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n } else {\r\n Object.keys(this.chargeCategoryForm.controls).forEach((field) => {\r\n const control = this.chargeCategoryForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n handleError(error: any) {\r\n if (error instanceof NotFoundError) {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'Shared.TASK.TASK-CREATE.PAGE_NOT_FOUND',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.PAGE_NOT_FOUND'],\r\n });\r\n });\r\n } else if (error instanceof UnauthorizedError) {\r\n } else if (error instanceof ConflictError) {\r\n let duplicate =false;\r\n error.originalError.error.forEach((item: any) => {\r\n // ERROR Codes on server are not consistent, different for same error\r\n if (item.errorCode == 'duplicatevalue') {\r\n duplicate =true;\r\n if (item.errorMessage.includes('pri'))\r\n this.chargeCategoryForm.controls['name_primary_language'].setErrors({\r\n duplicate: true,\r\n });\r\n\r\n if (item.errorMessage.includes('sec'))\r\n this.chargeCategoryForm.controls['name_secondary_language'].setErrors({\r\n duplicate: true,\r\n });\r\n }\r\n });\r\n if(duplicate){\r\n this.cd.detectChanges();\r\n return;\r\n }\r\n } else {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.SOMETHING_WRONG',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.SOMETHING_WRONG'],\r\n });\r\n });\r\n }\r\n this.extractErrorMessages(error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n\r\n extractErrorMessages(error: any) {\r\n error.originalError.error.forEach((item: any) => {\r\n this.errorMessages.push(item.errorMessage);\r\n });\r\n if (Array.isArray(error)) {\r\n error.forEach((item: any) => {\r\n this.errorMessages.push(item.errorMessage);\r\n });\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [CreateChargeCategoryComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n DialogModule,\r\n DynamicDialogModule,\r\n FormsModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ErrorMsgComponentModule,\r\n InputTextareaModule\r\n ],\r\n exports: [CreateChargeCategoryComponent]\r\n})\r\nexport class CreateChargeCategoryComponentModule {}\r\n","
\r\n \r\n \r\n
\r\n \r\n

\r\n {{ 'ADMIN.CHARGE.CREATE_CHARGE_CATEGORY' | translate }}\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n","import {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Output,\r\n EventEmitter,\r\n Input,\r\n ChangeDetectorRef,\r\n OnChanges,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport {\r\n FormBuilder, FormControl, FormGroup, FormsModule,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport {\r\n AppErrors,\r\n ErrorMsgComponentModule,\r\n NotFoundError,\r\n} from '@fitness-force/errors';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport {\r\n Client,\r\n Country,\r\n CreateOpportunityRequest,\r\n GetStaffListResponse,\r\n ListOpportunityStageMasterResponse,\r\n ListServiceTypeResponse,\r\n OpportunityResponse,\r\n OpportunityStageMasterResponse,\r\n PagedResults,\r\n PaginationFilter,\r\n ServiceTypeResponse,\r\n STAFFINTERFACE,\r\n TENANTSINTERFACE,\r\n UpdateOpportunityRequest,\r\n} from '@fitness-force/models';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { UserService } from 'libs/api/src/lib/user.service';\r\n\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { ServiceTypeService } from 'libs/api/src/lib/serviceType/service-type.service';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { OpportunityService } from 'libs/api/src/lib/crm/opportunity.service';\r\nimport { OpportunityBoardType, Status, } from '@fitness-force/enum';\r\nimport { CONSTANTS_CRM } from '@fitness-force/constants';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\n\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n COMPANY_INFO,\r\n COUNTRY_MASTER_STATE,\r\n STAGE_MASTER_STATE,\r\n TENANTS_INFO,\r\n} from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { AssignedToComponentModule, ErrorsComponentModule } from '@fitness-force/shared';\r\nimport { MiniSearchComponentModule } from '../../../components/search/mini-search/mini-search.component';\r\nimport { AuthSevices, CommonService, OpportunityStageService, } from '@fitness-force/api';\r\n\r\nimport { MessageService } from 'primeng/api';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { TextTransFormPipeModule } from '../../../filters/text-transform.pipe';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ChipModule } from 'primeng/chip';\r\n\r\n@Component({\r\n selector: 'create-opportunity',\r\n templateUrl: './create-opportunity.component.html',\r\n styleUrls: ['./create-opportunity.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService, DatePipe],\r\n})\r\nexport class CreateOpportunityComponent implements OnInit, OnChanges {\r\n frmgroupCreateOpportunity: FormGroup = new FormGroup({});\r\n closeDialog: boolean = false;\r\n\r\n //used for popup close and open\r\n @Input('visible') showPopup: boolean = false;\r\n @Input('opportunity') oOpportunity: OpportunityResponse | any;\r\n @Input('clientInfo') clientInfo: any[] = [];\r\n\r\n @Output() hidePopup: EventEmitter = new EventEmitter();\r\n\r\n public showMiniSearch: boolean = false;\r\n public clients: any = [];\r\n\r\n errMsg: Error | any;\r\n tenantId: number = 0;\r\n clientId: number = 0;\r\n\r\n //#region Variables\r\n convertibility: Convertibility[] = CONSTANTS_CRM.OPPORTUNITY_CONVERTITBILITY;\r\n serviceTypeCollection!: Option[];\r\n assignedCollection!: Option[];\r\n opportunityStageCollection!: Option[];\r\n\r\n interestedInSelectedTitle: string = '';\r\n titleValueChanged: boolean = false;\r\n\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n stageMaster$: Observable = new Subject();\r\n\r\n _isEditMode: boolean = false;\r\n _selectedstaff = new BehaviorSubject(0);\r\n country: Country;\r\n\r\n isClientEditMode: boolean = false;\r\n\r\n //#endregion\r\n\r\n public companyInfoDetail$!: Observable;\r\n companyDetails: any;\r\n constructor(\r\n private fb: FormBuilder,\r\n public translate: TranslateService,\r\n private router: Router,\r\n private actRoute: ActivatedRoute,\r\n private userService: UserService,\r\n public store: Store,\r\n private serviceType: ServiceTypeService,\r\n private opportunityService: OpportunityService,\r\n private opportunityStageService: OpportunityStageService,\r\n private messageService: MessageService,\r\n public authService: AuthSevices,\r\n public changeDetectorRef: ChangeDetectorRef,\r\n public datepipe: DatePipe,\r\n private commonService: CommonService\r\n ) {\r\n this.componentInit();\r\n this.SetFormFields();\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.oOpportunity) {\r\n this.setOpportunityData(this.oOpportunity);\r\n this._isEditMode = true;\r\n }\r\n\r\n this.setVariable();\r\n this._selectedstaff.next(Number(this.authService.loggedInStaffId));\r\n this.store.select(COUNTRY_MASTER_STATE).subscribe((country: Country) => {\r\n this.country = country;\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes && changes.clientInfo && changes.clientInfo.currentValue && changes.clientInfo.currentValue.length) {\r\n this.clientInfo = changes.clientInfo.currentValue;\r\n this.clients = changes.clientInfo.currentValue;\r\n }\r\n\r\n if (changes.oOpportunity && changes.oOpportunity.currentValue) {\r\n this.clientInfo = [changes.oOpportunity.currentValue.client_info];\r\n this.clients = [changes.oOpportunity.currentValue.client_info];\r\n this.setOpportunityData(this.oOpportunity);\r\n this._isEditMode = true;\r\n }\r\n }\r\n\r\n get clientIds(): number[] {\r\n return this.clientInfo?.map((o: any) => { return o.id });\r\n }\r\n\r\n SetFormFields(): void {\r\n this.frmgroupCreateOpportunity = this.fb.group({\r\n ddlConvertibility: new FormControl('', [Validators.required]),\r\n ddlOpportunityStage: new FormControl('', [Validators.required]),\r\n serviceType: new FormControl('', [Validators.required]),\r\n expectedamount: new FormControl('', []),\r\n expecteddate: new FormControl('', []),\r\n title: new FormControl('', [Validators.required]),\r\n comments: new FormControl('', []),\r\n ddlSelectedAssigned: new FormControl('', [Validators.required]),\r\n });\r\n\r\n this.frmgroupCreateOpportunity.controls.title.valueChanges.subscribe(\r\n (value: any) => {\r\n //console.log(value);\r\n }\r\n );\r\n }\r\n\r\n componentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.companyDetails = responseData;\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n }\r\n });\r\n this.stageMaster$ = this.store.select(STAGE_MASTER_STATE);\r\n }\r\n\r\n setVariable() {\r\n this.showMiniSearch = this.clients.length == 0;\r\n //this.BindUsers();\r\n this.BindServiceType();\r\n this.BindOpportunityStageMaster();\r\n }\r\n\r\n // #region \"getter\"\r\n\r\n get SelectedOpportnityStage() {\r\n return this.frmgroupCreateOpportunity.controls\r\n .ddlOpportunityStage as FormControl;\r\n }\r\n\r\n get SelectedConvertibility() {\r\n return this.frmgroupCreateOpportunity.controls\r\n .ddlConvertibility as FormControl;\r\n }\r\n\r\n get SelectedAssigned(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls\r\n .ddlSelectedAssigned as FormControl;\r\n }\r\n\r\n get ExpectedClosureDate(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls.expecteddate as FormControl;\r\n }\r\n\r\n get ExpectedAmount(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls\r\n .expectedamount as FormControl;\r\n }\r\n get SelectedTitle(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls.title as FormControl;\r\n }\r\n\r\n get Comments(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls.comments as FormControl;\r\n }\r\n\r\n get ServiceType(): FormControl {\r\n return this.frmgroupCreateOpportunity.controls.serviceType as FormControl;\r\n }\r\n\r\n // #region \"Request Response functions\"\r\n\r\n BindUsers(): void {\r\n const paginationFilter: PaginationFilter = {\r\n page_number: 1,\r\n page_size: 9999999,\r\n };\r\n\r\n this.userService.getStaffList(paginationFilter, 0).subscribe({\r\n next: (response: PagedResults) => {\r\n this.assignedCollection = [];\r\n this.assignedCollection.push({ name: 'Select', value: 0 });\r\n response.items.forEach((getStaffListResponse: GetStaffListResponse) => {\r\n this.assignedCollection.push({\r\n name: getStaffListResponse.name,\r\n value: getStaffListResponse.id,\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n },\r\n });\r\n }\r\n\r\n BindServiceType(): void {\r\n this.serviceType.GetServiceType(this.tenantId).subscribe({\r\n next: (serviceTypes: ListServiceTypeResponse) => {\r\n this.serviceTypeCollection = [];\r\n if (serviceTypes.items) {\r\n serviceTypes.items.forEach((serviceType: ServiceTypeResponse) => {\r\n let status = serviceType.status.toString();\r\n let varStatus: string = Status[Status.Active];\r\n if (this.oOpportunity) {\r\n if (status === varStatus || this.oOpportunity.service_type_id) {\r\n this.serviceTypeCollection.push({\r\n name: serviceType.name_primary_language,\r\n value: serviceType.id,\r\n });\r\n }\r\n } else {\r\n if (status === varStatus) {\r\n this.serviceTypeCollection.push({\r\n name: serviceType.name_primary_language,\r\n value: serviceType.id,\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n if (this.oOpportunity) {\r\n let data: Option[] = [];\r\n for (var iCtr in this.oOpportunity.service_type) {\r\n let oData = this.serviceTypeCollection.find(\r\n (x) => x.value == this.oOpportunity.service_type[iCtr].id\r\n );\r\n if (oData) data.push(oData);\r\n }\r\n this.ServiceType.setValue(data);\r\n }\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n },\r\n });\r\n }\r\n\r\n BindOpportunityStageMaster(): void {\r\n this.opportunityStageService\r\n .OpportunityStageMasterListService(\r\n this.tenantId,\r\n OpportunityBoardType.NewMemberBoard\r\n )\r\n .subscribe({\r\n next: (listOpportunityStage: ListOpportunityStageMasterResponse) => {\r\n this.opportunityStageCollection = [] as Option[];\r\n listOpportunityStage.items.forEach(\r\n (opportunityStage: OpportunityStageMasterResponse) => {\r\n this.opportunityStageCollection.push({\r\n name: opportunityStage.name_primary_language,\r\n value: opportunityStage.id,\r\n });\r\n }\r\n );\r\n if (this.oOpportunity) {\r\n let oData = this.opportunityStageCollection.find(\r\n (x) => x.value == this.oOpportunity.stage_master_id\r\n );\r\n this.SelectedOpportnityStage.setValue(oData);\r\n }\r\n\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n alert('something went wrong');\r\n }\r\n },\r\n });\r\n }\r\n\r\n SaveData(): void {\r\n if (this._isEditMode) {\r\n this.UpdateOpportunity();\r\n } else {\r\n this.CreateOpportunity();\r\n }\r\n }\r\n\r\n UpdateOpportunity(): void {\r\n this.frmgroupCreateOpportunity.markAllAsTouched();\r\n\r\n if (!this.frmgroupCreateOpportunity.valid) {\r\n return;\r\n }\r\n let updateOpportunity: UpdateOpportunityRequest = {} as UpdateOpportunityRequest;\r\n updateOpportunity.comments = this.Comments.value;\r\n\r\n if (this.ExpectedAmount.value == undefined || this.ExpectedAmount.value == '')\r\n updateOpportunity.value_in_minor_currency = 0;\r\n else\r\n updateOpportunity.value_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.ExpectedAmount.value);\r\n\r\n if (this.ExpectedClosureDate.value == undefined || this.ExpectedClosureDate.value == '')\r\n updateOpportunity.expected_closure_date = undefined;\r\n else\r\n updateOpportunity.expected_closure_date = this.ExpectedClosureDate.value;\r\n\r\n updateOpportunity.name = this.SelectedTitle.value;\r\n updateOpportunity.hot_warm_cold = this.SelectedConvertibility.value.value;\r\n updateOpportunity.service_type_ids = Array.prototype.map.call(\r\n this.ServiceType.value,\r\n function (item) {\r\n return item.value;\r\n }\r\n ) as number[];\r\n updateOpportunity.stage_master_id = this.SelectedOpportnityStage.value.value;\r\n updateOpportunity.assigned_to_staff_id = this.SelectedAssigned.value.id;\r\n\r\n this.opportunityService\r\n .OpportunityUpdateService(\r\n this.tenantId,\r\n OpportunityBoardType.NewMemberBoard,\r\n this.oOpportunity.id,\r\n updateOpportunity\r\n )\r\n .subscribe({\r\n next: async (data: any) => {\r\n if (data || data?.id) {\r\n // console.log('DATA', data);\r\n this.translate\r\n .get('OPPORTUNITY.UPDATE.OPPORTUNITY_CREATE_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation, //'Scheduled Filter Deleted Successfully',\r\n });\r\n });\r\n\r\n this.setHidePopup(true);\r\n } else {\r\n this.errorMessages.push(data.info);\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n error: (error: AppErrors) => {\r\n // console.log(error, 'errororor');\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n },\r\n });\r\n }\r\n\r\n CreateOpportunity(): void {\r\n this.frmgroupCreateOpportunity.markAllAsTouched();\r\n if (!this.frmgroupCreateOpportunity.valid) {\r\n return;\r\n }\r\n\r\n let createOpportunity: CreateOpportunityRequest = {} as CreateOpportunityRequest;\r\n createOpportunity.client_id = [this.clients?.clt_id || this.clientInfo[0]?.id]; //[this.clients[0]?.clt_id || this.clientInfo[0]?.id];\r\n createOpportunity.comments = this.Comments.value;\r\n\r\n if (this.ExpectedAmount.value)\r\n createOpportunity.value_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(this.ExpectedAmount.value);\r\n else createOpportunity.value_in_minor_currency = 0;\r\n\r\n if (this.ExpectedClosureDate.value == undefined || this.ExpectedClosureDate.value == '')\r\n createOpportunity.expected_closure_date = undefined;\r\n else\r\n createOpportunity.expected_closure_date = this.ExpectedClosureDate.value;\r\n\r\n createOpportunity.name = this.SelectedTitle.value;\r\n createOpportunity.hot_warm_cold = this.SelectedConvertibility.value.value;\r\n createOpportunity.service_type_ids = Array.prototype.map.call(\r\n this.ServiceType.value,\r\n function (item) {\r\n return item.value;\r\n }\r\n ) as number[];\r\n createOpportunity.stage_master_id = this.SelectedOpportnityStage.value.value;\r\n createOpportunity.assigned_to_staff_id = this.SelectedAssigned.value.id;\r\n\r\n this.opportunityService\r\n .OpportunityCreateService(\r\n this.tenantId,\r\n OpportunityBoardType.NewMemberBoard,\r\n createOpportunity\r\n )\r\n .subscribe({\r\n next: async (data: any) => {\r\n if (parseInt(data) > 0) {\r\n // console.log('DATA', data);\r\n this.translate\r\n .get('OPPORTUNITY.CREATE.OPPORTUNITY_CREATE_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n this.setHidePopup(true);\r\n });\r\n\r\n await this.timeout(1000);\r\n this.setHidePopup();\r\n\r\n } else {\r\n this.errorMessages.push(data.info);\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n error: (error: AppErrors) => {\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else if (\r\n error.originalError &&\r\n error.originalError.error &&\r\n error.originalError.error[0]\r\n ) {\r\n let currentError = error.originalError.error[0];\r\n if (currentError.errorCode == \"duplicatevalue\") {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: 'error',\r\n detail: currentError.errorMessage,\r\n });\r\n return ;\r\n }\r\n }\r\n {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n },\r\n });\r\n }\r\n\r\n //#region utility functions\r\n setHidePopup(modified: boolean = false) {\r\n this.showPopup = false;\r\n this._isEditMode = false;\r\n this.oOpportunity = null;\r\n this.frmgroupCreateOpportunity.reset();\r\n this.hidePopup.emit({ showPopup: this.showPopup, modified });\r\n this.titleValueChanged = false;\r\n }\r\n\r\n setOpportunityData(opportunity: OpportunityResponse) {\r\n var d = new Date(opportunity.expected_closure_date);\r\n this.SelectedTitle.setValue(opportunity.name);\r\n this.ExpectedClosureDate.patchValue(d);\r\n this.ExpectedAmount.setValue(\r\n this.commonService.ConvertAmountFromMinorCurrency(\r\n opportunity.value_in_minor_currency\r\n )\r\n );\r\n this.Comments.setValue(opportunity.comments);\r\n if (opportunity.hot_warm_cold) {\r\n var data = this.convertibility.find(\r\n (x) => x.name == opportunity.hot_warm_cold.toString()\r\n );\r\n this.SelectedConvertibility.setValue(data);\r\n }\r\n }\r\n\r\n onChangeServiceTypeCollection(event: any) {\r\n let data = Array.prototype.map\r\n .call(event.value, function (item) {\r\n return item.name;\r\n })\r\n .join(', ')\r\n .replace(/, ([^,]*)$/, ' and $1');\r\n // console.log(data);\r\n if (!this.titleValueChanged) this.interestedInSelectedTitle = data;\r\n this.frmgroupCreateOpportunity.controls.title.setValue(data);\r\n }\r\n\r\n public selectedStaff(e: STAFFINTERFACE[]) {\r\n this.frmgroupCreateOpportunity.controls.ddlSelectedAssigned.setValue(e);\r\n }\r\n\r\n //#region \"Omni Search\"\r\n setClient(e: any) {\r\n //DND\r\n // // console.log(e);\r\n // this.clients = [];\r\n // this.clients.push(e);\r\n\r\n console.log(e);\r\n this.clients = null;\r\n this.clients = e;\r\n }\r\n //#endregion\r\n\r\n timeout(ms: any) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n\r\n //#endregion\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [CreateOpportunityComponent],\r\n imports: [\r\n CommonModule,\r\n StyleClassModule,\r\n BrowserAnimationsModule,\r\n DialogModule,\r\n FormsModule,\r\n ChipsModule,\r\n CalendarModule,\r\n ReactiveFormsModule,\r\n DropdownModule,\r\n MultiSelectModule,\r\n SelectButtonModule,\r\n InputTextareaModule,\r\n InputNumberModule,\r\n InputMaskModule,\r\n InputSwitchModule,\r\n ButtonModule,\r\n InputTextModule,\r\n ErrorMsgComponentModule,\r\n AssignedToComponentModule,\r\n ErrorsComponentModule,\r\n MiniSearchComponentModule,\r\n ToastModule,\r\n MessagesModule,\r\n DividerModule,\r\n TextTransFormPipeModule,\r\n AvatarModule,\r\n ShortNamePipeModule,\r\n ChipModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [CreateOpportunityComponent],\r\n})\r\nexport class CreateOpportunityComponentModule { }\r\n\r\ninterface Option {\r\n name: string;\r\n value: number;\r\n}\r\n\r\ninterface Convertibility {\r\n name: string;\r\n value: string;\r\n icon: string;\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n\r\n","import { BehaviorSubject } from 'rxjs';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { LostDealReasonComponentModule } from './utility/lost-deal-reason/lost-deal-reason.component';\r\nimport { ClientService } from '@fitness-force/api';\r\n\r\n@Component({\r\n selector: 'app-lost-deal',\r\n templateUrl: './lost-deal.component.html',\r\n styleUrls: ['./lost-deal.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class LostDealComponent implements OnInit {\r\n @Input() showDailog: boolean = false\r\n @Input() lostDealInfo: any\r\n @Output() closeMainDailog: any = new EventEmitter()\r\n @Output() reload: any = new EventEmitter()\r\n\r\n showLostToCompetitors: boolean = false;\r\n showLostToPrice: boolean = false;\r\n showLostToOtherReasons: boolean = false;\r\n showLostNotContactable: boolean = false;\r\n showLosttoMissingFacility: boolean = false;\r\n lostDealReason: any = new BehaviorSubject({ title: '', name: '' })\r\n togglelostReason: boolean = false;\r\n constructor(private clientService: ClientService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n showReasonDailog(reason: string, name: string) {\r\n this.togglelostReason = true\r\n this.lostDealReason.next({ title: reason, name: name })\r\n }\r\n closeReasonDialog() {\r\n this.togglelostReason = false\r\n this.lostDealReason.next({ title: '', name: '' })\r\n }\r\n closeAllDialogs() {\r\n console.log('0000000000')\r\n this.closeReasonDialog()\r\n this.closeMainDailog.emit(true)\r\n }\r\n reloadData() {\r\n this.reload.emit(true)\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.status)\r\n return this.clientService.getClientStatusHtml(client.status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [LostDealComponent],\r\n imports: [\r\n CommonModule,\r\n DialogModule,\r\n InputTextModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n ReactiveFormsModule,\r\n LostDealReasonComponentModule\r\n ],\r\n exports: [LostDealComponent]\r\n})\r\nexport class LostDealComponentModule {\r\n}\r\n","\r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n
\r\n

Lost Lead Reason

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \"Avatar\"\r\n {{lostDealInfo.client_info.full_name}}\r\n Client ID - {{lostDealInfo.client_info.id}}\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Lost to Competitors\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n High Price\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Missing\r\n Facility\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Other Reason\r\n
\r\n \r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Not Contactable\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-lost-deal-banner',\r\n templateUrl: './lost-deal-banner.component.html',\r\n styleUrls: ['./lost-deal-banner.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class LostDealBannerComponent implements OnInit {\r\n @Input() title:string = ''\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [LostDealBannerComponent],\r\n imports: [],\r\n exports: [LostDealBannerComponent]\r\n})\r\nexport class LostDealBannerComponentModule {\r\n}\r\n","\r\n \"Image\"\r\n\r\n","\r\nimport { FormControl } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, EventEmitter, Output, ViewChild, ElementRef, NgZone, ViewContainerRef, AfterContentInit, AfterViewInit, ChangeDetectorRef, OnDestroy } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { LostDealBannerComponentModule } from '../lost-deal-banner/lost-deal-banner.component';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { OpportunityService } from 'libs/api/src/lib/crm/opportunity.service';\r\nimport { OpportunityBoardType } from '@fitness-force/enum';\r\n\r\nimport { AgmCoreModule, GoogleMapsAPIWrapper, MapsAPILoader } from '@agm/core';\r\nimport { GooglePlacesComponentModule } from '../../../../google-places/google-places.component';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ClientService } from '@fitness-force/api';\r\n\r\n@Component({\r\n selector: 'app-lost-deal-reason',\r\n templateUrl: './lost-deal-reason.component.html',\r\n styleUrls: ['./lost-deal-reason.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class LostDealReasonComponent implements OnInit, OnDestroy {\r\n @Input() reason: any = { title: '', name: '' }\r\n @Input() showLostReason: boolean = false\r\n @Input() dealInfo: any;\r\n @Output() goBack: any = new EventEmitter()\r\n @Output() closeDailogs: any = new EventEmitter()\r\n @Output() reloadData: any = new EventEmitter()\r\n contractEndDate: Date | undefined;\r\n selectedReason: any;\r\n reasons = CONSTANTS_DATA.LOST_DEALS_OTHER_REASONS;\r\n tags: string[] | undefined;\r\n\r\n lostToCompetitors: FormGroup = new FormGroup({})\r\n lostDueToHighPrice: FormGroup = new FormGroup({})\r\n missingFacility: FormGroup = new FormGroup({})\r\n otherReasons: FormGroup = new FormGroup({})\r\n notContactable: FormGroup = new FormGroup({})\r\n lostDealModal = {}\r\n latitude: number | any;\r\n longitude: number | any;\r\n placeId: string = ''\r\n constructor(private messageService: MessageService ,private clientService:ClientService, private mapsAPILoader: MapsAPILoader, private changeDetectorRef: ChangeDetectorRef, private ngZone: NgZone, private fb: FormBuilder, public translate: TranslateService, private oppService: OpportunityService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.componentInit();\r\n }\r\n\r\n\r\n componentInit() {\r\n this.lostToCompetitors = this.fb.group({\r\n competitorName: ['', [Validators.required]],\r\n contractEndDate: ['', [Validators.required]],\r\n lostToCompetitorComments: ['', [Validators.required]]\r\n })\r\n this.lostDueToHighPrice = this.fb.group({\r\n expectedPrice: ['', [Validators.required]],\r\n lostHighPriceComments: ['', [Validators.required]]\r\n })\r\n this.missingFacility = this.fb.group({\r\n selectFacilities: ['', [Validators.required]],\r\n missingFacilityComments: ['', [Validators.required]]\r\n })\r\n this.otherReasons = this.fb.group({\r\n reason: ['', [Validators.required]],\r\n otherReasonsComments: ['', [Validators.required]]\r\n })\r\n this.notContactable = this.fb.group({\r\n notContactableComments: ['', [Validators.required]]\r\n })\r\n\r\n }\r\n\r\n get CompetitorName(): FormControl {\r\n return this.lostToCompetitors.get('competitorName') as FormControl;\r\n }\r\n get ContractEndDate(): FormControl {\r\n return this.lostToCompetitors.get('contractEndDate') as FormControl;\r\n }\r\n get LostToCompetitorComments(): FormControl {\r\n return this.lostToCompetitors.get('lostToCompetitorComments') as FormControl;\r\n }\r\n get ExpectedPrice(): FormControl {\r\n return this.lostDueToHighPrice.get('expectedPrice') as FormControl;\r\n }\r\n get LostHighPriceComments(): FormControl {\r\n return this.lostDueToHighPrice.get('lostHighPriceComments') as FormControl;\r\n }\r\n get SelectFacilities(): FormControl {\r\n return this.missingFacility.get('selectFacilities') as FormControl;\r\n }\r\n get MissingFacilityComments(): FormControl {\r\n return this.missingFacility.get('missingFacilityComments') as FormControl;\r\n }\r\n get Reason(): FormControl {\r\n return this.otherReasons.get('reason') as FormControl;\r\n }\r\n get OtherReasonsComments(): FormControl {\r\n return this.otherReasons.get('otherReasonsComments') as FormControl;\r\n }\r\n get NotContactableComments(): FormControl {\r\n return this.notContactable.get('notContactableComments') as FormControl;\r\n }\r\n\r\n closeReasonDailog() {\r\n this.goBack.emit(false)\r\n this.resetDialogs()\r\n }\r\n closeAllDialogs() {\r\n this.resetDialogs()\r\n this.closeDailogs.emit(true)\r\n }\r\n\r\n\r\n saveLostAsDeal(type: string) {\r\n if (type == 'LostToCompetitor') {\r\n this.lostDealModal = {\r\n \"reason_type\": \"LostToCompetitor\",\r\n \"reason_other\": null,\r\n \"competitor_name\": this.CompetitorName.value,\r\n \"competitor_latitude\": this.latitude.toString(),\r\n \"competitor_longitude\": this.longitude.toString(),\r\n \"competitor_place_id\": this.placeId,\r\n \"contract_end_date\": this.ContractEndDate.value,\r\n \"expected_price_in_minor_currency\": null,\r\n \"missing_facility\": null,\r\n \"comments\": this.LostToCompetitorComments.value\r\n }\r\n } else if (type == 'HighPrice') {\r\n this.lostDealModal = {\r\n \"reason_type\": \"HighPrice\",\r\n \"reason_other\": null,\r\n \"competitor_name\": null,\r\n \"competitor_latitude\": null,\r\n \"competitor_longitude\": null,\r\n \"competitor_place_id\": null,\r\n \"contract_end_date\": null,\r\n \"expected_price_in_minor_currency\": this.ExpectedPrice.value,\r\n \"missing_facility\": null,\r\n \"comments\": this.LostHighPriceComments.value\r\n }\r\n } else if (type == 'MissingFacility') {\r\n this.lostDealModal = {\r\n \"reason_type\": \"MissingFacility\",\r\n \"reason_other\": null,\r\n \"competitor_name\": null,\r\n \"competitor_latitude\": null,\r\n \"competitor_longitude\": null,\r\n \"competitor_place_id\": null,\r\n \"contract_end_date\": null,\r\n \"expected_price_in_minor_currency\": null,\r\n \"missing_facility\": this.SelectFacilities.value,\r\n \"comments\": this.MissingFacilityComments.value\r\n }\r\n } else if (type == 'OtherReasons') {\r\n this.lostDealModal = {\r\n \"reason_type\": \"Other\",\r\n \"reason_other\": this.Reason.value.name,\r\n \"competitor_name\": null,\r\n \"competitor_latitude\": null,\r\n \"competitor_longitude\": null,\r\n \"competitor_place_id\": null,\r\n \"contract_end_date\": null,\r\n \"expected_price_in_minor_currency\": null,\r\n \"missing_facility\": null,\r\n \"comments\": this.OtherReasonsComments.value\r\n }\r\n } else if (type == 'NotContactable') {\r\n this.lostDealModal = {\r\n \"reason_type\": \"NotContactable\",\r\n \"reason_other\": null,\r\n \"competitor_name\": null,\r\n \"competitor_latitude\": null,\r\n \"competitor_longitude\": null,\r\n \"competitor_place_id\": null,\r\n \"contract_end_date\": null,\r\n \"expected_price_in_minor_currency\": null,\r\n \"missing_facility\": null,\r\n \"comments\": this.NotContactableComments.value\r\n }\r\n }\r\n this.oppService.OpportunityMarkAsLost(this.dealInfo.tenant_id, OpportunityBoardType.NewMemberBoard, this.dealInfo.id, this.lostDealModal).subscribe((res: any) => {\r\n this.closeAllDialogs()\r\n console.log('res', res)\r\n this.messageService.add({ severity: 'success', summary: 'success', detail: 'Deal marked as lost' });\r\n this.reloadData.emit(res)\r\n })\r\n }\r\n\r\n getPlaceDetails(place: any) {\r\n console.log('llllll', place)\r\n this.latitude = place.geometry.location.lat()\r\n this.longitude = place.geometry.location.lng()\r\n this.placeId = place.place_id\r\n }\r\n\r\n resetDialogs() {\r\n this.latitude = '';\r\n this.longitude = '';\r\n this.placeId = '';\r\n this.lostToCompetitors.reset();\r\n this.lostDueToHighPrice.reset();\r\n this.missingFacility.reset();\r\n this.otherReasons.reset();\r\n this.notContactable.reset();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.resetDialogs()\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.status)\r\n return this.clientService.getClientStatusHtml(client.status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [LostDealReasonComponent],\r\n imports: [\r\n CommonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ErrorMsgComponentModule,\r\n DialogModule,\r\n InputTextModule,\r\n InputNumberModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n DropdownModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n CalendarModule,\r\n LostDealBannerComponentModule,\r\n ChipModule,\r\n ChipsModule,\r\n InputTextareaModule,\r\n InputMaskModule,\r\n GooglePlacesComponentModule,\r\n ToastModule\r\n ],\r\n providers: [GoogleMapsAPIWrapper],\r\n exports: [LostDealReasonComponent]\r\n})\r\nexport class LostDealReasonComponentModule {\r\n}\r\n","\r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n
\r\n \r\n BACK\r\n
\r\n
\r\n

{{reason.name}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \"Avatar\"\r\n {{dealInfo.client_info.full_name}}\r\n Client ID - {{dealInfo.client_info.id}}\r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

{{'OPPORTUNITY.LOSTDEAL.NAMEOFCOMPETITOR' | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n

{{'OPPORTUNITY.LOSTDEAL.CONTRACTENDDATE' | translate}}

\r\n

{{'OPPORTUNITY.LOSTDEAL.CONTRACTENDDATEINSTRUCTOR' | translate}}

\r\n \r\n \r\n
\r\n\r\n
\r\n

{{'OPPORTUNITY.LOSTDEAL.COMMENT' | translate}}

\r\n
{{'OPPORTUNITY.LOSTDEAL.WHATCOULDHAVEDONEBETTER' | translate}}
\r\n

{{'OPPORTUNITY.LOSTDEAL.LOSTDUETOCOMPETITORINSTRUCTOR' | translate}}

\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

What was the expected price?

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n
\r\n $\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n

Comments

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n

Select Facilities

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

Comments

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n

Reason

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n \r\n \r\n \r\n
\r\n {{Reason.value.name | uppercase}}\r\n
\r\n
\r\n \r\n
{{reason.name | uppercase}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n

Comments

\r\n

An automatic follow-up will be setup 2 weeks prior to the end date\r\n provided.

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

Comments

\r\n

Lorem Ipsum is simply dummy text of the printing and typesetting\r\n industry.

\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n SimpleChanges,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { CONSTANTS_CRM } from '@fitness-force/constants';\r\nimport {\r\n Country,\r\n ListServiceTypeResponse,\r\n OpportunityStageMasterResponse,\r\n TENANTSINTERFACE,\r\n UpdateOpportunityRequest,\r\n UpdateTask,\r\n} from '@fitness-force/models';\r\nimport { ServiceTypeService } from 'libs/api/src/lib/serviceType/service-type.service';\r\nimport { AppErrors, NotFoundError } from '@fitness-force/errors';\r\nimport { ClassAppointmentBehaviour, TaskAssignToType, TaskType } from '@fitness-force/enum';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { CurrencyformatPipeModule } from '../../../../filters/currencyformat.pipe';\r\nimport { DateTimeFormatPipeModule } from '../../../../filters/datetimeformat.pipe';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport {\r\n COUNTRY_MASTER_STATE,\r\n STAFF_STATE,\r\n STAGE_MASTER_STATE,\r\n TENANTS_INFO,\r\n} from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { CommonService, TaskService, TimeconversionService } from '@fitness-force/api';\r\nimport { OpportunityService } from 'libs/api/src/lib/crm/opportunity.service';\r\nimport { MessageService } from 'primeng/api';\r\nimport { BehaviorSubject, pairwise } from 'rxjs';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { AssignedToComponentModule } from '../../../staff/assigned-to/assigned-to.component';\r\n\r\n@Component({\r\n selector: 'app-task-opportunity-info',\r\n templateUrl: './task-opportunity-info.component.html',\r\n styleUrls: ['./task-opportunity-info.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class TaskOpportunityInfoComponent implements OnInit {\r\n @Input('taskOpportunityInfo') modelData: any;\r\n @Output('ErrorData') ErrorData: EventEmitter = new EventEmitter();\r\n @Output('UpdatedData') UpdatedData: EventEmitter = new EventEmitter();\r\n\r\n TaskApportunityInfoForm: FormGroup | any;\r\n convertibility: any = CONSTANTS_CRM.OPPORTUNITY_CONVERTITBILITY;\r\n outcome: any = CONSTANTS_CRM.TOUR_OUTCOME;\r\n selectedOutcome!: any;\r\n values: string[] | undefined;\r\n followUpDate: Date | undefined;\r\n contractEndDate: Date | undefined;\r\n mylookupservice: any;\r\n hideOnOutsideClick: any;\r\n assignedTo$ = new BehaviorSubject(0);\r\n\r\n serviceTypeCollection!: any;\r\n assignedCollection!: Assigned[];\r\n opportunityStageCollection!: Option[];\r\n\r\n errMsg: Error | any;\r\n tenantId: number = 0;\r\n taskType: TaskType | any;\r\n taskNotes: string = '';\r\n\r\n taskTitleEdit: boolean = false;\r\n taskNotesEdit: boolean = false;\r\n dueDateEdit: boolean = false;\r\n amountEdit: boolean = false;\r\n expectedDateEdit: boolean = false;\r\n\r\n filtertedServiceType!: Option[];\r\n\r\n showErrorPopup$ = new BehaviorSubject(false);\r\n errorDataModal = [] as any;\r\n errorMessages = [] as any;\r\n country: Country;\r\n\r\n\r\n\r\n constructor(\r\n public store: Store,\r\n public translate: TranslateService,\r\n private fb: FormBuilder,\r\n private serviceType: ServiceTypeService,\r\n private taskService: TaskService,\r\n private opportunityService: OpportunityService,\r\n private messageService: MessageService,\r\n private dateTimeService: TimeconversionService,\r\n private commonService: CommonService\r\n ) {\r\n this.taskType = TaskType;\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.TaskApportunityInfoForm = this.fb.group({\r\n taskTitle: new FormControl(this.modelData.title ? this.modelData.title : this.modelData.latest_task.title),\r\n taskNotes: new FormControl(this.taskNotes),\r\n value_in_minor_currency: this.modelData.value_in_minor_currency ? new FormControl(this.commonService.ConvertAmountFromMinorCurrency(this.modelData.value_in_minor_currency)) : new FormControl(0),\r\n scheduled_date: new FormControl(\r\n this.dateTimeService.ConvertUTCToLocalDateTime(\r\n this.modelData.scheduled_date ? this.modelData.scheduled_date : this.modelData.latest_task.scheduled_date\r\n )\r\n ),\r\n expected_closure_date: this.modelData.expected_closure_date ? new FormControl(\r\n this.dateTimeService.ConvertUTCToLocalDateTime(\r\n this.modelData.expected_closure_date\r\n )) : new FormControl({ value: null, disabled: true })\r\n ,\r\n ddlselectedConvertibility: new FormControl(),\r\n ddlselectedOpportunity: new FormControl(),\r\n ddlselectedAssigned: new FormControl(),\r\n service_type_ids: new FormControl(),\r\n });\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n }\r\n });\r\n\r\n this.store.select(COUNTRY_MASTER_STATE).subscribe((country: Country) => {\r\n this.country = country;\r\n });\r\n\r\n this.GetTaskNotes();\r\n this.BindUsers();\r\n this.BindServiceType();\r\n // if(this.modelData.stage_master_id)\r\n this.BindOpportunityStageMaster();\r\n\r\n if (this.modelData) {\r\n let selectedConvertibility = this.convertibility.find(\r\n (s: any) => s.name == this.modelData.hot_warm_cold\r\n );\r\n if (this.modelData.hot_warm_cold)\r\n this.TaskApportunityInfoForm.controls.ddlselectedConvertibility.setValue(\r\n selectedConvertibility,\r\n { onlySelf: true }\r\n );\r\n else\r\n this.TaskApportunityInfoForm.controls.ddlselectedConvertibility.disable();\r\n\r\n }\r\n\r\n // this.SelectedAssignedFormControl\r\n // .valueChanges\r\n // .pipe(pairwise())\r\n // .subscribe(([prev, next]: [any, any]) => {\r\n // debugger;\r\n // if (prev && next && prev.id != next.id) {\r\n // this.UpdateAssignTo(event, this.TaskApportunityInfoForm);\r\n // }\r\n // });\r\n }\r\n\r\n getSelectedStaff(trainer: any) {\r\n this.UpdateAssignTo(trainer, this.TaskApportunityInfoForm)\r\n }\r\n\r\n GetTaskNotes() {\r\n this.taskService\r\n .GetTask(this.tenantId, this.modelData.latest_task ? this.modelData.latest_task.id : this.modelData.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n this.taskNotes = data.notes;\r\n this.TaskApportunityInfoForm.controls.taskNotes.setValue(\r\n this.taskNotes,\r\n { onlySelf: true }\r\n );\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorMessages = [];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n this.errorMessages.push(error.originalError.message);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup$.next(true);\r\n } else {\r\n this.ReadErrorMessgaes(error);\r\n }\r\n },\r\n });\r\n }\r\n\r\n BindUsers(): void {\r\n if (this.modelData){\r\n this.assignedTo$.next(this.modelData?.latest_task?.assigned_to_staff_id?this.modelData?.latest_task?.assigned_to_staff_id:this.modelData?.assigned_to_staff_id);\r\n }\r\n\r\n }\r\n\r\n BindServiceType(): void {\r\n this.serviceType.GetServiceType(this.tenantId).subscribe({\r\n next: (serviceTypes: ListServiceTypeResponse) => {\r\n this.serviceTypeCollection = serviceTypes.items;\r\n if (this.modelData.service_type) {\r\n let selectedServiceType = serviceTypes.items.filter((allservice) => {\r\n return this.modelData.service_type.some(function (\r\n modelservice: any\r\n ) {\r\n return allservice.id === modelservice.id;\r\n });\r\n });\r\n if (this.modelData.service_type)\r\n this.TaskApportunityInfoForm.controls.service_type_ids.setValue(\r\n selectedServiceType\r\n );\r\n else this.TaskApportunityInfoForm.controls.service_type_ids.disable();\r\n }\r\n },\r\n error: (error) => {\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n this.errMsg = error.originalError.message;\r\n }\r\n },\r\n });\r\n }\r\n\r\n filterServiceType(event: any) {\r\n let filtered: any[] = [];\r\n let query = event.query;\r\n for (let i = 0; i < this.serviceTypeCollection.length; i++) {\r\n let serviceType = this.serviceTypeCollection[i];\r\n if (\r\n serviceType.name_primary_language\r\n .toLowerCase()\r\n .indexOf(query.toLowerCase()) == 0 ||\r\n serviceType.name_secondary_language\r\n .toLowerCase()\r\n .indexOf(query.toLowerCase()) == 0\r\n ) {\r\n filtered.push(serviceType);\r\n }\r\n }\r\n\r\n this.filtertedServiceType = filtered;\r\n }\r\n\r\n BindOpportunityStageMaster(): void {\r\n this.store.select(STAGE_MASTER_STATE).subscribe((res: any) => {\r\n this.opportunityStageCollection = [];\r\n let opportunities = res as any;\r\n opportunities.forEach(\r\n (opportunityStage: OpportunityStageMasterResponse) => {\r\n this.opportunityStageCollection.push({\r\n name: opportunityStage.name_primary_language,\r\n value: opportunityStage.id,\r\n });\r\n }\r\n );\r\n if (this.modelData) {\r\n let selectedOpportunity = this.opportunityStageCollection.find(\r\n (s) => s.value == this.modelData.stage_master_id\r\n );\r\n\r\n if (this.modelData?.stage_master_id)\r\n this.TaskApportunityInfoForm.controls.ddlselectedOpportunity.setValue(\r\n selectedOpportunity,\r\n { onlySelf: true }\r\n );\r\n else\r\n this.TaskApportunityInfoForm.controls.ddlselectedOpportunity.disable();\r\n }\r\n });\r\n }\r\n\r\n async EditTaskTitle(form: FormGroup) {\r\n this.taskTitleEdit = false;\r\n let updateTask: UpdateTask = {} as UpdateTask;\r\n updateTask.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateTask.notes = form.value.taskNotes;\r\n updateTask.title = form.value.taskTitle;\r\n updateTask.priority = this.modelData.priority ? this.modelData.priority : this.modelData.latest_task.priority;\r\n updateTask.scheduled_date = this.modelData.latest_task ? this.modelData.latest_task.scheduled_date : this.modelData.scheduled_date;\r\n updateTask.category_id = this.modelData.latest_task ? this.modelData.latest_task.category_id : this.modelData.category_id;\r\n updateTask.assigned_to_type = TaskAssignToType.SpecificStaff;\r\n await this.UpdateTask(updateTask).then((res) => {\r\n if (res) {\r\n if (this.modelData.latest_task)\r\n this.modelData.latest_task.title = form.value.taskTitle;\r\n else this.modelData.title = form.value.taskTitle;\r\n this.UpdatedData.emit(this.modelData);\r\n } else\r\n this.TaskApportunityInfoForm.controls.taskTitle.setValue(\r\n this.modelData.latest_task ? this.modelData.latest_task.title : this.modelData.title,\r\n { onlySelf: true }\r\n );\r\n });\r\n }\r\n\r\n async EditTaskNotes(form: FormGroup) {\r\n this.taskNotesEdit = false;\r\n this.taskTitleEdit = false;\r\n let updateTask: UpdateTask = {} as UpdateTask;\r\n updateTask.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateTask.notes = form.value.taskNotes;\r\n updateTask.title = form.value.taskTitle;\r\n updateTask.priority = this.modelData.latest_task ? this.modelData.latest_task.priority : this.modelData.priority;;\r\n updateTask.scheduled_date = this.modelData.latest_task ? this.modelData.latest_task.scheduled_date : this.modelData.scheduled_date;;\r\n updateTask.category_id = this.modelData.latest_task ? this.modelData.latest_task.category_id : this.modelData.category_id;\r\n updateTask.assigned_to_type = TaskAssignToType.SpecificStaff;\r\n await this.UpdateTask(updateTask).then((res) => {\r\n if (res) {\r\n this.taskNotes = form.value.taskNotes;\r\n this.UpdatedData.emit(this.modelData);\r\n } else\r\n this.TaskApportunityInfoForm.controls.taskNotes.setValue(\r\n this.modelData.latest_task ? this.modelData.latest_task.title : this.modelData.title,\r\n { onlySelf: true }\r\n );\r\n });\r\n }\r\n\r\n\r\n async UpdateAssignTo(e: any, form: FormGroup) {\r\n let updateTask: UpdateTask = {} as UpdateTask;\r\n updateTask.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateTask.notes = form.value.taskNotes;\r\n updateTask.title = form.value.taskTitle;\r\n updateTask.priority = this.modelData.latest_task ? this.modelData.latest_task.priority : this.modelData.priority;\r\n updateTask.scheduled_date = this.modelData.latest_task ? this.modelData.latest_task.scheduled_date : this.modelData.scheduled_date;\r\n updateTask.category_id = this.modelData.latest_task ? this.modelData.latest_task.category_id : this.modelData.category_id;\r\n updateTask.assigned_to_type = TaskAssignToType.SpecificStaff;\r\n await this.UpdateTask(updateTask).then((res) => {\r\n if (!res) {\r\n let selectedAssigned = this.assignedCollection.find(\r\n (s) => s.value == this.modelData.assigned_to_staff_id\r\n );\r\n this.TaskApportunityInfoForm.controls.ddlselectedAssigned.setValue(\r\n selectedAssigned,\r\n { onlySelf: true }\r\n );\r\n } else {\r\n this.modelData.assigned_to_staff_id =\r\n form.value.ddlselectedAssigned.id;\r\n }\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }\r\n\r\n async UpdateConvartability(e: any, form: FormGroup) {\r\n let updateOpportunity: UpdateOpportunityRequest = {} as UpdateOpportunityRequest;\r\n updateOpportunity.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateOpportunity.comments = this.modelData.comments;\r\n updateOpportunity.expected_closure_date = this.modelData.expected_closure_date;\r\n updateOpportunity.hot_warm_cold = form.value.ddlselectedConvertibility.name;\r\n updateOpportunity.name = this.modelData.name;\r\n updateOpportunity.service_type_ids = form.value.service_type_ids.map(\r\n (s: { id: any }) => {\r\n return s.id;\r\n }\r\n );\r\n updateOpportunity.stage_master_id = form.value.ddlselectedOpportunity.value;\r\n updateOpportunity.value_in_minor_currency = form.value.value_in_minor_currency;\r\n await this.UpdateOpportunity(updateOpportunity).then((res) => {\r\n if (!res) {\r\n let selectedConvertibility = this.convertibility.find(\r\n (s: any) => s.name == this.modelData.hot_warm_cold\r\n );\r\n this.TaskApportunityInfoForm.controls.dlselectedConvertibility.setValue(\r\n selectedConvertibility,\r\n { onlySelf: true }\r\n );\r\n } else\r\n this.modelData.hot_warm_cold = form.value.ddlselectedConvertibility.name;\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }\r\n\r\n async UpdateOpportunityStatge(e: any, form: FormGroup) {\r\n let updateOpportunity: UpdateOpportunityRequest = {} as UpdateOpportunityRequest;\r\n updateOpportunity.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateOpportunity.comments = this.modelData.comments;\r\n updateOpportunity.expected_closure_date = this.modelData.expected_closure_date;\r\n updateOpportunity.hot_warm_cold = form.value.ddlselectedConvertibility.name;\r\n updateOpportunity.name = this.modelData.name;\r\n updateOpportunity.service_type_ids = form.value.service_type_ids.map(\r\n (s: { id: any }) => {\r\n return s.id;\r\n }\r\n );\r\n updateOpportunity.stage_master_id = form.value.ddlselectedOpportunity.value;\r\n updateOpportunity.value_in_minor_currency = form.value.value_in_minor_currency;\r\n await this.UpdateOpportunity(updateOpportunity).then((res) => {\r\n if (!res) {\r\n let selectedOpportunity = this.opportunityStageCollection.find(\r\n (s) => s.value == this.modelData.stage_master_id\r\n );\r\n this.TaskApportunityInfoForm.controls.ddlselectedOpportunity.setValue(\r\n selectedOpportunity,\r\n { onlySelf: true }\r\n );\r\n } else\r\n this.modelData.stage_master_id = form.value.ddlselectedOpportunity.value;\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }\r\n\r\n async OnScheduleDateSelect(e: any) {\r\n let updateTask: UpdateTask = {} as UpdateTask;\r\n updateTask.assigned_to_staff_id = this.TaskApportunityInfoForm.value.ddlselectedAssigned.id;\r\n updateTask.notes = this.TaskApportunityInfoForm.value.taskNotes;\r\n updateTask.title = this.TaskApportunityInfoForm.value.taskTitle;\r\n updateTask.priority = this.modelData.latest_task ? this.modelData.latest_task.priority : this.modelData.priority;;\r\n\r\n updateTask.scheduled_date = e.toISOString();\r\n updateTask.category_id = this.modelData.latest_task ? this.modelData.latest_task.category_id : this.modelData.category_id;\r\n updateTask.assigned_to_type = TaskAssignToType.SpecificStaff;\r\n await this.UpdateTask(updateTask).then((res) => {\r\n if (res) {\r\n if (this.modelData.latest_task)\r\n this.modelData.latest_task.scheduled_date = e;\r\n else this.modelData.scheduled_date = e;\r\n } else {\r\n this.TaskApportunityInfoForm.controls.scheduled_date.setValue(\r\n new Date(this.modelData.latest_task ? this.modelData.latest_task.scheduled_date : this.modelData.scheduled_date)\r\n );\r\n }\r\n this.dueDateEdit = false;\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }\r\n\r\n async OnExpectedClosureDateSelect(e: any) {\r\n let updateOpportunity: UpdateOpportunityRequest =\r\n {} as UpdateOpportunityRequest;\r\n updateOpportunity.assigned_to_staff_id = this.TaskApportunityInfoForm.value.ddlselectedAssigned.id;\r\n updateOpportunity.comments = this.modelData.comments;\r\n updateOpportunity.expected_closure_date = e.toISOString();\r\n updateOpportunity.hot_warm_cold = this.TaskApportunityInfoForm.value.ddlselectedConvertibility.name;\r\n updateOpportunity.name = this.modelData.name;\r\n updateOpportunity.service_type_ids = this.TaskApportunityInfoForm.value.service_type_ids.map(\r\n (s: { id: any }) => {\r\n return s.id;\r\n }\r\n );\r\n updateOpportunity.stage_master_id = this.TaskApportunityInfoForm.value.ddlselectedOpportunity.value;\r\n updateOpportunity.value_in_minor_currency = this.TaskApportunityInfoForm.value.value_in_minor_currency;\r\n await this.UpdateOpportunity(updateOpportunity).then((res) => {\r\n if (res) {\r\n this.modelData.expected_closure_date = e;\r\n } else {\r\n this.TaskApportunityInfoForm.controls.expected_closure_date.setValue(\r\n new Date(this.modelData.expected_closure_date)\r\n );\r\n }\r\n this.expectedDateEdit = false;\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }\r\n\r\n async UpdateAmount(form: FormGroup) {\r\n let updateOpportunity: UpdateOpportunityRequest = {} as UpdateOpportunityRequest;\r\n updateOpportunity.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateOpportunity.comments = this.modelData.comments;\r\n updateOpportunity.expected_closure_date = this.modelData.expected_closure_date;\r\n updateOpportunity.hot_warm_cold = form.value.ddlselectedConvertibility.name;\r\n updateOpportunity.name = this.modelData.name;\r\n updateOpportunity.service_type_ids = form.value.service_type_ids.map(\r\n (s: { id: any }) => {\r\n return s.id;\r\n }\r\n );\r\n updateOpportunity.stage_master_id = form.value.ddlselectedOpportunity.value;\r\n updateOpportunity.value_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(form.value.value_in_minor_currency);\r\n await this.UpdateOpportunity(updateOpportunity).then((res) => {\r\n if (res)\r\n this.modelData.value_in_minor_currency = this.commonService.ConvertMinorCurrencyFromAmount(form.value.value_in_minor_currency);\r\n else\r\n this.TaskApportunityInfoForm.controls.value_in_minor_currency.setValue(this.commonService.ConvertAmountFromMinorCurrency(this.modelData.value_in_minor_currency), { onlySelf: true });\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n this.amountEdit = false;\r\n }\r\n\r\n async UpdateServiceType(isRemoved: boolean, e: any, form: FormGroup) {\r\n if (isRemoved && form.controls.service_type_ids.value && form.controls.service_type_ids.value.length == 0) {\r\n this.translate.get('Shared.TASK-OPPORTUNITY-INFO.INTERESTEDIN_MIN_ERROR').subscribe((translation) => {\r\n this.messageService.add({ severity: 'error', summary: 'Error', detail: translation });\r\n });\r\n form.controls.service_type_ids.setValue([e]);\r\n return;\r\n }\r\n else {\r\n setTimeout(async () => {\r\n let updateOpportunity: UpdateOpportunityRequest =\r\n {} as UpdateOpportunityRequest;\r\n updateOpportunity.assigned_to_staff_id = form.value.ddlselectedAssigned.id;\r\n updateOpportunity.comments = this.modelData.comments;\r\n updateOpportunity.expected_closure_date = this.modelData.expected_closure_date;\r\n updateOpportunity.hot_warm_cold = form.value.ddlselectedConvertibility.name;\r\n updateOpportunity.name = this.modelData.name;\r\n updateOpportunity.service_type_ids = form.value.service_type_ids.map(\r\n (s: { id: any }) => {\r\n return s.id;\r\n }\r\n );\r\n updateOpportunity.stage_master_id = form.value.ddlselectedOpportunity.value;\r\n updateOpportunity.value_in_minor_currency = form.value.value_in_minor_currency;\r\n await this.UpdateOpportunity(updateOpportunity).then((res) => {\r\n if (res) this.modelData.service_type = form.value.service_type_ids;\r\n else {\r\n let selectedServiceType = this.serviceTypeCollection.filter(\r\n (o: any) => {\r\n return this.modelData.service_type.some(function (o2: any) {\r\n return o.id === o2.id;\r\n });\r\n }\r\n );\r\n this.TaskApportunityInfoForm.controls.service_type_ids.setValue(\r\n selectedServiceType\r\n );\r\n }\r\n this.UpdatedData.emit(this.modelData);\r\n });\r\n }, 3000);\r\n }\r\n }\r\n\r\n async UpdateTask(updateTask: UpdateTask): Promise {\r\n let othis = this;\r\n let promise: Promise = new Promise(function (resolve, reject) {\r\n othis.taskService\r\n .UpdateTaskService(\r\n othis.tenantId,\r\n othis.modelData.latest_task ? othis.modelData.latest_task.id : othis.modelData.id,\r\n updateTask\r\n )\r\n .subscribe({\r\n next: (data: any) => {\r\n othis.translate\r\n .get('Shared.TASK-OPPORTUNITY-INFO.TASK_UPDATE_MSG')\r\n .subscribe((translation) => {\r\n othis.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n resolve(true);\r\n },\r\n error: (error: AppErrors) => {\r\n othis.errorMessages = [];\r\n if (error instanceof NotFoundError) {\r\n othis.errMsg = error.originalError.message;\r\n othis.errorMessages.push(error.originalError.message);\r\n othis.errorDataModal = othis.errorMessages;\r\n othis.showErrorPopup$.next(true);\r\n } else {\r\n othis.ReadErrorMessgaes(error);\r\n }\r\n resolve(false);\r\n },\r\n });\r\n });\r\n return promise;\r\n }\r\n\r\n UpdateOpportunity(updateOpportunity: UpdateOpportunityRequest) {\r\n let othis = this;\r\n let promise: Promise = new Promise(function (resolve, reject) {\r\n othis.opportunityService\r\n .OpportunityUpdateService(\r\n othis.tenantId,\r\n othis.modelData.board_type,\r\n othis.modelData.id,\r\n updateOpportunity\r\n )\r\n .subscribe({\r\n next: (data: any) => {\r\n othis.translate\r\n .get('Shared.TASK-OPPORTUNITY-INFO.OPPT_UPDATE_MSG')\r\n .subscribe((translation) => {\r\n othis.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n resolve(true);\r\n },\r\n error: (error: AppErrors) => {\r\n othis.errorMessages = [];\r\n if (error instanceof NotFoundError) {\r\n othis.errMsg = error.originalError.message;\r\n othis.errorMessages.push(error.originalError.message);\r\n othis.errorDataModal = othis.errorMessages;\r\n othis.showErrorPopup$.next(true);\r\n } else {\r\n othis.ReadErrorMessgaes(error);\r\n }\r\n resolve(false);\r\n },\r\n });\r\n });\r\n return promise;\r\n }\r\n\r\n ReadErrorMessgaes(error: any) {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n }\r\n if (\r\n error.originalError.status == 400 ||\r\n error.originalError.status == 409\r\n ) {\r\n if (error.originalError.error.errors) {\r\n error.originalError.error.errors.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n } else {\r\n if (error.originalError.error.length > 0) {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n } else {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n }\r\n }\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n }\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup$.next(true);\r\n this.ErrorData.emit({ errors: this.errorMessages, showErrors: true });\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup$?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n get SelectedOpportunity() {\r\n return this.TaskApportunityInfoForm.controls.ddlselectedOpportunity.value;\r\n }\r\n\r\n get SelectedConvertibility() {\r\n return this.TaskApportunityInfoForm.controls.ddlselectedConvertibility.value;\r\n }\r\n\r\n get SelectedAssigned() {\r\n return this.SelectedAssignedFormControl.value;\r\n }\r\n\r\n get SelectedAssignedFormControl(): FormControl {\r\n return this.TaskApportunityInfoForm.controls.ddlselectedAssigned as FormControl;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaskOpportunityInfoComponent],\r\n imports: [\r\n BrowserModule,\r\n FormsModule,\r\n CommonModule,\r\n DialogModule,\r\n ButtonModule,\r\n DropdownModule,\r\n ChipsModule,\r\n ChipModule,\r\n InplaceModule,\r\n StyleClassModule,\r\n ReactiveFormsModule,\r\n AutoCompleteModule,\r\n ToastModule,\r\n CalendarModule,\r\n InputNumberModule,\r\n CurrencyformatPipeModule,\r\n DateTimeFormatPipeModule,\r\n AssignedToComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [TaskOpportunityInfoComponent],\r\n})\r\nexport class TaskOpportunityInfoComponentModule { }\r\n\r\ninterface Option {\r\n name: string;\r\n value: number;\r\n}\r\n\r\ninterface Member {\r\n name: string;\r\n id: number;\r\n}\r\n\r\ninterface Assigned {\r\n name: string;\r\n value: number;\r\n avatar: string;\r\n}\r\n","\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.TASK-TITLE' | translate}}

\r\n

\r\n {{modelData.latest_task?modelData.latest_task.title:modelData.title}}

\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.TASK-NOTES' | translate}}

\r\n
\r\n {{taskNotes |\r\n slice:0:100}} \r\n 100\"\r\n class=\"text-primary cursor-pointer font-bold d-inline-block ml-2 hover:underline\" pStyleClass=\"@next\"\r\n enterClass=\"hidden\" enterActiveClass=\"scalein\" leaveToClass=\"hidden\" leaveActiveClass=\"fadeout\"\r\n [hideOnOutsideClick]=\"true\">{{'Shared.TASK-OPPORTUNITY-INFO.LOAD_MORE' | translate}}\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.TASK-TYPE' | translate}}

\r\n

{{modelData.latest_task?modelData.latest_task.type:modelData.type }}

\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.ASSIGNED-TO' | translate}}

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.DUE' | translate}}

\r\n \r\n {{TaskApportunityInfoForm.get('scheduled_date').value | datetimeformat: 'EE, MMMM d, y'}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.CONVERTIBILITY' | translate}}\r\n

\r\n
\r\n \r\n \r\n
\r\n \"{{SelectedConvertibility.name}}\"\r\n {{SelectedConvertibility.name}}\r\n
\r\n
\r\n \r\n
\r\n \"{{convertibility.name}}\"\r\n
{{convertibility.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.OPPORTUNITY-STAGE' |\r\n translate}}\r\n

\r\n
\r\n \r\n \r\n
\r\n {{SelectedOpportunity.name}}\r\n
\r\n
\r\n \r\n
{{opportunity.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.AMOUNT' | translate}}

\r\n \r\n {{modelData.value_in_minor_currency?(modelData.value_in_minor_currency\r\n | currencyformat):(0 | currencyformat) }}\r\n\r\n
\r\n\r\n {{this.country.currency_symbol}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.EXPECTED-CLOSURE-MONTH' |\r\n translate}}

\r\n \r\n {{TaskApportunityInfoForm.get('expected_closure_date').value | datetimeformat: 'MMMM YYYY'}}\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n

{{'Shared.TASK-OPPORTUNITY-INFO.INTERESTED-IN' |\r\n translate}}\r\n

\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\n\r\n@Component({\r\n selector: 'priority',\r\n templateUrl: './priority.component.html',\r\n styleUrls: ['./priority.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class PriorityComponent implements OnInit {\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n @Input() controlName: FormControl = new FormControl();\r\n @Input('placeHolder') placeHolder: string = 'Select';\r\n @Input('styleClass') styleClass: string = '-ml-2 border-none surface-50 w-full text-sm';\r\n @Input('langCode') languageCode: string = 'en';\r\n\r\n priority: any[] = [\r\n { name: 'High', value: 'high', icon: '' },\r\n { name: 'Medium', value: 'medium', icon: '' },\r\n { name: 'Low', value: 'low', icon: '' },\r\n ];\r\n\r\n constructor(private translate: TranslateService) {\r\n this.translate.setDefaultLang(this.languageCode);\r\n this.translate.use(this.languageCode);\r\n\r\n let transalteKey: string[] = ['common.PRIORITY.HIGH', 'common.PRIORITY.MEDIUM', 'common.PRIORITY.LOW'];\r\n this.translate.get(transalteKey).subscribe(translations => {\r\n this.priority.find(item => item.value == 'high').name = translations['common.PRIORITY.HIGH'];\r\n this.priority.find(item => item.value == 'medium').name = translations['common.PRIORITY.MEDIUM'];\r\n this.priority.find(item => item.value == 'low').name = translations['common.PRIORITY.LOW'];\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n get Priority(): any {\r\n console.log('Priority -> ', this.controlName?.value);\r\n return this.controlName?.value;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [PriorityComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DropdownModule,\r\n ],\r\n exports: [PriorityComponent]\r\n})\r\nexport class PriorityComponentModule {\r\n}\r\n","
\r\n \r\n \r\n
{{Priority.name}}
\r\n
\r\n \r\n
{{priority.name}}
\r\n
\r\n
\r\n
","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TaskCategoryService } from '@fitness-force/api';\r\nimport { ListTaskCategoryResponse, TaskCategoryResponse, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Store } from '@ngrx/store';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\n\r\n@Component({\r\n selector: 'task-category',\r\n templateUrl: './task-category-dropdown.component.html',\r\n styleUrls: ['./task-category-dropdown.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TaskCategoryDropdownComponent implements OnInit {\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n @Input() controlName: FormControl = new FormControl();\r\n @Input('placeHolder') placeHolder: string = 'Select';\r\n @Input('styleClass') styleClass: string = '-ml-2 border-none surface-50 w-full text-smtext-sm';\r\n\r\n taskCategory$ = new BehaviorSubject([]);\r\n\r\n constructor(private store: Store, private taskCategoryService: TaskCategoryService) { }\r\n\r\n GetTaskCategory(tenantId: number): void {\r\n this.taskCategoryService.GetTaskCategory(tenantId).subscribe((data: ListTaskCategoryResponse) => {\r\n let odata = data.items.filter((o:TaskCategoryResponse)=>{\r\n return String(o.status).toLowerCase() == 'active'});\r\n this.taskCategory$.next(odata);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n if (tenant.selected_tenant && tenant.selected_tenant.id > 0) {\r\n this.GetTaskCategory(tenant.selected_tenant.id);\r\n }\r\n });\r\n }\r\n\r\n get TaskCategory(): any {\r\n return this.controlName?.value;\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaskCategoryDropdownComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonModule,\r\n DropdownModule,\r\n MultiSelectModule\r\n ],\r\n exports: [TaskCategoryDropdownComponent]\r\n})\r\nexport class TaskCategoryDropdownComponentModule {\r\n}\r\n","\r\n\r\n\r\n
\r\n \r\n \r\n
{{TaskCategory.name_primary_language}}
\r\n
\r\n \r\n
{{taskCategory.name_primary_language}}
\r\n
\r\n
\r\n
","import { HttpClient } from '@angular/common/http';\r\nimport { Component, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TaskType } from '@fitness-force/enum';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\n\r\n@Component({\r\n selector: 'task-type',\r\n templateUrl: './task-type-dropdown.component.html',\r\n styleUrls: ['./task-type-dropdown.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TaskTypeDropdownComponent {\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n @Input() controlName: FormControl = new FormControl();\r\n @Input('placeHolder') placeHolder: string = 'Select';\r\n @Input('styleClass') styleClass: string = '-ml-2 border-none surface-50 w-full text-sm text-900';\r\n @Input('langCode') languageCode: string = 'en';\r\n\r\n taskType: any[] = [\r\n // { name: 'Email', value: 'email', icon: 'pi pi-envelope' },\r\n // { name: 'SMS', value: 'sms', icon: 'pi pi-comments' },\r\n { name: 'Call', value: 'call', icon: 'pi pi-phone' },\r\n // { name: 'Task', value: 'task', icon: 'pi pi-users' },\r\n { name: 'Tour', value: 'tour', icon: 'pi pi-map-marker' },\r\n ];\r\n\r\n\r\n constructor(private translate: TranslateService) {\r\n this.translate.setDefaultLang(this.languageCode);\r\n this.translate.use(this.languageCode);\r\n\r\n \r\n let transalteKey: string[] = ['common.TASKTYPE.EMAIL', 'common.TASKTYPE.SMS', 'common.TASKTYPE.CALL', 'common.TASKTYPE.TASK', 'common.TASKTYPE.TOUR'];\r\n this.translate.get(transalteKey).subscribe(translations => {\r\n // this.taskType.find(item => item.value == 'email').name = translations['common.TASKTYPE.EMAIL'];\r\n // this.taskType.find(item => item.value == 'sms').name = translations['common.TASKTYPE.SMS'];\r\n this.taskType.find(item => item.value == 'call').name = translations['common.TASKTYPE.CALL'];\r\n // this.taskType.find(item => item.value == 'task').name = translations['common.TASKTYPE.TASK'];\r\n this.taskType.find(item => item.value == 'tour').name = translations['common.TASKTYPE.TOUR'];\r\n });\r\n }\r\n\r\n get SelectedTaskType(): any {\r\n console.log(this.controlName?.value);\r\n return this.controlName?.value;\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaskTypeDropdownComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DropdownModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [TaskTypeDropdownComponent]\r\n})\r\nexport class TaskTypeDropdownComponentModule {\r\n}\r\n","
\r\n \r\n \r\n
\r\n \r\n
{{SelectedTaskType.name}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
{{tasktype.name}}
\r\n
\r\n
\r\n
\r\n
","import { BehaviorSubject, of, combineLatest, forkJoin, Subscription } from 'rxjs';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonModule, DOCUMENT } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ComponentFactoryResolver,\r\n ViewChild,\r\n ViewContainerRef,\r\n HostListener,\r\n Inject,\r\n OnDestroy,\r\n ComponentRef,\r\n} from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { TableModule } from 'primeng/table';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { GridCellModule } from './utility/grid-cell/grid-cell.component';\r\n\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport {EmptyStateContainerComponentModule} from './empty-state/empty-state-container/empty-state-container.component'\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {SkeletonModule} from 'primeng/skeleton';\r\nimport {VirtualScroller, VirtualScrollerModule} from 'primeng/virtualscroller';\r\nimport {ProgressBarModule} from 'primeng/progressbar';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { LazyLoadEvent } from 'primeng/api';\r\nimport { GridData } from '@fitness-force/enum';\r\nimport { ScrollingModule } from '@angular/cdk/scrolling';\r\n@Component({\r\n selector: 'app-data-grid',\r\n templateUrl: './data-grid.component.html',\r\n styleUrls: ['./data-grid.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class DataGridComponent implements OnInit, OnDestroy, AfterViewInit {\r\n @Input() columns = new BehaviorSubject<[]>([]);\r\n @Input() columnData = new BehaviorSubject([])\r\n @Input() EmptyState = new BehaviorSubject([])\r\n @Input() totalRecords = new BehaviorSubject({totalPage: 10, totalItems: 10, currentPage: 0,reset:true})\r\n @Input() currentPage = new BehaviorSubject(null)\r\n @Input() selectable = new BehaviorSubject(true);\r\n isAllSelected = new BehaviorSubject(false)\r\n @Input() scrollHeight=\"flex\";\r\n @Input() headerClasses=\" bg-gray-100 font-bold border-none white-space-nowrap uppercase\"\r\n @Input() tableClasses='p-0 shadow-2 my-3';\r\n @Input() groupMode=null;\r\n @Input() groupRows=null;\r\n @Input() paginator=true;\r\n @Input() loading=false;\r\n selectedRows = new BehaviorSubject(new Map());\r\n\r\n\r\n @Output() emitValue = new EventEmitter()\r\n @Output() emitSelectValue = new EventEmitter()\r\n @Output() onAction = new EventEmitter()\r\n @Output() loadNextData = new EventEmitter()\r\n\r\n\r\n\r\n itemsPerPage = 10;\r\n // loading: boolean = true;\r\n newPage = 0\r\n pageSize:number = GridData.DefaultPageSize;\r\n value: boolean | undefined;\r\n\r\n cols: any[] | undefined;\r\n dataloaded: any = new BehaviorSubject([]);\r\n selectedValue: string | undefined;\r\n\r\n showCalendar: boolean = false;\r\n selectedTaskCategory: { name: string } | undefined;\r\n\r\n calendarInput: Date | undefined;\r\n\r\n first = 0;\r\n subscriptions: Subscription[] | any = []\r\n isInfinityScroll = new BehaviorSubject(false)\r\n ref:ComponentRef;\r\n\r\n @ViewChild('vs') vs: VirtualScroller;\r\n constructor(\r\n public changeDetectorRef: ChangeDetectorRef,\r\n private translate: TranslateService,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.subscriptions.push(this.columns)\r\n this.subscriptions.push(this.columnData)\r\n this.subscriptions.push(this.EmptyState)\r\n this.subscriptions.push(this.totalRecords)\r\n this.totalRecords.subscribe((value:any)=>{\r\n if(value.reset) this.first=0;\r\n })\r\n\r\n }\r\n ngAfterViewInit() {\r\n}\r\n\r\n setAsObserVable(data:any){\r\n return of(data)\r\n }\r\n setCheckBoxValue(i:number,d:any){\r\n\r\n return Object.assign(d, {index: i})\r\n }\r\n trackByFn(index:number, item:any) {\r\n return index; // or item.id\r\n }\r\n goToNextPage(e:any){\r\n this.pageSize = e.rows\r\n let pn=e.first?(e.first/this.pageSize)+1:1;\r\n this.loadNextData.emit({ps: this.pageSize, pn})\r\n\r\n }\r\n selectedRow(columndata: any, selection: boolean) {\r\n if(selection){\r\n let tempMap=this.selectedRows.value;\r\n tempMap.set(columndata.data.index, columndata.data);\r\n this.selectedRows.next(tempMap);\r\n // TODO : change isAllSelected event to multi select..\r\n if(tempMap.size>=2){\r\n this.isAllSelected.next(true);\r\n }else{\r\n this.isAllSelected.next(false);\r\n }\r\n\r\n }\r\n else\r\n {\r\n let tempMap=this.selectedRows.value;\r\n tempMap.delete(columndata.data.index);\r\n this.selectedRows.next(tempMap);\r\n if(tempMap.size>=2){\r\n this.isAllSelected.next(true);\r\n }else{\r\n this.isAllSelected.next(false);\r\n }\r\n }\r\n this.emitValue.emit({ data: columndata, selection: selection });\r\n }\r\n\r\n SelectAllRow(e: any) {\r\n if(e.checked){\r\n this.isAllSelected.next(true)\r\n } else {\r\n this.isAllSelected.next(false)\r\n }\r\n this.emitSelectValue.emit(e);\r\n\r\n }\r\n\r\n onActionEvent(event: any) {\r\n this.onAction.emit(event);\r\n }\r\n\r\n // TESTING PENDING FOR WRAPPING in single event ..\r\n emptyAction(event:any){\r\n this.onAction.emit(event);\r\n }\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach((subscription: Subscription) => subscription.unsubscribe())\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [DataGridComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserAnimationsModule,\r\n DropdownModule,\r\n ButtonModule,\r\n SelectButtonModule,\r\n MultiSelectModule,\r\n ChipModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CheckboxModule,\r\n TableModule,\r\n DialogModule,\r\n CalendarModule,\r\n RippleModule,\r\n StyleClassModule,\r\n GridCellModule,\r\n SkeletonModule,\r\n ProgressBarModule,\r\n VirtualScrollerModule,\r\n ScrollingModule,\r\n EmptyStateContainerComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n }\r\n }),\r\n\r\n ],\r\n exports: [DataGridComponent],\r\n})\r\nexport class DataGridComponentModule {}\r\n","\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ col.title }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data[col.dataProperty] }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data[col.dataProperty] }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ data[col.dataProperty] }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n","\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, ViewChild, ViewContainerRef, ComponentFactoryResolver, AfterViewInit, ChangeDetectorRef, EventEmitter, Output } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n\r\n@Component({\r\n selector: 'empty-state-container',\r\n templateUrl: './empty-state-container.component.html',\r\n styleUrls: ['./empty-state-container.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EmptyStateContainerComponent implements OnInit, AfterViewInit{\r\n @Input() emptyState = new BehaviorSubject(null);\r\n @ViewChild('emptyStatecontainer', { read: ViewContainerRef }) emptyComponent: ViewContainerRef |any\r\n constructor( private componentFactoryResolver: ComponentFactoryResolver, public changeDetectorRef: ChangeDetectorRef) { }\r\n @Output() onAction = new EventEmitter();\r\n componentRef: any;\r\n ngOnInit(): void {\r\n\r\n }\r\n ngAfterViewInit(): void {\r\n this.lazyLoadTableData()\r\n}\r\n lazyLoadTableData(){\r\n this.emptyState.subscribe((comp:any)=>{\r\n this.emptyComponent.clear()\r\n if(comp){\r\n this.componentRef= this.emptyComponent.createComponent(this.componentFactoryResolver.resolveComponentFactory(comp));\r\n this.componentRef.instance?.onAction?.subscribe((data:any)=>{\r\n this.onAction.emit(data)\r\n })\r\n }\r\n this.changeDetectorRef.detectChanges()\r\n })\r\n\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [EmptyStateContainerComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [EmptyStateContainerComponent]\r\n})\r\nexport class EmptyStateContainerComponentModule {\r\n}\r\n","\r\n","import { RippleModule } from 'primeng/ripple';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { CreateProspectComponentModule } from '../../../omnisearch/create-prospect/create-prospect.component';\r\n\r\n@Component({\r\n selector: 'new-prospect',\r\n templateUrl: './new-prospect.component.html',\r\n styleUrls: ['./new-prospect.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class NewProspectComponent implements OnInit {\r\n showCreateProspectPopup: Observable = of(false);\r\n selectedClient: any = new Map()\r\n clients: any = new BehaviorSubject([])\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n hidePopup(isHide: boolean) {\r\n\r\n this.showCreateProspectPopup = of(isHide);\r\n }\r\n get getSelectedClientData(): Array {\r\n return [...this.selectedClient.values()];\r\n }\r\n OpenPopup() {\r\n this.clients.next(this.getSelectedClientData)\r\n this.showCreateProspectPopup = of(true);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [NewProspectComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RippleModule,\r\n CreateProspectComponentModule\r\n ],\r\n exports: [NewProspectComponent]\r\n})\r\nexport class NewProspectComponentModule {\r\n}\r\n","
\r\n \r\n \r\n
\r\n \r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'no-component',\r\n templateUrl: './no-component.component.html',\r\n styleUrls: ['./no-component.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class NoComponentComponent implements OnInit {\r\n \r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [NoComponentComponent],\r\n imports: [],\r\n exports: [NoComponentComponent]\r\n})\r\nexport class NoComponentComponentModule {\r\n}\r\n","\r\n\"No \r\n
No result found
\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, EventEmitter, Output } from '@angular/core';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { FactoryHttpLoader } from '../../../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'no-services',\r\n templateUrl: './no-services.component.html',\r\n\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class NoServicesComponent implements OnInit {\r\n\r\n @Output() onAction = new EventEmitter();\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n addServiceModal(){\r\n this.onAction.emit({action:\"createService\"});\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [NoServicesComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [NoServicesComponent]\r\n})\r\nexport class NoServicesComponentModule {\r\n}\r\n","\r\n \r\n
\r\n {{\r\n 'ADMIN.SUBSCRIPTION.NO_SERVICE_ADDED' | translate\r\n }}\r\n
\r\n \r\n


\r\n \r\n \r\n \r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, EventEmitter, Input, Output } from '@angular/core';\r\nimport { BehaviorSubject, forkJoin } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'action-column',\r\n templateUrl: './action-column.component.html',\r\n styleUrls: ['./action-column.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ActionColumnComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n aData!:any;\r\n\r\n @Output() onAction = new EventEmitter(); // {type:actionName,columnData }\r\n\r\n keyName!: string ;\r\n value!:any;\r\n constructor() {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n forkJoin([this.additionData,this.columnData]).subscribe({next:(data:any)=>{\r\n this.aData=data[1];\r\n\r\n this.keyName=data[0].keyName;\r\n this.value=this.aData[this.keyName];\r\n }});\r\n\r\n }\r\n\r\n executeAction(action:string){\r\n this.onAction.emit({action,columnData:this.aData});\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ActionColumnComponent],\r\n imports: [],\r\n exports: [ActionColumnComponent]\r\n})\r\nexport class ActionColumnComponentModule {\r\n}\r\n","{{value}}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, EventEmitter, Output } from '@angular/core';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../../../helpsupport/helpsupport.component';\r\n@Component({\r\n selector: 'actions',\r\n templateUrl: './actions.component.html',\r\n styleUrls: ['./actions.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ActionsComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null) // expected data [\"edit\",\"active\",\"inactive\"] etc\r\n @Input() rowIndex:number=0;\r\n\r\n @Output() onAction = new EventEmitter(); // {type:actionName,columnData }\r\n showOptions: boolean = false;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n executeAction(action:string,columnData:any,overlayElement:any){\r\n overlayElement.hide();\r\n this.onAction.emit({action,columnData:columnData,rowIndex:this.rowIndex});\r\n }\r\n isActive(columnData:any):boolean{\r\n return columnData.status.toUpperCase() == 'Active'.toUpperCase()\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ActionsComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n OverlayPanelModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n })\r\n ],\r\n exports: [ActionsComponent]\r\n})\r\nexport class ActionsComponentModule {\r\n}\r\n","\r\n \r\n\r\n \r\n \r\n
    \r\n
  • \r\n {{ 'ADMIN.COMMON.EDIT' | translate }}\r\n
  • \r\n\r\n
  • \r\n \r\n {{ 'Shared.TASK.TASK-CREATE.MARK' | translate }} {{isActive($.row)? 'In-active': 'Active'}}\r\n
  • \r\n\r\n
  • \r\n {{ 'ADMIN.COMMON.DELETE' | translate }}\r\n
  • \r\n\r\n
  • \r\n {{ 'ADMIN.COMMON.PRINT' | translate }}\r\n
  • \r\n\r\n
  • \r\n {{ 'ADMIN.COMMON.SENDEMAIL' | translate }}\r\n
  • \r\n\r\n
  • \r\n {{ 'ADMIN.COMMON.VOID' | translate }}\r\n
  • \r\n\r\n
  • \r\n \r\n {{ 'ADMIN.COMMON.COLLECTDUES' | translate }}\r\n
  • \r\n\r\n
  • \r\n \r\n {{ 'ADMIN.COMMON.REFUNDSALESRETURN' | translate }}\r\n
  • \r\n\r\n
  • {{ 'ADMIN.COMMON.WRITEOFF' | translate }}\r\n
  • \r\n\r\n
\r\n
\r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { AgePipeModule } from 'libs/shared/src/lib/filters/age.pipe';\r\nimport { DayAgoPipeModule } from 'libs/shared/src/lib/filters/dayago.pipe';\r\nimport { TimeLinePipeModule } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'age-cell',\r\n templateUrl: './age-cell.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AgeCellComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [AgeCellComponent],\r\n imports: [\r\n CommonModule,\r\n AgePipeModule,\r\n ],\r\n exports: [AgeCellComponent]\r\n})\r\nexport class AgeCellComponentModule {\r\n}\r\n","\r\n\r\n{{ $.row[$.adata.fetch_key] | Age}} \r\n\r\n","import { STAFF_STATE } from './../../../../../../../../apps/ff-frontend/src/app/state/app.state';\r\nimport { Store } from '@ngrx/store';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\n\r\n@Component({\r\n selector: 'assign-to-staff',\r\n templateUrl: './assign-to-staff.component.html',\r\n styleUrls: ['./assign-to-staff.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AssignToStaffComponent implements OnInit {\r\n @Input() columnData: any = ''\r\n allStaffs: any = []\r\n constructor(private store: Store) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.store.select(STAFF_STATE).subscribe((staffs: any) => {\r\n this.allStaffs = staffs.staffList;\r\n })\r\n }\r\n getStaffDetails(sId:any){\r\n \r\n const staff = this.allStaffs.find((s:any) => s.id == sId)\r\n return staff ? staff: null\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [AssignToStaffComponent],\r\n imports: [\r\n CommonModule,\r\n AvatarModule,\r\n DropdownModule,\r\n StyleClassModule,\r\n ShortNamePipeModule\r\n ],\r\n exports: [AssignToStaffComponent]\r\n})\r\nexport class AssignToStaffComponentModule {\r\n}\r\n","\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n\r\n {{getStaffDetails($.row.assigned_to_staff_id)?.name | titlecase}}\r\n
\r\n
-
\r\n\r\n\r\n\r\n\r\n
\r\n","import { BehaviorSubject } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { ClientGender } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'client-gender',\r\n templateUrl: './client-gender.component.html',\r\n styleUrls: ['./client-gender.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ClientGenderComponent implements OnInit {\r\n @Input() additionData = new BehaviorSubject(null)\r\n @Input() columnData = new BehaviorSubject(null)\r\n\r\n\r\n clientGender:any =ClientGender;\r\n \r\n constructor() { \r\n // this.clientGender = ClientGender;\r\n }\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ClientGenderComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [ClientGenderComponent]\r\n})\r\nexport class ClientGenderComponentModule {\r\n}\r\n","\r\n

{{clientGender[$.row!.clt_gender]}}

\r\n
\r\n","import { Router, RouterModule } from '@angular/router';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n} from '@angular/core';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport {\r\n ShortNamePipe,\r\n ShortNamePipeModule,\r\n} from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { ClientService } from '@fitness-force/api';\r\n\r\n@Component({\r\n selector: 'client-info',\r\n templateUrl: './client-info.component.html',\r\n styleUrls: ['./client-info.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ClientInfoComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject([]);\r\n constructor(private router: Router, private clientService: ClientService) { }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n showFullNameIntials() { }\r\n gotoClient(id: any) {\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['/client/profile/', id])\r\n );\r\n window.open(url, '_blank');\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.status)\r\n return this.clientService.getClientStatusHtml(client.status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ClientInfoComponent],\r\n imports: [\r\n CommonModule,\r\n AvatarModule,\r\n DropdownModule,\r\n StyleClassModule,\r\n ShortNamePipeModule,\r\n RouterModule,\r\n OverlayPanelModule\r\n ],\r\n exports: [ClientInfoComponent],\r\n})\r\nexport class ClientInfoComponentModule { }\r\n","\r\n \r\n \r\n \r\n
\r\n
\r\n {{$.row.client_info.full_name | titlecase }}\r\n {{$.row.client_info.id}}\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n {{$.row.client_info.mobile_country_code}} {{$.row.client_info.mobile_number}}\r\n
\r\n
\r\n \r\n {{$.row.client_info.email_id}}\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n {{$.row.client_info.full_name | titlecase }}\r\n \r\n\r\n
\r\n
\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { ClientRegular } from '@fitness-force/enum';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'client-regular-status',\r\n templateUrl: './client-regular-status.component.html',\r\n styleUrls: ['./client-regular-status.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ClientRegularStatusComponent implements OnInit {\r\n @Input() additionData = new BehaviorSubject(null)\r\n @Input() columnData = new BehaviorSubject(null)\r\n constructor() { }\r\n\r\n regularStatus:any =ClientRegular;\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ClientRegularStatusComponent],\r\n imports: [],\r\n exports: [ClientRegularStatusComponent]\r\n})\r\nexport class ClientRegularStatusComponentModule {\r\n}\r\n","\r\n

{{regularStatus[$.row!.clt_is_irregular]}}

\r\n
\r\n","import { StaffService } from '@fitness-force/api';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject, forkJoin, combineLatest } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'client-representative',\r\n templateUrl: './client-representative.component.html',\r\n styleUrls: ['./client-representative.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ClientRepresentativeComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n allStaffs:any = []\r\n staff$ = new BehaviorSubject(null)\r\n constructor(private store: Store, private staffService: StaffService) { }\r\n\r\n ngOnInit(): void {\r\n \r\n combineLatest([\r\n this.columnData,\r\n this.store.select(STAFF_STATE)\r\n ]).subscribe((res:any)=>{\r\n \r\n this.allStaffs = res[1].staffListAll\r\n this.getStaffDetails(res[0].client_representative_id)\r\n })\r\n }\r\n getStaffDetails(sId:any){\r\n if(this.allStaffs){\r\n const staffIdFormStore = this.allStaffs.find((s:any) => s.id == sId)\r\n if(staffIdFormStore){\r\n this.staff$.next(staffIdFormStore)\r\n }\r\n }\r\n // else {\r\n // this.staffService.GetStaffById(sId).subscribe((staff:any)=>{\r\n // this.staff$.next(staff)\r\n // })\r\n // }\r\n // } \r\n // else {\r\n // this.staffService.GetStaffById(sId).subscribe((staff:any)=>{\r\n // this.staff$.next(staff)\r\n // })\r\n // }\r\n \r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ClientRepresentativeComponent],\r\n imports: [\r\n CommonModule,\r\n AvatarModule,\r\n DropdownModule,\r\n StyleClassModule,\r\n ShortNamePipeModule,\r\n OverlayPanelModule\r\n ],\r\n exports: [ClientRepresentativeComponent]\r\n})\r\nexport class ClientRepresentativeComponentModule {\r\n}\r\n","\r\n\r\n \r\n\r\n
\r\n
\r\n {{ $.staff.name | titlecase }}\r\n {{ $.staff.id}}\r\n
\r\n {{ $.staff.designation}}\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n {{ $.staff.mobile_country_code}} {{ $.staff.mobile_number}}\r\n NA\r\n
\r\n
\r\n \r\n {{ $.staff.email_id}}\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n \r\n\r\n {{ $.staff.name | titlecase }}\r\n \r\n\r\n
\r\n
-
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'commitment-view',\r\n templateUrl: './commitment-view.component.html',\r\n styleUrls: ['./commitment-view.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CommitmentViewComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Input() additionData:any\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [CommitmentViewComponent],\r\n imports: [CommonModule],\r\n exports: [CommitmentViewComponent]\r\n})\r\nexport class CommitmentViewComponentModule {\r\n}\r\n","\r\n0;else dash\">{{$.row.minimum_contract_commitment}}\r\nNo Commitment\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'contract-term-view',\r\n templateUrl: './contract-term-view.component.html',\r\n styleUrls: ['./contract-term-view.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ContractTermViewComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Input() additionData = new BehaviorSubject(null);\r\n\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ContractTermViewComponent],\r\n imports: [CommonModule],\r\n exports: [ContractTermViewComponent]\r\n})\r\nexport class ContractTermViewComponentModule {\r\n}\r\n","\r\n\r\n0;else dash\">{{$.row.contract_term}}\r\n-\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { CurrencyformatPipeModule } from 'libs/shared/src/lib/filters/currencyformat.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'currency',\r\n templateUrl: './currency.component.html',\r\n styleUrls: ['./currency.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CurrencyComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Input() keyName = new BehaviorSubject(null);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [CurrencyComponent],\r\n imports: [\r\n CommonModule,\r\n CurrencyformatPipeModule\r\n ],\r\n exports: [\r\n CurrencyComponent\r\n ]\r\n})\r\nexport class CurrencyComponentModule {\r\n}\r\n","\r\n{{$.row[$.keyname] | currencyformat}}\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { DayAgoPipeModule } from 'libs/shared/src/lib/filters/dayago.pipe';\r\nimport { TimeLinePipeModule } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'date-cell',\r\n templateUrl: './date-cell.component.html',\r\n styleUrls: ['./date-cell.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DateCellComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [DateCellComponent],\r\n imports: [\r\n CommonModule,\r\n DayAgoPipeModule,\r\n TimeLinePipeModule\r\n ],\r\n exports: [DateCellComponent]\r\n})\r\nexport class DateCellComponentModule {\r\n}\r\n","\r\n\r\n{{ $.row[$.adata.fetch_key] | DayAgo}} \r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n} from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n@Component({\r\n selector: 'date-formated',\r\n templateUrl: './date-formated.component.html',\r\n styleUrls: ['./date-formated.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DateFormatedComponent implements OnInit {\r\n\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Input() additionData = new BehaviorSubject(null);\r\n keyName!: string ;\r\n value!:number;\r\n format!:string;\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [DateFormatedComponent],\r\n imports: [CommonModule],\r\n exports: [DateFormatedComponent]\r\n})\r\nexport class DateFormatedComponentModule {\r\n}\r\n\r\n\r\n","\r\n\r\n\r\n {{$.row[$.adata.keyName] | date :$.row[$.adata.format] }}\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { DayAgoPipeModule } from 'libs/shared/src/lib/filters/dayago.pipe';\r\nimport { TimeLinePipeModule } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'default-date-time',\r\n templateUrl: './default-date-time.component.html',\r\n styleUrls: ['./default-date-time.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DefaultDateTimeComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject([]);\r\n @Input() additionData = new BehaviorSubject([]);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n dateType(day:any){\r\n if(day && (day.toLowerCase() == 'today' || day.toLowerCase() == 'yesterday' || day.toLowerCase() == 'tomorrow')) {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n parseDate(date:any){\r\n return new Date(date)\r\n }\r\n dateToLocalTimeZone(value:any):Date{\r\n let nextDate = new Date(value);\r\n nextDate.setMinutes(nextDate.getMinutes() + -1*(new Date().getTimezoneOffset()))\r\n return nextDate;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [DefaultDateTimeComponent],\r\n imports: [\r\n CommonModule,\r\n DayAgoPipeModule,\r\n TimeLinePipeModule\r\n ],\r\n exports: [DefaultDateTimeComponent]\r\n})\r\nexport class DefaultDateTimeComponentModule {\r\n}\r\n","\r\n\r\n \r\n{{dateToLocalTimeZone($.row[$.adata.keyname]) | date:'MMM d, y, h:mm a'}}\r\n\r\n-\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { BehaviorSubject } from 'rxjs';\r\n@Component({\r\n selector: 'entity-status',\r\n templateUrl: './entity-status.component.html',\r\n styleUrls: ['./entity-status.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntityStatusComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n@Input() additionData = new BehaviorSubject(null);\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [EntityStatusComponent],\r\n imports: [CommonModule,TagModule],\r\n exports: [EntityStatusComponent]\r\n})\r\nexport class EntityStatusComponentModule {\r\n}\r\n","\r\n\r\n{{ $.row.status }}\r\n{{ $.row.status }}\r\n","import { BehaviorSubject, forkJoin, of } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, ViewChild, ViewContainerRef, ComponentFactoryResolver, AfterViewInit, ChangeDetectorRef, OnDestroy, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-grid-cell',\r\n templateUrl: './grid-cell.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class GridCellComponent implements OnInit, AfterViewInit, OnDestroy {\r\n componentFactory: any;\r\n componentRef: any;\r\n @Input() cell = new BehaviorSubject(null);\r\n @Input() cellData = new BehaviorSubject(null)\r\n @Input() allSelection = new BehaviorSubject(false);\r\n @Input() rowIndex :number;\r\n @Input() selectedRows:any;\r\n\r\n @ViewChild('container', { read: ViewContainerRef }) container: ViewContainerRef |any\r\n @Output() onAction = new EventEmitter();\r\n\r\n constructor(private componentFactoryResolver: ComponentFactoryResolver, public changeDetectorRef: ChangeDetectorRef) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n ngAfterViewInit(): void {\r\n this.loadComponent()\r\n }\r\n loadComponent(){\r\n\r\n forkJoin([\r\n this.cell,\r\n this.cellData\r\n ]).subscribe((res:any)=>{\r\n this.componentFactory = res[0];\r\n this.componentRef = this.container.createComponent(this.componentFactoryResolver.resolveComponentFactory(this.componentFactory.data.name));\r\n this.componentRef.instance.columnData = of(res[1])\r\n\r\n if(res[0].data.additionData){\r\n this.componentRef.instance.additionData = of(res[0].data.aData)\r\n }\r\n this.componentRef.instance.isAllSelected = this.allSelection\r\n if(res[0].data.fetch_key){\r\n this.componentRef.instance.keyName = of(res[0].data.fetch_key)\r\n }\r\n if(this.rowIndex){\r\n this.componentRef.instance.rowIndex = this.rowIndex;\r\n }\r\n if(this.selectedRows){\r\n this.componentRef.instance.selectedRows = this.selectedRows;\r\n }\r\n this.componentRef.instance?.onAction?.subscribe((data:any)=>{\r\n this.onAction.emit(data)\r\n })\r\n this.componentRef.instance?.changeEvent?.subscribe((data:any)=>{\r\n this.onAction.emit(data)\r\n })\r\n\r\n })\r\n\r\n\r\n\r\n this.changeDetectorRef.detectChanges()\r\n }\r\n ngOnDestroy(): void {\r\n\r\n this.container.clear();\r\n this.componentRef.destroy()\r\n }\r\n}\r\n@NgModule({\r\n declarations: [GridCellComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [GridCellComponent]\r\n})\r\nexport class GridCellModule {\r\n}\r\n","\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { CurrencyformatPipeModule } from 'libs/shared/src/lib/filters/currencyformat.pipe';\r\nimport { DateTimeFormatPipeModule } from 'libs/shared/src/lib/filters/datetimeformat.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { InvoiceDetailsComponentModule } from '../../../client-profile/invoice-details/invoice-details.component';\r\nimport { CurrencyComponentModule } from '../currency/currency.component';\r\n\r\n@Component({\r\n selector: 'invoice-data',\r\n templateUrl: './invoice-data.component.html',\r\n styleUrls: ['./invoice-data.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class InvoiceDataComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Output() onAction = new EventEmitter();\r\n \r\n showInvoice:boolean= false;\r\n invoiceDetails:any;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n OpenInvoiceDetails(invoiceNumber: string)\r\n {\r\n //this.showInvoice = true;\r\n //this.invoiceDetails= this.columnData;\r\n this.onAction.emit({action:'openinvoice',columnData:invoiceNumber});\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [InvoiceDataComponent],\r\n imports: [\r\n CommonModule,\r\n DividerModule,\r\n TimelineModule,\r\n ToastModule,\r\n DateTimeFormatPipeModule,\r\n CurrencyformatPipeModule,\r\n TableModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DropdownModule,\r\n AvatarModule,\r\n TagModule,\r\n StyleClassModule,\r\n CurrencyComponentModule,\r\n DialogModule,\r\n InvoiceDetailsComponentModule\r\n \r\n ],\r\n exports: [InvoiceDataComponent]\r\n})\r\nexport class InvoiceDataComponentModule {\r\n}\r\n","\r\n\r\n \r\n {{invoice}} \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'invoice-status',\r\n templateUrl: './invoice-status.component.html',\r\n styleUrls: ['./invoice-status.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class InvoiceStatusComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [InvoiceStatusComponent],\r\n imports: [\r\n CommonModule,\r\n TagModule\r\n ],\r\n exports: [InvoiceStatusComponent]\r\n})\r\nexport class InvoiceStatusComponentModule {\r\n}\r\n","\r\n
\r\n
\r\n {{$.row.inv_status}}\r\n {{$.row.status}}\r\n {{$.row.status}}\r\n {{$.row.status}}\r\n {{$.row.status}}\r\n {{$.row.status}}\r\n
\r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { AgePipeModule } from 'libs/shared/src/lib/filters/age.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'irregular-age-cell',\r\n templateUrl: './irregular-age-cell.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class IrregularAgeCellComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n dateValue!:string;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe((value:any)=>{\r\n if(new Date(value?.last_visited_date) > new Date(value?.created_date)){\r\n this.dateValue=value?.last_visited_date;\r\n }else{\r\n this.dateValue=value?.created_date;\r\n }\r\n })\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [IrregularAgeCellComponent],\r\n imports: [\r\n CommonModule,\r\n AgePipeModule,\r\n ],\r\n exports: [IrregularAgeCellComponent]\r\n})\r\nexport class IrregularAgeCellComponentModule {\r\n}\r\n","{{ dateValue | Age}} \r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { CoinIcons, Crown, TimeLine } from '@fitness-force/enum';\r\nimport { timeLineService } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n\r\n@Component({\r\n selector: 'member-crown',\r\n templateUrl: './member-crown.component.html',\r\n styleUrls: ['./member-crown.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MemberCrownComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n crownType!:any;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n isBeyondOneYear(clientSince:string,created:string):boolean{\r\n const duration = (new Date(clientSince) > new Date(created))?timeLineService(clientSince):timeLineService(created);\r\n if(duration.value >= TimeLine.BeyondOneYears && duration.value < TimeLine.BeyondThreeYears && duration.type == TimeLine.TimeAgo ){\r\n this.crownType= {crown: Crown.SilverCrown, coin: CoinIcons.LessSpentIcon}\r\n return true;\r\n } else if(duration.value >= TimeLine.BeyondThreeYears && duration.value < TimeLine.BeyondFiveYears && duration.type == TimeLine.TimeAgo){\r\n this.crownType= {crown: Crown.GrayCrown, coin: CoinIcons.MediumSpentIcon}\r\n return true;\r\n } else if(duration.value >= TimeLine.BeyondFiveYears && duration.type == TimeLine.TimeAgo ){\r\n this.crownType= {crown: Crown.GoldCrown, coin: CoinIcons.MostSpentIcon}\r\n return true;\r\n }\r\n return false;\r\n\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [MemberCrownComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [MemberCrownComponent]\r\n})\r\nexport class MemberCrownComponentModule {\r\n}\r\n","\r\n\"Icon\"\r\n\r\n","import { Router } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { ClientService } from '@fitness-force/api';\r\n\r\n@Component({\r\n selector: 'member-nonmember',\r\n templateUrl: './member-nonmember.component.html',\r\n styleUrls: ['./member-nonmember.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MemberNonmemberComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor(private router: Router, private clientService: ClientService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n gotoClient(id: any) {\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['/client/profile/', id])\r\n );\r\n window.open(url, '_blank');\r\n }\r\n\r\n\r\n getClientType(row: any): string {\r\n switch (row?.client_status) {\r\n case \"Client\":\r\n return \"Member\";\r\n default:\r\n return \"\"\r\n }\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.client_status)\r\n return this.clientService.getClientStatusHtml(client.client_status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [MemberNonmemberComponent],\r\n imports: [\r\n CommonModule,\r\n OverlayPanelModule,\r\n AvatarModule,\r\n StyleClassModule,\r\n ShortNamePipeModule,\r\n RouterModule\r\n ],\r\n exports: [MemberNonmemberComponent]\r\n})\r\nexport class MemberNonmemberComponentModule {\r\n}\r\n","\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n {{$.row.full_name}}\r\n {{$.row.id}}\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n {{$.row.mobile_country_code}}{{$.row.mobile_number}}\r\n
\r\n
\r\n \r\n {{$.row.email_id.toString().length >20? (($.row.email_id | slice:0:20 )+'...'):$.row.email_id}}\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {{$.row.full_name.toString().length >20? (($.row.full_name | slice:0:20 )+'...'):$.row.full_name}}\r\n \r\n \r\n\r\n \r\n
\r\n \r\n {{getClientType($.row)|\r\n titlecase}}\r\n
\r\n\r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { AgePipeModule } from 'libs/shared/src/lib/filters/age.pipe';\r\nimport { timeLineService } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { MemberCrownComponentModule } from '../member-crown/member-crown.component';\r\n\r\n@Component({\r\n selector: 'member-since-large',\r\n templateUrl: './member-since-large.component.html',\r\n styleUrls: ['./member-since-large.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MemberSinceLargeComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n dateValue!:string;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe((value:any)=>{\r\n if(new Date(value?.client_since) > new Date(value?.created_date)){\r\n this.dateValue=value?.client_since;\r\n }else{\r\n this.dateValue=value?.created_date;\r\n }\r\n })\r\n }\r\n memberSince(fromDate:string){\r\n return timeLineService(fromDate)\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [MemberSinceLargeComponent],\r\n imports: [\r\n CommonModule,\r\n AgePipeModule,\r\n MemberCrownComponentModule\r\n ],\r\n exports: [MemberSinceLargeComponent]\r\n})\r\nexport class MemberSinceLargeComponentModule {\r\n}\r\n","\r\n
\r\n {{memberSince($.row.client_since).exact}}\r\n \r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { timeLineService } from '@fitness-force/shared';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { MemberCrownComponentModule } from '../member-crown/member-crown.component';\r\n\r\n@Component({\r\n selector: 'member-since',\r\n templateUrl: './member-since.component.html',\r\n styleUrls: ['./member-since.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MemberSinceComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n memberSince(fromDate:string){\r\n \r\n return timeLineService(fromDate)\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [MemberSinceComponent],\r\n imports: [\r\n CommonModule,\r\n MemberCrownComponentModule\r\n ],\r\n exports: [MemberSinceComponent]\r\n})\r\nexport class MemberSinceComponentModule {\r\n}\r\n","\r\n {{memberSince($.row.client_since).exact}}\r\n \r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'opportunity-status',\r\n templateUrl: './opportunity-status.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class OpportunityStatusComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n}\r\n@NgModule({\r\n declarations: [OpportunityStatusComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RippleModule,\r\n StyleClassModule\r\n ],\r\n exports: [OpportunityStatusComponent]\r\n})\r\nexport class OpportunityStatusModule {\r\n}","\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'opportunity-type',\r\n templateUrl: './opportunity-type.component.html',\r\n styleUrls: ['./opportunity-type.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class OpportunityTypeComponent implements OnInit {\r\n @Input() additionData = new BehaviorSubject(null);\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n parseOpportunity(info:any, adata:any){\r\n\r\n return adata.find((item:any)=>{\r\n if(info == item.id) {\r\n return item\r\n } else {\r\n null\r\n }\r\n })\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [OpportunityTypeComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [OpportunityTypeComponent]\r\n})\r\nexport class OpportunityTypeComponentModule {\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n {{parseOpportunity($.row.oppportunity_info.stage_master_id,\r\n $.adata)?.name_primary_language}}\r\n
\r\n {{$.row.oppportunity_info.board_type}}\r\n
-
\r\n
","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'payment-data',\r\n templateUrl: './payment-data.component.html',\r\n styleUrls: ['./payment-data.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PaymentDataComponent implements OnInit {\r\n \r\n @Input() columnData = new BehaviorSubject(null);\r\n @Output() onAction = new EventEmitter();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n OpenPaymentDetails(payment: any) {\r\n this.onAction.emit({ action: 'openpayment', columnData: payment });\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [PaymentDataComponent],\r\n imports: [CommonModule],\r\n exports: [PaymentDataComponent],\r\n})\r\nexport class PaymentDataComponentModule {}\r\n","\r\n\r\n{{$.row.number_prefix }}{{$.row.number }}\r\n","import { Router, RouterModule } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { ClientService } from '@fitness-force/api';\r\n@Component({\r\n selector: 'prospect-info',\r\n templateUrl: './prospect-info.component.html',\r\n styleUrls: ['./prospect-info.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ProspectInfoComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n constructor(private router: Router, private clientService: ClientService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n gotoClient(id: any) {\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['/client/profile/', id])\r\n );\r\n window.open(url, '_blank');\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.client_status)\r\n return this.clientService.getClientStatusHtml(client.client_status.toString());\r\n else\r\n return '';\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ProspectInfoComponent],\r\n imports: [\r\n CommonModule,\r\n OverlayPanelModule,\r\n AvatarModule,\r\n ShortNamePipeModule,\r\n RouterModule\r\n ],\r\n exports: [ProspectInfoComponent]\r\n})\r\nexport class ProspectInfoComponentModule {\r\n}\r\n","\r\n\r\n\r\n \r\n\r\n \r\n
\r\n
\r\n {{$.row.full_name}}\r\n {{$.row.id}}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {{$.row.mobile_country_code}}{{$.row.mobile_number}}\r\n NA\r\n
\r\n
\r\n \r\n {{$.row.email_id}}\r\n NA\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n -\r\n \r\n\r\n {{$.row.full_name}}\r\n \r\n\r\n
\r\n
\r\n\r\n","import { Router } from '@angular/router';\r\nimport { RouterModule } from '@angular/router';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport {\r\n Client,\r\n TENANTSINTERFACE,\r\n} from '@fitness-force/models';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { TableModule } from 'primeng/table';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { AssignKeyFobComponentModule } from '../../../client-profile/assign-key-fob/assign-key-fob.component';\r\nimport { BlockClientComponentModule } from '../../../client-profile/block-client/block-client.component';\r\nimport { ChangePasswordComponentModule } from '../../../client-profile/change-password/change-password.component';\r\nimport { ChangeSalesRepresentativeComponentModule } from '../../../client-profile/change-sales-representative/change-sales-representative.component';\r\nimport { EditProfileComponentModule } from '../../../client-profile/edit-profile/edit-profile.component';\r\nimport { CreateOpportunityComponentModule } from '../../../crm/create-opportunity/create-opportunity.component';\r\nimport { FactoryHttpLoader } from '../../../helpsupport/helpsupport.component';\r\nimport { CreateProspectComponentModule } from '../../../omnisearch/create-prospect/create-prospect.component';\r\nimport { TaskCreateComponentModule } from '../../../task/task-create/task-create.component';\r\nimport { Store } from '@ngrx/store';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\n@Component({\r\n selector: 'prospect-list-actions',\r\n templateUrl: './prospect-list-actions.component.html',\r\n styleUrls: ['./prospect-list-actions.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ProspectListActionsComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null);\r\n @Input() isAllSelected = new BehaviorSubject(false);\r\n\r\n // an observable of set data..\r\n @Input() selectedRows= new BehaviorSubject(new Map());;\r\n @Input() rowIndex:number=0;\r\n @Output() changeEvent = new EventEmitter();\r\n\r\n showOppDialog = false;\r\n showTaskCreate: boolean = false;\r\n clients = new BehaviorSubject>([]);\r\n clientDetails : any = [];\r\n clientIds: number[] = [];\r\n showCreateProspectPopup: Observable = of(false);\r\n showCreateOpportunityPopup: Observable | any = false;\r\n toggleEditProfileDialog$ = new BehaviorSubject(false);\r\n toggleChangePasswordDialog$ = new BehaviorSubject(false);\r\n toggleBlockClientDialog$ = new BehaviorSubject(false);\r\n toggleAssignKeyFobDialog$ = new BehaviorSubject(false);\r\n toggleChangeSaleRepDialog$ = new BehaviorSubject(false);\r\n selectedClient: any = new Map();\r\n deleteProfileModal: boolean = false;\r\n mergeProfileModal: boolean = false;\r\n cancelInvoiceModal: boolean = false;\r\n changeBillOwnerModal: boolean = false;\r\n enquirySourceDisable: boolean = true;\r\n hideDropdown: boolean = true;\r\n confirmDeleteProfileModal: boolean = false;\r\n tableData: any;\r\n allClientData = new BehaviorSubject(null);\r\n isObservable = false;\r\n\r\n // coldata\r\n colData!:any\r\n\r\n tenantId: number = 0;\r\n getAccessTenantList$: Observable | any;\r\n errMsg: Error | any;\r\n constructor(\r\n private translate: TranslateService,\r\n private store: Store,\r\n private router: Router\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.clientIds = [];\r\n this.columnData.subscribe((val:any)=>{\r\n this.colData=val;\r\n this.selectedClient.set('id', val);\r\n this.clients.next(this.getSelectedClientData);\r\n this.clientDetails =this.getSelectedClientData;\r\n })\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n });\r\n }\r\n\r\n newOpportunity() {\r\n this.showOppDialog = true;\r\n return this.showOppDialog;\r\n }\r\n\r\n HideTaskCreate(e: any) {\r\n this.showTaskCreate = false;\r\n }\r\n\r\n hidePopup(isHide: boolean) {\r\n this.showCreateProspectPopup = of(isHide);\r\n }\r\n\r\n get getSelectedClientData(): Array {\r\n return [...this.selectedClient.values()];\r\n }\r\n\r\n showOpp() {\r\n this.showCreateOpportunityPopup = true;\r\n }\r\n\r\n OpenPopup() {\r\n this.showCreateProspectPopup = of(true);\r\n }\r\n\r\n hideOpportunity(isHide: any) {\r\n this.showCreateOpportunityPopup = false;\r\n }\r\n\r\n newTask(data: any) {\r\n if (this.clientIds.length > 0) {\r\n this.clientIds = [];\r\n }\r\n this.clientIds.push(data.id);\r\n this.showTaskCreate = true;\r\n }\r\n\r\n toggleEditProfileDialog() {\r\n this.toggleEditProfileDialog$.next(true);\r\n }\r\n\r\n closeEditProfile(e: boolean) {\r\n this.toggleEditProfileDialog$.next(false);\r\n this.changeEvent.emit(e);\r\n }\r\n closeAssignKeyFob(e: boolean) {\r\n this.toggleAssignKeyFobDialog$.next(false);\r\n this.changeEvent.emit(e);\r\n }\r\n\r\n toggleChangePasswordDialog() {\r\n this.toggleChangePasswordDialog$.next(true);\r\n }\r\n\r\n closeChangePasswordDialog(e: boolean) {\r\n this.toggleChangePasswordDialog$.next(false);\r\n this.changeEvent.emit(e);\r\n }\r\n toggleBlockClientDialog() {\r\n this.toggleBlockClientDialog$.next(true);\r\n }\r\n toggleAssignKeyFobDialog() {\r\n this.toggleAssignKeyFobDialog$.next(true);\r\n }\r\n closeBlockClientDialog(e: any) {\r\n if(e.close)\r\n this.toggleBlockClientDialog$.next(false);\r\n this.changeEvent.emit(e);\r\n\r\n }\r\n toggleChangeSaleRepDialog() {\r\n this.toggleChangeSaleRepDialog$.next(true);\r\n }\r\n closeChangeSaleRepDialog(e: boolean) {\r\n this.toggleChangeSaleRepDialog$.next(false);\r\n this.changeEvent.emit(e);\r\n }\r\n navigateToBillinging(clientData: any) {\r\n this.router.navigate(['/pos/membership-addons', clientData.id]);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ProspectListActionsComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RippleModule,\r\n StyleClassModule,\r\n OverlayPanelModule,\r\n DropdownModule,\r\n DialogModule,\r\n MessageModule,\r\n AvatarModule,\r\n TableModule,\r\n InputTextModule,\r\n CreateProspectComponentModule,\r\n CreateOpportunityComponentModule,\r\n TaskCreateComponentModule,\r\n EditProfileComponentModule,\r\n ChangePasswordComponentModule,\r\n BlockClientComponentModule,\r\n AssignKeyFobComponentModule,\r\n ChangeSalesRepresentativeComponentModule,\r\n RouterModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [ProspectListActionsComponent],\r\n})\r\nexport class ProspectListActionsComponentModule {}\r\n","\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n
\r\n

Cancel Invoice for Andrea Solan \r\n - 45653663

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n

Cancellation Reason

\r\n \r\n\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n
\r\n

Change Bill Owner for Andrea Solan \r\n - 45653663

\r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
Current Bill Owner
\r\n
\r\n \"\"\r\n Sukma Beet\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
New Bill Owner
\r\n
\r\n
\r\n \r\n \r\n John Doe\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n
Bill Owner Change History
\r\n\r\n \r\n \r\n \r\n DATE & TIME\r\n CREATED BY\r\n BILL OWNER\r\n \r\n \r\n \r\n \r\n 16 May 2021\r\n 12:30 PM\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
John Dew
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
John Dew
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
Bill Owner Change History
\r\n\r\n \r\n \r\n \r\n DATE & TIME\r\n CREATED BY\r\n BILL OWNER\r\n \r\n \r\n \r\n \r\n \r\n
No records!
\r\n \"No\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n\r\n

Merge Profile

\r\n\r\n
\r\n
\r\n \r\n\r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n
\r\n \"Andrea\r\n \r\n \"Icon\"\r\n
\r\n
\r\n

Andrea Solan - 676778

\r\n

andrea@andreasolan.com

\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \"Avatar\"\r\n Ferry Camillar\r\n 233434\r\n
\r\n
\r\n TRIAL\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n\r\n \r\n
\r\n

Andrea Solan - 676778 will be merged into\r\n ........

\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
    \r\n
  • Lorem ipsum dolor sit\r\n amet, consectetur adipiscing elit.
  • \r\n
  • In at magna a metus\r\n efficitur rutrum.
  • \r\n
  • Quisque ac nisl\r\n mattis, fermentum ex id, consequat est.
  • \r\n
  • Nunc id arcu posuere,\r\n suscipit augue ut, tempor augue.
  • \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
This action can’t be undone!
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n \"Andrea\r\n \r\n \"Icon\"\r\n
\r\n
\r\n\r\n

Delete Andrea Solan's profile

\r\n

Are you sure you want to anonyomize this profile?

\r\n\r\n
\r\n\r\n
Please enter \"I confirm Andrea Solan can be deleted\" on the below\r\n textbook.
\r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n
    \r\n
  1. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  2. \r\n
  3. Sed id elit at erat pretium efficitur at ut sapien.
  4. \r\n
  5. Donec gravida diam at tortor vestibulum laoreet.
  6. \r\n
  7. Nunc et nulla quis diam pretium condimentum.
  8. \r\n
  9. Aliquam commodo dui vel purus maximus, non sodales tellus facilisis.
  10. \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Are you sure?

\r\n

If you terminate this member, he will not be able to:

\r\n
    \r\n
  • Access mobile app if\r\n installed.
  • \r\n
  • Purchase any other\r\n membership unless the termination is revoked.
  • \r\n
  • Only someone with\r\n access right will be able to revoke termination.
  • \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, ChangeDetectorRef } from '@angular/core';\r\nimport { PlanType } from '@fitness-force/enum';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'subscription-category-display',\r\n templateUrl: './subscription-category-display.component.html',\r\n styleUrls: ['./subscription-category-display.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SubscriptionCategoryDisplayComponent implements OnInit {\r\n @Input() additionData = new BehaviorSubject(null);\r\n @Input() columnData = new BehaviorSubject(null);\r\n type!: any;\r\n constructor(private cd: ChangeDetectorRef) { }\r\n ngOnInit() {\r\n this.columnData.subscribe({next:(item:any)=>{\r\n this.setPlanType(item);\r\n }});\r\n\r\n }\r\n\r\n setPlanType(cData:any) {\r\n this.type = Object.entries(PlanType).map(([key, value]) => ({ id: key, value: value })).filter((item: any) => {\r\n return item.id == cData.subscription_category;\r\n })[0].value;\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [SubscriptionCategoryDisplayComponent],\r\n imports: [CommonModule],\r\n exports: [SubscriptionCategoryDisplayComponent]\r\n})\r\nexport class SubscriptionCategoryDisplayComponentModule {\r\n}\r\n","\r\n\r\n{{type}}\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'task-type',\r\n templateUrl: './task-type.component.html',\r\n styleUrls: ['./task-type.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TaskTypeComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n taskTypeIcons = [\r\n { type: 'call', icon: 'pi pi-phone' },\r\n { type: 'meeting', icon: 'pi pi-users' },\r\n // {type: 'email', icon: 'pi pi-envelope' },\r\n // {type:'sms', icon:'pi pi-comments'},\r\n { type: 'tour', icon: 'pi pi-map-marker' }\r\n ]\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n getIconName(type: string) {\r\n const iconsTempBuffer = this.taskTypeIcons.find((icons: any) => icons.type === type.toLowerCase())\r\n return iconsTempBuffer?.icon\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaskTypeComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RippleModule,\r\n StyleClassModule\r\n ],\r\n exports: [TaskTypeComponent]\r\n})\r\nexport class TaskTypeComponentModule {\r\n}\r\n","\r\n\r\n\r\n {{$.row.type | titlecase}}\r\n\r\n...\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, EventEmitter, Output } from '@angular/core';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'tax-with-status',\r\n templateUrl: './tax-with-status.component.html',\r\n styleUrls: ['./tax-with-status.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TaxWithStatusComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n keyName!: string;\r\n @Input() additionData = new BehaviorSubject(null)\r\n @Output() onAction = new EventEmitter();\r\n isFuture = false;\r\n value!: any;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe((res: any) => {\r\n const seconds = Math.floor((+new Date() - +new Date(res.start_date)) / 1000);\r\n if (seconds < 0)\r\n this.isFuture = true;\r\n })\r\n }\r\n\r\n executeAction(action: string, columnData: any) {\r\n this.onAction.emit({ action, columnData: columnData });\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaxWithStatusComponent],\r\n imports: [CommonModule, TagModule],\r\n exports: [TaxWithStatusComponent]\r\n})\r\nexport class TaxWithStatusComponentModule {\r\n}\r\n","\r\n
\r\n
{{ $.row.name_primary_language.length>24? (( $.row.name_primary_language | slice:0:24 )+'...'): $.row.name_primary_language}}\r\n
\r\n\r\n
\r\n \r\n FUTURE \r\n\r\n\r\n \r\n {{ $.row.status }}\r\n \r\n {{ $.row.status }}\r\n\r\n
\r\n\r\n
\r\n
","import { filter, Observable, BehaviorSubject } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ClientDetails, LatestTask, TaskOutcomeDetails } from '@fitness-force/models';\r\nimport { TourOutcomeComponentModule } from '../../../out-come/tour-outcome/tour-outcome.component';\r\nimport { CallOutcomeComponentModule } from '../../../out-come/call-outcome/call-outcome.component';\r\n\r\n@Component({\r\n selector: 'track-status',\r\n templateUrl: './track-status.component.html'\r\n})\r\nexport class TrackStatusComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n showMeetingOutcomePopup: Observable | any = false;\r\n showCallOutcomePopup: Observable | any = false;\r\n outcomeDetail: any = {};\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n SetOutComeDetails(opportunity: any) {\r\n let task: any = {};\r\n let latestTask: LatestTask = {} as LatestTask;\r\n latestTask.category_id = opportunity.category_id;\r\n latestTask.name_primary_language = opportunity.name_primary_language;\r\n latestTask.name_secondary_language = opportunity.name_secondary_language;\r\n latestTask.priority = opportunity.priority;\r\n latestTask.scheduled_date = opportunity.scheduled_date;\r\n latestTask.status = opportunity.status;\r\n latestTask.title = opportunity.title;\r\n latestTask.type = opportunity.type;\r\n latestTask.id = opportunity.id;\r\n\r\n task.id = opportunity.id;\r\n task.company_id = opportunity.company_id;\r\n task.tenant_id = opportunity.tenant_id;\r\n task.client_info = opportunity.client_info;\r\n\r\n task.service_type = [];\r\n if (opportunity.oppportunity_info) {\r\n task.board_type = opportunity.oppportunity_info.board_type;\r\n task.hot_warm_cold = opportunity.oppportunity_info.hot_warm_cold;\r\n task.expected_closure_date = opportunity.oppportunity_info.expected_closure_date;\r\n task.id = opportunity.oppportunity_info.id\r\n task.stage_master_id = opportunity.oppportunity_info.stage_master_id;\r\n task.value_in_minor_currency = opportunity.oppportunity_info.value_in_minor_currency;\r\n task.service_type = opportunity.oppportunity_info.service_type;\r\n task.name = opportunity.oppportunity_info.name;\r\n }\r\n\r\n task.assigned_to_staff_id = opportunity.assigned_to_staff_id;\r\n task.comments = \"\";\r\n\r\n task.latest_task = latestTask;\r\n\r\n // task.tour_id = [];\r\n // task.trial_id = [];\r\n // task.is_fresh = true;\r\n // task.is_stale = false;\r\n // task.outcome = \"InProgress\";\r\n // task.lost_reason_type = null;\r\n // task.lost_reason_other = \"\";\r\n // task.lost_competitor = \"\";\r\n // task.lost_competitor_latitude = \"\";\r\n // task.lost_competitor_longitude = \"\";\r\n // task.lost_competitor_place_id = \"\";\r\n // task.lost_contract_end_date = \"0001-01-01T00:00:00\";\r\n // task.lost_expected_price_in_minor_currency = 0;\r\n // task.lost_missing_facility = [];\r\n // task.lost_comments = \"\";\r\n // task.created_by = 23238;\r\n // task.created_date = \"2022-03-25T12:50:08\";\r\n // task.updated_by = 23392;\r\n // task.updated_date = \"2022-06-22T18:43:22\";\r\n\r\n this.outcomeDetail = task;\r\n\r\n if (opportunity.type.toLowerCase() == 'tour') {\r\n this.showMeetingOutcomePopup = true;\r\n }\r\n else {\r\n this.showCallOutcomePopup = true;\r\n }\r\n\r\n }\r\n\r\n HideOutComePopup(event: any) {\r\n this.showCallOutcomePopup = false;\r\n this.showMeetingOutcomePopup = false;\r\n }\r\n}\r\n@NgModule({\r\n declarations: [TrackStatusComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n RippleModule,\r\n StyleClassModule,\r\n TourOutcomeComponentModule,\r\n CallOutcomeComponentModule\r\n ],\r\n exports: [TrackStatusComponent]\r\n})\r\nexport class TrackStatusModule {\r\n}\r\n","\r\n
\r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, EventEmitter, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'trim-text',\r\n templateUrl: './trim-text.component.html',\r\n styleUrls: ['./trim-text.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TrimTextComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n keyName!: string ;\r\n @Input() additionData = new BehaviorSubject(null)\r\n @Output() onAction = new EventEmitter();\r\n value!:number;\r\n constructor(private router :Router) { }\r\n ngOnInit(): void {\r\n }\r\n \r\n onGoToRoute(url:string, id:number){\r\n this.router.navigate([url, id]);\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [TrimTextComponent],\r\n imports: [CommonModule,TooltipModule],\r\n exports: [TrimTextComponent]\r\n})\r\nexport class TrimTextComponentModule {\r\n}\r\n","\r\n{{$.row[$.adata.keyName].toString().length >24? (($.row[$.adata.keyName] | slice:0:24 )+'...'):$.row[$.adata.keyName]}}\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@Component({\r\n selector: 'with-link',\r\n templateUrl: './with-link.component.html',\r\n styleUrls: ['./with-link.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class WithLinkComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n keyName!: string ;\r\n value!:any;\r\n uri:string;\r\n\r\n constructor(private router :Router) { }\r\n\r\n ngOnInit(): void {\r\n // this.keyName=this.additionData.keyName;\r\n // this.uri=this.additionData.uri;\r\n // this.value=this.columnData[this.keyName];\r\n }\r\n\r\n onGoToRoute(url:string, id:number){\r\n this.router.navigate([url, id]);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [WithLinkComponent],\r\n imports: [CommonModule,RouterModule,TooltipModule],\r\n exports: [WithLinkComponent]\r\n})\r\nexport class WithLinkComponentModule {\r\n}\r\n","\r\n
\r\n{{$.row[$.adata.keyName].toString().length >24?($.row[$.adata.keyName] | slice:0:24 )+'...':$.row[$.adata.keyName] }}\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n} from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'wrapped-column',\r\n templateUrl: './wrapped-column.component.html',\r\n styleUrls: ['./wrapped-column.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class WrappedColumnComponent implements OnInit {\r\n @Input() columnData = new BehaviorSubject(null)\r\n @Input() additionData = new BehaviorSubject(null)\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [WrappedColumnComponent],\r\n imports: [CommonModule],\r\n exports: [WrappedColumnComponent],\r\n})\r\nexport class WrappedColumnComponentModule {}\r\n","\r\n\r\n{{$.adata.pre?additionData.pre:\"\"}}{{$.row[$.adata.keyName] }}{{$.adata.post?$.adata.post:\"\"}}\r\n\r\n-\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { SkeletonModule } from 'primeng/skeleton';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { AppErrors } from '@fitness-force/errors';\r\nimport { ErrorsComponentModule } from '@fitness-force/shared';\r\n\r\n@Component({\r\n selector: 'digital-signature',\r\n templateUrl: './digital-signature.component.html',\r\n styleUrls: ['./digital-signature.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DigitalSignatureComponent implements OnInit {\r\n @Input('visible') signHereModal: boolean = false;\r\n @Output('signatureEmitter') hideDialog = new EventEmitter();\r\n\r\n\r\n signature: string = \"\";\r\n selectDrawActive: boolean = true;\r\n signaturePad: any;\r\n fg: FormGroup = new FormGroup({});\r\n\r\n error = new BehaviorSubject(null as (AppErrors | null));\r\n showErrorPopup: BehaviorSubject = new BehaviorSubject(false as boolean);\r\n errorMessages = [] as any;\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n this.error.next(null);\r\n }\r\n\r\n constructor(private fb: FormBuilder,) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setFormGroup();\r\n this.boostrapSignaturePad();\r\n }\r\n\r\n setFormGroup(): void {\r\n this.fg = this.fb.group({\r\n fullName: new FormControl('', []),\r\n initials: new FormControl('', []),\r\n });\r\n }\r\n\r\n //#region getter\r\n get FullName(): string {\r\n return this.fg.controls.fullName.value as string;\r\n }\r\n\r\n get Initials(): string {\r\n return this.fg.controls.initials.value as string;\r\n }\r\n //#endregion getter\r\n\r\n public boostrapSignaturePad() {\r\n let timeOut = setTimeout(() => {\r\n let canvas: any = document.getElementById('signature-pad');\r\n if (canvas) {\r\n let signaturePad = (window as any).SignaturePad;\r\n (window as any).onresize = this.resizeCanvas(canvas);\r\n this.signaturePad = new signaturePad(canvas, { backgroundColor: 'rgb(255, 255, 255)' });\r\n }\r\n clearTimeout(timeOut);\r\n }, 100);\r\n\r\n console.log('boostrapSignaturePad');\r\n }\r\n\r\n resizeCanvas(canvas: any) {\r\n let ratio = Math.max(window.devicePixelRatio || 1, 1);\r\n canvas.width = canvas.offsetWidth * ratio;\r\n canvas.height = canvas.offsetHeight * ratio;\r\n canvas.getContext(\"2d\").scale(ratio, ratio);\r\n }\r\n\r\n clearSignatuore(): void {\r\n this.signaturePad.clear();\r\n }\r\n\r\n saveSignature(): void {\r\n if (this.signaturePad.isEmpty()) {\r\n this.errorMessages.push(\"Please sign\");\r\n this.error.next(null);\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n let signature = this.signaturePad.toDataURL('image/png');\r\n this.signature = signature;\r\n this.closeDialog();\r\n }\r\n }\r\n\r\n closeDialog() {\r\n this.signHereModal = false;\r\n this.hideDialog.emit(this.signature);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [DigitalSignatureComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n CommonModule,\r\n\r\n CheckboxModule,\r\n SkeletonModule,\r\n DividerModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n CalendarModule,\r\n DialogModule,\r\n InputTextModule,\r\n\r\n ErrorsComponentModule,\r\n ],\r\n exports: [DigitalSignatureComponent]\r\n})\r\nexport class DigitalSignatureComponentModule {\r\n}\r\n","\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
    \r\n \r\n
  • Draw\r\n
  • \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
Draw your signature
\r\n Clear\r\n
\r\n \r\n \r\n

\r\n By selecting Sign, I agree\r\n that the signature\r\n and\r\n initials will be\r\n the electronic representative of my signature and initials\r\n for\r\n all purpose when\r\n I\r\n (or my agent) use\r\n them on documents, including legally binding contracts -\r\n just\r\n the same as a\r\n pen-and-paper signature or\r\n initial.

\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
","import {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { ValidationError } from '@fitness-force/models';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { AppErrors } from '@fitness-force/errors';\r\nimport { TimeconversionService } from '@fitness-force/api';\r\n\r\n@Component({\r\n selector: 'app-errors',\r\n templateUrl: './errors.component.html',\r\n styleUrls: ['./errors.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ErrorsComponent implements OnInit {\r\n @Input('visible') showErrorPopup: boolean = false;\r\n // @Input('errorData') validationError: ValidationError[] | any[];\r\n @Input('errorData') validationError: any[];\r\n @Input('error') error = new BehaviorSubject(null as (AppErrors | null));\r\n @Output() hideErrorPopup: EventEmitter> =\r\n new EventEmitter();\r\n\r\n constructor(public store: Store, public translate: TranslateService, public timeService: TimeconversionService) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n this.setValidationErrorObject();\r\n }\r\n\r\n setValidationErrorObject() {\r\n if (this.error && this.error.value && this.error.value?.originalError) {\r\n console.log(this.error.value?.originalError.status);\r\n if (this.error.value?.originalError.status) {\r\n if (Array.isArray(this.error.value?.originalError.error)) {\r\n for (let i = 0; i < this.error.value?.originalError.error.length; i++)\r\n {\r\n if(this.error.value?.originalError.error[i].errorCode.toLowerCase() =='overlap')\r\n {\r\n this.showOverlapErrorMessage(this.error.value?.originalError.error[i]);\r\n }\r\n else{\r\n this.validationError.push(this.error.value?.originalError.error[i].errorMessage);\r\n }\r\n }\r\n }\r\n else\r\n this.validationError.push(this.error.value?.originalError.error.errorMessage);\r\n }\r\n else if (this.error.value?.originalError.status == '400') {\r\n this.validationError.push('Error Occured');\r\n }\r\n else if (this.error.value?.originalError.status == '500') {\r\n this.validationError.push(this.error.value?.originalError.error);\r\n }\r\n else {\r\n this.validationError.push('Unknown Error');\r\n }\r\n this.showErrorPopup = true;\r\n }\r\n }\r\n\r\n showOverlapErrorMessage(error:any)\r\n {\r\n this.translate.get('SCHEDULE.MSG.OVERLAP_MESSAGE',\r\n { type:error.jsonObject.identifier,\r\n startDate: this.timeService.formatDate(this.timeService.ConvertUTCToLocalDateTime(error.jsonObject.startDateTime), 'medium'),\r\n endDate: this.timeService.formatDate(this.timeService.ConvertUTCToLocalDateTime(error.jsonObject.endDateTime),'medium')}).subscribe((translation) => {\r\n this.validationError.push(translation);\r\n });\r\n }\r\n\r\n setHidePopup() {\r\n this.showErrorPopup = false;\r\n this.validationError = [];\r\n this.hideErrorPopup.emit(of(this.showErrorPopup));\r\n }\r\n\r\n componentInit() {\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n }\r\n\r\n SetErrorDetails(errosList: any) { }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [ErrorsComponent],\r\n imports: [\r\n DialogModule,\r\n BrowserAnimationsModule,\r\n CommonModule,\r\n BrowserModule,\r\n ButtonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [ErrorsComponent],\r\n})\r\nexport class ErrorsComponentModule { }\r\n","\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
  • \r\n {{error}}
  • \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n","import {Component,OnInit,ChangeDetectionStrategy,NgModule,Input,Output,EventEmitter,ViewChild,} from '@angular/core';\r\nimport { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { DialogModule } from 'primeng/dialog';\r\n\r\n\r\n@Component({\r\n selector: 'app-datepicker',\r\n templateUrl: './form-datepicker.component.html',\r\n styleUrls: ['./form-datepicker.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class FormDatepickerComponent implements OnInit {\r\n @Input('visible') showCalendar: boolean = false;\r\n @Input() form!: FormGroup;\r\n @Input() dateRange: any;\r\n\r\n @Output() selectedDate = new EventEmitter();\r\n @Output() selectedForm = new EventEmitter();\r\n @Output(\"hideCalender\") hideCalenderPopup = new EventEmitter();\r\n\r\n timePeriodDate: Date[] | any;\r\n \r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.timePeriodDate = this.dateRange;\r\n }\r\n\r\n\r\n @ViewChild('calendar') private calendar: any;\r\n onDateSelect() {\r\n if (this.timePeriodDate && this.timePeriodDate[1]) {\r\n setTimeout(()=>{ \r\n this.selectedDate.emit({dateObject:this.timePeriodDate,form:this.form});\r\n this.showCalendar= false;\r\n this.hideCalenderPopup.emit(this.showCalendar)\r\n }, 1000);\r\n }\r\n }\r\n\r\n SetDate()\r\n {\r\n if (this.timePeriodDate && this.timePeriodDate[1]) {\r\n this.selectedDate.emit({dateObject:this.timePeriodDate,form:this.form});\r\n this.showCalendar= false;\r\n this.hideCalenderPopup.emit(this.showCalendar)\r\n }\r\n }\r\n\r\n ClosePopup()\r\n {\r\n this.showCalendar= false;\r\n this.hideCalenderPopup.emit(this.showCalendar);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [FormDatepickerComponent],\r\n imports: [ReactiveFormsModule, FormsModule, BrowserModule, DialogModule, CalendarModule],\r\n exports: [FormDatepickerComponent],\r\n})\r\nexport class FormDatepickerComponentModule {}\r\n","\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n","import { AbstractControl, FormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { AgmCoreModule, MapsAPILoader } from '@agm/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, ViewChild, ElementRef, ChangeDetectorRef, NgZone, Output, EventEmitter, Input } from '@angular/core';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\n\r\n@Component({\r\n selector: 'ff-google-places',\r\n templateUrl: './google-places.component.html',\r\n styleUrls: ['./google-places.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class GooglePlacesComponent implements OnInit {\r\n @ViewChild('searceplace', {read: ElementRef}) public searchElementRef: ElementRef | any;\r\n @Output() fetchPlaceInfo:any = new EventEmitter()\r\n @Input() competitorName: AbstractControl | any\r\n @Input() placeId: string | any\r\n @Input(\"placeHolderName\") placeHolderName: string| any;\r\n isPlaceSearched: boolean = false\r\n \r\n private geoCoder: any;\r\n isLocationSelected = false;\r\n constructor(private mapsAPILoader: MapsAPILoader, private changeDetectorRef: ChangeDetectorRef,private ngZone: NgZone) { }\r\n\r\n ngOnInit(): void {\r\n this.onMapReady()\r\n }\r\n onMapReady() {\r\n this.mapsAPILoader.load().then(() => {\r\n this.geoCoder = new google.maps.Geocoder;\r\n let ele = this.searchElementRef.nativeElement\r\n let autocomplete = new google.maps.places.Autocomplete(ele, {\r\n componentRestrictions: { country: 'in' }\r\n });\r\n\r\n if(this.placeId)\r\n {\r\n var placesService = new google.maps.places.PlacesService(ele);\r\n /* Get place details */\r\n placesService.getDetails({\r\n placeId: this.placeId\r\n }, (placeResult, status) => {\r\n if(status === 'OK') {\r\n this.competitorName.setValue(placeResult.formatted_address)\r\n }\r\n });\r\n }\r\n \r\n autocomplete.addListener(\"place_changed\", () => {\r\n console.log('sea')\r\n this.closePlaceDailog();\r\n this.ngZone.run(() => {\r\n this.isPlaceSearched = true;\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n\r\n //set latitude, longitude and zoom\r\n \r\n this.fetchPlaceInfo.emit(place)\r\n });\r\n });\r\n })\r\n }\r\n closePlaceDailog() {\r\n this.isLocationSelected = false\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [GooglePlacesComponent],\r\n imports: [\r\n CommonModule,\r\n InputTextModule,\r\n ReactiveFormsModule,\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyDH5wyNVLWMF5ktoZ-5m_r7DY4kPDLAWXA',\r\n libraries: ['geometry', 'places']\r\n })\r\n ],\r\n exports: [GooglePlacesComponent]\r\n})\r\nexport class GooglePlacesComponentModule {\r\n}\r\n","\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport {AvatarModule} from 'primeng/avatar';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { UserAgent } from 'libs/api/src/lib/ip.service';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-help-support',\r\n templateUrl: './helpsupport.component.html',\r\n styleUrls: ['./helpsupport.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class HelpsupportComponent implements OnInit, OnDestroy {\r\n @Input('visibility') visibility: boolean = false;\r\n @Output() closeDialog:any = new EventEmitter()\r\n public companyInfoDetail$!: Observable;\r\n companyDetails: any;\r\n machineDetails:any = {'browser': '', 'browser-version': ''}\r\n\r\n constructor( private store: Store,\r\n public userAgent: UserAgent,\r\n public translate: TranslateService) { }\r\n\r\n ngOnInit(): void {\r\n this.componentInit()\r\n\r\n }\r\n closeDialogEvent(){\r\n this.closeDialog.emit(true)\r\n }\r\n componentInit(){\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n this.companyInfoDetail$.subscribe((responseData)=>{\r\n this.companyDetails = responseData;\r\n // console.log('this.companyDetails', this.companyDetails)\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n })\r\n this.machineDetails = this.userAgent.uAgent\r\n // console.log('this.machineDetails', this.machineDetails)\r\n }\r\n ngOnDestroy(): void {\r\n this.closeDialog.emit(true)\r\n }\r\n}\r\n\r\nexport function FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [HelpsupportComponent],\r\n imports: [\r\n CommonModule,\r\n HttpClientModule,\r\n DialogModule,\r\n AvatarModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n exports: [HelpsupportComponent]\r\n})\r\nexport class HelpsupportComponentModule {\r\n}\r\n","\r\n\r\n
\r\n Support\r\n
\r\n
\r\n\r\n \r\n\r\n\r\n
\r\n

YOUR ACCOUNT MANAGER

\r\n
\r\n \r\n

{{companyInfoDetail.compDetails.account_manager.name}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{companyInfoDetail.compDetails.account_manager.phone_number}}\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n

Got a Question?

\r\n

Get answers from FitnessForce knowledge base.

\r\n Visit our knowledge base.\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n

Sales Enquiries

\r\n

\"India\" +91 9167778129

\r\n sales@fitnessforce.com\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
Your IP Address - 202.179.92.89
\r\n \r\n
Your Browser - {{machineDetails?.browser}}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hotwarmcold',\r\n templateUrl: './hotwarmcold.component.html',\r\n styleUrls: ['./hotwarmcold.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class HotwarmcoldComponent implements OnInit {\r\n @Input('status') status:string = ''\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [HotwarmcoldComponent],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [HotwarmcoldComponent]\r\n})\r\nexport class HotwarmcoldComponentModule {\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n{{status}}\r\n
","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport {ImageCropperModule,Dimensions, ImageCroppedEvent, ImageTransform } from 'ngx-image-cropper';\r\n\r\n\r\nimport {DynamicDialogModule, DynamicDialogRef} from 'primeng/dynamicdialog';\r\nimport {DynamicDialogConfig} from 'primeng/dynamicdialog';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'image-crop-dialog',\r\n templateUrl: './image-crop-dialog.component.html',\r\n styleUrls: ['./image-crop-dialog.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ImageCropDialogComponent implements OnInit {\r\n\r\n imageChangedEvent: any = '';\r\n // Blob(File)\r\n imageFile:any\r\n croppedImage: any = '';\r\n canvasRotation = 0;\r\n rotation = 0;\r\n scale = 1;\r\n showCropper = false;\r\n containWithinAspectRatio = false;\r\n transform: ImageTransform = {};\r\n constructor(public ref: DynamicDialogRef, public config: DynamicDialogConfig) {\r\n this.imageFile=this.config.data?.imageFile;\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n doneCropping(){\r\n this.ref.close({image:this.croppedImage});\r\n }\r\n\r\n\r\n fileChangeEvent(event: any): void {\r\n\r\n this.imageChangedEvent = event;\r\n\r\n }\r\n\r\n imageCropped(event: ImageCroppedEvent) {\r\n this.croppedImage = event.base64;\r\n\r\n }\r\n\r\n imageLoaded() {\r\n this.showCropper = true;\r\n\r\n }\r\n\r\n cropperReady(sourceImageDimensions: Dimensions) {\r\n // console.log('Cropper ready', sourceImageDimensions);\r\n }\r\n\r\n loadImageFailed() {\r\n // console.log('Load failed');\r\n }\r\n\r\n rotateLeft() {\r\n this.canvasRotation--;\r\n this.flipAfterRotate();\r\n }\r\n\r\n rotateRight() {\r\n this.canvasRotation++;\r\n this.flipAfterRotate();\r\n }\r\n\r\n private flipAfterRotate() {\r\n const flippedH = this.transform.flipH;\r\n const flippedV = this.transform.flipV;\r\n this.transform = {\r\n ...this.transform,\r\n flipH: flippedV,\r\n flipV: flippedH\r\n };\r\n }\r\n\r\n\r\n flipHorizontal() {\r\n this.transform = {\r\n ...this.transform,\r\n flipH: !this.transform.flipH\r\n };\r\n }\r\n\r\n flipVertical() {\r\n this.transform = {\r\n ...this.transform,\r\n flipV: !this.transform.flipV\r\n };\r\n }\r\n\r\n resetImage() {\r\n this.scale = 1;\r\n this.rotation = 0;\r\n this.canvasRotation = 0;\r\n this.transform = {};\r\n }\r\n\r\n zoomOut() {\r\n this.scale -= .1;\r\n this.transform = {\r\n ...this.transform,\r\n scale: this.scale\r\n };\r\n }\r\n\r\n zoomIn() {\r\n this.scale += .1;\r\n this.transform = {\r\n ...this.transform,\r\n scale: this.scale\r\n };\r\n }\r\n\r\n toggleContainWithinAspectRatio() {\r\n this.containWithinAspectRatio = !this.containWithinAspectRatio;\r\n }\r\n\r\n updateRotation() {\r\n this.transform = {\r\n ...this.transform,\r\n rotate: this.rotation\r\n };\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ImageCropDialogComponent],\r\n imports: [\r\n CommonModule,\r\n ButtonModule,\r\n DialogModule,\r\n DynamicDialogModule, ImageCropperModule,FormsModule],\r\n exports: [ImageCropDialogComponent]\r\n})\r\nexport class ImageCropDialogComponentModule {\r\n}\r\n","\r\n\r\n
\r\n

Upload Appointment Image

\r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import { Store } from '@ngrx/store';\r\nimport { FormsModule, ReactiveFormsModule, FormGroup, FormControl } from '@angular/forms';\r\nimport { CompanyInfoStoreInterface, LANGUAGE } from '@fitness-force/models';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { Observable } from 'rxjs';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '@fitness-force/shared';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\n@Component({\r\n selector: 'app-lang-dropdown',\r\n templateUrl: './langdropdown.component.html',\r\n styleUrls: ['./langdropdown.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class LangdropdownComponent implements OnInit {\r\n @Input('Lang') Lang: CompanyInfoStoreInterface | any;\r\n @Output('EmitLang') EmitLang = new EventEmitter();\r\n\r\n langFromGroup: FormGroup | any;\r\n constructor(public translate: TranslateService, private store: Store) { }\r\n\r\n ngOnInit(): void {\r\n this.onComponentInit()\r\n }\r\n public companyInfoDetail$!: Observable;\r\n onComponentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n this.langFromGroup = new FormGroup({\r\n selectedLang: new FormControl('')\r\n })\r\n this.langFromGroup.patchValue({ 'selectedLang': this.Lang.selectedLang })\r\n this.companyInfoDetail$.subscribe((responseData)=>{\r\n \r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n })\r\n }\r\n\r\n get SelectedLang() {\r\n return this.langFromGroup.get('selectedLang').value\r\n }\r\n\r\n get parseSupportedLang(): Array {\r\n let supportedLangBuffer: Array = [];\r\n const supportedLang = this.Lang.compDetails.supported_languages.map((l: any) => l.trim().toLowerCase())\r\n supportedLangBuffer = CONSTANTS_DATA.ALL_LANGUAGES.filter(lang => {\r\n const languageOnlower = lang.LANG_ABBRE.toLowerCase();\r\n const langCodeOnlower = lang.LANG_CODE.toLowerCase();\r\n if (supportedLang && supportedLang.length > 0) {\r\n return supportedLang && (supportedLang.includes(languageOnlower) || supportedLang.includes(langCodeOnlower))\r\n }\r\n else if (this.Lang.compDetails.primary_language == languageOnlower) {\r\n return lang;\r\n }\r\n else {\r\n return { COUNTRY: 'us', LANG_CODE: 'en', LANG_ABBRE: 'ENGLISH' };\r\n }\r\n });\r\n return supportedLangBuffer;\r\n }\r\n\r\n onSelectLang(e: LANGUAGE) {\r\n this.EmitLang.emit(e)\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [LangdropdownComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DropdownModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [LangdropdownComponent]\r\n})\r\nexport class LangdropdownComponentModule {\r\n}\r\n","
\r\n\r\n \r\n
\r\n \r\n
{{SelectedLang.LANG_CODE | uppercase}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
{{language.LANG_CODE | uppercase}}
\r\n
\r\n
\r\n
\r\n
","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n} from '@angular/core';\r\nimport { AppointmentBehaviour, MembershipBehaviour } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'membership-behaviour-view',\r\n templateUrl: './membership-behaviour.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class MembershipBehaviourComponent implements OnInit {\r\n @Input() behavior: any;\r\n activeBehavior: any;\r\n @Input() columnData:any = ''\r\n @Input() additionData:any\r\n \r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe({next:(cData:any)=>{\r\n for (let [key, value] of Object.entries(MembershipBehaviour)) {\r\n if ( key == cData?.behaviour) {\r\n this.activeBehavior = { name: value, key };\r\n }\r\n }\r\n }})\r\n\r\n }\r\n\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [MembershipBehaviourComponent],\r\n imports: [CommonModule],\r\n exports: [MembershipBehaviourComponent],\r\n})\r\nexport class MembershipBehaviourComponentModule {}\r\n","
{{activeBehavior.name}}
\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, HostListener } from '@angular/core';\r\nimport { AbstractControl, FormArray, FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { ServiceTypeService } from 'libs/api/src/lib/serviceType/service-type.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppErrors, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { Country, CreateClientRequest, CreateOpportunityOnClientRequest, CreateProspectRequest, CreateTaskByOpportunityOnClientRequest, ListOpportunityStageMasterResponse, ListServiceTypeResponse, ListTaskCategoryResponse, OpportunityStageMasterResponse, ServiceTypeResponse, TaskCategoryResponse, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { ClientChannel, OpportunitiesType, OpportunityBoardType, OpportunityStageForNonMember, ClientGender, TaskAssignToType, TaskPriority } from '@fitness-force/enum';\r\nimport { BehaviorSubject, count, Observable, of } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { AuthSevices, CountryService, OpportunityStageService, ClientService, TaskCategoryService } from '@fitness-force/api';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { ErrorsComponentModule } from '@fitness-force/shared';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\n\r\ninterface TaskOn {\r\n name: string,\r\n value: string,\r\n date: any\r\n}\r\n\r\ninterface Option {\r\n name: string,\r\n value: number\r\n}\r\n\r\ninterface Task_Type {\r\n name: string,\r\n icon: string\r\n}\r\n\r\ninterface Preference {\r\n name: string,\r\n code: string,\r\n icon: string\r\n}\r\n\r\n@Component({\r\n selector: 'create-prospect',\r\n templateUrl: './create-prospect.component.html',\r\n styleUrls: ['./create-prospect.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class CreateProspectComponent implements OnInit {\r\n @Input('visible') showPopup: boolean = false;\r\n @Output() hidePopup: EventEmitter = new EventEmitter();\r\n\r\n closeDialog: boolean = false;\r\n fg: FormGroup = new FormGroup({});\r\n\r\n\r\n //#region default variable\r\n getAccessTenantList$: Observable = new Observable();\r\n companyInfoDetail$: Observable = new Observable();\r\n selectedTenant: number = 0;\r\n state_code: string = '';\r\n city_code: string = '';\r\n country_code: string = '';\r\n mobile_country_code: string = '91';\r\n taskCategoryId: number = 0;\r\n stageMasterId: number = 0;\r\n EnumGender = Object.entries(ClientGender).filter(key => typeof key[1] != 'number').map(([key, value]) => ({ key, value }));\r\n //#endregion default variable\r\n\r\n error = new BehaviorSubject(null as (AppErrors | null));\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n\r\n //#region options\r\n\r\n interestedInCollection: Option[] = [];\r\n\r\n taskOnCollection: TaskOn[] = [\r\n {\r\n name: \"Tomorrow\", value: \"tomorrow\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 1));\r\n }\r\n },\r\n {\r\n name: \"In 2 days\", value: \"in 2 buisness days\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 2));\r\n }\r\n },\r\n {\r\n name: \"In 3 days\", value: \"in 3 buisness days\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 3));\r\n }\r\n },\r\n {\r\n name: \"In 1 Week\", value: \"in 1 week\", date: (): Date => {\r\n return new Date((new Date()).getTime() + 7 * 24 * 60 * 60 * 1000);\r\n }\r\n },\r\n {\r\n name: \"In 2 Weeks\", value: \"in 2 week\", date: (): Date => {\r\n return new Date((new Date()).getTime() + 14 * 24 * 60 * 60 * 1000);\r\n }\r\n },\r\n {\r\n name: \"In 1 Month\", value: \"in 1 month\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 2, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 1, date);\r\n }\r\n },\r\n {\r\n name: \"In 2 Months\", value: \"in 2 months\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 3, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 2, date);\r\n }\r\n },\r\n {\r\n name: \"In 6 Months\", value: \"in 6 months\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 7, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 6, date);\r\n }\r\n },\r\n {\r\n name: \"Custom Date\", value: \"custom date\", date: (): Date => {\r\n return this.TaskOnDate;\r\n }\r\n }\r\n ];\r\n\r\n taskTypeCollection: Task_Type[] = [\r\n // { name: 'Email', icon: 'pi pi-envelope' },\r\n // { name: 'Sms', icon: 'pi pi-comments' },\r\n { name: 'Call', icon: 'pi pi-phone' },\r\n { name: 'Task', icon: 'pi pi-users' },\r\n { name: 'Tour', icon: 'pi pi-map-marker' },\r\n ];\r\n\r\n promotionalPreferenceCollection: Preference[] = [\r\n { name: 'Email', code: 'Email', icon: 'pi pi-envelope' },\r\n { name: 'SMS', code: 'SMS', icon: 'pi pi-comments' },\r\n { name: 'Phone', code: 'Phone', icon: 'pi pi-mobile' }\r\n ];\r\n\r\n channelCollection: any[] = [\r\n { channel: ClientChannel[ClientChannel.Online], source: ['Facebook', 'Website', 'Instagram', 'Class Pass', 'Gym Pass'] },\r\n { channel: ClientChannel[ClientChannel.WalkIn], source: ['Hoarding', 'Referral', 'Passing By'] },\r\n { channel: ClientChannel[ClientChannel.Phone], source: ['Hoarding', 'Website', 'Referral', 'Passing By'] },\r\n { channel: ClientChannel[ClientChannel.DataEntry], source: ['Pop-up Store', 'Referral'] },\r\n ];\r\n\r\n //#endregion options\r\n\r\n constructor(\r\n private serviceType: ServiceTypeService,\r\n private taskCategory: TaskCategoryService,\r\n private opportunityStageService: OpportunityStageService,\r\n private fb: FormBuilder,\r\n private store: Store,\r\n public translate: TranslateService,\r\n public clientService: ClientService,\r\n public countryService: CountryService,\r\n public authService: AuthSevices,\r\n private messageService: MessageService,\r\n ) {\r\n console.log('constructor');\r\n this.componentInit();\r\n this.SetFormFields();\r\n }\r\n\r\n componentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.selectedTenant = tenant.selected_tenant.id;\r\n this.state_code = tenant.selected_tenant.state;\r\n this.city_code = tenant.selected_tenant.city;\r\n this.GetServiceType(tenant.selected_tenant.id);\r\n this.GetCountry(tenant.selected_tenant.country);\r\n this.GetTaskCategory(tenant.selected_tenant.id);\r\n this.GetOpportunityStageMaster(tenant.selected_tenant.id);\r\n });\r\n }\r\n\r\n GetServiceType(tenantId: number): void {\r\n this.serviceType.GetServiceType(tenantId).subscribe({\r\n next: (serviceTypes: ListServiceTypeResponse) => {\r\n if(serviceTypes.items){\r\n serviceTypes.items.forEach((serviceType: ServiceTypeResponse) => {\r\n this.interestedInCollection.push({\r\n name: serviceType.name_primary_language,\r\n value: serviceType.id\r\n });\r\n });\r\n }\r\n },\r\n error: (error) => {\r\n console.log(JSON.stringify(error));\r\n if (error instanceof NotFoundError) {\r\n } else {\r\n // con('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n GetTaskCategory(tenantId: number): void {\r\n this.taskCategory.GetTaskCategory(tenantId).subscribe({\r\n next: (taskCategories: ListTaskCategoryResponse) => {\r\n // console.log('taskCategories', taskCategories);\r\n if (taskCategories && taskCategories.items && taskCategories.items.length > 0) {\r\n let taskCategoryResponse: TaskCategoryResponse[] = taskCategories.items.filter((obj: TaskCategoryResponse) => String(obj.name_primary_language).toLowerCase() === 'sales');\r\n if (taskCategoryResponse && taskCategoryResponse.length > 0)\r\n this.taskCategoryId = taskCategoryResponse[0].id;\r\n else {\r\n this.error.next(null);\r\n this.errorMessages.push(\"The task category of style sales is not configured in this center\");\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n else {\r\n this.error.next(null);\r\n this.errorMessages.push(\"The task category is not configured in this center\");\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n error: (error) => {\r\n this.error.next(error);\r\n this.errorMessages.push([]);\r\n this.showErrorPopup?.next(true);\r\n }\r\n });\r\n }\r\n\r\n GetOpportunityStageMaster(tenantId: number) {\r\n this.opportunityStageService.OpportunityStageMasterListService(tenantId, OpportunityBoardType.NewMemberBoard).subscribe({\r\n next: (obj: ListOpportunityStageMasterResponse) => {\r\n console.log('ListOpportunityStageMasterResponse -> ', obj);\r\n if (obj && obj.items && obj.items.length > 0) {\r\n let leadOpps = obj.items.find((o: OpportunityStageMasterResponse) => o.stage_master_key == OpportunityStageForNonMember.NewLeads);\r\n if (leadOpps && leadOpps.id > 0)\r\n this.stageMasterId = leadOpps.id;\r\n else {\r\n this.error.next(null);\r\n this.errorMessages.push(\"The opportunity stage master with New lead is not configured in this center\");\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n else {\r\n this.error.next(null);\r\n this.errorMessages.push(\"The opportunity stage master is not configured in this center\");\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n error: (error) => {\r\n this.error.next(error);\r\n this.errorMessages = [];\r\n this.showErrorPopup?.next(true);\r\n }\r\n });\r\n }\r\n\r\n GetCountry(countryCode: string): void {\r\n this.countryService.GetCountry(environment.BASE_URL).subscribe({\r\n next: (country: Country[]) => {\r\n // console.log('country', country);\r\n let countries: Country[] = country.filter((o: Country) => {\r\n return (\r\n String(o.three_letter_code).toLowerCase() == String(countryCode).toLowerCase()\r\n || String(o.two_letter_code).toLowerCase() == String(countryCode).toLowerCase()\r\n )\r\n });\r\n //let countries: Country[] = country.filter((o: Country) => { return String(o.name).toLowerCase() == String(countryName).toLowerCase() })\r\n if (countries.length > 0) {\r\n this.mobile_country_code = '+' + countries[0].dial_code;\r\n // this.mobile_country_code = '91'; //issue in api not returining dial code\r\n this.country_code = countries[0].three_letter_code;\r\n\r\n }\r\n else {\r\n // console.log('country not found error');\r\n throw new Error('Country Not Found');\r\n }\r\n },\r\n error: (error) => {\r\n console.log(JSON.stringify(error));\r\n if (error instanceof NotFoundError) {\r\n console.log('errrr', error.originalError.message)\r\n } else {\r\n alert('something went wrong');\r\n }\r\n }\r\n });\r\n }\r\n\r\n SetFormFields(): void {\r\n this.fg = this.fb.group({\r\n name: new FormControl('', [Validators.required]),\r\n emailId: new FormControl('', [Validators.required, Validators.email]),\r\n mobileNo: new FormControl('', [Validators.required]),\r\n channel: new FormControl('', [Validators.required]),\r\n source: new FormControl('', []),\r\n selectedGender: new FormControl('', [Validators.required]),\r\n promotionalPreference: new FormControl([] as Preference[], []),\r\n promotionalSms: new FormControl('', []),\r\n promotionalEmail: new FormControl('', []),\r\n promotionalPhone: new FormControl('', []),\r\n createTask: new FormControl(false, []),\r\n taskType: new FormControl(null, []),\r\n taskOn: new FormControl([], []),\r\n taskOnDate: new FormControl('', []),\r\n interestedIn: new FormControl([] as Option[], []),\r\n });\r\n\r\n this.fg.controls.channel.valueChanges.subscribe((mode: any) => {\r\n // console.log('channel', mode);\r\n if (mode && mode.channel) {\r\n this.fg.controls.source.setValidators([Validators.required]);\r\n }\r\n else {\r\n this.fg.controls.source.clearValidators();\r\n }\r\n\r\n this.fg.controls.source.updateValueAndValidity();\r\n });\r\n\r\n this.fg.controls.taskOn.valueChanges.subscribe((mode: any) => {\r\n console.log('taskOn', mode);\r\n if (mode && mode.value == 'custom date') {\r\n this.fg.controls.taskOnDate.setValidators([Validators.required]);\r\n }\r\n else {\r\n this.fg.controls.taskOnDate.clearValidators();\r\n }\r\n\r\n this.fg.controls.taskOnDate.updateValueAndValidity();\r\n });\r\n\r\n this.fg.controls.createTask.valueChanges.subscribe((mode: any) => {\r\n console.log('createTask', mode);\r\n if (mode) {\r\n this.fg.controls.taskType.setValidators([Validators.required]);\r\n this.fg.controls.taskOn.setValidators([Validators.required]);\r\n this.fg.controls.interestedIn.setValidators([Validators.required]);\r\n }\r\n else {\r\n this.fg.controls.taskType.clearValidators();\r\n this.fg.controls.taskOn.clearValidators();\r\n this.fg.controls.interestedIn.clearValidators();\r\n }\r\n\r\n this.fg.controls.taskType.updateValueAndValidity();\r\n this.fg.controls.taskOn.updateValueAndValidity();\r\n this.fg.controls.interestedIn.updateValueAndValidity();\r\n });\r\n\r\n this.fg.patchValue({\r\n selectedGender: this.EnumGender.find(obj => obj.value == 'PreferNotToRespond')\r\n });\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n //#region form field getter\r\n\r\n get NameControl(): FormControl { return this.fg.controls.name as FormControl; }\r\n get EmailIdControl(): FormControl { return this.fg.controls.emailId as FormControl; }\r\n get MobileNoControl(): FormControl { return this.fg.controls.mobileNo as FormControl; }\r\n get ChannelControl(): FormControl { return this.fg.controls.channel as FormControl; }\r\n get SourceControl(): FormControl { return this.fg.controls.source as FormControl; }\r\n get PromotionalPreferenceControl(): FormControl { return this.fg.controls.promotionalPreference as FormControl; }\r\n get PromotionalSmsControl(): FormControl { return this.fg.controls.promotionalSms as FormControl; }\r\n get PromotionalEmailControl(): FormControl { return this.fg.controls.promotionalEmail as FormControl; }\r\n get PromotionalPhoneControl(): FormControl { return this.fg.controls.promotionalPhone as FormControl; }\r\n get CreateTaskControl(): FormControl { return this.fg.controls.createTask as FormControl; }\r\n get TaskTypeControl(): FormControl { return this.fg.controls.taskType as FormControl; }\r\n get TaskOnControl(): FormControl { return this.fg.controls.taskOn as FormControl; }\r\n get TaskOnDateControl(): FormControl { return this.fg.controls.taskOnDate as FormControl; }\r\n get InterestedInControl(): FormControl { return this.fg.controls.interestedIn as FormControl; }\r\n get SelectedGender(): FormControl { return this.fg.controls.selectedGender as FormControl; }\r\n //#endregion form field getter\r\n\r\n //#region form field setter\r\n\r\n set ChannelControl(value: any) {\r\n console.log('set ChannelControl : ', value);\r\n this.ChannelControl.setValue(value);\r\n console.log(value, this.ChannelControl.value);\r\n }\r\n\r\n set PromotionalPreferenceControl(value: any) {\r\n console.log('set PromotionalPreferenceControl', value);\r\n let preferences: Preference[] = this.PromotionalPreferenceControl.value;\r\n const index: number = preferences.indexOf(value);\r\n if (index !== -1)\r\n preferences.splice(index, 1);\r\n else\r\n preferences.push(value);\r\n\r\n this.PromotionalPreferenceControl.setValue(preferences);\r\n console.log(value, this.PromotionalPreferenceControl.value);\r\n }\r\n\r\n //#endregion form field setter\r\n\r\n get CreateTask(): boolean {\r\n return this.fg.controls.createTask.value as boolean;\r\n }\r\n\r\n get Source(): string[] {\r\n return this.ChannelControl.value.source;\r\n }\r\n\r\n get DisableSource(): boolean {\r\n return !(this.Source && this.Source.length > 0);\r\n }\r\n\r\n get TaskOnDate(): Date {\r\n return this.TaskOnDateControl.value;\r\n }\r\n\r\n IsPromotionOptionSelected(value: Preference): boolean {\r\n return this.fg.controls.promotionalPreference.value.filter((o: Preference) => o.name === value.name).length > 0\r\n }\r\n\r\n SetGender(gender: any): void {\r\n this.fg.controls.selectedGender.setValue(gender)\r\n }\r\n\r\n GetSelectedGender(): ClientGender {\r\n let selectedGender: ClientGender = ClientGender.PreferNotToRespond;\r\n let gender = this.SelectedGender.value;\r\n switch (String(gender.value).toLowerCase()) {\r\n case \"male\": selectedGender = ClientGender.Male; break;\r\n case \"female\": selectedGender = ClientGender.Female; break;\r\n case \"nonbinaryornonconforming\": selectedGender = ClientGender.NonBinaryOrNonConforming; break;\r\n case \"prefernottorespond\": selectedGender = ClientGender.PreferNotToRespond; break;\r\n case \"transgender\": selectedGender = ClientGender.Transgender; break;\r\n default: console.log('wrong gender selected'); break;\r\n }\r\n\r\n return selectedGender;\r\n }\r\n\r\n setHidePopup() {\r\n this.showPopup = false;\r\n this.fg.reset();\r\n this.hidePopup.emit(this.showPopup);\r\n }\r\n\r\n public markAllControlsAsDirty(abstractControls: AbstractControl[]): void {\r\n abstractControls.forEach(abstractControl => {\r\n if (abstractControl instanceof FormControl) {\r\n (abstractControl as FormControl).markAsDirty({ onlySelf: true });\r\n } else if (abstractControl instanceof FormGroup) {\r\n this.markAllControlsAsDirty(Object.values((abstractControl as FormGroup).controls));\r\n } else if (abstractControl instanceof FormArray) {\r\n this.markAllControlsAsDirty((abstractControl as FormArray).controls);\r\n }\r\n });\r\n }\r\n\r\n CreateProspectSubmit(): void {\r\n this.fg.markAllAsTouched();\r\n this.markAllControlsAsDirty(Object.values(this.fg.controls));\r\n if (this.fg.valid) {\r\n\r\n let client: CreateProspectRequest = this.SetProspectObject();\r\n this.errorMessages = [];\r\n this.error.next(null);\r\n this.clientService.createProspect(environment.BASE_URL, client).subscribe({\r\n next: (res: any) => {\r\n console.log('res', res);\r\n if (res && res.id > 0) {\r\n this.translate.get('Shared.CREATE-PROSPECT.CLIENT_SUCCESS').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation?.replace(\"{{client_id}}\", res.id), });\r\n });\r\n }\r\n else {\r\n this.errorMessages.push('Something went wrong');\r\n this.showErrorPopup?.next(true);\r\n throw new Error('Error on creating prospect.');\r\n }\r\n },\r\n error: (error) => {\r\n console.log(error, 'errororor');\r\n this.error.next(error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n });\r\n }\r\n }\r\n\r\n SetProspectObject(): CreateProspectRequest {\r\n let client: CreateProspectRequest = {} as CreateProspectRequest;\r\n\r\n client.Prospect = {\r\n full_name: this.NameControl.value,\r\n mobile_country_code: this.mobile_country_code, // get from country api\r\n mobile_number: this.MobileNoControl.value,\r\n email_id: this.EmailIdControl.value,\r\n date_of_birth: null,\r\n gender: this.GetSelectedGender(),\r\n location: \"\",\r\n second_mobile_country_code: null,\r\n second_mobile_number: null,\r\n preferred_language: null,\r\n place_id: null,\r\n address: null,\r\n state_code: this.state_code, // get from tenant selected\r\n city_code: this.city_code, // get from tenant selected\r\n country_code: this.country_code, // get from tenant selected\r\n address_pin_code: 0,\r\n emergency_contact_number: null,\r\n emergency_contact_person: null,\r\n source: this.SourceControl.value,\r\n channel: this.ChannelControl.value.channel,\r\n heartrate_monitoring_id: null,\r\n referred_by: 0,\r\n promotional_sms: this.PromotionalPreferenceControl.value.filter((o: Preference) => { return String(o.code).toLowerCase() === 'sms' }).length > 0,\r\n promotional_email: this.PromotionalPreferenceControl.value.filter((o: Preference) => { return String(o.code).toLowerCase() === 'email' }).length > 0,\r\n promotional_phone: this.PromotionalPreferenceControl.value.filter((o: Preference) => { return String(o.code).toLowerCase() === 'phone' }).length > 0,\r\n medical_alert: null,\r\n note: null,\r\n taxnumber: null,\r\n custom_fields: null,\r\n current_keyfob: null,\r\n client_representative_id: this.authService.loggedInStaffId,\r\n createdin_tenant_id: this.selectedTenant,\r\n place_id_request: null,\r\n migration_id: null,\r\n image_base64: null,\r\n password: '',\r\n } as CreateClientRequest;\r\n\r\n if (this.CreateTask) {\r\n client.Opportunity = {\r\n name: client.Prospect.full_name,\r\n stage_master_id: this.stageMasterId,\r\n service_type_ids: this.InterestedInIds,\r\n value_in_minor_currency: 0,\r\n expected_closure_date: this.TaskOnControl.value.date(), // set null after venky API update\r\n assigned_to_staff_id: client.Prospect.client_representative_id,\r\n comments: '',\r\n hot_warm_cold: OpportunitiesType.Hot,\r\n } as CreateOpportunityOnClientRequest;\r\n\r\n\r\n client.Task = {\r\n assigned_to_type: TaskAssignToType.ClientRep,\r\n assigned_to_staff_id: null,\r\n type: this.TaskTypeControl.value.name,\r\n category_id: this.taskCategoryId,\r\n title: client.Prospect.full_name,\r\n notes: 'Task created at the time of prospect creation',\r\n priority: TaskPriority.High,\r\n call_id: null,\r\n email_id: null,\r\n sms_id: null,\r\n scheduled_date: this.TaskOnControl.value.date(),\r\n } as CreateTaskByOpportunityOnClientRequest;\r\n }\r\n console.log(client);\r\n return client;\r\n }\r\n\r\n get InterestedInIds(): number[] {\r\n if (this.InterestedInControl.value.length > 0) {\r\n return this.InterestedInControl.value.map((item: Option) => { return item['value'] });\r\n }\r\n\r\n return [];\r\n }\r\n\r\n @HostListener('document:keydown.escape', ['$event']) onKeydownHandler(event: KeyboardEvent) {\r\n console.log(event);\r\n this.closeDialog = false;\r\n this.setHidePopup();\r\n }\r\n\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [CreateProspectComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n SelectButtonModule,\r\n InputMaskModule,\r\n InputSwitchModule,\r\n DropdownModule,\r\n ToastModule,\r\n MultiSelectModule,\r\n ButtonModule,\r\n InputTextModule,\r\n CalendarModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n exports: [CreateProspectComponent]\r\n})\r\nexport class CreateProspectComponentModule {\r\n}\r\n","\r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n

\r\n {{'Shared.CREATE-PROSPECT.HEADER_ADDPROSPECT' | translate}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n {{SelectedGender.value.value}}\r\n
\r\n
\r\n \r\n
{{gender.value}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{SourceControl.value}}\r\n
\r\n
\r\n \r\n
{{source}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n {{'Shared.CREATE-PROSPECT.SPAN_CREATEOPPORTUNITYTASK' | translate}}\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
{{TaskTypeControl.value.name}}
\r\n
\r\n
\r\n \r\n
\r\n \r\n
{{task.name}}
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {{TaskOnControl.value.name}}
\r\n
\r\n \r\n
{{taskOn.name}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, ViewChild, TemplateRef,\r\n} from '@angular/core';\r\nimport { AppErrors, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { COMPANY_INFO, ROUTER_STATE, STAGE_MASTER_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { BehaviorSubject, map, Observable, of, Subject } from 'rxjs';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators, } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { CONSTANTS_CRM } from '@fitness-force/constants';\r\nimport { ErrorsComponentModule, FactoryHttpLoader, LostDealComponentModule, TaskOpportunityInfoComponentModule } from '@fitness-force/shared';\r\nimport { BillingComponentModule } from '../../billing/billing/billing.component';\r\nimport { CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { CreateCallOutcomeRequest, CreateFollowupTaskByDateRequest, CreateLogCallNotesRequest, CreateTourRequest, PlanSummary, PlanSummaryClient, PlanSummaryCRM, STAGE_MASTER_MODEL, TENANTSINTERFACE, ValidationError } from '@fitness-force/models';\r\nimport { CallOutcome, OpportunityBoardType } from '@fitness-force/enum';\r\nimport * as moment from 'moment';\r\nimport { TaskCallOutcomeService } from 'libs/api/src/lib/crm/taskoutcome.service';\r\nimport { ClientService, OpportunityService, TimeconversionService } from '@fitness-force/api';\r\nimport { MessageService } from 'primeng/api';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { ToastModule } from 'primeng/toast';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-call-outcome',\r\n templateUrl: './call-outcome.component.html',\r\n styleUrls: ['./call-outcome.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n\r\n})\r\nexport class CallOutcomeComponent implements OnInit {\r\n\r\n getAccessTenantList$: Observable | any;\r\n readonly truevalue: boolean = true;\r\n tenantId: number = 0;\r\n\r\n errMsg: Error | any;\r\n errorMessages = [] as any;\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorDataModal = [] as ValidationError[];\r\n errorDataModalSubject = new BehaviorSubject([] as ValidationError[]);\r\n\r\n @Input('visible') showCallOutcome: boolean = false;\r\n @Input('data') modelData: any;\r\n\r\n @Output() hideOutCome: EventEmitter = new EventEmitter();\r\n @Output() modified: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('noanswer') noanswer: TemplateRef | any;\r\n @ViewChild('contactmade') contactmade: TemplateRef | any;\r\n @ViewChild('booktour') booktour: TemplateRef | any;\r\n @ViewChild('notintrested') notintrested: TemplateRef | any;\r\n\r\n public companyInfoDetail$!: Observable;\r\n companyDetails: any;\r\n\r\n stageMaster$: Observable = new Subject();\r\n frmCallOutComeNoAnswer: FormGroup | any;\r\n frmCallOutcomeContactmade: FormGroup | any;\r\n frmCallOutcomeBookTour: FormGroup | any;\r\n frmCallOutNotInterested: FormGroup | any;\r\n\r\n convertibility: any = CONSTANTS_CRM.OPPORTUNITY_CONVERTITBILITY;\r\n\r\n selectedConvertibility!: any;\r\n outcome: any[];\r\n values: string[] | undefined;\r\n followUpDate: Date | undefined;\r\n contractEndDate: Date | undefined;\r\n mylookupservice: any;\r\n hideOnOutsideClick: any;\r\n selectedOutcome!: any;\r\n\r\n\r\n selectedOutcomeTemplate: any;\r\n selectTime!: string;\r\n markcompletedchecked: boolean = false;\r\n value: boolean = false;\r\n taskId: any;\r\n\r\n //#region billing sidebar\r\n planSummarydataObject$: BehaviorSubject = new BehaviorSubject({} as PlanSummary);\r\n showPaidFullSidebar: boolean = false;\r\n //#endregion billing sidebar\r\n\r\n showChooseReason: boolean = false;\r\n showLostDealDialog = false;\r\n lostDealItemInfo = '';\r\n\r\n\r\n constructor(\r\n public store: Store,\r\n public translate: TranslateService,\r\n private clientService: ClientService,\r\n private fb: FormBuilder,\r\n private callOutcomeService: TaskCallOutcomeService,\r\n private timeService: TimeconversionService,\r\n private messageService: MessageService,\r\n private opportunityService: OpportunityService,\r\n ) {\r\n this.showErrorPopup.next(false);\r\n }\r\n\r\n translateOutComeOption(): void {\r\n this.outcome = CONSTANTS_CRM.CALL_OUTCOME;\r\n this.translate.get([\r\n 'OUTCOME.CALLOUTCOME.NO_ANSWER_LEFT_MESSAGE',\r\n 'OUTCOME.CALLOUTCOME.CONTACT_MADE',\r\n 'OUTCOME.CALLOUTCOME.NOT_INTERESTED',\r\n 'OUTCOME.CALLOUTCOME.BOOK_TOUR',\r\n 'OUTCOME.CALLOUTCOME.SIGN_UP'\r\n ]).subscribe((translation) => {\r\n this.outcome.forEach((obj: any) => {\r\n switch (String(obj.shortname).toLowerCase()) {\r\n case \"noanswer\":\r\n obj.name = translation['OUTCOME.CALLOUTCOME.NO_ANSWER_LEFT_MESSAGE'];\r\n break;\r\n case \"contactmade\":\r\n obj.name = translation['OUTCOME.CALLOUTCOME.CONTACT_MADE'];\r\n break;\r\n case \"notintrested\":\r\n obj.name = translation['OUTCOME.CALLOUTCOME.NOT_INTERESTED'];\r\n break;\r\n case \"booktour\":\r\n obj.name = translation['OUTCOME.CALLOUTCOME.BOOK_TOUR'];\r\n break;\r\n case \"signup\":\r\n obj.name = translation['OUTCOME.CALLOUTCOME.SIGN_UP'];\r\n break;\r\n default:\r\n console.log(obj);\r\n break;\r\n }\r\n });\r\n\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.translateOutComeOption();\r\n this.componentInit();\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n }\r\n });\r\n\r\n this.frmCallOutComeNoAnswer = this.fb.group({\r\n noanswer_expecteddate: new FormControl('', [Validators.required]),\r\n noanswer_expectedtime: new FormControl('', [Validators.required]),\r\n noanswer_notes: new FormControl(''),\r\n noanswer_markascomplete: new FormControl(this.markcompletedchecked, [Validators.required])\r\n });\r\n\r\n this.frmCallOutcomeContactmade = this.fb.group({\r\n contactmade_notes: new FormControl('', [Validators.required]),\r\n contactmade_expecteddate: new FormControl('', [Validators.required]),\r\n contactmade_expectedtime: new FormControl('', [Validators.required]),\r\n });\r\n\r\n this.frmCallOutNotInterested = this.fb.group({\r\n notintrested_markcompleted: new FormControl(''),\r\n notintrested_notes: new FormControl('', [Validators.required]),\r\n });\r\n\r\n\r\n this.frmCallOutcomeBookTour = this.fb.group({\r\n booktour_expecteddate: new FormControl('', [Validators.required]),\r\n booktour_expectedtime: new FormControl('', [Validators.required]),\r\n booktour_notes: new FormControl('', [Validators.required])\r\n });\r\n this.stageMaster$ = this.store.select(STAGE_MASTER_STATE);\r\n }\r\n\r\n componentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.companyDetails = responseData;\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n })\r\n }\r\n\r\n\r\n\r\n //#region \"generic\"\r\n setHidePopup(modified: boolean = false) {\r\n this.clearAllFields();\r\n this.showCallOutcome = false;\r\n this.hideOutCome.emit({ showPopup: this.showCallOutcome, modified });\r\n }\r\n\r\n\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n get ShowErrorPopup(): Observable {\r\n return this.showErrorPopup?.asObservable() || of(false);\r\n }\r\n\r\n get getErrorData(): Observable {\r\n\r\n return of(this.errorDataModalSubject.getValue());\r\n //return this.errorDataModalSubject.asObservable() || of([] as ValidationError[]);\r\n }\r\n\r\n SelectOutcome(item: any) {\r\n\r\n this.selectedOutcome = item;\r\n\r\n if (item.shortname == 'noanswer') { this.selectedOutcomeTemplate = this.noanswer; }\r\n if (item.shortname == 'contactmade') this.selectedOutcomeTemplate = this.contactmade;\r\n if (item.shortname == 'notintrested') this.selectedOutcomeTemplate = this.notintrested;\r\n if (item.shortname == 'booktour') this.selectedOutcomeTemplate = this.booktour;\r\n if (item.shortname == 'signup') {\r\n // this.selectedOutcomeTemplate = this.signupform;\r\n let draggedProduct = this.modelData;\r\n let planSummary: PlanSummary = {\r\n id: 0,\r\n client: {\r\n client_id: draggedProduct.client_info.id,\r\n client_name: draggedProduct.client_info.full_name,\r\n client_status: draggedProduct.client_info.status,\r\n } as PlanSummaryClient,\r\n couponcode: null,\r\n tenant_id: this.tenantId,\r\n company_id: draggedProduct.company_id,\r\n startdate: new Date(),\r\n plan_selectable: true,\r\n CRM: {\r\n opp_id: draggedProduct.id,\r\n task_id: draggedProduct.latest_task?.id || 0,\r\n board_id: draggedProduct.board_type\r\n } as PlanSummaryCRM,\r\n Scheduling: null,\r\n } as PlanSummary;\r\n\r\n this.planSummarydataObject$.next(planSummary);\r\n this.showPaidFullSidebar = true;\r\n }\r\n }\r\n\r\n hideBillingSummary(event: any) {\r\n this.showPaidFullSidebar = false;\r\n this.planSummarydataObject$.next({} as PlanSummary);\r\n if (event.uuid && String(event.uuid).trim() != '') {\r\n this.setHidePopup();\r\n }\r\n }\r\n\r\n SelectOutcomeMob(item: any) {\r\n this.SelectOutcome(item.value);\r\n }\r\n\r\n get getoutcome(): any {\r\n return this.selectedOutcomeTemplate;\r\n }\r\n\r\n clearAllFields() {\r\n //NO ANSWER CLEAR DATA\r\n this.getNoAnswer_MarkasComplete.value = false;\r\n this.getNoAnswer_ExpectedDate.value = \"\";\r\n this.getNoAnswer_ExpectedTime.value = \"\";\r\n this.getNoAnswer_Notes.value = \"\";\r\n\r\n this.getBookTour_ExpectedDate.value = \"\";\r\n this.getBookTour_ExpectedTime.value = \"\";\r\n this.getBookTour_Notes.value = \"\";\r\n\r\n this.getContactMade_ExpectedDate.value = \"\";\r\n this.getContactMade_ExpectedTime.value = \"\";\r\n this.getContactMade_Notes.value = \"\";\r\n\r\n this.getNotInterested_Notes.value = \"\";\r\n\r\n }\r\n\r\n\r\n //#endregion\r\n\r\n //#region \"No Answer / Left a message\"\r\n\r\n CreateCallOutcomeNoAnswer(formdata: FormGroup) {\r\n this.frmCallOutComeNoAnswer.markAllAsTouched();\r\n\r\n if (!this.frmCallOutComeNoAnswer.valid) {\r\n return;\r\n }\r\n\r\n this.errorDataModalSubject = new BehaviorSubject([] as ValidationError[]);\r\n\r\n let createCallOutcomeRequest: CreateCallOutcomeRequest = {} as CreateCallOutcomeRequest;\r\n let logCall = {} as CreateLogCallNotesRequest;\r\n let reschedule_task = {} as CreateFollowupTaskByDateRequest;\r\n\r\n logCall.transaction_notes = this.getNoAnswer_Notes.value;\r\n logCall.transaction_log_date = new Date().toISOString();\r\n\r\n createCallOutcomeRequest.mark_as_complete = this.getNoAnswer_MarkasComplete.value;\r\n reschedule_task.scheduled_datetime = this.timeService.GetUTCDateTimeByDateAndTime(this.getNoAnswer_ExpectedDate.value, this.getNoAnswer_ExpectedTime.value);\r\n\r\n createCallOutcomeRequest.outcome = CallOutcome.NoAnswer_LeftMessage;\r\n createCallOutcomeRequest.log_call = logCall;\r\n if (!createCallOutcomeRequest.mark_as_complete)\r\n createCallOutcomeRequest.reschedule_task = reschedule_task;\r\n\r\n this.callOutcomeService\r\n .createTaskCallOutcome(createCallOutcomeRequest, this.tenantId, this.modelData.latest_task.id)\r\n .subscribe({\r\n next: async (data: any) => {\r\n if (data > 0) {\r\n }\r\n this.translate\r\n .get('common.message.record_updated')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation, //'Scheduled Filter Deleted Successfully',\r\n });\r\n });\r\n\r\n await this.timeout(1000);\r\n this.selectedOutcome = null;\r\n this.selectedOutcomeTemplate = null;\r\n this.clearAllFields();\r\n this.setHidePopup(true);\r\n\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorDataModal = [] as ValidationError[];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.errorDataModal = this.errorMessages;\r\n\r\n }\r\n else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage)\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n }\r\n this.errorDataModalSubject.next(this.errorDataModal);\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n get getNoAnswer_MarkasComplete() {\r\n return this.frmCallOutComeNoAnswer.get('noanswer_markascomplete')\r\n }\r\n\r\n get getNoAnswer_ExpectedDate() {\r\n return this.frmCallOutComeNoAnswer.get('noanswer_expecteddate')\r\n }\r\n\r\n get getNoAnswer_ExpectedTime() {\r\n return this.frmCallOutComeNoAnswer.get('noanswer_expectedtime')\r\n }\r\n\r\n get getNoAnswer_Notes() {\r\n\r\n return this.frmCallOutComeNoAnswer.get('noanswer_notes')\r\n }\r\n\r\n setNoAnswer_MarkCompleteValidator() {\r\n if (this.frmCallOutComeNoAnswer != undefined && this.frmCallOutComeNoAnswer != null) {\r\n this.frmCallOutComeNoAnswer.get('noanswer_markascomplete').valueChanges\r\n .subscribe((value: boolean) => {\r\n if (value === true) {\r\n this.getNoAnswer_ExpectedDate.setValidators(null);\r\n this.getNoAnswer_ExpectedTime.setValidators(null);\r\n }\r\n else {\r\n this.getNoAnswer_ExpectedDate.setValidators([Validators.required]);\r\n this.getNoAnswer_ExpectedTime.setValidators([Validators.required]);\r\n }\r\n });\r\n }\r\n }\r\n\r\n toggleNoAnswer(isChecked: boolean) {\r\n this.markcompletedchecked = isChecked;\r\n if (isChecked) {\r\n this.noAnswerDisableControls()\r\n } else {\r\n this.noAnswerEnableControls()\r\n }\r\n }\r\n\r\n noAnswerDisableControls() {\r\n //this.Name.disable()\r\n this.getNoAnswer_ExpectedDate.setValue(null);\r\n this.getNoAnswer_ExpectedTime.setValue(null);\r\n\r\n this.getNoAnswer_ExpectedDate.disable();\r\n this.getNoAnswer_ExpectedTime.disable();\r\n\r\n this.getNoAnswer_ExpectedDate.setValidators([Validators.required]);\r\n this.getNoAnswer_ExpectedTime.setValidators([Validators.required]);\r\n\r\n }\r\n\r\n noAnswerEnableControls() {\r\n this.getNoAnswer_ExpectedDate.enable();\r\n this.getNoAnswer_ExpectedTime.enable();\r\n\r\n this.getNoAnswer_ExpectedDate.setValidators(null);\r\n this.getNoAnswer_ExpectedTime.setValidators(null);\r\n\r\n }\r\n\r\n //#endregion\r\n\r\n //#region \"Call Outcome\"\r\n CreateCallOutcomeContactMade(formdata: FormGroup) {\r\n this.frmCallOutcomeContactmade.markAllAsTouched();\r\n if (!this.frmCallOutcomeContactmade.valid) {\r\n return;\r\n }\r\n\r\n\r\n\r\n let createCallOutcomeRequest: CreateCallOutcomeRequest = {} as CreateCallOutcomeRequest;\r\n let logCall = {} as CreateLogCallNotesRequest;\r\n let reschedule_task = {} as CreateFollowupTaskByDateRequest;\r\n\r\n\r\n logCall.transaction_notes = this.getContactMade_Notes.value;\r\n logCall.transaction_log_date = new Date().toISOString();\r\n\r\n reschedule_task.scheduled_datetime = this.timeService.GetUTCDateTimeByDateAndTime(this.getContactMade_ExpectedDate.value, this.getContactMade_ExpectedTime.value);\r\n\r\n //createCallOutcomeRequest.mark_as_complete = this.getNoAnswer_MarkasComplete.value;\r\n createCallOutcomeRequest.outcome = CallOutcome.ContactMade;\r\n createCallOutcomeRequest.log_call = logCall;\r\n createCallOutcomeRequest.reschedule_task = reschedule_task;\r\n\r\n this.callOutcomeService\r\n .createTaskCallOutcome(createCallOutcomeRequest, this.tenantId, this.modelData.latest_task.id)\r\n .subscribe({\r\n next: async (data: any) => {\r\n if (data > 0) {\r\n }\r\n this.translate\r\n .get('common.message.record_updated')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation, //'Scheduled Filter Deleted Successfully',\r\n });\r\n });\r\n\r\n await this.timeout(1000);\r\n\r\n this.clearAllFields();\r\n this.setHidePopup(true);\r\n this.selectedOutcome = null;\r\n this.selectedOutcomeTemplate = null;\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorDataModal = [] as ValidationError[];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.errorDataModal = this.errorMessages;\r\n\r\n }\r\n else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage)\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n }\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n });\r\n this.errorDataModalSubject.next(this.errorDataModal);\r\n }\r\n\r\n get getContactMade_Notes() {\r\n return this.frmCallOutcomeContactmade.get('contactmade_notes')\r\n }\r\n\r\n get getContactMade_ExpectedDate() {\r\n return this.frmCallOutcomeContactmade.get('contactmade_expecteddate')\r\n }\r\n\r\n get getContactMade_ExpectedTime() {\r\n return this.frmCallOutcomeContactmade.get('contactmade_expectedtime')\r\n }\r\n\r\n //#endregion\r\n\r\n //#region \"NotInterested\"\r\n\r\n\r\n CreateNotInteresredNotInterested(formdata: FormGroup) {\r\n this.frmCallOutNotInterested.markAllAsTouched();\r\n if (!this.frmCallOutNotInterested.valid) {\r\n return;\r\n }\r\n\r\n let createCallOutcomeRequest: CreateCallOutcomeRequest = {} as CreateCallOutcomeRequest;\r\n let logCall = {} as CreateLogCallNotesRequest;\r\n\r\n\r\n logCall.transaction_notes = this.getNotInterested_Notes.value;\r\n logCall.transaction_log_date = new Date().toISOString();\r\n\r\n createCallOutcomeRequest.mark_as_complete = this.getNotInterested_MarkCompleted.value;\r\n createCallOutcomeRequest.outcome = CallOutcome.NotIntrested;\r\n createCallOutcomeRequest.log_call = logCall;\r\n\r\n this.callOutcomeService\r\n .createTaskCallOutcome(createCallOutcomeRequest, this.tenantId, this.modelData.latest_task.id)\r\n .subscribe({\r\n next: (data: any) => {\r\n if (data > 0) {\r\n }\r\n this.translate\r\n .get('common.message.record_updated')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation, //'Scheduled Filter Deleted Successfully',\r\n });\r\n });\r\n // open lost deal only if it is opportunity\r\n if (this.modelData.stage_master_id) {\r\n this.OpenLostDeal(this.modelData);\r\n }\r\n this.clearAllFields();\r\n //this.setHidePopup(true);\r\n this.selectedOutcome = null;\r\n this.selectedOutcomeTemplate = null;\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorDataModal = [] as ValidationError[];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.errorDataModal = this.errorMessages;\r\n\r\n }\r\n else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage)\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n }\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n });\r\n this.errorDataModalSubject.next(this.errorDataModal);\r\n }\r\n\r\n get getNotInterested_Notes() {\r\n return this.frmCallOutNotInterested.get('notintrested_notes')\r\n }\r\n\r\n get getNotInterested_MarkCompleted() {\r\n return this.frmCallOutNotInterested.get('notintrested_markcompleted')\r\n }\r\n\r\n\r\n //OPEN LOSTCOMPOENT\r\n //OpportunityGetService(tenantId: number, boardType: OpportunityBoardType, oppId: number): Observable {\r\n\r\n //#endregion\r\n\r\n //#region \"BookTour\"\r\n\r\n\r\n CreateCallOutcomeBookTour(formdata: FormGroup) {\r\n this.frmCallOutcomeBookTour.markAllAsTouched();\r\n\r\n if (!this.frmCallOutcomeBookTour.valid) {\r\n return;\r\n }\r\n\r\n let createCallOutcomeRequest: CreateCallOutcomeRequest = {} as CreateCallOutcomeRequest;\r\n let logCall = {} as CreateLogCallNotesRequest;\r\n\r\n\r\n\r\n logCall.transaction_notes = this.getBookTour_Notes.value;\r\n logCall.transaction_log_date = new Date().toISOString();\r\n\r\n let book_tour = {} as CreateTourRequest;\r\n book_tour.scheduled_datetime = this.timeService.GetUTCDateTimeByDateAndTime(this.getBookTour_ExpectedDate.value, this.getBookTour_ExpectedTime.value);\r\n book_tour.assigned_to_staff_id = this.modelData.assigned_to_staff_id;\r\n\r\n //createCallOutcomeRequest.mark_as_complete = this.getNoAnswer_MarkasComplete.value;\r\n createCallOutcomeRequest.outcome = CallOutcome.BookTour;\r\n createCallOutcomeRequest.log_call = logCall;\r\n\r\n createCallOutcomeRequest.book_tour = book_tour;\r\n createCallOutcomeRequest.mark_as_complete = true;\r\n this.callOutcomeService\r\n .createTaskCallOutcome(createCallOutcomeRequest, this.tenantId, this.modelData.latest_task.id)\r\n .subscribe({\r\n next: async (data: any) => {\r\n if (data > 0) {\r\n }\r\n this.translate\r\n .get('common.message.record_updated')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation, //'Scheduled Filter Deleted Successfully',\r\n });\r\n });\r\n\r\n await this.timeout(1000);\r\n this.lostDealItemInfo = this.modelData;\r\n this.clearAllFields();\r\n this.setHidePopup(true);\r\n this.selectedOutcome = null;\r\n this.selectedOutcomeTemplate = null;\r\n },\r\n error: (error: AppErrors) => {\r\n this.errorDataModal = [] as ValidationError[];\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage)\r\n this.errorDataModal = this.errorMessages;\r\n\r\n }\r\n else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage)\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n }\r\n this.showErrorPopup?.next(true);\r\n }\r\n },\r\n });\r\n this.errorDataModalSubject.next(this.errorDataModal);\r\n }\r\n\r\n get getBookTour_ExpectedDate() {\r\n return this.frmCallOutcomeBookTour.get('booktour_expecteddate')\r\n }\r\n\r\n get getBookTour_ExpectedTime() {\r\n return this.frmCallOutcomeBookTour.get('booktour_expectedtime')\r\n }\r\n\r\n get getBookTour_Notes() {\r\n return this.frmCallOutcomeBookTour.get('booktour_notes')\r\n }\r\n\r\n GetErrorData(event: any) {\r\n this.errorMessages = event.errors;\r\n this.showErrorPopup?.next(event.showErrors);\r\n }\r\n\r\n\r\n GetUpdatedData(event: any) {\r\n this.modelData = event;\r\n this.modified.emit(true)\r\n }\r\n\r\n closeDailog() {\r\n this.showChooseReason = false;\r\n this.showLostDealDialog = false;\r\n this.clearAllFields();\r\n this.setHidePopup(true);\r\n }\r\n\r\n OpenLostDeal(modatData: any) {\r\n this.showChooseReason = true;\r\n this.lostDealItemInfo = modatData;\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.status)\r\n return this.clientService.getClientStatusHtml(client.status.toString());\r\n else\r\n return '';\r\n }\r\n\r\n getStageStatus(stageMasterid: number): Observable {\r\n return this.store.select(STAGE_MASTER_STATE).pipe(\r\n map(\r\n (value: STAGE_MASTER_MODEL[]) =>\r\n value.find(obj => obj.id == stageMasterid)?.name_primary_language\r\n\r\n )\r\n );\r\n }\r\n\r\n timeout(ms: any) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n\r\n}\r\n\r\n\r\n@NgModule({\r\n declarations: [CallOutcomeComponent],\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n CommonModule,\r\n DialogModule,\r\n ButtonModule,\r\n DropdownModule,\r\n ChipsModule,\r\n ChipModule,\r\n InplaceModule,\r\n ReactiveFormsModule,\r\n TaskOpportunityInfoComponentModule,\r\n CalendarModule,\r\n InputSwitchModule,\r\n CalendarModule,\r\n StyleClassModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n ToastModule,\r\n MessagesModule,\r\n CurrencyformatPipeModule,\r\n BillingComponentModule,\r\n LostDealComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n exports: [CallOutcomeComponent]\r\n})\r\n\r\nexport class CallOutcomeComponentModule {\r\n}\r\n","\r\n \r\n\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n {{ modelData?.client_info?.status | uppercase }}\r\n
\r\n \r\n \r\n {{ strStage }}\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n

\r\n {{ modelData.client_info.full_name }}\r\n

\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n {{ modelData.client_info.mobile_country_code }}\r\n {{ modelData.client_info.mobile_number }}\r\n
\r\n
\r\n \r\n {{\r\n modelData.client_info.email_id\r\n }}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n

\r\n {{ 'OUTCOME.CALLOUTCOME.HOW-DID-CALL-GO' | translate }}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \"Avatar\"\r\n {{\r\n modelData.client_info.full_name\r\n }}\r\n {{\r\n modelData.client_info.id\r\n }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n {{ modelData.client_info.mobile_country_code }}\r\n {{ modelData.client_info.mobile_number }}\r\n
\r\n
\r\n \r\n {{\r\n modelData.client_info.email_id\r\n }}\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.CALL-OUTCOME' | translate }}\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n {{ selectedOutcome.name }}\r\n
\r\n
\r\n \r\n
\r\n \r\n
{{ outcome.name }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n {{\r\n 'OUTCOME.CALLOUTCOME.CALL-OUTCOME-ABOUT' | translate\r\n }}\r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n

\r\n {{ 'OUTCOME.TOUROUTCOME.CHOOSEOUTCOME' | translate }}\r\n

\r\n \"Image\"\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {{ 'OUTCOME.TOUROUTCOME.MARKTASKCOMPLETED' | translate }}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.SELECT-NEXT-FOLLOWUP-DATE' | translate }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.NOTES' | translate }}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.SELECT-NEXT-FOLLOWUP-DATE' | translate }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.NOTES' | translate }}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.MARKTASKCOMPLETED' | translate }}\r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.NOTES' | translate }}\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.SELECT-NEXT-FOLLOWUP-DATE' | translate }}\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n {{ 'OUTCOME.CALLOUTCOME.NOTES' | translate }}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n COMPANY_INFO,\r\n STAGE_MASTER_STATE,\r\n TENANTS_INFO,\r\n} from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { BehaviorSubject, map, Observable, of, Subject } from 'rxjs';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { ChipModule } from 'primeng/chip';\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { CONSTANTS_CRM } from '@fitness-force/constants';\r\nimport {\r\n ErrorsComponentModule,\r\n FactoryHttpLoader,\r\n LostDealComponentModule,\r\n TaskOpportunityInfoComponentModule,\r\n} from '@fitness-force/shared';\r\n\r\n\r\nimport { CurrencyformatPipeModule } from '../../../filters/currencyformat.pipe';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TourOutcome } from '@fitness-force/enum';\r\nimport { TaskCallOutcomeService } from 'libs/api/src/lib/crm/taskoutcome.service';\r\nimport {\r\n AppErrors,\r\n ErrorMsgComponentModule,\r\n NotFoundError,\r\n} from '@fitness-force/errors';\r\nimport {\r\n CreateFollowupTaskByDateRequest,\r\n CreateLogTourNotesRequest,\r\n CreateTourOutcomeRequest,\r\n} from 'libs/models/src/lib/taskCallOutcome';\r\nimport { FormDatepickerComponentModule } from '@fitness-force/shared';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { PlanSummary, PlanSummaryClient, PlanSummaryCRM, STAGE_MASTER_MODEL, TENANTSINTERFACE, ValidationError } from '@fitness-force/models';\r\nimport { ClientService, TimeconversionService } from '@fitness-force/api';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BillingComponentModule } from '../../billing/billing/billing.component';\r\n\r\n@Component({\r\n selector: 'app-tour-outcome',\r\n templateUrl: './tour-outcome.component.html',\r\n styleUrls: ['./tour-outcome.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class TourOutcomeComponent implements OnInit {\r\n @Input('visible') showMeetingOutcome: boolean = false;\r\n @Input('tourOutComeData') modelData: any;\r\n @Output() hideOutCome: EventEmitter = new EventEmitter();\r\n @Output() modified: EventEmitter = new EventEmitter();\r\n\r\n @ViewChild('notintrested') notintrestedform: TemplateRef | any;\r\n @ViewChild('noshow') noshowform: TemplateRef | any;\r\n @ViewChild('reschedule') rescheduleform: TemplateRef | any;\r\n @ViewChild('stillthinking') stillthinkingform: TemplateRef | any;\r\n // @ViewChild('signup') signupform: TemplateRef;\r\n\r\n frmgroupCreateTourOutCome: FormGroup;\r\n TourOutComeNotIntrestedForm: FormGroup;\r\n TourOutComeStillThinkingForm: FormGroup;\r\n TourOutComeNoShowForm: FormGroup;\r\n TourOutComeRescheduleForm: FormGroup;\r\n\r\n public companyInfoDetail$!: Observable;\r\n\r\n companyDetails: any;\r\n convertibility: any = CONSTANTS_CRM.OPPORTUNITY_CONVERTITBILITY;\r\n selectedConvertibility!: any;\r\n outcome: any = CONSTANTS_CRM.TOUR_OUTCOME;\r\n values: string[] | undefined;\r\n followUpDate: Date | undefined;\r\n contractEndDate: Date | undefined;\r\n mylookupservice: any;\r\n selectedOutcome!: any;\r\n markcompletedchecked: boolean = false;\r\n showCalender: Observable | any = false;\r\n selectedOutcomeTemplate: any;\r\n selectedDateTime: Date | any;\r\n selectedTime: string | any;\r\n errMsg: Error | any;\r\n tenantId: number | any;\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n errorDataModalSubject = new BehaviorSubject([] as ValidationError[]);\r\n errorDataModal = [] as ValidationError[];\r\n\r\n //#region billing sidebar\r\n planSummarydataObject$: BehaviorSubject = new BehaviorSubject({} as PlanSummary);\r\n showPaidFullSidebar: boolean = false;\r\n //#endregion billing sidebar\r\n\r\n showChooseReason: boolean = false;\r\n showLostDealDialog = false\r\n lostDealItemInfo = ''\r\n stageMaster$: Observable = new Subject();\r\n\r\n\r\n constructor(\r\n public store: Store,\r\n public translate: TranslateService,\r\n private fb: FormBuilder,\r\n private tourOutcomeService: TaskCallOutcomeService,\r\n private timeService: TimeconversionService,\r\n private messageService: MessageService,\r\n private clientService: ClientService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.TourOutComeNotIntrestedForm = this.fb.group({\r\n comments: ['', [Validators.required]],\r\n });\r\n\r\n this.TourOutComeStillThinkingForm = this.fb.group({\r\n comments: ['', [Validators.required]],\r\n });\r\n\r\n this.TourOutComeNoShowForm = this.fb.group({\r\n comments: ['', [Validators.required]],\r\n });\r\n\r\n this.TourOutComeRescheduleForm = this.fb.group({\r\n rescheduleDate: ['', [Validators.required]],\r\n followupTime: ['', [Validators.required]],\r\n comments: ['', [Validators.required]],\r\n taskcompleted: [this.markcompletedchecked, [Validators.required,]]\r\n });\r\n this.componentInit();\r\n this.setNoshowFormControlValidator();\r\n }\r\n\r\n componentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.companyDetails = responseData;\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n })\r\n\r\n this.stageMaster$ = this.store.select(STAGE_MASTER_STATE);\r\n\r\n }\r\n\r\n MarkTourOutComeNotIntrested(formdata: FormGroup) {\r\n let createTourOutcomeRequest: CreateTourOutcomeRequest = {} as CreateTourOutcomeRequest;\r\n let logTour = {} as CreateLogTourNotesRequest;\r\n logTour.transaction_notes = formdata.value.comments;\r\n logTour.staff_id = this.modelData.assigned_to_staff_id;\r\n logTour.transaction_log_date = new Date().toISOString();\r\n createTourOutcomeRequest.tour_outcome = TourOutcome.NotInterested;\r\n createTourOutcomeRequest.mark_as_complete = true;\r\n createTourOutcomeRequest.book_trial = null;\r\n createTourOutcomeRequest.log_tour = logTour;\r\n\r\n this.CreateTourOutCome(createTourOutcomeRequest, formdata);\r\n }\r\n\r\n MarkTourOutComeNoShow(formdata: FormGroup) {\r\n let createTourOutcomeRequest: CreateTourOutcomeRequest = {} as CreateTourOutcomeRequest;\r\n let logTour = {} as CreateLogTourNotesRequest;\r\n logTour.transaction_notes = formdata.value.comments;\r\n logTour.staff_id = this.modelData.assigned_to_staff_id;\r\n logTour.transaction_log_date = new Date().toISOString();\r\n createTourOutcomeRequest.tour_outcome = TourOutcome.NoShow;\r\n createTourOutcomeRequest.mark_as_complete = true;\r\n createTourOutcomeRequest.book_trial = null;\r\n createTourOutcomeRequest.log_tour = logTour;\r\n this.CreateTourOutCome(createTourOutcomeRequest, formdata);\r\n }\r\n\r\n RescheduleTouroutcome(formdata: FormGroup) {\r\n let createTourOutcomeRequest: CreateTourOutcomeRequest = {} as CreateTourOutcomeRequest;\r\n let scheduleTask = {} as CreateFollowupTaskByDateRequest;\r\n scheduleTask.scheduled_datetime = this.timeService.GetUTCDateTimeByDateAndTime(formdata.value.rescheduleDate, formdata.value.followupTime);\r\n let logTour = {} as CreateLogTourNotesRequest;\r\n logTour.transaction_notes = formdata.value.comments;\r\n logTour.staff_id = this.modelData.assigned_to_staff_id;\r\n logTour.transaction_log_date = new Date().toISOString();\r\n createTourOutcomeRequest.tour_outcome = TourOutcome.Reschedule;\r\n createTourOutcomeRequest.mark_as_complete = this.markcompletedchecked;\r\n createTourOutcomeRequest.reschedule_task = scheduleTask;\r\n createTourOutcomeRequest.log_tour = logTour;\r\n this.CreateTourOutCome(createTourOutcomeRequest, formdata);\r\n }\r\n\r\n MarkTourOutComeStillThinking(formdata: FormGroup) {\r\n let createTourOutcomeRequest: CreateTourOutcomeRequest = {} as CreateTourOutcomeRequest;\r\n let logTour = {} as CreateLogTourNotesRequest;\r\n logTour.transaction_notes = formdata.value.comments;\r\n logTour.staff_id = this.modelData.assigned_to_staff_id;\r\n logTour.transaction_log_date = new Date().toISOString();\r\n createTourOutcomeRequest.tour_outcome = TourOutcome.StillThinking;\r\n createTourOutcomeRequest.mark_as_complete = true;\r\n createTourOutcomeRequest.book_trial = null;\r\n createTourOutcomeRequest.log_tour = logTour;\r\n\r\n this.CreateTourOutCome(createTourOutcomeRequest, formdata);\r\n }\r\n\r\n CreateTourOutCome(createTourOutcomeRequest: CreateTourOutcomeRequest, formdata: FormGroup) {\r\n this.tourOutcomeService\r\n .createTourOutcome(this.tenantId, this.modelData.latest_task.id, createTourOutcomeRequest)\r\n .subscribe({\r\n next: async (data: any) => {\r\n this.translate\r\n .get('OUTCOME.MESSGES.TASK_SUCCESS_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n\r\n await this.timeout(1000);\r\n //Show Opportunity loss floe on Popup , also will not open for opportunity\r\n if (createTourOutcomeRequest.tour_outcome == TourOutcome.NotInterested && this.modelData.stage_master_id) {\r\n this.lostDealItemInfo = this.modelData;\r\n this.showChooseReason = true;\r\n }\r\n else {\r\n this.ClearForm(formdata);\r\n this.setHidePopup();\r\n }\r\n },\r\n error: (error: AppErrors) => {\r\n if (error instanceof NotFoundError) {\r\n this.errMsg = error.originalError.message;\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.errorDataModal = this.errorMessages;\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n },\r\n });\r\n }\r\n\r\n ClearForm(formName: FormGroup) {\r\n this.showMeetingOutcome = false;\r\n this.selectedOutcome = null;\r\n this.selectedOutcomeTemplate = null;\r\n formName.reset();\r\n }\r\n\r\n setHidePopup() {\r\n this.showMeetingOutcome = false;\r\n this.hideOutCome.emit(this.showMeetingOutcome);\r\n this.selectedOutcome = null;\r\n this.TourOutComeNoShowForm.reset();\r\n this.TourOutComeRescheduleForm.reset();\r\n this.TourOutComeNotIntrestedForm.reset();\r\n }\r\n\r\n SelectOutcome(item: any) {\r\n this.selectedOutcome = item;\r\n if (item.shortname == 'noshow')\r\n this.selectedOutcomeTemplate = this.noshowform;\r\n if (item.shortname == 'notintrested')\r\n this.selectedOutcomeTemplate = this.notintrestedform;\r\n if (item.shortname == 'reschedule')\r\n this.selectedOutcomeTemplate = this.rescheduleform;\r\n if (item.shortname == 'stillthinking')\r\n this.selectedOutcomeTemplate = this.stillthinkingform;\r\n if (item.shortname == 'signingup') {\r\n // this.selectedOutcomeTemplate = this.signupform;\r\n let draggedProduct = this.modelData;\r\n let planSummary: PlanSummary = {\r\n id: 0,\r\n client: {\r\n client_id: draggedProduct.client_info.id,\r\n client_name: draggedProduct.client_info.full_name,\r\n client_status: draggedProduct.client_info.status,\r\n } as PlanSummaryClient,\r\n couponcode: null,\r\n tenant_id: this.tenantId,\r\n company_id: draggedProduct.company_id,\r\n startdate: new Date(),\r\n plan_selectable: true,\r\n CRM: {\r\n opp_id: draggedProduct.id,\r\n task_id: draggedProduct.latest_task?.id || 0,\r\n board_id: draggedProduct.board_type\r\n } as PlanSummaryCRM,\r\n Scheduling: null,\r\n } as PlanSummary;\r\n\r\n this.planSummarydataObject$.next(planSummary);\r\n this.showPaidFullSidebar = true;\r\n }\r\n }\r\n\r\n hideBillingSummary(event: any) {\r\n this.showPaidFullSidebar = false;\r\n this.planSummarydataObject$.next({} as PlanSummary);\r\n if (event.uuid && String(event.uuid).trim() != '') {\r\n this.setHidePopup();\r\n }\r\n }\r\n\r\n SelectOutcomeMob(item: any) {\r\n this.SelectOutcome(item.value);\r\n }\r\n\r\n clickMarkcompletedChecked(e: any) {\r\n this.markcompletedchecked = e.checked;\r\n }\r\n\r\n\r\n setNoshowFormControlValidator() {\r\n this.TourOutComeRescheduleForm.controls.taskcompleted.valueChanges.subscribe(\r\n (value: boolean) => {\r\n let rescheduleDateFormcontrol = this.TourOutComeRescheduleForm.controls.rescheduleDate as FormControl;\r\n let followupTimeFormcontrol = this.TourOutComeRescheduleForm.controls.followupTime as FormControl;\r\n if (value) {\r\n rescheduleDateFormcontrol.setValidators(null);\r\n followupTimeFormcontrol.setValidators(null);\r\n rescheduleDateFormcontrol.setValue('');\r\n followupTimeFormcontrol.setValue('');\r\n rescheduleDateFormcontrol.disable();\r\n followupTimeFormcontrol.disable();\r\n } else {\r\n rescheduleDateFormcontrol.setValidators([Validators.required]);\r\n followupTimeFormcontrol.setValidators([Validators.required]);\r\n rescheduleDateFormcontrol.enable();\r\n followupTimeFormcontrol.enable();\r\n }\r\n }\r\n );\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n GetErrorData(event: any) {\r\n this.errorMessages = event.errors;\r\n this.showErrorPopup?.next(event.showErrors);\r\n }\r\n\r\n get ShowErrorPopup(): Observable {\r\n return this.showErrorPopup?.asObservable() || of(false);\r\n }\r\n\r\n GetUpdatedData(event: any) {\r\n this.modelData = event;\r\n this.modified.emit(true);\r\n }\r\n\r\n get getoutcome(): any {\r\n return this.selectedOutcomeTemplate;\r\n }\r\n\r\n get SelectedConvertibility(): FormControl {\r\n return this.frmgroupCreateTourOutCome.controls.ddlConvertibility as FormControl;\r\n }\r\n\r\n closeDailog() {\r\n this.showChooseReason = false;\r\n this.showLostDealDialog = false;\r\n }\r\n\r\n OpenLostDeal(modalData: any) {\r\n this.showChooseReason = true;\r\n this.lostDealItemInfo = modalData;\r\n }\r\n\r\n clientStatus(client: any): string {\r\n if (client && client.status)\r\n return this.clientService.getClientStatusHtml(client.status.toString());\r\n else\r\n return '';\r\n }\r\n\r\n getStageStatus(stageMasterid: number): Observable {\r\n return this.store.select(STAGE_MASTER_STATE).pipe(\r\n map(\r\n (value: STAGE_MASTER_MODEL[]) =>\r\n value.find(obj => obj.id == stageMasterid)?.name_primary_language\r\n\r\n )\r\n );\r\n }\r\n\r\n timeout(ms: any) {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n\r\n}\r\n\r\n\r\n@NgModule({\r\n declarations: [TourOutcomeComponent],\r\n imports: [\r\n ReactiveFormsModule,\r\n BrowserModule,\r\n InputTextModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n CommonModule,\r\n DialogModule,\r\n ButtonModule,\r\n DropdownModule,\r\n ChipsModule,\r\n ChipModule,\r\n InplaceModule,\r\n TaskOpportunityInfoComponentModule,\r\n CalendarModule,\r\n InputSwitchModule,\r\n StyleClassModule,\r\n FormDatepickerComponentModule,\r\n ErrorMsgComponentModule,\r\n InputTextareaModule,\r\n TabViewModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n ToastModule,\r\n CurrencyformatPipeModule,\r\n BillingComponentModule,\r\n LostDealComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [TourOutcomeComponent],\r\n})\r\nexport class TourOutcomeComponentModule { }\r\n","\r\n\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n {{ modelData?.client_info?.status | uppercase }}\r\n
\r\n \r\n \r\n \r\n {{ strStage }}\r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n \r\n

\r\n {{ modelData.client_info.full_name }}\r\n

\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n {{ modelData.client_info.mobile_country_code }}\r\n {{ modelData.client_info.mobile_number }}\r\n
\r\n
\r\n \r\n {{\r\n modelData.client_info.email_id\r\n }}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n
\r\n

{{'OUTCOME.TOUROUTCOME.HOW-DID-MEETING-GO' | translate}}

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n \"Avatar\"\r\n {{modelData.client_info.full_name}}\r\n {{modelData.client_info.id}}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n {{'OUTCOME.TOUROUTCOME.MEETING-OUTCOME' | translate}}\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n {{selectedOutcome.name}}\r\n
\r\n
\r\n \r\n
\r\n \r\n
{{outcome.name}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n \r\n \r\n {{'OUTCOME.TOUROUTCOME.MEETING-OUTCOME-ABOUT' | translate}}\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n

{{'OUTCOME.TOUROUTCOME.CHOOSEOUTCOME' | translate}}

\r\n \"Image\"\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
{{'OUTCOME.TOUROUTCOME.NOTES' | translate}}\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'OUTCOME.TOUROUTCOME.NOTES' | translate}}\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
{{'OUTCOME.TOUROUTCOME.MARKTASKCOMPLETED' | translate}}
\r\n
\r\n\r\n
\r\n
\r\n
{{'OUTCOME.TOUROUTCOME.RESCHEDULE' | translate}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{'OUTCOME.TOUROUTCOME.NOTES' |\r\n translate}}
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
{{'OUTCOME.TOUROUTCOME.NOTES' | translate}}\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { PaymentGatewaySupported } from '@fitness-force/enum';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { loadPayengine } from 'payengine';\r\n\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ProgressSpinnerModule } from 'primeng/progressspinner';\r\n\r\n@Component({\r\n selector: 'payengine',\r\n templateUrl: './payengine.component.html',\r\n styleUrls: ['./payengine.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class PayengineComponent implements OnInit {\r\n private form: any;\r\n @Input('visible') showpg$: BehaviorSubject = new BehaviorSubject(false as boolean);\r\n @Input('transactionId') internalTransactionId$: string = \"\";\r\n @Input('uuid') uuid: string = \"\";\r\n @Input('hmac') hmac: string = \"\";\r\n @Input('key') publicKey: string = \"\";\r\n @Input('paymethod') paymentMethod: string = \"\";\r\n\r\n showSkeleton$: BehaviorSubject = new BehaviorSubject(true as boolean);\r\n payEngine: any;\r\n css = {\r\n fontFamily: '\"Helvetica Neue\", Helvetica',\r\n boxSizing: \"border-box\",\r\n lineHeight: \"1\",\r\n fontSize: \"0.875rem\",\r\n fontWeight: \"400\",\r\n border: \"1px solid #ced4da\",\r\n color: \"#495057\",\r\n background: \"#fff\",\r\n width: \"100%\",\r\n height: \"36px\",\r\n borderRadius: \"0.25rem\",\r\n padding: \"0.5rem 0.75rem\",\r\n \"&::placeholder\": {\r\n color: \"#CFD7E0\",\r\n },\r\n };\r\n\r\n constructor(\r\n private router: Router,\r\n ) {\r\n setTimeout(() => {\r\n this.showSkeleton$.next(false);\r\n }, 4000);\r\n }\r\n\r\n async ngOnInit(): Promise {\r\n this.payEngine = await loadPayengine({ publicKey: this.publicKey });\r\n\r\n\r\n\r\n if (this.paymentMethod == 'cc' || this.paymentMethod == 'dc')\r\n this.loadCardFields();\r\n\r\n if (this.paymentMethod == 'ach')\r\n this.loadBankFields();\r\n\r\n console.log(\"ngOnInit finish\");\r\n }\r\n\r\n loadCardFields() {\r\n const css = this.css;\r\n this.payEngine.SecureFields.create().then((form: any) => {\r\n this.form = form;\r\n\r\n form.field(\"#card-name\", {\r\n type: \"text\",\r\n name: \"card_holder\",\r\n placeholder: \"Card holder\",\r\n validations: [\"required\"],\r\n css,\r\n });\r\n\r\n form.field(\"#card-number\", {\r\n type: \"card-number\",\r\n name: \"card_number\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"Card number\",\r\n showCardIcon: false,\r\n validations: [\"required\", \"validCardNumber\"],\r\n css,\r\n });\r\n\r\n form.field(\"#card-cvc\", {\r\n type: \"card-security-code\",\r\n name: \"card_cvc\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"CVC\",\r\n maxLength: 3,\r\n validations: [\"required\", \"validCardSecurityCode\"],\r\n css,\r\n });\r\n\r\n form.field(\"#card-expiry\", {\r\n type: \"card-expiration-date\",\r\n name: \"card_exp\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"MM / YY\",\r\n validations: [\"required\", \"validCardExpirationDate\"],\r\n css,\r\n });\r\n });\r\n }\r\n\r\n loadBankFields() {\r\n const css = this.css;\r\n this.payEngine.SecureFields.create().then((form: any) => {\r\n this.form = form\r\n\r\n form.field(\"#routing-number\", {\r\n type: \"number\",\r\n name: \"routing_number\",\r\n placeholder: \"Routing Number\",\r\n validations: [\"required\"],\r\n css,\r\n });\r\n\r\n form.field(\"#account-number\", {\r\n type: \"number\",\r\n name: \"account_number\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"Account Number\",\r\n validations: [\"required\"],\r\n css,\r\n });\r\n\r\n form.field(\"#first-name\", {\r\n type: \"text\",\r\n name: \"first_name\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"First Name\",\r\n validations: [\"required\"],\r\n css,\r\n });\r\n\r\n form.field(\"#last-name\", {\r\n type: \"text\",\r\n name: \"last_name\",\r\n successColor: \"#4F8A10\",\r\n errorColor: \"#D8000C\",\r\n placeholder: \"Last Name\",\r\n validations: [\"required\"],\r\n css,\r\n });\r\n });\r\n }\r\n\r\n public async tokenizeCardAndProcessPayment(event: any) {\r\n try {\r\n this.showSkeleton$.next(true);\r\n event.preventDefault();\r\n // step 1: tokenize card\r\n const cardObj = await this.form.createCard();\r\n const token = cardObj.token;\r\n\r\n // step 2: process payment from partner backend\r\n this.navigateToCharge(token);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n this.showSkeleton$.next(false);\r\n }\r\n }\r\n\r\n public async tokenizeACHAndProcessPayment(event: any) {\r\n try {\r\n this.showSkeleton$.next(true);\r\n event.preventDefault();\r\n // step 1: tokenize card\r\n const bankObj = await this.form.createBankAccount();\r\n const token = bankObj.token;\r\n\r\n // step 2: process payment from partner backend\r\n this.navigateToCharge(token);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n this.showSkeleton$.next(false);\r\n }\r\n }\r\n\r\n async tokenizePlaidAndProcessPayment($event: any) {\r\n try {\r\n this.showSkeleton$.next(true);\r\n // step 1: tokenize card\r\n let token = $event.detail.data.token;\r\n\r\n // step 2: process payment from partner backend\r\n this.navigateToCharge(token);\r\n console.log('event', $event);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n this.showSkeleton$.next(false);\r\n }\r\n }\r\n\r\n async onError($event: any) {\r\n // alert($event.detail.display_message);\r\n console.log('error event', $event);\r\n this.showSkeleton$.next(false);\r\n }\r\n\r\n async close() {\r\n this.showSkeleton$.next(false);\r\n }\r\n\r\n navigateToCharge(token: string): void {\r\n this.router.navigate(['/' + this.uuid + '/payment_callback'], {\r\n queryParams: {\r\n pg: PaymentGatewaySupported.PayenginUSA,\r\n token: token,\r\n internaltransactionid: this.internalTransactionId$,\r\n },\r\n });\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [PayengineComponent],\r\n imports: [\r\n CommonModule,\r\n\r\n ButtonModule,\r\n ProgressSpinnerModule,\r\n StyleClassModule,\r\n ],\r\n exports: [PayengineComponent]\r\n})\r\nexport class PayengineComponentModule {\r\n}\r\n","
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n

Credit Card Payment

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n

ACH Payment

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, NgZone } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { PaymentGatewaySupported } from '@fitness-force/enum';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'razorpay',\r\n templateUrl: './razorpay.component.html',\r\n styleUrls: ['./razorpay.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RazorpayComponent implements OnInit {\r\n @Input('visible') showpg$: BehaviorSubject = new BehaviorSubject(false as boolean);\r\n @Input('transactionId') internalTransactionId: string = \"\";\r\n @Input() orderId: string = \"\";\r\n @Input() customerId: string = \"\";\r\n @Input('uuid') uuid: string = \"\";\r\n\r\n constructor(private _ngZone: NgZone, private router: Router) {\r\n //this.loadScript();\r\n }\r\n\r\n ngOnInit(): void {\r\n let oThis = this;\r\n setTimeout(() => {\r\n const Razorpay = (window as any).Razorpay\r\n var options = {\r\n \"key\": CONSTANTS_DATA.PAYMENT_GATEWAY_VENDOR_KEY.RAZORPAY.partnerKey,\r\n \"order_id\": this.orderId,\r\n \"customer_id\": this.customerId,\r\n \"account_id\": CONSTANTS_DATA.PAYMENT_GATEWAY_VENDOR_KEY.RAZORPAY.accountId,\r\n \"recurring\": \"1\",\r\n \"handler\": function (response: any) {\r\n oThis.redirectTo(response.razorpay_order_id, response.razorpay_payment_id);\r\n },\r\n \"notes\": {\r\n /* We need to plan */\r\n // \"note_key 1\": \"Beam me up Scotty\",\r\n // \"note_key 2\": \"Tea. Earl Gray. Hot.\"\r\n },\r\n \"theme\": {\r\n \"color\": CONSTANTS_DATA.PAYMENT_GATEWAY_VENDOR_KEY.RAZORPAY.themeColor\r\n }\r\n };\r\n\r\n var rzp1 = new Razorpay(options);\r\n rzp1.open();\r\n }, 200)\r\n }\r\n\r\n redirectTo(orderid: string, externalTransactionId: string): void {\r\n // step 2: process payment from partner backend\r\n this._ngZone.run(() => {\r\n this.router.navigate(['/' + this.uuid + '/payment_callback'], {\r\n queryParams: {\r\n pg: PaymentGatewaySupported.RazorpayIndia,\r\n orderid: orderid,\r\n externaltransactionid: externalTransactionId,\r\n internaltransactionid: this.internalTransactionId,\r\n },\r\n });\r\n });\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [RazorpayComponent],\r\n imports: [],\r\n exports: [RazorpayComponent]\r\n})\r\nexport class RazorpayComponentModule {\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n Inject,\r\n LOCALE_ID,\r\n} from '@angular/core';\r\nimport { CommonService, ServiceCategoryService, TaxGroupService } from '@fitness-force/api';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { Country, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { COUNTRY_MASTER_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { ToastModule } from 'primeng/toast';\r\n\r\nimport {\r\n DialogService,\r\n DynamicDialogConfig,\r\n DynamicDialogModule,\r\n DynamicDialogRef,\r\n} from 'primeng/dynamicdialog';\r\n\r\nimport { DayAgoPipeModule } from '../../filters/dayago.pipe';\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\n\r\nimport { ToastComponentModule } from '../toast/toast.component';\r\nimport { CommonModule, getCurrencySymbol } from '@angular/common';\r\nimport {\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FormBuilder,\r\n Validators,\r\n FormGroup,\r\n FormControl,\r\n AbstractControl,\r\n} from '@angular/forms';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { MembershipBehaviour, PlanType } from 'libs/enum/src/lib/plansubscription';\r\nimport { BehaviorSubject, forkJoin, Observable } from 'rxjs';\r\nimport { Status } from '@fitness-force/enum';\r\nimport { ServiceCategoryCreateComponentModule } from '../service-category-create/service-category-create.component';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MessagesModule } from 'primeng/messages';\r\n\r\n@Component({\r\n selector: 'plan-service-modal',\r\n templateUrl: './plan-service-modal.component.html',\r\n styleUrls: ['./plan-service-modal.component.scss'],\r\n providers: [MessageService, DialogService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PlanServiceModalComponent implements OnInit {\r\n getAccessTenantList$: Observable = new Observable();\r\n showOptions: boolean = false;\r\n tenantId: number = 0;\r\n name_primary_language!:string\r\n\r\n activeEditService!: any;\r\n activeEditIndex!:number;\r\n serviceCreateForm: FormGroup;\r\n membershipBehaviour:any[]=[];\r\n services=[];\r\n taxGroup=[];\r\n currencySymbol:any;\r\n subscriptionCategory!:any\r\n addCategory=false;\r\n\r\n\r\n\r\n constructor(\r\n private store: Store,\r\n private serviceCategoryService: ServiceCategoryService,\r\n private taxGroupService:TaxGroupService,\r\n private messageService: MessageService,\r\n private translate: TranslateService,\r\n private ref: DynamicDialogRef,\r\n public config: DynamicDialogConfig,\r\n private fb: FormBuilder,\r\n private cd: ChangeDetectorRef,\r\n private commonService: CommonService,\r\n @Inject(LOCALE_ID) public locale: string,\r\n ) {\r\n if(this.config.data?.service){\r\n this.activeEditService=this.config.data?.service;\r\n this.activeEditIndex=this.config.data?.index;\r\n }\r\n if(this.config.data?.subscriptionCategory){\r\n this.subscriptionCategory=this.config.data?.subscriptionCategory;\r\n }\r\n }\r\n // Enums\r\n public get PlanType() {\r\n return PlanType;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n }\r\n\r\n this.preFormData();\r\n\r\n this.modifyFormByBehavior(this.activeEditService && this.activeEditService.behaviour?this.activeEditService.behaviour:\"CheckIn\");\r\n this.handleBehaviorChanges();\r\n });\r\n // Could be moved to any Facade service\r\n this.store.select(COUNTRY_MASTER_STATE).subscribe((country: Country) => {\r\n this.currencySymbol=getCurrencySymbol(country.currency_code, 'wide', this.locale);\r\n });\r\n\r\n\r\n for (let [key, value] of Object.entries(MembershipBehaviour)) {\r\n this.membershipBehaviour.push({ name: value, key });\r\n }\r\n }\r\n\r\n\r\n preFormData() {\r\n let forkArray = [\r\n this.serviceCategoryService.getServiceCategories(this.tenantId),\r\n this.taxGroupService.getTaxGroups(this.tenantId),\r\n ];\r\n\r\n forkJoin(forkArray).subscribe({\r\n next: (results: any) => {\r\n if(results[0] && results[0]?.items ){\r\n this.services= results[0]?.items?.filter(\r\n (value: any) =>\r\n value.status == Status.Active.toString() ||\r\n value.status == Status[Status.Active]\r\n );\r\n }else this.services=[]\r\n if(results[1] && results[1].items){\r\n this.taxGroup= results[1].items;\r\n }else this.taxGroup= [];\r\n this.buildForm();\r\n },\r\n error:(error:any)=>{\r\n this.handleError(error);\r\n }\r\n });\r\n }\r\n\r\n\r\n reloadServices(id:number){\r\n this.serviceCategoryService.getServiceCategories(this.tenantId).subscribe({\r\n next:(res:any)=>{\r\n this.services= res.items;\r\n let createdCategory = this.services.find((item: any) => item.id == id);\r\n this.CategoryId?.setValue(createdCategory);\r\n this.services= res.items.filter(\r\n (value: any) =>\r\n value.status == Status.Active.toString() ||\r\n value.status == Status[Status.Active]\r\n );\r\n this.cd.detectChanges();\r\n },\r\n error:(error:any)=>{\r\n\r\n }\r\n },)\r\n }\r\n\r\n handleError(error: any) {\r\n if (error instanceof NotFoundError) {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.PAGE_NOT_FOUND',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.PAGE_NOT_FOUND'],\r\n });\r\n });\r\n } else {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.SOMETHING_WRONG',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.SOMETHING_WRONG'],\r\n });\r\n });\r\n }\r\n }\r\n\r\n\r\n // Enums\r\n public get MembershipBehaviour() {\r\n return MembershipBehaviour;\r\n }\r\n\r\n get Behavior():AbstractControl | null {\r\n return this.serviceCreateForm?.get('behaviour');\r\n }\r\n\r\n get Sessions():AbstractControl | null {\r\n return this.serviceCreateForm?.get('sessions')?this.serviceCreateForm?.get('sessions'):null;\r\n }\r\n\r\n get CategoryId():AbstractControl | null {\r\n return this.serviceCreateForm?.get('category_id');\r\n }\r\n\r\n get TaxGroupId():AbstractControl | null {\r\n return this.serviceCreateForm?.get('taxgrp_id');\r\n }\r\n get TaxItemCode():AbstractControl | null {\r\n return this.serviceCreateForm?.get('tax_item_code');\r\n }\r\n get BaseCostInMinorCurrency():AbstractControl | null {\r\n return this.serviceCreateForm?.get('base_cost_in_minor_currency');\r\n }\r\n\r\n\r\n\r\n\r\n setBehavior(value:any) {\r\n this.Behavior?.setValue(value);\r\n }\r\n\r\n\r\n handleBehaviorChanges() {\r\n this.serviceCreateForm\r\n ?.get('behaviour')\r\n ?.valueChanges.subscribe((value) => {\r\n this.modifyFormByBehavior(value.key);\r\n });\r\n }\r\n\r\n\r\n buildForm() {\r\n this.serviceCreateForm = this.fb.group({\r\n base_cost_in_minor_currency: [\r\n this.activeEditService && this.activeEditService.base_cost_in_minor_currency?\r\n this.commonService.ConvertAmountFromMinorCurrency(this.activeEditService.base_cost_in_minor_currency):'',\r\n Validators.required\r\n ],\r\n behaviour: [\r\n this.initializeSubscriptionCategoryForm(),\r\n Validators.required\r\n ],\r\n category_id: [\r\n this.initializeCategoryIdForm(),\r\n Validators.required\r\n ],\r\n taxgrp_id: [\r\n this.initializeTaxGroupIdForm(),\r\n Validators.required\r\n ],\r\n tax_item_code: [\r\n this.activeEditService && this.activeEditService.tax_item_code?this.activeEditService.tax_item_code:'',\r\n Validators.required\r\n ],\r\n require_base_membership: [\r\n this.activeEditService && this.activeEditService.require_base_membership? this.activeEditService.require_base_membership:false,\r\n Validators.required\r\n ],\r\n is_session_owner_required: [\r\n this.activeEditService && this.activeEditService.is_session_owner_required?this.activeEditService.is_session_owner_required:false,\r\n Validators.required\r\n ],\r\n sessions: [\r\n this.activeEditService && this.activeEditService.sessions?this.activeEditService.sessions:0,\r\n Validators.required\r\n ],\r\n is_base_membership: [this.activeEditService && this.activeEditService.is_base_membership?this.activeEditService.is_base_membership:true, Validators.required],\r\n non_recurring_services: [\r\n this.activeEditService && this.activeEditService.non_recurring_services?this.activeEditService.non_recurring_services:false, Validators.required],\r\n\r\n });\r\n if(this.subscriptionCategory && (this.subscriptionCategory.name==PlanType.PaidInFull ||this.subscriptionCategory.name==PlanType.DropIn))\r\n {\r\n this.serviceCreateForm.get('non_recurring_services')?.setValue(true);\r\n this.serviceCreateForm.get('non_recurring_services')?.disable();\r\n }\r\n this.cd.detectChanges();\r\n }\r\n\r\n\r\n\r\n\r\n initializeSubscriptionCategoryForm() {\r\n if ( this.activeEditService && this.activeEditService.behaviour) {\r\n for (let [key, value] of Object.entries(MembershipBehaviour)) {\r\n if (key == this.activeEditService.behaviour) {\r\n return { name: value, key };\r\n }\r\n }\r\n return {\r\n name: MembershipBehaviour.MemberShip,\r\n key: 'MemberShip',\r\n };\r\n } else\r\n return {\r\n name: MembershipBehaviour.MemberShip,\r\n key: 'MemberShip',\r\n };\r\n }\r\n\r\n initializeCategoryIdForm(){\r\n if ( this.activeEditService && this.activeEditService.category_id){\r\n return this.services.filter((element:any)=>{\r\n return element.id==this.activeEditService.category_id\r\n })[0];\r\n }\r\n return null;\r\n }\r\n\r\n initializeTaxGroupIdForm(){\r\n if ( this.activeEditService && this.activeEditService.taxgrp_id){ /// this.activeEditService.taxgrp_id){\r\n return this.taxGroup?.find((element:any)=>{\r\n return element.id==this.activeEditService.taxgrp_id; ///this.activeEditService.taxgrp_id\r\n })\r\n\r\n }\r\n return 0;\r\n }\r\n\r\n modifyFormByBehavior(value: string) {\r\n switch(value){\r\n case \"MemberShip\":\r\n\r\n this.Sessions?.clearValidators();\r\n break;\r\n case \"AppointmentPackage\":\r\n this.Sessions?.addValidators(Validators.required)\r\n break;\r\n case \"ClassPackage\":\r\n this.Sessions?.addValidators(Validators.required)\r\n break;\r\n }\r\n\r\n }\r\n\r\n saveServiceCreateForm(){\r\n if(this.serviceCreateForm.valid){\r\n let service= this.cleanServiceFormValues(this.serviceCreateForm.getRawValue());\r\n service.base_cost_in_minor_currency= this.commonService.ConvertMinorCurrencyFromAmount(\r\n service.base_cost_in_minor_currency\r\n );\r\n if(this.activeEditService)\r\n this.ref.close({service,index:this.activeEditIndex});\r\n else this.ref.close({service});\r\n }else{\r\n Object.keys(this.serviceCreateForm.controls).forEach((field) => {\r\n const control = this.serviceCreateForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n }\r\n }\r\n\r\n cleanServiceFormValues(values:any){\r\n let serviceData={...values,\r\n behaviour:values.behaviour.key,\r\n category_id:values.category_id.id,\r\n taxgrp_id:values.taxgrp_id.id,\r\n name_primary_language:values.category_id.name_primary_language,\r\n };\r\n return serviceData;\r\n\r\n }\r\n\r\n\r\n closeDialog() {\r\n this.ref.close(null);\r\n }\r\n\r\n showCategoryDialog(){\r\n this.addCategory=true;\r\n this.cd.detectChanges();\r\n }\r\n changedEditCategory(event:any){\r\n if(event){\r\n this.reloadServices(event.id);\r\n }\r\n this.addCategory=false;\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [PlanServiceModalComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n InputTextModule,\r\n RippleModule,\r\n DialogModule,\r\n DividerModule,\r\n OverlayPanelModule,\r\n DayAgoPipeModule,\r\n\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ToastComponentModule,\r\n ErrorMsgComponentModule,\r\n ToastModule,\r\n DynamicDialogModule,\r\n InputNumberModule,\r\n DropdownModule,\r\n InputSwitchModule,\r\n ServiceCategoryCreateComponentModule,\r\n MessagesModule,\r\n MessageModule,\r\n\r\n ],\r\n exports: [PlanServiceModalComponent],\r\n})\r\nexport class PlanServiceModalComponentModule {}\r\n","\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n

\r\n \r\n {{\r\n activeEditService?('ADMIN.SUBSCRIPTION.EDIT_SERVICE' | translate):('ADMIN.SERVICES.ADD_SERVICE' | translate)\r\n }}\r\n

\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n \r\n
\r\n {{\r\n 'ADMIN.SERVICES.CHANGE_MSG' | translate\r\n }}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n \r\n
{{Behavior?.value?.name}}
\r\n
\r\n \r\n
{{membershipBehaviour.name}}
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n {{\r\n 'ADMIN.SERVICES.NON_RECURRING' | translate\r\n }}*\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
{{CategoryId?.value?.name_primary_language}}
\r\n
\r\n \r\n
{{ serviceCategory.name_primary_language }}
\r\n
\r\n \r\n\r\n
{{'ADMIN.SERVICES.ADD_SERVICE_CATEGORY' | translate}}
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n {{currencySymbol}}\r\n \r\n\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
{{TaxGroupId?.value?.name_primary_language}}
\r\n
\r\n \r\n
{{taxGroup.name_primary_language}}
\r\n
\r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n {{\r\n 'ADMIN.SERVICES.NUMBER_OF_SESSIONS' | translate\r\n }} ({{\r\n 'ADMIN.SERVICES.IN_NUMERIC' | translate\r\n }})\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n {{\r\n 'ADMIN.SERVICES.IS_BASE_MEMBERSHIP' | translate\r\n }}*\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {{\r\n 'ADMIN.SERVICES.BASE_MEMBERSHIP' | translate\r\n }} *\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {Component,OnInit,ChangeDetectionStrategy,NgModule,Input,Output,EventEmitter,} from '@angular/core';\r\nimport { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport {\r\n FactoryHttpLoader,\r\n FormDatepickerComponentModule,\r\n} from '@fitness-force/shared';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { __values } from 'tslib';\r\n\r\n@Component({\r\n selector: 'app-dynamic-form',\r\n templateUrl: './dynamic-form.component.html',\r\n styleUrls: ['./dynamic-form.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class DynamicFormComponent implements OnInit {\r\n @Input() field!: any;\r\n @Input() form!: FormGroup;\r\n @Input() selectedRelativeDate: Observable | any;\r\n @Input(\"CustomDates\") timePeriod: Observable | any;\r\n\r\n @Output() selectedTimePeriodOutput: EventEmitter = new EventEmitter();\r\n @Output() timePeriodObjectOutput: EventEmitter = new EventEmitter();\r\n @Output() moreThan3monthOutput: EventEmitter = new EventEmitter();\r\n @Output() FormOutput: EventEmitter = new EventEmitter();\r\n\r\n public companyInfoDetail$!: Observable;\r\n selectedTimePeriod :Observable | any;\r\n timePeriodDate: Observable | any;\r\n customDateModal = new BehaviorSubject(false);\r\n moreThanThreeMonths: boolean = false;\r\n selectedFormGroup: any;\r\n reportLongerThan3Months: boolean= false;\r\n shoCustomDateRange: boolean= false;\r\n\r\n\r\n constructor(private translate: TranslateService, private store: Store) {}\r\n\r\n ngOnInit(): void {\r\n if(this.selectedRelativeDate)\r\n {\r\n this.form.get('timePeriod')?.setValue(this.selectedRelativeDate);\r\n this.selectedTimePeriod = this.selectedRelativeDate;\r\n if(this.selectedTimePeriod.value == 99)\r\n {\r\n this.shoCustomDateRange = true;\r\n }\r\n }\r\n this.timePeriodDate= this.timePeriod;\r\n this.componentInit();\r\n }\r\n\r\n componentInit() {\r\n this.companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n this.companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n }\r\n\r\n SelectTimePeriod(timePeriod: any, form: any) {\r\n this.selectedTimePeriod = timePeriod.value;\r\n let startDate: Date = new Date();\r\n let endDate: Date = new Date();\r\n if (timePeriod.value.value == 99) {\r\n this.customDateModal.next(true);\r\n } else {\r\n startDate = new Date(this.selectedTimePeriod.date['from_date']);\r\n endDate = new Date(this.selectedTimePeriod.date['to_date']);\r\n this.moreThanThreeMonths = false;\r\n this.timePeriodDate =null;\r\n }\r\n form.get('to_date').setValue(endDate);\r\n form.get('from_date').setValue(startDate);\r\n this.selectedTimePeriodOutput.emit({timePeriod: this.selectedTimePeriod, form:form});\r\n }\r\n\r\n onDateSelect(event: any, form:any) {\r\n this.customDateModal.next(false);\r\n this.timePeriodDate = event.dateObject;\r\n const months = this.monthDiff(this.timePeriodDate[0],this.timePeriodDate[1]);\r\n\r\n if (months >= 3) this.moreThanThreeMonths = true;\r\n else this.moreThanThreeMonths = false;\r\n \r\n this.selectedFormGroup = event.form;\r\n event.form.get('to_date').setValue(this.timePeriodDate[1].toISOString());\r\n event.form.get('from_date').setValue(this.timePeriodDate[0].toISOString());\r\n this.selectedTimePeriodOutput.emit({timePeriod: this.selectedTimePeriod, form:form});\r\n this.timePeriodObjectOutput.emit({dateObject: this.timePeriodDate, disableButton:this.moreThanThreeMonths});\r\n }\r\n\r\n OpenLongerReport()\r\n {\r\n this.moreThan3monthOutput.emit({status:true, form:this.form});\r\n }\r\n\r\n monthDiff(d1: Date, d2: Date): Number {\r\n var months;\r\n months = (d2.getFullYear() - d1.getFullYear()) * 12;\r\n months -= d1.getMonth();\r\n months += d2.getMonth();\r\n return months <= 0 ? 0 : months;\r\n }\r\n\r\n hideCalender(e:any)\r\n {\r\n this.customDateModal.next(false);\r\n this.selectedTimePeriod =null;\r\n this.selectedRelativeDate=null;\r\n this.timePeriodDate =null;\r\n this.form.get('timePeriod')?.setValue(null);\r\n }\r\n\r\n get GetTimeObject():Date[]{ return this.timePeriodDate;}\r\n\r\n get GetselectedTimePeriod(){ return this.selectedTimePeriod;}\r\n \r\n\r\n GetField(form:FormGroup, field:any): FormControl { return this.form.controls[field] as FormControl; }\r\n GetFieldValue(form:FormGroup, field:any) { return this.form.get(field)?.value};\r\n\r\n \r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [DynamicFormComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n InputTextModule,\r\n DropdownModule,\r\n MessagesModule,\r\n ErrorMsgComponentModule,\r\n FormDatepickerComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [DynamicFormComponent],\r\n})\r\nexport class DynamicFormComponentModule {}\r\n","
\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
{{option.key}}
\r\n
\r\n\r\n
\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
{{timePeriodDate[0] | date: 'MM/dd/yyyy'}} -\r\n {{timePeriodDate[1] | date: 'MM/dd/yyyy'}}
\r\n
\r\n\r\n \r\n
\r\n {{selectedTimePeriod.label}}\r\n {{selectedTimePeriod.date['from_date'] | date: 'mediumDate'}}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n
{{time.label}}
\r\n
\r\n\r\n \r\n
\r\n {{time.label}}\r\n {{time.date['from_date'] | date: 'mediumDate'}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n {{'REPORTS.REPORT_TEMPLATE.FILTER_INFO_1' | translate}}\r\n \r\n {{'REPORTS.REPORT_TEMPLATE.CLICK_HERE' | translate}}\r\n \r\n {{'REPORTS.REPORT_TEMPLATE.FILTER_INFO_2' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { TableAction } from '@fitness-force/enum';\r\nimport { ReportTableColumnData } from '@fitness-force/models';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { CreateOpportunityComponentModule } from '../../crm/create-opportunity/create-opportunity.component';\r\nimport { TaskCreateComponentModule } from '../../task/task-create/task-create.component';\r\n\r\n@Component({\r\n selector: 'table-action-buttons',\r\n templateUrl: './table-action-buttons.component.html',\r\n styleUrls: ['./table-action-buttons.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TableActionButtonsComponent implements OnInit {\r\n\r\n @Input('visible') showButtons: boolean = false;\r\n @Input('columnData') columnData: any;\r\n @Input('reportKey') reportKey: any;\r\n @Input('action') action: any;\r\n\r\n showCreateOpportunityPopup:boolean=false;\r\n showTaskCreate:boolean=false;\r\n actionList:any=[];\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n console.log(this.showButtons,'show btn');\r\n console.log(this.columnData,'column data');\r\n this.actionList=ReportTableColumnData.find(c =>c.report_key== this.reportKey)!.actions;\r\n }\r\n\r\n hideOpportunity(e:any)\r\n {\r\n this.showCreateOpportunityPopup =false;\r\n }\r\n\r\n HideTaskCreate(e:any)\r\n {\r\n this.showTaskCreate =false;\r\n }\r\n\r\n ShowEvent(action:any)\r\n {\r\n switch (action.actionType) {\r\n case TableAction.Opportunity:this.showCreateOpportunityPopup=true; break;\r\n case TableAction.Task: this.showTaskCreate =true; break;\r\n }\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [TableActionButtonsComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n ButtonModule,\r\n RippleModule,\r\n CreateOpportunityComponentModule,\r\n TaskCreateComponentModule\r\n ],\r\n exports: [TableActionButtonsComponent]\r\n})\r\nexport class TableActionButtonsComponentModule {\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { CommonModule, WeekDay } from '@angular/common';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\n\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport { RRule, Frequency, Weekday, ByWeekday } from 'rrule'\r\nimport { RepeatRuleResponse } from '@fitness-force/models';\r\n\r\ninterface RepeatRuleRequest {\r\n repeat: string;\r\n interval: number;\r\n until?: Date | null;\r\n count?: number | null;\r\n weekDays?: any[] | null;\r\n monthDays?: number | null;\r\n};\r\n\r\n@Component({\r\n selector: 'rrule',\r\n templateUrl: './rrule.component.html',\r\n styleUrls: [],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RruleComponent implements OnInit {\r\n @Input('visible') showRRule: boolean = false;\r\n @Input() showNeverStop: boolean = false;\r\n @Input() rRuleObj: RepeatRuleResponse = {} as RepeatRuleResponse;\r\n\r\n @Input('minimumDate') minimumDate: Date ;\r\n\r\n @Output('emitRRule') EmitRule: EventEmitter = new EventEmitter();\r\n @Output('hideRrule') HideRule: EventEmitter = new EventEmitter();\r\n\r\n formGroup: FormGroup;\r\n\r\n weekOptions: any[] = [\r\n { index: 0, value: \"Sunday\", name: \"S\" },\r\n { index: 1, value: \"Monday\", name: \"M\" },\r\n { index: 2, value: \"Tuesday\", name: \"T\" },\r\n { index: 3, value: \"Wednesday\", name: \"W\" },\r\n { index: 4, value: \"Thursday\", name: \"T\" },\r\n { index: 5, value: \"Friday\", name: \"F\" },\r\n { index: 6, value: \"Saturday\", name: \"S\" },\r\n ];\r\n\r\n monthOptions: any[] = [\r\n { value: 1, name: 'First' },\r\n { value: 2, name: 'Second' },\r\n { value: 3, name: 'Third' },\r\n { value: 4, name: 'Fourth' },\r\n { value: 5, name: 'Fifth' },\r\n { value: 6, name: 'Sixth' },\r\n { value: 7, name: 'Seventh' },\r\n { value: 8, name: 'Eighth' },\r\n { value: 9, name: 'Ninth' },\r\n { value: 10, name: 'Tenth' },\r\n { value: 11, name: 'Eleventh' },\r\n { value: 12, name: 'Twelfth' },\r\n { value: 13, name: 'Thirteenth' },\r\n { value: 14, name: 'Fourteenth' },\r\n { value: 15, name: 'Fifteenth' },\r\n { value: 16, name: 'Sixteenth' },\r\n { value: 17, name: 'Seventeenth' },\r\n { value: 18, name: 'Eighteenth' },\r\n { value: 19, name: 'Nineteenth' },\r\n { value: 20, name: 'Twentieth' },\r\n { value: 21, name: 'Twenty-first' },\r\n { value: 22, name: 'Twenty-second' },\r\n { value: 23, name: 'Twenty-third' },\r\n { value: 24, name: 'Twenty-fourth' },\r\n { value: 25, name: 'Twenty-fifth' },\r\n { value: 26, name: 'Twenty-sixth' },\r\n { value: 27, name: 'Twenty-seventh' },\r\n { value: 28, name: 'Twenty-eighth' },\r\n { value: 29, name: 'Twenty-ninth' },\r\n { value: 30, name: 'Thirtieth' },\r\n { value: 31, name: 'Thirty-first' },\r\n ];\r\n\r\n constructor(private fb: FormBuilder, private store: Store, public translate: TranslateService) {\r\n this.formGroup = this.fb.group({\r\n repeat: new FormControl('daily', [Validators.required]),\r\n interval: new FormControl('', [Validators.required]),\r\n until: new FormControl('', []),\r\n count: new FormControl('', []),\r\n weekDays: new FormControl([], []),\r\n monthDays: new FormControl('', []),\r\n repeatableRule: new FormControl('', []),\r\n });\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.CreateFormControls();\r\n let companyInfoDetail$ = this.store.select(COMPANY_INFO)\r\n companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n }\r\n\r\n //#region formcontrol getter\r\n\r\n get Repeat(): string {\r\n return this.formGroup.controls.repeat.value;\r\n }\r\n\r\n get MonthDays(): any {\r\n return this.formGroup.controls.monthDays.value;\r\n }\r\n\r\n get WeekDays(): any[] {\r\n return this.formGroup.controls.weekDays.value || [];\r\n }\r\n\r\n //#endregion formcontrol getter\r\n\r\n //#region formcontrol setter\r\n\r\n set Repeat(value: string) {\r\n this.formGroup.controls.repeat.setValue(value);\r\n }\r\n\r\n //#endregion formcontrol setter\r\n isValidDate(d: any): boolean {\r\n return d && d instanceof Date && !isNaN(d.getTime());\r\n }\r\n\r\n //#region methods\r\n\r\n CreateFormControls(): void {\r\n if (this.rRuleObj && this.rRuleObj.RRule) {\r\n let ruleObj: RRule = RRule.fromString(this.rRuleObj.RRule);\r\n let frequency: Frequency = this.GetRRuleFrequency(String(Frequency[ruleObj.origOptions.freq || 0]).toLowerCase());\r\n\r\n this.formGroup.controls.repeat.setValue(String(Frequency[ruleObj.origOptions.freq || -1]).toLowerCase());\r\n this.formGroup.controls.interval.setValue(ruleObj.origOptions.interval);\r\n\r\n if (ruleObj.origOptions.count && ruleObj.origOptions.count > 0)\r\n this.formGroup.controls.repeatableRule.setValue('4');\r\n else if (ruleObj.origOptions.until && this.isValidDate(ruleObj.origOptions.until))\r\n this.formGroup.controls.repeatableRule.setValue('3');\r\n else\r\n this.formGroup.controls.repeatableRule.setValue(this.showNeverStop ? '2' : '1');\r\n\r\n this.formGroup.controls.weekDays.setValue(this.GetWeekDayFromRRuleWeekDays(frequency, ruleObj.origOptions.byweekday as ByWeekday[]));\r\n this.formGroup.controls.monthDays.setValue(this.monthOptions.find((o: any) => o.value == ruleObj.origOptions.bymonthday));\r\n this.formGroup.controls.until.setValue(ruleObj.origOptions.until);\r\n this.formGroup.controls.count.setValue(ruleObj.origOptions.count);\r\n }\r\n else {\r\n this.formGroup.controls.repeat.setValue('daily');\r\n this.formGroup.controls.interval.setValue(1);\r\n this.formGroup.controls.repeatableRule.setValue(this.showNeverStop ? '2' : '1');\r\n this.formGroup.controls.weekDays.setValue(null);\r\n this.formGroup.controls.monthDays.setValue(null);\r\n this.formGroup.controls.until.setValue(null);\r\n this.formGroup.controls.count.setValue(null);\r\n }\r\n\r\n\r\n this.formGroup.controls.weekDays.valueChanges.subscribe((val: any[]) => {\r\n if (!(val && val.length > 0)) {\r\n let obj = this.weekOptions.filter((o: any) => { return o.index == (new Date()).getDay() });\r\n this.formGroup.controls.weekDays.setValue(obj);\r\n }\r\n });\r\n\r\n\r\n this.formGroup.controls.repeatableRule.valueChanges.subscribe((val: string) => {\r\n if (val == '3') {\r\n this.formGroup.controls.count.setValue(null);\r\n\r\n if (this.Repeat == 'daily') {\r\n let now = new Date();\r\n let untilDate = new Date(now.getFullYear(), now.getMonth() + 6, now.getDate());\r\n this.formGroup.controls.until.setValue(untilDate);\r\n }\r\n else if (this.Repeat == 'weekly') {\r\n let now = new Date();\r\n let untilDate = new Date(now.getFullYear(), now.getMonth() + 6, now.getDate());\r\n this.formGroup.controls.until.setValue(untilDate);\r\n }\r\n else {\r\n let now = new Date();\r\n let untilDate = new Date(now.getFullYear(), now.getMonth() + 6, now.getDate());\r\n this.formGroup.controls.until.setValue(untilDate);\r\n }\r\n }\r\n else if (val == '4') {\r\n this.formGroup.controls.until.setValue(null);\r\n\r\n if (this.Repeat == 'daily') {\r\n this.formGroup.controls.count.setValue(12);\r\n }\r\n else if (this.Repeat == 'weekly') {\r\n this.formGroup.controls.count.setValue(12);\r\n }\r\n else {\r\n this.formGroup.controls.count.setValue(12);\r\n }\r\n }\r\n else {\r\n this.formGroup.controls.until.setValue(null);\r\n this.formGroup.controls.count.setValue(null);\r\n }\r\n });\r\n\r\n this.formGroup.controls.repeat.valueChanges.subscribe((val: string) => {\r\n if (val == 'weekly') {\r\n let obj = this.weekOptions.filter((o: any) => { return o.index == (new Date()).getDay() });\r\n this.formGroup.controls.weekDays.setValue(obj);\r\n this.formGroup.controls.monthDays.setValue(null);\r\n }\r\n else if (val == 'monthly') {\r\n this.formGroup.controls.weekDays.setValue(null);\r\n this.formGroup.controls.monthDays.setValue(this.monthOptions[0]);\r\n }\r\n else {\r\n this.formGroup.controls.weekDays.setValue(null);\r\n this.formGroup.controls.monthDays.setValue(null);\r\n }\r\n });\r\n }\r\n\r\n SetFormControls(): void {\r\n\r\n }\r\n\r\n AddOrRemoveWeekDays(weekDay: any): void {\r\n let weekDaysValue = this.WeekDays;\r\n const index: number = weekDaysValue.map(i => i.index).indexOf(weekDay.index);\r\n if (index !== -1) {\r\n weekDaysValue.splice(index, 1);\r\n }\r\n else {\r\n weekDaysValue.push(weekDay);\r\n }\r\n this.formGroup.controls.weekDays.setValue(weekDaysValue);\r\n }\r\n\r\n HideRRule(): void {\r\n this.showRRule = false;\r\n this.HideRule.emit(this.showRRule);\r\n }\r\n\r\n EmitRepeatRuleData(obj: RepeatRuleResponse): void {\r\n this.EmitRule.emit(obj);\r\n this.HideRRule();\r\n }\r\n\r\n CreateRRule(): void {\r\n let frequency: Frequency = this.GetRRuleFrequency(this.Repeat);\r\n let until: Date = this.formGroup.controls.repeatableRule.value == '3' ? new Date(this.formGroup.controls.until.value) : new Date();\r\n const rule = new RRule({\r\n freq: frequency,\r\n interval: 1,\r\n byweekday: this.GetRRuleWeekDays(frequency),\r\n bymonthday: frequency == Frequency.MONTHLY ? this.formGroup.controls.monthDays.value.value : null,\r\n until: this.formGroup.controls.repeatableRule.value == '3' ? new Date(Date.UTC(until.getFullYear(), until.getMonth(), until.getDate(), until.getHours(), until.getMinutes(), until.getSeconds())) : null,\r\n count: this.formGroup.controls.repeatableRule.value == '4' ? this.formGroup.controls.count.value : null,\r\n })\r\n\r\n this.EmitRepeatRuleData({ RRule: rule.toString(), RRuleText: rule.toText() });\r\n }\r\n\r\n GetRRuleFrequency(val: string): Frequency {\r\n if (val == 'weekly') {\r\n return RRule.WEEKLY;\r\n }\r\n else if (val == 'monthly') {\r\n return RRule.MONTHLY;\r\n }\r\n else {\r\n return RRule.DAILY;\r\n }\r\n }\r\n\r\n GetRRuleWeekDays(frequency: Frequency): (Weekday[] | null) {\r\n if (frequency == Frequency.WEEKLY) {\r\n let weekday: Weekday[] = [];\r\n this.WeekDays.forEach((val: any) => {\r\n switch (String(val.value).toLowerCase()) {\r\n case 'sunday': weekday.push(RRule.SU); break;\r\n case 'monday': weekday.push(RRule.MO); break;\r\n case 'tuesday': weekday.push(RRule.TU); break;\r\n case 'wednesday': weekday.push(RRule.WE); break;\r\n case 'thursday': weekday.push(RRule.TH); break;\r\n case 'friday': weekday.push(RRule.FR); break;\r\n case 'saturday': weekday.push(RRule.SA); break;\r\n default: console.log('Wrong value passed on functio - GetRRuleWeekDays -> ', JSON.stringify(this.WeekDays)); break;\r\n }\r\n });\r\n return weekday;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n\r\n GetWeekDayFromRRuleWeekDays(frequency: Frequency, weekDays: ByWeekday[]): (any[] | null) {\r\n if (frequency == Frequency.WEEKLY) {\r\n let weekday: any[] = [];\r\n weekDays.forEach((val: any) => {\r\n switch (val.toString().toUpperCase()) {\r\n case \"SU\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'sunday')); break;\r\n case \"MO\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'monday')); break;\r\n case \"TU\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'tuesday')); break;\r\n case \"WE\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'wednesday')); break;\r\n case \"TH\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'thursday')); break;\r\n case \"FR\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'friday')); break;\r\n case \"SA\": weekday.push(this.weekOptions.find((o: any) => String(o.value).toLowerCase() == 'saturday')); break;\r\n default: console.log('Wrong value passed on functio - GetRRuleWeekDays -> ', JSON.stringify(val.toString())); break;\r\n }\r\n });\r\n console.log('weekday', JSON.stringify(weekday));\r\n return weekday;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n\r\n //#endregion methods\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [RruleComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonModule,\r\n StyleClassModule,\r\n DividerModule,\r\n ButtonModule,\r\n RadioButtonModule,\r\n CalendarModule,\r\n InputNumberModule,\r\n DialogModule,\r\n DropdownModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [RruleComponent]\r\n})\r\nexport class RruleComponentModule {\r\n}\r\n","\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n

\r\n {{ 'Shared.RRULE.HEADER_REPEATSEVERY' | translate }}\r\n

\r\n
\r\n \r\n \r\n
{{MonthDays.name}}
\r\n
\r\n \r\n
{{monthDays.name}}
\r\n
\r\n
\r\n \r\n {{ 'Shared.RRULE.SPAN_DAYOFTHEMONTH' | translate }}\r\n \r\n
\r\n
\r\n \r\n\r\n

\r\n {{ 'Shared.RRULE.HEADER_STOPCONDITIONS' | translate }}\r\n

\r\n\r\n \r\n\r\n
    \r\n
  • \r\n \r\n \r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n
  • \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
","import { CommonModule, DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppointmentService, AppointmentTypesService, TimeconversionService } from '@fitness-force/api';\r\nimport { AppErrors, ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { AppointmentType, AppointmentTypeById, CreateAppointmentRequest, CreateRecurringAppointmentRequest, RepeatRuleResponse, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { AssignedToComponentModule, ErrorsComponentModule, FactoryHttpLoader, RruleComponentModule } from '@fitness-force/shared';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { COMPANY_INFO, STAFF_STATE, APPOINTMENT_TYPE_STATE, ROOM_LIST_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { MiniSearchComponentModule } from '../../../search/mini-search/mini-search.component';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport {MbscCalendarEvent} from '@mobiscroll/angular';\r\nimport { Ienum, ScheduleType, StaffStatus } from '@fitness-force/enum';\r\nimport { timeLineService } from 'libs/shared/src/lib/filters/timeline.pipe';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'book-appointment',\r\n templateUrl: './book-appointment.component.html',\r\n styleUrls: ['./book-appointment.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class BookAppointmentComponent implements OnInit {\r\n\r\n @Input('visible') showBookAppointment: boolean = false;\r\n @Input('tenantId') tenantId: number =0;\r\n @Input('startDateTime') startDateTime: string;\r\n @Output('CloseBookAppointment') hideBookAppointment: EventEmitter = new EventEmitter();\r\n @Output('appointmentEvent') appointmentEvent: EventEmitter = new EventEmitter();\r\n @Output('reloadData') reloadData: EventEmitter =new EventEmitter();\r\n\r\n CreateAppointmentForm: FormGroup = new FormGroup({});\r\n apptTypeToShow:number=5;\r\n selectedApptType:AppointmentType;\r\n selectedApptSubType:Observable | any;\r\n isVirtal:boolean=false;\r\n showRRule: boolean = false;\r\n RRuleObject = {};\r\n selectedclient:any;\r\n\r\n showApptSubType= new BehaviorSubject(false);\r\n selectedRoom: { name: string } | any;\r\n selectedTrainer: {name: string, availability: string, ff_picture: string} | undefined\r\n getAccessedStaffList$: Observable | any;\r\n appointmentTypeList$= new BehaviorSubject([]);\r\n appointmentSubTypeList$ = new BehaviorSubject([]);\r\n roomList$: Observable | any;\r\n\r\n errorDataModal = [] as any;\r\n errorMessages = [] as any;\r\n showErrorPopup$ = new BehaviorSubject(false);\r\n minimumDate = new Date();\r\n\r\n currentTenant:Observable | any;\r\n disableSaveBtn:boolean= false;\r\n error = new BehaviorSubject(null as (AppErrors | null));\r\n filterStaffIds = new BehaviorSubject([0]);\r\n \r\n constructor(\r\n private http: HttpClient,\r\n private store: Store,\r\n private translate: TranslateService,\r\n private fb: FormBuilder,\r\n private apptTypeService:AppointmentTypesService,\r\n private timeConversionService : TimeconversionService,\r\n public datePipe: DatePipe,\r\n public appointmentService: AppointmentService,\r\n private messageService: MessageService,\r\n private router: Router\r\n \r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n \r\n componentInit() {\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.currentTenant= tenant.selected_tenant;\r\n });\r\n\r\n this.CreateAppointmentForm = this.fb.group({\r\n client_id:['',[Validators.required]],\r\n startDate: [this.startDateTime, [Validators.required]],\r\n startTime: [this.startDateTime, [Validators.required]],\r\n selectedTrainer:['',[Validators.required]],\r\n selectedRoom:[''],\r\n virtualUrl:[''],\r\n comments: [''],\r\n });\r\n\r\n this.GetAppointmentTypes();\r\n this.GetStaffs();\r\n this.GetRooms();\r\n }\r\n\r\n GetAppointmentTypes()\r\n {\r\n this.store.select(APPOINTMENT_TYPE_STATE).subscribe((responseData: AppointmentType[]) => {\r\n this.appointmentTypeList$.next(responseData.filter(appt =>appt.status.toLowerCase() =='active'));\r\n if(this.appointmentTypeList$.value.length > 0)\r\n {\r\n this.selectedApptType = responseData[0];\r\n if(this.selectedApptType.is_room_mandatory)\r\n {\r\n this.SelectedRoomFormControl.setValidators(Validators.required);\r\n this.SelectedRoomFormControl.updateValueAndValidity();\r\n }\r\n this.GetAppointmentSubTypes(this.appointmentTypeList$.value[0].id);\r\n }\r\n });\r\n }\r\n\r\n GetAppointmentSubTypes(appointmentTypeId:number)\r\n {\r\n this.apptTypeService.getSingleAppointmentType(this.tenantId,appointmentTypeId).subscribe({\r\n next: (response: AppointmentTypeById) => {\r\n this.appointmentSubTypeList$.next(response.subtypes);\r\n if(response.subtypes)\r\n {\r\n this.selectedApptSubType = response.subtypes[0];\r\n this.showApptSubType.next(true);\r\n }\r\n else{\r\n this.selectedApptSubType = null;\r\n this.showApptSubType.next(false);\r\n }\r\n },\r\n error: (error) => {\r\n this.selectedApptSubType= null;\r\n this.showApptSubType.next(false);\r\n },\r\n });\r\n }\r\n\r\n GetStaffs()\r\n {\r\n this.store.select(STAFF_STATE).subscribe((data: any) => {\r\n if (data && data.staffList && data.staffList.length > 0)\r\n {\r\n let validStaff: number[] = [];\r\n this.getAccessedStaffList$ = data.staffList.filter((staff: any) => \r\n { \r\n let oStaffStatus = this.OStaffStatus.find((o: any) => (o.value == staff.status || o.key == staff.status));\r\n if(oStaffStatus!.value == StaffStatus.Active || oStaffStatus!.key == StaffStatus.Active && staff.can_take_appointment)\r\n {\r\n validStaff.push(staff.id);\r\n return staff;\r\n }\r\n });\r\n this.filterStaffIds.next(validStaff);\r\n }\r\n });\r\n }\r\n\r\n GetRooms()\r\n {\r\n this.store.select(ROOM_LIST_STATE).subscribe((responseData) => {\r\n this.roomList$ = responseData;\r\n });\r\n }\r\n\r\n SelectAppointmentType(apptType:any)\r\n {\r\n this.selectedApptType= apptType;\r\n this.GetAppointmentSubTypes(apptType.id);\r\n }\r\n\r\n getSelectedColor(apptType: any) {\r\n return `border-${apptType.color}-400 bg-${apptType.color}-50 text-${apptType.color}-400 font-bold`;\r\n }\r\n\r\n SetIsVirtual(isVirtual:boolean)\r\n {\r\n this.isVirtal=isVirtual;\r\n if(isVirtual){\r\n this.SelectedRoomFormControl.setValidators(null);\r\n this.SelectedRoomFormControl.setValue(null);\r\n } \r\n else {\r\n this.SelectedRoomFormControl.setValidators(this.selectedApptType.is_room_mandatory ? Validators.required : null);\r\n this.VirtualUrlFormControl.setValidators(null);\r\n this.VirtualUrlFormControl.setValue(null);\r\n }\r\n\r\n this.SelectedRoomFormControl.updateValueAndValidity();\r\n this.VirtualUrlFormControl.updateValueAndValidity();\r\n }\r\n\r\n HideRRule(e: any): void {\r\n this.showRRule = e;\r\n }\r\n\r\n FetchRRuleData(e: any): void {\r\n this.RRuleObject.RRule = e.RRule;\r\n this.RRuleObject.RRuleText=e.RRuleText;\r\n }\r\n\r\n setClient(e: any) {\r\n if (e && e.clt_id > 0) {\r\n this.selectedclient =e;\r\n this.SelectedClientFormControl.setValue(e.clt_id);\r\n }\r\n else {\r\n this.selectedclient =null;\r\n this.SelectedClientFormControl.setValue(null);\r\n }\r\n this.SelectedClientFormControl.updateValueAndValidity();\r\n }\r\n\r\n CreateAppointment(form:FormGroup)\r\n {\r\n if(this.CreateAppointmentForm.valid)\r\n {\r\n this.disableSaveBtn= true;\r\n let createAppointment: CreateAppointmentRequest = {} as CreateAppointmentRequest;\r\n let createRecurringAppointment:CreateRecurringAppointmentRequest ={} as CreateRecurringAppointmentRequest;\r\n \r\n createAppointment.appointment_type_id= this.selectedApptType.id;\r\n createAppointment.client_id=form.value.client_id;\r\n createAppointment.coach_id= form.value.selectedTrainer.id;\r\n createAppointment.comments= form.value.comments;\r\n createAppointment.is_virtual= this.isVirtal;\r\n createAppointment.virtual_url= form.value.virtualUrl;\r\n createAppointment.room_id= form.value.selectedRoom ? form.value.selectedRoom.id: 0,\r\n createAppointment.start_date_time= this.timeConversionService.GetUTCDateTimeByDateAndTime(form.value.startDate,form.value.startTime);\r\n createAppointment.subtype_id= this.selectedApptSubType ? this.selectedApptSubType.id : 0;\r\n createRecurringAppointment = createAppointment;\r\n if(this.RRuleObject.RRule)\r\n {\r\n createRecurringAppointment.recurring_rule = this.RRuleObject.RRule;\r\n createRecurringAppointment.recurring_start_date = createAppointment.start_date_time;\r\n createRecurringAppointment.start_time= this.timeConversionService.GetUTCTimeFromDate(form.value.startTime);\r\n \r\n this.appointmentService.CreateRecurringAppointment(this.tenantId, createRecurringAppointment).subscribe({\r\n next: async (response: any) => {\r\n this.translate\r\n .get('SCHEDULE.MSG.CREATE_RECURRING_APPT_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n\r\n if(response.info && response.info.length > 0)\r\n {\r\n response.info.forEach((info: any) => {\r\n this.translate.get('SCHEDULE.MSG.OVERLAP_MESSAGE',\r\n { type:info.jsonObject.identifier,\r\n startDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.startDateTime), 'medium'),\r\n endDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.endDateTime),'medium')})\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'warn',\r\n summary: 'warn',\r\n detail: translation,\r\n });\r\n });\r\n })\r\n }\r\n this.reloadData.emit(true);\r\n await this.timeout(1000);\r\n this.hideBookAppointment.emit(false);\r\n },\r\n error: (error) => {\r\n this.disableSaveBtn= false;\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n else\r\n {\r\n this.appointmentService.CreateAppointment(this.tenantId,createAppointment).subscribe({\r\n next: async (response: any) => {\r\n this.translate.get('SCHEDULE.MSG.CREATE_APPT_MSG').subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n\r\n if(response.info && response.info[0])\r\n {\r\n let info = response.info[0];\r\n this.translate.get('SCHEDULE.MSG.OVERLAP_MESSAGE',\r\n { type:info.jsonObject.identifier,\r\n startDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.startDateTime), 'medium'),\r\n endDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.endDateTime),'medium')})\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'warn',\r\n summary: 'warn',\r\n detail: translation,\r\n });\r\n });\r\n }\r\n this.reloadData.emit(true);\r\n await this.timeout(1000);\r\n this.hideBookAppointment.emit(false);\r\n },\r\n error: (error) => {\r\n this.disableSaveBtn= false;\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n }\r\n else{\r\n Object.keys(this.CreateAppointmentForm.controls).forEach((field) => {\r\n const control = this.CreateAppointmentForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n }\r\n }\r\n\r\n \r\n handleError(error: any) {\r\n this.error.next(error);\r\n this.showErrorPopup$.next(true);\r\n }\r\n\r\n timeout(ms:any ) {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup$?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n GoToAppointment()\r\n {\r\n this.router.navigate(['/admin/appointment-categories/create-appointment-category']);\r\n }\r\n\r\n\r\n ClosePopup() {\r\n this.showBookAppointment = false;\r\n this.CreateAppointmentForm.reset();\r\n this.hideBookAppointment.emit(this.showBookAppointment);\r\n }\r\n\r\n get SelectedAssignedFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.selectedTrainer as FormControl;\r\n }\r\n\r\n get GetSelectedRoom(): any {\r\n return this.CreateAppointmentForm.controls.selectedRoom.value;\r\n }\r\n\r\n get StartDateFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.startDate as FormControl;\r\n }\r\n\r\n get StartTimeFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.startTime as FormControl;\r\n }\r\n\r\n get SelectedRoomFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.selectedRoom as FormControl;\r\n }\r\n\r\n get VirtualUrlFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.virtualUrl as FormControl;\r\n }\r\n\r\n get SelectedClientFormControl(): FormControl {\r\n return this.CreateAppointmentForm.controls.client_id as FormControl;\r\n }\r\n\r\n get OStaffStatus(): Ienum[] {\r\n return Object.entries(StaffStatus).filter(key => typeof key[1] != 'number').map(([key, value]) => ({ key, value }));\r\n }\r\n \r\n}\r\n\r\n\r\n@NgModule({\r\n declarations: [BookAppointmentComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n DialogModule,\r\n InputTextModule,\r\n ButtonModule,\r\n CalendarModule,\r\n InputTextareaModule,\r\n DropdownModule,\r\n FormsModule,\r\n DividerModule,\r\n AvatarModule,\r\n StyleClassModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RruleComponentModule,\r\n MiniSearchComponentModule,\r\n AssignedToComponentModule,\r\n ErrorsComponentModule,\r\n ErrorMsgComponentModule,\r\n ToastModule,\r\n MessagesModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n providers: [\r\n DatePipe,\r\n ],\r\n exports: [BookAppointmentComponent]\r\n})\r\nexport class BookAppointmentComponentModule {\r\n}\r\n\r\n\r\n","\r\n\r\n\r\n\r\n\r\n \r\n
\r\n

{{'SCHEDULE.CREATEAPPOINTMENT.BOOK_APPOINTMENT' | translate}}

\r\n
\r\n
\r\n \r\n {{currentTenant.name_primary_language || currentTenant.name_secondary_language }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
0; else noApptShow\">\r\n \r\n \r\n \r\n
...{{appointmentTypeList$.value.length - apptTypeToShow}} {{'SCHEDULE.CREATEAPPOINTMENT.MORE' | translate}}
\r\n
{{'SCHEDULE.CREATEAPPOINTMENT.LOAD_MORE' | translate}}
\r\n
\r\n \r\n
\r\n \r\n \r\n
{{'SCHEDULE.CREATEAPPOINTMENT.NO_APPT_INFO' | translate}}\r\n {{'SCHEDULE.CREATEAPPOINTMENT.ADD_APPT' | translate}}\r\n \r\n   {{'SCHEDULE.CREATEAPPOINTMENT.NO_APPT_INFO1' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
{{'SCHEDULE.CREATEAPPOINTMENT.REPEAT' | translate}}
\r\n
\r\n
\r\n \r\n
{{RRuleObject.RRuleText}}
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
{{GetSelectedRoom.name_primary_language}}
\r\n
\r\n \r\n
{{room.name_primary_language}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule, DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n} from '@angular/core';\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppErrors, ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { BreadcrumbModule } from 'primeng/breadcrumb';\r\nimport { ErrorsComponentModule } from '../../../errors/errors.component';\r\nimport { FactoryHttpLoader } from '../../../helpsupport/helpsupport.component';\r\nimport { RruleComponentModule } from '../../../rrule/rrule.component';\r\nimport { MiniSearchComponentModule } from '../../../search/mini-search/mini-search.component';\r\nimport { AssignedToComponentModule } from '../../../staff/assigned-to/assigned-to.component';\r\nimport {\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n FooterComponentModule,\r\n} from '@fitness-force/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport {\r\n ClassType,\r\n ClassTypeById,\r\n CreateClassRequest,\r\n CreateRecurringClassRequest,\r\n RepeatRuleResponse,\r\n Room,\r\n TENANTSINTERFACE,\r\n TENANT_MODEL,\r\n} from '@fitness-force/models';\r\nimport { FETCHED_TENANT_DETAILS } from 'apps/ff-frontend/src/app/state/actions';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n CLASS_TYPE_STATE,\r\n ROOM_LIST_STATE,\r\n STAFF_STATE,\r\n TENANTS_INFO,\r\n} from 'apps/ff-frontend/src/app/state/app.state';\r\nimport {\r\n ClassTypeService,\r\n ClassService,\r\n TimeconversionService,\r\n} from '@fitness-force/api';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { GooglePlacesComponentModule } from '../../../google-places/google-places.component';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { MessageService } from 'primeng/api';\r\nimport { BreadcrumbComponentModule } from '../../../breadcrumb/breadcrumb.component';\r\nimport { Ienum, StaffStatus } from '@fitness-force/enum';\r\n\r\n@Component({\r\n selector: 'create-class',\r\n templateUrl: './create-class.component.html',\r\n styleUrls: ['./create-class.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class CreateClassComponent implements OnInit {\r\n getAccessTenantList$: Observable | any;\r\n showClssSubType = new BehaviorSubject(false);\r\n getAccessedStaffList$: Observable | any;\r\n classTypeList$ = new BehaviorSubject([]);\r\n classSubTypeList$ = new BehaviorSubject([]);\r\n roomList$ = new BehaviorSubject([]);\r\n\r\n selectedClassType: Observable | any;\r\n selectedClassSubType: Observable | any;\r\n\r\n selectedTrainerId = new BehaviorSubject(0);\r\n selectedBehaviourType: any;\r\n selectedRoom: { name: string } | any;\r\n selectedTrainer:| { name: string; availability: string; ff_picture: string }| undefined;\r\n\r\n classTypeToShow: number = 5;\r\n createClassForm: FormGroup = new FormGroup({});\r\n minimumDate = new Date();\r\n RRuleObject = {};\r\n selectedLocation: { name: string; lat: number; lon: number } | any = {};\r\n isVirtal: boolean = false;\r\n\r\n showMaxCapacityInput: boolean = false;\r\n showMaxWaitlistInput: boolean = false;\r\n showRRule: boolean = false;\r\n\r\n errorDataModal = [] as any;\r\n errorMessages = [] as any;\r\n showErrorPopup$ = new BehaviorSubject(false);\r\n tenantId: number;\r\n\r\n disableSaveBtn:boolean= false;\r\n error = new BehaviorSubject(null as (AppErrors | null));\r\n filterStaffIds = new BehaviorSubject([0]);\r\n\r\n constructor(\r\n private store: Store,\r\n private router: Router,\r\n private translate: TranslateService,\r\n private fb: FormBuilder,\r\n private classTypeService: ClassTypeService,\r\n private classService: ClassService,\r\n private timeConversionService: TimeconversionService,\r\n public datePipe: DatePipe,\r\n private messageService: MessageService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n\r\n componentInit() {\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n }\r\n });\r\n this.LoadForm();\r\n this.GetClassTypes();\r\n this.GetRooms();\r\n this.GetStaffs();\r\n }\r\n\r\n LoadForm() {\r\n const reg = '(https?://)?([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?';\r\n this.createClassForm = this.fb.group({\r\n classType: [''],\r\n classSubType: [''],\r\n selectedBehaviourType: [''],\r\n selectedTrainer: ['', [Validators.required]],\r\n startDate: ['', [Validators.required]],\r\n startTime: ['', [Validators.required]],\r\n selectedRoom: [''],\r\n comments: [''],\r\n virtualUrl: ['', [Validators.pattern(reg)]],\r\n maxCapacity: [],\r\n maxWaitlist: [],\r\n isDropInAllowed: [false],\r\n rRule: [''],\r\n placeName: [''],\r\n placeId: [''],\r\n latitude: [''],\r\n longitude: [''],\r\n });\r\n }\r\n\r\n GetClassTypes() {\r\n this.store.select(CLASS_TYPE_STATE).subscribe((response: ClassType[]) => {\r\n this.classTypeList$.next(response.filter((cls) => cls.status.toLowerCase() == 'active'));\r\n if (this.classTypeList$.value.length > 0) {\r\n this.selectedClassType = this.classTypeList$.value[0];\r\n this.ClassTypeFormControl.setValue(this.selectedClassType);\r\n if(this.selectedClassType.is_room_mandatory)\r\n {\r\n this.SelectedRoomFormControl.setValidators(Validators.required);\r\n this.SelectedRoomFormControl.updateValueAndValidity();\r\n }\r\n this.GetClassType(this.classTypeList$.value[0].id);\r\n }\r\n });\r\n }\r\n\r\n get classTypes$(): Observable {\r\n return this.classTypeList$;\r\n }\r\n\r\n GetRooms() {\r\n this.store.dispatch({ type: 'FETCH_ROOM_LIST' });\r\n this.store.select(ROOM_LIST_STATE).subscribe((responseData: Room[]) => {\r\n this.roomList$.next(responseData);\r\n });\r\n }\r\n\r\n SelectClassType(classType: any) {\r\n if (classType && classType.value) this.selectedClassType = classType.value;\r\n else this.selectedClassType = classType;\r\n this.ClassTypeFormControl.setValue(this.selectedClassType);\r\n if(this.selectedClassType.is_room_mandatory)\r\n {\r\n this.SelectedRoomFormControl.setValidators(Validators.required);\r\n this.SelectedRoomFormControl.updateValueAndValidity();\r\n }\r\n this.GetClassType(this.selectedClassType.id);\r\n }\r\n\r\n GetClassType(classTypeId: number) {\r\n this.classTypeService\r\n .getSingleClassType(this.tenantId, classTypeId)\r\n .subscribe({\r\n next: (response: ClassTypeById) => {\r\n if (response.subtypes) {\r\n this.classSubTypeList$.next(response.subtypes);\r\n this.selectedClassSubType = response.subtypes[0];\r\n this.ClassSubTypeFormControl.setValue(this.selectedClassSubType);\r\n this.showClssSubType.next(true);\r\n } else {\r\n this.selectedClassSubType = null;\r\n this.showClssSubType.next(false);\r\n }\r\n },\r\n error: () => {\r\n this.selectedClassSubType = null;\r\n this.showClssSubType.next(false);\r\n },\r\n });\r\n }\r\n\r\n getSelectedTenant(selected_tenant: TENANT_MODEL): void {\r\n this.tenantId = selected_tenant.id;\r\n localStorage.setItem('TENANT_DEFAULT', selected_tenant.id.toString());\r\n this.store.dispatch(FETCHED_TENANT_DETAILS({ selected_tenant }));\r\n this.store.dispatch({ type: 'FETCH_STAFF_LIST' });\r\n this.router.navigate(['/crm/sales-pipeline'], {\r\n queryParams: { tenant: selected_tenant.id },\r\n });\r\n }\r\n\r\n GetStaffs()\r\n {\r\n this.store.select(STAFF_STATE).subscribe((data: any) => {\r\n if (data && data.staffList && data.staffList.length > 0)\r\n {\r\n let validStaff: number[] = [];\r\n this.getAccessedStaffList$ = data.staffList.filter((staff: any) => \r\n { \r\n let oStaffStatus = this.OStaffStatus.find((o: any) => (o.value == staff.status || o.key == staff.status));\r\n if(oStaffStatus!.value == StaffStatus.Active || oStaffStatus!.key == StaffStatus.Active && staff.can_take_class)\r\n {\r\n validStaff.push(staff.id);\r\n return staff;\r\n }\r\n });\r\n this.filterStaffIds.next(validStaff);\r\n }\r\n });\r\n }\r\n\r\n getPlaceDetails(place: any) {\r\n this.selectedLocation.name = place.formatted_address;\r\n this.selectedLocation.lat = place.geometry.location.lat();\r\n this.selectedLocation.lon = place.geometry.location.lng();\r\n this.PlaceNameControl.setValue(this.selectedLocation.name);\r\n this.PlaceIdFormControl.setValue(place.place_id);\r\n this.LatitudeFormControl.setValue(this.selectedLocation.lat);\r\n this.LongitudeFormControl.setValue(this.selectedLocation.lon);\r\n }\r\n\r\n SetIsVirtual(isVirtual: boolean) {\r\n this.isVirtal = isVirtual;\r\n if (isVirtual) {\r\n this.SelectedRoomFormControl.setValidators(null);\r\n this.SelectedRoomFormControl.setValue(null);\r\n } else {\r\n this.SelectedRoomFormControl.setValidators(this.selectedClassType.is_room_mandatory ? Validators.required : null);\r\n this.VirtualUrlFormControl.setValidators(null);\r\n this.VirtualUrlFormControl.setValue(null);\r\n }\r\n this.SelectedRoomFormControl.updateValueAndValidity();\r\n this.VirtualUrlFormControl.updateValueAndValidity();\r\n }\r\n\r\n toggleMaxCapacity(event: boolean) {\r\n this.showMaxCapacityInput = event;\r\n if (event) this.MaxCapacityFormControl.setValidators(Validators.required);\r\n else this.MaxCapacityFormControl.clearValidators();\r\n\r\n this.MaxCapacityFormControl.updateValueAndValidity()\r\n this.createClassForm.updateValueAndValidity();\r\n }\r\n\r\n toggleMaxWaitlist(event: boolean) {\r\n this.showMaxWaitlistInput = event;\r\n if (event) this.MaxWaitListFormControl.setValidators(Validators.required);\r\n else this.MaxWaitListFormControl.clearValidators();\r\n\r\n this.MaxWaitListFormControl.updateValueAndValidity()\r\n this.createClassForm.updateValueAndValidity();\r\n }\r\n\r\n FetchRRuleData(e: any): void {\r\n this.RRuleObject.RRule = e.RRule;\r\n this.RRuleObject.RRuleText = e.RRuleText;\r\n }\r\n\r\n HideRRule(e: any): void {\r\n this.showRRule = e;\r\n }\r\n\r\n HideErrorPopup() {\r\n this.showErrorPopup$?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n getSelectedColor(classType: any) {\r\n return `border-${classType.color}-400 bg-${classType.color}-50 text-${classType.color}-400 font-bold`;\r\n }\r\n\r\n\r\n \r\n CreateClass(form: FormGroup) {\r\n\r\n if(this.createClassForm.valid)\r\n {\r\n this.disableSaveBtn= true;\r\n let createClassRequest: CreateClassRequest = {} as CreateClassRequest;\r\n let createRecurringClassRequest: CreateRecurringClassRequest = {} as CreateRecurringClassRequest;\r\n createClassRequest.class_type_id = this.selectedClassType.id;\r\n createClassRequest.coach_id = form.value.selectedTrainer.id;\r\n createClassRequest.comments = form.value.comments;\r\n createClassRequest.is_virtual = this.isVirtal;\r\n createClassRequest.virtual_url = form.value.virtualUrl;\r\n (createClassRequest.room_id = form.value.selectedRoom? form.value.selectedRoom.id: 0),\r\n (createClassRequest.start_date_time = this.timeConversionService.GetUTCDateTimeByDateAndTime(form.value.startDate,form.value.startTime));\r\n createClassRequest.sub_type_id = this.selectedClassSubType? this.selectedClassSubType.id: 0;\r\n createClassRequest.is_dropin_allowed = form.value.isDropInAllowed;\r\n createClassRequest.place_id = form.value.placeId;\r\n createClassRequest.latitude = form.value.latitude ? form.value.latitude : 0;\r\n createClassRequest.longitude = form.value.longitude? form.value.longitude: 0;\r\n createClassRequest.max_capacity = form.value.maxCapacity ? form.value.maxCapacity: 0;\r\n createClassRequest.max_waitlist = form.value.maxWaitlist ? form.value.maxWaitlist: 0;createRecurringClassRequest = createClassRequest;\r\n \r\n if (this.RRuleObject.RRule) {\r\n createRecurringClassRequest.recurring_rule = this.RRuleObject.RRule;\r\n createRecurringClassRequest.start_date = createClassRequest.start_date_time;\r\n createRecurringClassRequest.start_time = this.timeConversionService.GetUTCTimeFromDate(form.value.startTime);\r\n \r\n this.classService.CreateRecurringClass(this.tenantId, createRecurringClassRequest).subscribe({\r\n next: async (response: any) => {\r\n this.translate\r\n .get('SCHEDULE.VIEWCLASS.MSG.CREATE_RECURRING_CLASS_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n if(response.info && response.info.length > 0)\r\n {\r\n response.info.forEach((info: any) => {\r\n this.translate.get('SCHEDULE.MSG.OVERLAP_MESSAGE',\r\n { type:info.jsonObject.identifier,\r\n startDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.startDateTime), 'medium'),\r\n endDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.endDateTime),'medium')})\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'warn',\r\n summary: 'warn',\r\n detail: translation,\r\n });\r\n });\r\n })\r\n }\r\n await this.timeout(1000);\r\n this.router.navigateByUrl('/schedule');\r\n },\r\n error: (error) => {\r\n this.disableSaveBtn= false;\r\n this.handleError(error);\r\n },\r\n });\r\n } else {\r\n this.classService.CreateClass(this.tenantId, createClassRequest)\r\n .subscribe({\r\n next: async (response: any) => {\r\n this.translate\r\n .get('SCHEDULE.VIEWCLASS.MSG.CREATE_CLASS_MSG')\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary: 'Success',\r\n detail: translation,\r\n });\r\n });\r\n if(response.info && response.info[0])\r\n {\r\n let info = response.info[0];\r\n this.translate.get('SCHEDULE.MSG.OVERLAP_MESSAGE',\r\n { type:info.jsonObject.identifier,\r\n startDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.startDateTime), 'medium'),\r\n endDate: this.timeConversionService.formatDate(this.timeConversionService.ConvertUTCToLocalDateTime(info.jsonObject.endDateTime),'medium')})\r\n .subscribe((translation) => {\r\n this.messageService.add({\r\n severity: 'warn',\r\n summary: 'warn',\r\n detail: translation,\r\n });\r\n });\r\n }\r\n await this.timeout(1000);\r\n this.router.navigateByUrl('/schedule');\r\n },\r\n error: (error) => {\r\n this.disableSaveBtn= false;\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n }\r\n else{\r\n Object.keys(this.createClassForm.controls).forEach((field) => {\r\n const control = this.createClassForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n }\r\n \r\n }\r\n\r\n handleError(error: any) {\r\n this.error.next(error);\r\n this.showErrorPopup$.next(true);\r\n }\r\n\r\n\r\n GoToFitnessCalendar()\r\n {\r\n this.router.navigate(['/schedule']);\r\n }\r\n\r\n GoToClassType()\r\n {\r\n this.router.navigate(['/admin/class-categories/create-class-category']);\r\n }\r\n\r\n timeout(ms:any ) {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n\r\n get ClassTypeFormControl(): FormControl {\r\n return this.createClassForm.controls.classType as FormControl;\r\n }\r\n\r\n get ClassSubTypeFormControl(): FormControl {\r\n return this.createClassForm.controls.classSubType as FormControl;\r\n }\r\n\r\n\r\n get StartDateFormControl(): FormControl {\r\n return this.createClassForm.controls.startDate as FormControl;\r\n }\r\n\r\n get GetStartDateFormValue(): any {\r\n return this.createClassForm.controls.startDate.value;\r\n }\r\n\r\n get StartTimeFormControl(): FormControl {\r\n return this.createClassForm.controls.startTime as FormControl;\r\n }\r\n\r\n get GetStartTimeFormValue(): any {\r\n return this.createClassForm.controls.startTime.value;\r\n }\r\n\r\n get MaxCapacityFormControl(): FormControl {\r\n return this.createClassForm.controls.maxCapacity as FormControl;\r\n }\r\n\r\n get GetMaxCapacityFormValue(): any {\r\n return this.createClassForm.controls.maxCapacity.value;\r\n }\r\n\r\n get MaxWaitListFormControl(): FormControl {\r\n return this.createClassForm.controls.maxWaitlist as FormControl;\r\n }\r\n\r\n get GetMaxWaitListFormValue(): any {\r\n return this.createClassForm.controls.maxWaitlist.value;\r\n }\r\n\r\n get SelectedTrainerFormControl(): FormControl {\r\n return this.createClassForm.controls.selectedTrainer as FormControl;\r\n }\r\n\r\n get GetSelectedTrainerFormValue(): any {\r\n return this.createClassForm.controls.selectedTrainer.value;\r\n }\r\n\r\n get SelectedRoomFormControl(): FormControl {\r\n return this.createClassForm.controls.selectedRoom as FormControl;\r\n }\r\n get GetSelectedRoomFormValue(): any {\r\n return this.createClassForm.controls.selectedRoom.value;\r\n }\r\n\r\n get CommentsFormControl(): FormControl {\r\n return this.createClassForm.controls.comments as FormControl;\r\n }\r\n\r\n get GetCommentsFormValue(): any {\r\n return this.createClassForm.controls.comments.value;\r\n }\r\n\r\n get VirtualUrlFormControl(): FormControl {\r\n return this.createClassForm.controls.virtualUrl as FormControl;\r\n }\r\n\r\n get GetVirtualUrlFormValue(): any {\r\n return this.createClassForm.controls.virtualUrl.value;\r\n }\r\n\r\n get DropInFormControl(): FormControl {\r\n return this.createClassForm.controls.isDropInAllowed as FormControl;\r\n }\r\n\r\n get GetDropInFormValue(): any {\r\n return this.createClassForm.controls.isDropInAllowed.value;\r\n }\r\n\r\n get PlaceIdFormControl(): FormControl {\r\n return this.createClassForm.controls.placeId as FormControl;\r\n }\r\n\r\n get LongitudeFormControl(): FormControl {\r\n return this.createClassForm.controls.longitude as FormControl;\r\n }\r\n\r\n get LatitudeFormControl(): FormControl {\r\n return this.createClassForm.controls.latitude as FormControl;\r\n }\r\n\r\n get PlaceNameControl(): FormControl {\r\n return this.createClassForm.controls.placeName as FormControl;\r\n }\r\n\r\n get GetSelectedBehaviour(): any {\r\n return this.createClassForm.controls.selectedBehaviourType.value;\r\n }\r\n\r\n get GetSelectedClassSubType(): any {\r\n return this.createClassForm.controls.classSubType.value;\r\n }\r\n\r\n get isFormValid(): boolean {\r\n this.createClassForm.updateValueAndValidity();\r\n return this.createClassForm.valid;\r\n }\r\n \r\n get OStaffStatus(): Ienum[] {\r\n return Object.entries(StaffStatus).filter(key => typeof key[1] != 'number').map(([key, value]) => ({ key, value }));\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [CreateClassComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n DialogModule,\r\n InputTextModule,\r\n ButtonModule,\r\n CalendarModule,\r\n InputTextareaModule,\r\n DropdownModule,\r\n DividerModule,\r\n AvatarModule,\r\n StyleClassModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n RruleComponentModule,\r\n MiniSearchComponentModule,\r\n AssignedToComponentModule,\r\n ErrorsComponentModule,\r\n ErrorMsgComponentModule,\r\n ToastModule,\r\n MessagesModule,\r\n InputSwitchModule,\r\n BreadcrumbModule,\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n FooterComponentModule,\r\n RippleModule,\r\n GooglePlacesComponentModule,\r\n InputNumberModule,\r\n BreadcrumbComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n providers: [DatePipe],\r\n exports: [CreateClassComponent],\r\n})\r\nexport class CreateClassComponentModule {}\r\n\r\n\r\n","
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n

{{'SCHEDULE.CREATECLASS.SCHEDULE_CLASS' | translate}} \r\n

\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n

{{'SCHEDULE.CREATECLASS.SELECTCLASS' | translate}}

\r\n
\r\n\r\n \r\n
0; else noClassShow\" class=\"hidden md:flex align-items-center flex-wrap px-3 py-2 border-bottom-1 border-gray-300\">\r\n \r\n \r\n \r\n
...{{ classTypeList$.value.length - classTypeToShow | number}} {{'SCHEDULE.CREATEAPPOINTMENT.LOAD_MORE' | translate}}\r\n \r\n
\r\n
{{'SCHEDULE.CREATEAPPOINTMENT.LOAD_LESS' | translate}}\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
{{'SCHEDULE.CREATECLASS.NO_CLASS_INFO' | translate}}\r\n {{'SCHEDULE.CREATECLASS.ADD_CLASS' | translate}}\r\n \r\n   {{'SCHEDULE.CREATECLASS.NO_CLASS_INFO1' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n 0\" [options]=\"classTypeList$ | async\" optionLabel=\"name_primary_language\" filterBy=\"name_primary_language\"\r\n styleClass=\"w-full text-sm\" placeholder=\"{{'SCHEDULE.CREATEAPPOINTMENT.SELECTWITHDOTS' | translate}}\"\r\n formControlName=\"classType\" (onChange)=\"SelectClassType($event)\">\r\n \r\n
\r\n {{selectedClassType.name_primary_language}}\r\n \r\n
\r\n
\r\n \r\n
\r\n {{class.name_primary_language}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
{{selectedClassSubType.name_primary_language}}
\r\n
\r\n \r\n
{{subClass.name_primary_language}}
\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n

{{'SCHEDULE.CREATECLASS.REPEATINGCLSTIME' | translate}}

\r\n

{{'SCHEDULE.CREATECLASS.TIMEINFO' | translate}}

\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
{{'SCHEDULE.CREATEAPPOINTMENT.REPEAT' | translate}}
\r\n
\r\n
\r\n \r\n
{{RRuleObject.RRuleText}}
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n
{{GetSelectedRoomFormValue.name_primary_language}}
\r\n
\r\n \r\n
{{room.name_primary_language}}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
    \r\n
  • \r\n {{'SCHEDULE.CREATECLASS.DROPINALLOWED' | translate}}\r\n
  • \r\n
  • \r\n \r\n
    \r\n
    {{'SCHEDULE.CREATECLASS.LIMITCAPACITYINFO' | translate}}
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n \r\n
    \r\n
    {{'SCHEDULE.CREATECLASS.LIMITWAITLISTINFO' | translate}}
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, OnChanges, SimpleChanges, Inject, LOCALE_ID, AfterViewInit } from '@angular/core';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { OmniSearchResponse, Client, PagedResults, ListClientResponse, TENANTSINTERFACE, STAGE_MASTER_MODEL } from '@fitness-force/models';\r\nimport { OmniSearchService } from 'libs/api/src/lib/omni-search.service';\r\nimport { BehaviorSubject, find, first, map, Observable, of, Subject } from 'rxjs';\r\n\r\nimport { ChipModule } from 'primeng/chip';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\n\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO, STAGE_MASTER_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { ClientService } from '@fitness-force/api';\r\nimport { ClientStatus, ElasticProviderName } from '@fitness-force/enum';\r\nimport { CommmonPipeModule } from '../../../filters/common.filter.pipe';\r\nimport { ShortNamePipeModule } from '../../../filters/name-initials.pipe';\r\n\r\n@Component({\r\n selector: 'mini-search',\r\n templateUrl: './mini-search.component.html',\r\n styleUrls: ['./mini-search.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class MiniSearchComponent implements OnInit {\r\n @Input('readonly') isReadonly: boolean = false;\r\n @Input('id') clientIds: number[] = [];\r\n @Input('clientId') clientId: number = 0;\r\n\r\n @Output('clients') clients = new EventEmitter();\r\n\r\n clientIds$ = new BehaviorSubject([]);\r\n\r\n paramNMore = { N: 0 };\r\n paramNList = { N: 0 };\r\n members$: BehaviorSubject = new BehaviorSubject([] as Client[]);\r\n selectedClients$ = new BehaviorSubject([]);\r\n subject = new Subject();\r\n showAllMembers: boolean = false;\r\n searchText: string = \"\";\r\n inputValue: string = \"\";\r\n\r\n hideSearchDropdown: boolean = true;\r\n selectedClient$ = new BehaviorSubject(null);\r\n selectedClient: any = null;\r\n stage$ = new BehaviorSubject(null);\r\n prospectParams: Map = new Map();\r\n tenantId: Number = 0;\r\n\r\n constructor(\r\n private omniSearchService: OmniSearchService,\r\n private clientService: ClientService,\r\n private store: Store,\r\n public translate: TranslateService,\r\n @Inject(LOCALE_ID) public locale: string\r\n ) {\r\n let client: Client[] = [];\r\n this.members$.next(client);\r\n }\r\n\r\n ngOnInit(): void {\r\n let companyInfoDetail$ = this.store.select(COMPANY_INFO);\r\n\r\n companyInfoDetail$.subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.paramNMore = { N: this.clientIds.length - 3 };\r\n this.paramNList = { N: this.clientIds.length };\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n if (tenant.selected_tenant.id > 0) {\r\n this.tenantId = tenant.selected_tenant.id;\r\n }\r\n });\r\n if (this.clientIds.length == 1) {\r\n this.clientId = this.clientIds[0];\r\n this.clientIds = [];\r\n }\r\n\r\n this.clientIds$.next(this.clientIds);\r\n\r\n if (this.clientIds.length > 0)\r\n this.GetCLientsByClientIds();\r\n\r\n if (this.clientId)\r\n this.GetCLientsByClientId();\r\n\r\n }\r\n\r\n GetCLientsByClientIds() {\r\n this.clientService.getProspects(this.getProspectParams, this.tenantId).subscribe((obj: PagedResults) => {\r\n if (obj && obj.items && obj.items.length) {\r\n this.selectedClients$.next(obj.items);\r\n this.clients.emit(obj.items);\r\n }\r\n });\r\n }\r\n\r\n GetCLientsByClientId() {\r\n let request = {\r\n language: this.locale,\r\n query: this.clientId.toString(),\r\n providers: [{\r\n provider_name: ElasticProviderName.Clients,\r\n pagination: { page_number: 0, page_size: 10000 }\r\n }]\r\n };\r\n\r\n this.omniSearchService.Search(request).subscribe((search: OmniSearchResponse) => {\r\n if (search && search.searchResults && search.searchResults.clients && search.searchResults.clients.items && search.searchResults.clients.items.length) {\r\n let client = search.searchResults.clients.items[0];\r\n this.selectedClient$.next(client);\r\n this.clients.emit(client);\r\n }\r\n });\r\n }\r\n\r\n searchClients(event: any) {\r\n let request = {\r\n language: this.locale,\r\n query: event.query,\r\n providers: [{\r\n provider_name: ElasticProviderName.Clients,\r\n pagination: { page_number: 0, page_size: 10000 }\r\n }]\r\n };\r\n\r\n this.omniSearchService.Search(request).subscribe({\r\n next: (response: OmniSearchResponse) => {\r\n let client = response.searchResults.clients.items;\r\n this.members$.next(client);\r\n },\r\n error(msg) {\r\n console.log('Error Getting clients: ', msg);\r\n }\r\n });\r\n }\r\n\r\n setClient(client: Client) {\r\n this.selectedClient$.next(client);\r\n this.clientId = client.clt_id;\r\n this.members$.next([]);\r\n this.clients.emit(client);\r\n }\r\n\r\n clearClient() {\r\n this.selectedClient$.next(null);\r\n this.selectedClient = null;\r\n this.clientId = 0;\r\n }\r\n\r\n get getProspectParams(): Array> {\r\n this.prospectParams = new Map();\r\n this.prospectParams.set('home_club_tenant_id', { name: \"home_club_tenant_id\", value: this.tenantId });\r\n this.prospectParams.set('Prospect', { name: \"client_status\", value: 'Prospect' });\r\n this.prospectParams.set('Client', { name: \"client_status\", value: 'Client' });\r\n this.prospectParams.set('ClientNonMember', { name: \"client_status\", value: 'ClientNonMember' });\r\n this.prospectParams.set('ExClient', { name: \"client_status\", value: 'ExClient' });\r\n\r\n this.clientIds?.forEach((v: Number, i: Number) => {\r\n this.prospectParams.set(v.toString(), { name: \"client_id\", value: v });\r\n });\r\n\r\n // this.prospectParams.set(this.clientId.toString(), { name: \"client_id\", value: this.clientId });\r\n\r\n return [...this.prospectParams.values()];\r\n }\r\n\r\n clientStatus(client: Client | null): string {\r\n if (client && (client.clt_client_status || (client as any)?.client_status))\r\n return this.clientService.getClientStatusHtml((client.clt_client_status || (client as any)?.client_status).toString());\r\n else\r\n return '';\r\n }\r\n\r\n get filteredClient(): Array {\r\n if (!this.searchText)\r\n return this.selectedClients$.value;\r\n\r\n let search = String(this.searchText).toLowerCase();\r\n return this.selectedClients$.value.filter(item => String(item.full_name).toLowerCase().indexOf(search) !== -1 || item.id == parseInt(this.searchText));\r\n }\r\n\r\n client2LetterName(name: string): string {\r\n if (name) {\r\n let nameArray: string[] = name.split(\" \");\r\n let newNameArray: string[] = [];\r\n for (let i = 0; i < nameArray.length; i++) {\r\n if (newNameArray.length >= 2)\r\n break;\r\n\r\n if (nameArray[i]) {\r\n newNameArray.push(nameArray[i]);\r\n }\r\n }\r\n return newNameArray.join(\" \");\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [MiniSearchComponent],\r\n imports: [\r\n CommonModule,\r\n StyleClassModule,\r\n FormsModule,\r\n InputTextModule,\r\n AvatarModule,\r\n ChipModule,\r\n DialogModule,\r\n AutoCompleteModule,\r\n\r\n CommmonPipeModule,\r\n ShortNamePipeModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n exports: [MiniSearchComponent]\r\n})\r\nexport class MiniSearchComponentModule {\r\n}\r\n","\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n {{selectedClient.clt_full_name}}\r\n

\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
0\"\r\n class=\"h-auto md:h-3rem md:px-4 px-2 md:py-0 py-3 flex align-items-center relative border-bottom-1 border-gray-300\">\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
3\"\r\n class=\"mt-2 md:mt-0 text-primary font-bold text-sm cursor-pointer md:text-right text-left flex align-items-center\"\r\n (click)=\"showAllMembers = true\">{{ 'Shared.SEARCH.MINI-SEARCH.N-MORE' | translate:paramNMore }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{client.clt_full_name | highlight: selectedClient}}\">\r\n \r\n \r\n CLIENT ID \r\n {{client.clt_id}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{selectedClient.clt_full_name}}\">\r\n \r\n \r\n CLIENT ID\r\n {{selectedClient.clt_id}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n

\r\n

\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{member.full_name}}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport { ServiceCategoryService } from '@fitness-force/api';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { RippleModule } from 'primeng/ripple';\r\n\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { combineLatest, Observable } from 'rxjs';\r\n\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\n\r\nimport { ToastComponentModule } from '../toast/toast.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FormBuilder,\r\n Validators,\r\n FormGroup,\r\n AbstractControl,\r\n} from '@angular/forms';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\n\r\n\r\n@Component({\r\n selector: 'service-category-create',\r\n templateUrl: './service-category-create.component.html',\r\n\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ServiceCategoryCreateComponent implements OnInit {\r\n @Input() activeCategory:any\r\n @Output() changed =new EventEmitter();\r\n @Output() close =new EventEmitter();\r\n getAccessTenantList$: Observable = new Observable();\r\n showOptions: boolean = false;\r\n tenantId: number = 0;\r\n\r\n serverCategoryForm: FormGroup;\r\n primaryLanguage!: string;\r\n secondaryLanguage!: string;\r\n isSecondaryLanguage=false;\r\n apptCatParams = new Map();\r\n\r\n constructor(\r\n private store: Store,\r\n private serviceCategoryService: ServiceCategoryService,\r\n private messageService: MessageService,\r\n private translate: TranslateService,\r\n private fb: FormBuilder,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n\r\n combineLatest([\r\n this.getAccessTenantList$,\r\n this.store.select(COMPANY_INFO),\r\n ]).subscribe({\r\n next: ([tenant, company]: any) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n if (company?.compDetails?.is_secondary_language) {\r\n this.isSecondaryLanguage = true;\r\n this.translate\r\n .get([\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase(),\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase(),\r\n ])\r\n .subscribe((translations) => {\r\n this.primaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase()\r\n ];\r\n this.secondaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase()\r\n ];\r\n });\r\n }\r\n this.loadCategory();\r\n }\r\n }});\r\n }\r\n\r\n handleError(error: any) {\r\n if (error instanceof NotFoundError) {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.PAGE_NOT_FOUND',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.PAGE_NOT_FOUND'],\r\n });\r\n });\r\n } else if (\r\n error.originalError &&\r\n error.originalError.error &&\r\n error.originalError.error[0]\r\n ) {\r\n let currentError = error.originalError.error[0];\r\n if (currentError.errorCode == 'alreadyexist') {\r\n if (\r\n currentError?.identifier &&\r\n currentError.identifier == 'name_pri_lang'\r\n )\r\n this.NamePrimary?.setErrors({\r\n duplicate: true,\r\n });\r\n else if (\r\n currentError?.identifier &&\r\n currentError.identifier == 'name_sec_lang'\r\n )\r\n this.NameSecondary?.setErrors({\r\n duplicate: true,\r\n });\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.SOMETHING_WRONG',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.SOMETHING_WRONG'],\r\n });\r\n });\r\n }\r\n }\r\n\r\n loadCategory() {\r\n if(this.activeCategory){\r\n this.serviceCategoryService\r\n .getSingleServiceCategory(this.tenantId, this.activeCategory.id)\r\n .subscribe({\r\n next: (res) => {\r\n this.activeCategory = res;\r\n this.buildEditForm();\r\n this.changeDetectorRef.detectChanges();\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }else{\r\n this.buildEditForm();\r\n }\r\n }\r\n\r\n get NamePrimary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('name_primary_language');\r\n }\r\n get NameSecondary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('name_secondary_language');\r\n }\r\n\r\n get DescriptionPrimary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('description_primary_language');\r\n }\r\n\r\n get DescriptionSecondary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('description_secondary_language');\r\n }\r\n\r\n buildEditForm() {\r\n this.serverCategoryForm = this.fb.group({\r\n name_primary_language: [\r\n this.activeCategory && this.activeCategory.name_primary_language?this.activeCategory.name_primary_language:\"\",\r\n Validators.required,\r\n ],\r\n name_secondary_language: [\r\n this.activeCategory && this.activeCategory.name_secondary_language ?this.activeCategory.name_secondary_language:\"\",\r\n\r\n ],\r\n description_primary_language: [\r\n this.activeCategory && this.activeCategory.description_primary_language?this.activeCategory.description_primary_language:\"\",\r\n ],\r\n description_secondary_language: [\r\n this.activeCategory && this.activeCategory.description_secondary_language?this.activeCategory.description_secondary_language:\"\",\r\n\r\n ],\r\n terms_condition: [\r\n this.activeCategory && this.activeCategory.terms_condition?this.activeCategory.terms_condition:\"\"\r\n ,\r\n ],\r\n terms_condition_title: [\r\n this.activeCategory && this.activeCategory.terms_condition_title\r\n ? this.activeCategory.terms_condition_title\r\n : '',\r\n ],\r\n icon: [this.activeCategory && this.activeCategory.icon ? this.activeCategory.icon : ''],\r\n });\r\n }\r\n get Icon(): AbstractControl | null {\r\n return this.serverCategoryForm.get('icon');\r\n }\r\n setIcon(icon: string) {\r\n this.Icon?.setValue(icon);\r\n }\r\n\r\n updateServiceCategory() {\r\n if (this.serverCategoryForm.valid) {\r\n let data = this.serverCategoryForm.getRawValue();\r\n if(this.activeCategory){\r\n this.serviceCategoryService\r\n .updateServiceCategory(this.tenantId, this.activeCategory.id, data)\r\n .subscribe({\r\n next: (res) => {\r\n // this.activeCategory = null;\r\n this.changed.emit(res);\r\n this.translate\r\n .get([\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE',\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary:\r\n translations['ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE'],\r\n detail:\r\n translations[\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE'\r\n ],\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }else{\r\n this.serviceCategoryService.createServiceCategory(this.tenantId,data)\r\n .subscribe({\r\n next: (res) => {\r\n this.activeCategory = null;\r\n this.changed.emit(res);\r\n // TODO: Change translation for Create ..\r\n this.translate\r\n .get([\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE',\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary:\r\n translations['ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE'],\r\n detail:\r\n translations[\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE'\r\n ],\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n\r\n\r\n }else{\r\n Object.keys(this.serverCategoryForm.controls).forEach((field) => {\r\n const control = this.serverCategoryForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n }\r\n }\r\n\r\n categoryCancel(){\r\n this.changed.emit()\r\n }\r\n closeDialog(){\r\n this.close.emit();\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ServiceCategoryCreateComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DialogModule,\r\n DividerModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ToastComponentModule,\r\n ErrorMsgComponentModule,\r\n ToastModule,\r\n InputTextareaModule\r\n\r\n ],\r\n exports: [ServiceCategoryCreateComponent],\r\n})\r\nexport class ServiceCategoryCreateComponentModule {}\r\n","
\r\n \r\n \r\n \r\n
\r\n

\r\n {{activeCategory?('ADMIN.SERVICES.SERVICE_CATEGORY_EDIT' | translate):('ADMIN.SERVICES.SERVICE_CATEGORY_ADD' | translate) }}\r\n

\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { ServiceCategoryService } from '@fitness-force/api';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { Store } from '@ngrx/store';\r\nimport {\r\n TranslateModule,\r\n TranslateLoader,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { RippleModule } from 'primeng/ripple';\r\n\r\nimport { ToastModule } from 'primeng/toast';\r\n\r\nimport { DynamicDialogModule, DynamicDialogRef } from 'primeng/dynamicdialog';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\nimport {\r\n StaffInfoComponent,\r\n StaffInfoComponentModule,\r\n} from '../staff/staff-info/staff-info.component';\r\nimport { ToastComponentModule } from '../toast/toast.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FormBuilder,\r\n Validators,\r\n FormGroup,\r\n AbstractControl,\r\n} from '@angular/forms';\r\nimport { ActionsComponent } from '../data-grid/utility/actions/actions.component';\r\nimport { DateCellComponent } from '../data-grid/utility/date-cell/date-cell.component';\r\nimport { EntityStatusComponent } from '../data-grid/utility/entity-status/entity-status.component';\r\nimport { DataGridComponentModule } from '../data-grid/data-grid.component';\r\nimport { ActionColumnComponent } from '../data-grid/utility/action-column/action-column.component';\r\nimport { NoComponentComponent } from '../data-grid/empty-state/no-component/no-component.component';\r\nimport { SkeletonModule } from 'primeng/skeleton';\r\nimport { TableModule } from 'primeng/table';\r\nimport { Status } from '@fitness-force/enum';\r\nimport { ServiceCategoryCreateComponentModule } from '../service-category-create/service-category-create.component';\r\n\r\n@Component({\r\n selector: 'service-category',\r\n templateUrl: './service-category.component.html',\r\n styleUrls: ['./service-category.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ServiceCategoryComponent implements OnInit {\r\n getAccessTenantList$: Observable = new Observable();\r\n showOptions: boolean = false;\r\n tenantId: number = 0;\r\n tableData = new BehaviorSubject([]);\r\n columns = new BehaviorSubject([]);\r\n activeEditCategory!: any;\r\n serverCategoryForm: FormGroup;\r\n primaryLanguage!: string;\r\n secondaryLanguage!: string;\r\n\r\n loading = new BehaviorSubject(false);\r\n column!: any;\r\n selectAllAppCatData = new BehaviorSubject(false);\r\n emptyStateComponent$ = new BehaviorSubject(NoComponentComponent);\r\n totalRecordLength = new BehaviorSubject({\r\n totalPage: 10,\r\n totalItems: 10,\r\n currentPage: 0,\r\n });\r\n apptCatParams = new Map();\r\n\r\n constructor(\r\n private store: Store,\r\n private serviceCategoryService: ServiceCategoryService,\r\n private messageService: MessageService,\r\n private translate: TranslateService,\r\n private ref: DynamicDialogRef,\r\n private fb: FormBuilder,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.apptCatParams.set('PageNumber', { name: 'PageNumber', value: 1 });\r\n this.apptCatParams.set('PageSize', { name: 'PageSize', value: 10 });\r\n this.getAccessTenantList$ = this.store.select(TENANTS_INFO);\r\n this.getAccessTenantList$.subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' });\r\n\r\n this.translate\r\n .get([\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase(),\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase(),\r\n ])\r\n .subscribe((translations) => {\r\n this.primaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.primary_language?.toUpperCase()\r\n ];\r\n this.secondaryLanguage =\r\n translations[\r\n 'common.LANGUAGE.' +\r\n tenant.selected_tenant.secondary_language?.toUpperCase()\r\n ];\r\n });\r\n }\r\n this.getServiceCategoryList();\r\n });\r\n }\r\n\r\n getServiceCategoryList() {\r\n this.loading.next(true);\r\n this.serviceCategoryService\r\n .getServiceCategories(this.tenantId, this.getAllParams)\r\n .subscribe({\r\n next: (response: any) => {\r\n if (response.items) {\r\n this.tableData = new BehaviorSubject(response.items);\r\n this.columnTranslate();\r\n }\r\n this.emptyStateComponent$ = new BehaviorSubject(\r\n NoComponentComponent\r\n );\r\n this.totalRecordLength.next({\r\n totalPage: response.total_pages,\r\n totalItems: response.total_items,\r\n currentPage: response.current_page,\r\n });\r\n this.selectAllAppCatData.next(false);\r\n this.loading.next(false);\r\n },\r\n error: (error) => {\r\n this.loading.next(false);\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n\r\n columnTranslate() {\r\n this.translate\r\n .get([\r\n 'ADMIN.COMMON.LAST_UPDATED_ON',\r\n 'ADMIN.COMMON.LAST_UPDATED_BY',\r\n 'ADMIN.COMMON.CREATED_BY',\r\n 'ADMIN.COMMON.STATUS',\r\n 'ADMIN.SUBSCRIPTION.PLAN_NAME',\r\n ])\r\n .subscribe((translations) => {\r\n this.setColumnTranslate(translations);\r\n });\r\n }\r\n setColumnTranslate(translations: any) {\r\n this.column = {\r\n lastUpdateON: translations['ADMIN.COMMON.LAST_UPDATED_ON'],\r\n lastUpdatedBy: translations['ADMIN.COMMON.LAST_UPDATED_BY'],\r\n createdBy: translations['ADMIN.COMMON.CREATED_BY'],\r\n status: translations['ADMIN.COMMON.STATUS'],\r\n planName: translations['ADMIN.SUBSCRIPTION.PLAN_NAME'],\r\n };\r\n\r\n this.columns = new BehaviorSubject([\r\n {\r\n title: this.column.planName,\r\n classes: ' py-2 white-space-nowrap font-bold ',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'name_primary_language',\r\n type: 'component',\r\n data: {\r\n name: ActionColumnComponent,\r\n additionData: true,\r\n aData: { keyName: 'name_primary_language' },\r\n },\r\n },\r\n {\r\n title: this.column.lastUpdatedBy,\r\n classes: ' py-2 white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'updated_by',\r\n type: 'component',\r\n data: { name: StaffInfoComponent },\r\n },\r\n {\r\n title: this.column.lastUpdateON,\r\n classes: ' py-2 white-space-nowrap',\r\n sortable: true,\r\n filterable: true,\r\n dataProperty: 'updated_date',\r\n type: 'component',\r\n data: {\r\n name: DateCellComponent,\r\n additionData: true,\r\n aData: { fetch_key: 'updated_date' },\r\n },\r\n },\r\n {\r\n title: this.column.status,\r\n classes: 'py-2 white-space-nowrap',\r\n sortable: false,\r\n filterable: true,\r\n dataProperty: 'status',\r\n type: 'component',\r\n data: { name: EntityStatusComponent },\r\n },\r\n {\r\n title: '',\r\n classes: ' py-2 white-space-nowrap',\r\n dataProperty: 'actions',\r\n type: 'component',\r\n data: {\r\n name: ActionsComponent,\r\n additionData: true,\r\n aData: ['edit', 'status'],\r\n },\r\n },\r\n ]);\r\n }\r\n\r\n handleError(error: any) {\r\n if (error instanceof NotFoundError) {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.PAGE_NOT_FOUND',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.PAGE_NOT_FOUND'],\r\n });\r\n });\r\n } else if (\r\n error.originalError &&\r\n error.originalError.error &&\r\n error.originalError.error[0]\r\n ) {\r\n let currentError = error.originalError.error[0];\r\n if (currentError.errorCode == 'alreadyexist') {\r\n if (\r\n currentError?.identifier &&\r\n currentError.identifier == 'name_pri_lang'\r\n )\r\n this.NamePrimary?.setErrors({\r\n duplicate: true,\r\n });\r\n else if (\r\n currentError?.identifier &&\r\n currentError.identifier == 'name_sec_lang'\r\n )\r\n this.NameSecondary?.setErrors({\r\n duplicate: true,\r\n });\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n {\r\n this.translate\r\n .get([\r\n 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n 'common.errors.SERVER_SIDE.SOMETHING_WRONG',\r\n ])\r\n .subscribe((translations: any) => {\r\n this.messageService.add({\r\n severity: 'error',\r\n summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n detail: translations['common.errors.SERVER_SIDE.SOMETHING_WRONG'],\r\n });\r\n });\r\n }\r\n }\r\n\r\n closeDialog() {\r\n this.ref.close({});\r\n }\r\n\r\n\r\n toggleStatus(serviceCat: any) {\r\n if (\r\n serviceCat.status == Status.Active.toString() ||\r\n serviceCat.status == Status[Status.Active]\r\n ) {\r\n this.serviceCategoryService\r\n .markInActive(this.tenantId, serviceCat.id)\r\n .subscribe({\r\n next: (res) => {\r\n this.getServiceCategoryList();\r\n this.translate\r\n .get([\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_INACTIVE',\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_INACTIVE_MESSAGE',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary:\r\n translations['ADMIN.SERVICES.SERVICE_CATEGORY_INACTIVE'],\r\n detail:\r\n translations[\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_INACTIVE_MESSAGE'\r\n ],\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n } else {\r\n this.serviceCategoryService\r\n .markActive(this.tenantId, serviceCat.id)\r\n .subscribe({\r\n next: (res) => {\r\n this.getServiceCategoryList();\r\n\r\n this.translate\r\n .get([\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_ACTIVE',\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_ACTIVE_MESSAGE',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary:\r\n translations['ADMIN.SERVICES.SERVICE_CATEGORY_ACTIVE'],\r\n detail:\r\n translations[\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_ACTIVE_MESSAGE'\r\n ],\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n }\r\n\r\n editCategory(category: any) {\r\n this.serviceCategoryService\r\n .getSingleServiceCategory(this.tenantId, category.id)\r\n .subscribe({\r\n next: (res) => {\r\n this.activeEditCategory = res;\r\n this.buildEditForm();\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n\r\n get NamePrimary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('name_primary_language');\r\n }\r\n get NameSecondary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('name_secondary_language');\r\n }\r\n\r\n get DescriptionPrimary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('description_primary_language');\r\n }\r\n\r\n get DescriptionSecondary(): AbstractControl | null {\r\n return this.serverCategoryForm.get('description_secondary_language');\r\n }\r\n\r\n buildEditForm() {\r\n this.serverCategoryForm = this.fb.group({\r\n name_primary_language: [\r\n this.activeEditCategory.name_primary_language,\r\n Validators.required,\r\n ],\r\n name_secondary_language: [\r\n this.activeEditCategory.name_secondary_language,\r\n Validators.required,\r\n ],\r\n description_primary_language: [\r\n this.activeEditCategory.description_primary_language,\r\n Validators.required,\r\n ],\r\n description_secondary_language: [\r\n this.activeEditCategory.description_secondary_language,\r\n Validators.required,\r\n ],\r\n terms_condition: [\r\n this.activeEditCategory.terms_condition\r\n ? this.activeEditCategory.terms_condition\r\n : '',\r\n ],\r\n terms_condition_title: [\r\n this.activeEditCategory.terms_condition_title\r\n ? this.activeEditCategory.terms_condition_title\r\n : '',\r\n ],\r\n icon: [this.activeEditCategory.icon ? this.activeEditCategory.icon : ''],\r\n });\r\n }\r\n\r\n get Icon(): AbstractControl | null {\r\n return this.serverCategoryForm.get('icon');\r\n }\r\n setIcon(icon: string) {\r\n this.Icon?.setValue(icon);\r\n }\r\n\r\n updateServiceCategory() {\r\n if (this.serverCategoryForm.valid) {\r\n let data = this.serverCategoryForm.getRawValue();\r\n this.serviceCategoryService\r\n .updateServiceCategory(this.tenantId, this.activeEditCategory.id, data)\r\n .subscribe({\r\n next: (res) => {\r\n this.activeEditCategory = null;\r\n this.getServiceCategoryList();\r\n\r\n this.translate\r\n .get([\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE',\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE',\r\n ])\r\n .subscribe((translations) => {\r\n this.messageService.add({\r\n severity: 'success',\r\n summary:\r\n translations['ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE'],\r\n detail:\r\n translations[\r\n 'ADMIN.SERVICES.SERVICE_CATEGORY_UPDATE_MESSAGE'\r\n ],\r\n });\r\n });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n }\r\n\r\n editCategoryCancel() {\r\n this.activeEditCategory = null;\r\n }\r\n\r\n get getAllParams(): Array {\r\n return [...this.apptCatParams.values()];\r\n }\r\n\r\n fetchNextSetData(e: any) {\r\n this.apptCatParams.set('PageNumber', { name: 'PageNumber', value: e.pn });\r\n this.apptCatParams.set('PageSize', { name: 'PageSize', value: e.ps });\r\n // this.tasksParams.set('PageNumber', {paramName: 'PageNumber', paramValue: e.pn})\r\n // this.tasksParams.set('PageSize', {paramName: 'PageSize', paramValue: e.ps})\r\n // this.showBulkActionBar = false\r\n // this.gettableRecord([])\r\n // this.selectedClient.clear()\r\n //this.getAllTask()\r\n //this.currentPage$.next({pageSize:this.tasksParams.get('PageSize'), pageNumber:this.tasksParams.get('PageNumber') })\r\n }\r\n\r\n onActionEvent(event: any) {\r\n switch (event.action) {\r\n case 'edit':\r\n case 'rowAction':\r\n this.editCategory(event.columnData);\r\n break;\r\n case 'status':\r\n this.toggleStatus(event.columnData);\r\n break;\r\n case 'delete':\r\n break;\r\n }\r\n }\r\n changedEditCategory(event:any){\r\n if(event){\r\n this.getServiceCategoryList();\r\n }\r\n this.activeEditCategory=null\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ServiceCategoryComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n RippleModule,\r\n DialogModule,\r\n DividerModule,\r\n InputTextModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ToastComponentModule,\r\n ErrorMsgComponentModule,\r\n ToastModule,\r\n StaffInfoComponentModule,\r\n DynamicDialogModule,\r\n DataGridComponentModule,\r\n SkeletonModule,\r\n TableModule,\r\n ServiceCategoryCreateComponentModule\r\n\r\n ],\r\n exports: [ServiceCategoryComponent],\r\n})\r\nexport class ServiceCategoryComponentModule {}\r\n","
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n {{ 'ADMIN.SERVICES.MANGAGE_SERVICE_CATEGORIES' | translate }}\r\n

\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n {{ 'ADMIN.COMMON.TOTAL' | translate }} -\r\n {{ tableData.getValue().length }}\r\n {{ 'ADMIN.SERVICES.SERVICES' | translate }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n\r\n\r\n\r\n","import {\r\n Component,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport {\r\n BehaviorSubject,\r\n concat,\r\n merge,\r\n Observable,\r\n of,\r\n combineLatest,\r\n map,\r\n} from 'rxjs';\r\nimport { STAFF_STATE } from '../../../../../../../apps/ff-frontend/src/app/state/app.state';\r\nimport { STAFFINTERFACE } from '@fitness-force/models';\r\nimport {\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FormGroup,\r\n FormControl,\r\n FormBuilder,\r\n} from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ShortNamePipeModule } from '../../../filters/name-initials.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\n\r\n\r\n@Component({\r\n selector: 'staff-selector[formGroup]',\r\n templateUrl: './assigned-to.component.html',\r\n styleUrls: [],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AssignedToComponent implements OnInit, AfterViewInit {\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n @Input() controlName: FormControl = new FormControl();\r\n @Input('id') staffId$ = new BehaviorSubject(0);\r\n @Input('styleClass') styleClass: string = 'border-none surface-50 w-full';\r\n @Input('placeHolder') placeHolder: string = 'Select';\r\n @Input('claims') claims$: Observable = of([]);\r\n @Input('canRepresetative') canRepresetative$ = new BehaviorSubject(false);\r\n\r\n @Input('filterstaff') staffIds$: Observable = of([-1]);\r\n @Output('selectedStaff') selectedStaff: EventEmitter = new EventEmitter();\r\n staffs$ = new BehaviorSubject([]);\r\n allStaffs$ = new BehaviorSubject([]);\r\n\r\n\r\n claims: Observable | any;\r\n constructor(public fb: FormBuilder, private store: Store) { }\r\n\r\n ngOnInit(): void {\r\n this.GetStaffList();\r\n this.claims = this.claims$;\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.staffId$.subscribe((res) => {\r\n this.SetSelectedStaff();\r\n });\r\n }\r\n\r\n get SelectedStaff(): STAFFINTERFACE {\r\n return this.controlName.value;\r\n }\r\n\r\n GetStaffList(): void {\r\n combineLatest([\r\n this.store.select(STAFF_STATE),\r\n this.canRepresetative$,\r\n this.staffIds$\r\n ]).subscribe({\r\n next: (res: Array) => {\r\n if (res[0] && res[0].staffList && res[0].staffList.length > 0)\r\n this.staffs$.next(res[0].staffList.filter((o: STAFFINTERFACE) => String(o.status).toLowerCase() == 'active'));\r\n if (res[0] && res[0].staffListAll && res[0].staffListAll.length > 0)\r\n this.allStaffs$.next(res[0].staffListAll);\r\n\r\n if (\r\n res[0] &&\r\n res[0].staffList &&\r\n res[0].staffListAll &&\r\n res[0].staffList.length > 0 &&\r\n res[0].staffListAll.length > 0\r\n )\r\n //this.filterStaffs(); \r\n this.SetSelectedStaff();\r\n\r\n if (res[1]) {\r\n this.staffs$.next(\r\n res[0].staffList.filter(\r\n (o: STAFFINTERFACE) =>\r\n String(o.status).toLowerCase() == 'active' &&\r\n o.can_be_client_rep\r\n )\r\n );\r\n }\r\n if (res[2] && res[2][0] != -1) {\r\n this.staffs$.next(\r\n res[0].staffList.filter(\r\n (o: STAFFINTERFACE) =>\r\n res[2].includes(o.id)\r\n )\r\n );\r\n }\r\n },\r\n });\r\n }\r\n\r\n onSelectStaff(event: any) {\r\n this.selectedStaff.emit(event);\r\n }\r\n\r\n SetSelectedStaff(): void {\r\n if (this.staffId$.value > 0) {\r\n let defaultSelectedStaff = this.staffs$.value.find((o: STAFFINTERFACE) => o.id == this.staffId$.value);\r\n if (defaultSelectedStaff && defaultSelectedStaff.id > 0) {\r\n this.controlName.setValue(defaultSelectedStaff);\r\n } else {\r\n defaultSelectedStaff = undefined;\r\n defaultSelectedStaff = this.allStaffs$.value.find((o: STAFFINTERFACE) => o.id == this.staffId$.value);\r\n if (defaultSelectedStaff && defaultSelectedStaff.id > 0) {\r\n let staff: STAFFINTERFACE[] = this.staffs$.value;\r\n staff.push(defaultSelectedStaff || ({} as STAFFINTERFACE));\r\n this.staffs$.next(staff);\r\n this.controlName.setValue(defaultSelectedStaff);\r\n }\r\n }\r\n }\r\n }\r\n\r\n OnStaffImgError(event: any) {\r\n event.target.src = './assets/img/avatar.jpg';\r\n }\r\n}\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [AssignedToComponent],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, DropdownModule, ShortNamePipeModule, AvatarModule],\r\n exports: [AssignedToComponent],\r\n})\r\nexport class AssignedToComponentModule { }\r\n","
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{controlName.value.name}}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{staffs.name}}
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, HostListener } from '@angular/core';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { PasswordModule } from 'primeng/password';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { STAFFINTERFACE } from '@fitness-force/models';\r\nimport { FormBuilder, FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { matchValidator } from '../../../validators/passwordMismatch.validator';\r\nimport { SpecialCharacterCheck } from '../../../validators/specialCharacter.validator';\r\nimport { MinimumNumericalCheck } from '../../../validators/minimunNumericCharCheck.validator';\r\nimport { StaffService } from 'libs/api/src/lib/staff.service';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\nimport { AppErrors, ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { MinimumLowerCaseCheck } from '../../../validators/minimumLowercaseCheck.validator';\r\nimport { MinimumUpperCaseCheck } from '../../../validators/minimumUppercaseCheck.validator';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { COMPANY_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { ErrorsComponentModule } from '@fitness-force/shared';\r\n\r\n@Component({\r\n selector: 'staff-change-password',\r\n templateUrl: './staff-change-password.component.html',\r\n styleUrls: ['./staff-change-password.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class StaffChangePasswordComponent implements OnInit {\r\n @Input(\"visible\") changePasswordModal: boolean = false;\r\n @Input(\"staff\") staff: STAFFINTERFACE = {} as STAFFINTERFACE;\r\n @Output('closePopup') closePopup = new EventEmitter();\r\n public companyInfoDetail$!: Observable;\r\n\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n error = new BehaviorSubject(null as (AppErrors | null));\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n this.error.next(null);\r\n }\r\n\r\n formGroup: FormGroup;\r\n constructor(private fb: FormBuilder, private staffService: StaffService, public translate: TranslateService, private store: Store) {\r\n this.formGroup = this.fb.group({\r\n old_password: new FormControl('', [Validators.required]),\r\n new_password: new FormControl('', [Validators.required,\r\n Validators.minLength(8),\r\n matchValidator('new_confirm_password', true),\r\n SpecialCharacterCheck('new_password', 1),\r\n MinimumNumericalCheck('new_password', 1),\r\n MinimumLowerCaseCheck('new_password', 1),\r\n MinimumUpperCaseCheck('new_password', 1)\r\n ]),\r\n new_confirm_password: new FormControl('', [Validators.required]),\r\n });\r\n\r\n this.formGroup.patchValue({ open_errorpoup: false, });\r\n }\r\n\r\n get OldPassword() {\r\n return this.formGroup.controls.old_password;\r\n }\r\n\r\n get NewPassword() {\r\n return this.formGroup.controls.new_password;\r\n }\r\n\r\n get NewConfirmPassword() {\r\n return this.formGroup.controls.new_confirm_password;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.componentInit();\r\n }\r\n\r\n componentInit() {\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n }\r\n\r\n ValidateAndSubmit(): void {\r\n this.formGroup.markAllAsTouched();\r\n if (this.formGroup.valid) {\r\n let staffId = this.staff.id;\r\n let oldPassword = this.OldPassword.value;\r\n let newPassword = this.NewPassword.value;\r\n this.staffService.ChangePassword(environment.BASE_URL, staffId, oldPassword, newPassword).subscribe({\r\n next: (data: any) => {\r\n this.changePasswordModal = false;\r\n this.closePopup.emit();\r\n },\r\n error: (error: AppErrors) => {\r\n this.error.next(error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n });\r\n }\r\n }\r\n\r\n ClosePopup(): void {\r\n this.formGroup.reset();\r\n this.changePasswordModal = false;\r\n this.closePopup.emit();\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [StaffChangePasswordComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n PasswordModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n InputTextModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [StaffChangePasswordComponent]\r\n})\r\nexport class StaffChangePasswordComponentModule {\r\n}\r\n","\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n

\r\n {{'STAFF.CHANGEPASSWORD.HEADER_CHANGE_PASSWORD_FOR' | translate}}\r\n {{staff.name}}\r\n - {{staff.id}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n

\r\n {{'STAFF.CHANGEPASSWORD.HEADER_OLD_PASSWORD' | translate}}\r\n

\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

\r\n {{'STAFF.CHANGEPASSWORD.HEADER_NEW_PASSWORD' | translate}}\r\n

\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n

\r\n {{'STAFF.CHANGEPASSWORD.HEADER_CONFIRM_NEW_PASSWORD' | translate}}\r\n

\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
    \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'STAFF.CHANGEPASSWORD.SPAN_ATLEAST8CHARLONG' | translate}}\r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'STAFF.CHANGEPASSWORD.SPAN_ONELOWERCHAR' | translate}}\r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'STAFF.CHANGEPASSWORD.SPAN_ONEUPPERCHAR' | translate}}\r\n \r\n
  • \r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{'STAFF.CHANGEPASSWORD.SPAN_SPECIALCHAR' | translate}}\r\n \r\n
  • \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { STAFFINTERFACE, STATE_STAFF_LIST } from '@fitness-force/models';\r\nimport { AssignedToComponentModule, ErrorsComponentModule } from '@fitness-force/shared'\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { COMPANY_INFO, STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { filter, map } from 'rxjs/operators';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { StaffService } from '@fitness-force/api';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n@Component({\r\n selector: 'change-reporting-manager',\r\n templateUrl: './change-reporting-manager.component.html',\r\n styleUrls: ['./change-reporting-manager.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n \r\n})\r\nexport class ChangeReportingManagerComponent implements OnInit {\r\n @Input(\"visible\") changeReportingManagerDialog: boolean = false;\r\n @Input(\"staff\") staff: STAFFINTERFACE = {} as STAFFINTERFACE;\r\n @Output('closePopup') closePopup = new EventEmitter();\r\n\r\n formGroup: FormGroup = new FormGroup({});\r\n reportToStaff$ = new BehaviorSubject({} as STAFFINTERFACE);\r\n updatedBy$ = new BehaviorSubject({} as STAFFINTERFACE);\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n public translate: TranslateService,\r\n private store: Store,\r\n private staffService: StaffService,\r\n private messageService: MessageService\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.ComponentInit();\r\n }\r\n\r\n createForm(): void {\r\n this.formGroup = this.fb.group({\r\n reporting_manager: new FormControl('', [Validators.required])\r\n });\r\n\r\n this.formGroup.controls.reporting_manager.valueChanges.subscribe((staff: STAFFINTERFACE) => {\r\n console.log(staff);\r\n });\r\n }\r\n\r\n ComponentInit() {\r\n this.store.select(COMPANY_INFO).subscribe((responseData:any) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(STAFF_STATE).subscribe((allStaff: STATE_STAFF_LIST) => {\r\n let reportToStaff: STAFFINTERFACE | undefined = allStaff.staffListAll.find((oStaff: STAFFINTERFACE) => oStaff.id == this.staff.updated_by);\r\n if (reportToStaff)\r\n this.reportToStaff$.next(reportToStaff);\r\n\r\n let updatedByStaff: STAFFINTERFACE | undefined = allStaff.staffListAll.find((oStaff: STAFFINTERFACE) => oStaff.id == reportToStaff?.updated_by);\r\n if (updatedByStaff)\r\n this.updatedBy$.next(updatedByStaff);\r\n });\r\n }\r\n\r\n OnStaffImgError(event: any) {\r\n event.target.src = './assets/img/avatar.jpg'\r\n }\r\n\r\n ClosePopup(): void {\r\n this.changeReportingManagerDialog = false;\r\n this.formGroup.reset();\r\n this.closePopup.emit();\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n get ReportingManagerControl(): FormControl {\r\n return this.formGroup.controls.reporting_manager as FormControl;\r\n }\r\n\r\n ValidateAndSubmit(): void {\r\n if (this.formGroup.valid) {\r\n let staffId = this.staff.id;\r\n this.staffService.ChangeReportingManager(environment.BASE_URL, staffId, this.ReportingManagerControl.value.id).subscribe({\r\n next: (data: any) => {\r\n console.log(data);\r\n this.translate.get('common.message.record_updated').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation, });\r\n });\r\n this.store.dispatch({ type: 'FETCH_STAFF_LIST' });\r\n this.ClosePopup();\r\n },\r\n error: (error: any) => {\r\n console.log(error, 'errororor');\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (Array.isArray(error.originalError.error)) {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n }\r\n else {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n }\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [ChangeReportingManagerComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n DropdownModule,\r\n OverlayPanelModule,\r\n ToastModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n AssignedToComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [ChangeReportingManagerComponent]\r\n})\r\nexport class ChangeReportingManagerComponentModule {\r\n}\r\n","\r\n \r\n \r\n
\r\n \r\n \r\n \r\n

\r\n {{'STAFF.CHANGE_REPORTING_MANAGER.CHANGEREPORTINGMANAGEROF' | translate}}\r\n {{staff.name}} \r\n - {{staff.id}}\r\n

\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \"{{(reportToStaff$\r\n \r\n \r\n {{(reportToStaff$ | async)?.name}}\r\n \r\n
\r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n {{(updatedBy$|async)?.name}}\r\n {{(updatedBy$|async)?.id}}\r\n
\r\n {{(updatedBy$|async)?.designation}}\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n {{ (updatedBy$|async)?.mobile_country_code + \" \" + (updatedBy$|async)?.mobile_number\r\n || \"\"}}\r\n
\r\n
\r\n \r\n {{(updatedBy$|async)?.email_id}}\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';\r\nimport { FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { STAFFINTERFACE, STATE_STAFF_LIST, TENANT_MODEL } from '@fitness-force/models';\r\nimport { ErrorsComponentModule } from '@fitness-force/shared'\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { COMPANY_INFO, STAFF_STATE, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { StaffService } from '@fitness-force/api';\r\nimport { environment } from 'apps/ff-frontend/src/environments/environment';\r\n\r\n@Component({\r\n selector: 'change-tenant-access',\r\n templateUrl: './change-tenant-access.component.html',\r\n styleUrls: ['./change-tenant-access.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [MessageService],\r\n})\r\nexport class ChangeTenantAccessComponent implements OnInit {\r\n @Input(\"visible\") changeTenantAccesDialog: boolean = false;\r\n @Input(\"staff\") staff: STAFFINTERFACE = {} as STAFFINTERFACE;\r\n @Output('closePopup') closePopup = new EventEmitter();\r\n\r\n accessTenant$ = new BehaviorSubject([] as TENANT_MODEL[]);\r\n formGroup: FormGroup = new FormGroup({});\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n public translate: TranslateService,\r\n private store: Store,\r\n private staffService: StaffService,\r\n private messageService: MessageService\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.ComponentInit();\r\n }\r\n\r\n createForm(): void {\r\n this.formGroup = this.fb.group({\r\n new_tenant_access: new FormControl([], [Validators.required])\r\n });\r\n\r\n this.formGroup.controls.new_tenant_access.valueChanges.subscribe((staff: STAFFINTERFACE) => {\r\n console.log(staff);\r\n });\r\n }\r\n\r\n ComponentInit() {\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n\r\n this.store.select(TENANTS_INFO).subscribe((tenant) => {\r\n this.accessTenant$.next(tenant.accessed_tenant);\r\n\r\n let accesTenant: TENANT_MODEL[] = tenant.accessed_tenant.filter((t: TENANT_MODEL) => {\r\n return this.staff.tenant_access_id.includes(t.id);\r\n });\r\n\r\n this.formGroup.controls.new_tenant_access.setValue(accesTenant);\r\n });\r\n }\r\n\r\n OnStaffImgError(event: any) {\r\n event.target.src = './assets/img/avatar.jpg'\r\n }\r\n\r\n ClosePopup(): void {\r\n this.changeTenantAccesDialog = false;\r\n this.formGroup.reset();\r\n this.closePopup.emit();\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n get NEWTENANTACCESSCONTROL(): FormControl {\r\n return this.formGroup.controls.new_tenant_access as FormControl;\r\n }\r\n\r\n get NEWTENANTACCESS(): number[] {\r\n let tenants = this.formGroup.controls.new_tenant_access.value;\r\n return tenants.map((t: any) => t.id);\r\n }\r\n\r\n ValidateAndSubmit(): void {\r\n if (this.formGroup.valid) {\r\n let staffId = this.staff.id;\r\n this.staffService.ChangeTenantAccess(environment.BASE_URL, staffId, this.NEWTENANTACCESS).subscribe({\r\n next: (data: any) => {\r\n console.log(data);\r\n this.translate.get('common.message.record_updated').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation, });\r\n });\r\n this.store.dispatch({ type: 'FETCH_STAFF_LIST' });\r\n this.ClosePopup();\r\n },\r\n error: (error: any) => {\r\n console.log(error, 'errororor');\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n else {\r\n if (Array.isArray(error.originalError.error)) {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n }\r\n else {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n }\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [ChangeTenantAccessComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DialogModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n ToastModule,\r\n MultiSelectModule,\r\n ErrorMsgComponentModule,\r\n ErrorsComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [ChangeTenantAccessComponent]\r\n})\r\nexport class ChangeTenantAccessComponentModule {\r\n}\r\n","\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n

\r\n {{'STAFF.CHANGE_TENANT_ACCESS.CHANGECENTREACCESSOF' | translate}}\r\n {{staff.name}} \r\n - {{staff.id}}\r\n

\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
","import { CLAIMS_INFO, STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, OnInit, ChangeDetectionStrategy, NgModule, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormGroup, FormBuilder, FormControl } from '@angular/forms';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { CLAIMSSTATEINTERFACE, STAFFINTERFACE } from '@fitness-force/models';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\n\r\n@Component({\r\n selector: 'multi-select-staff',\r\n templateUrl: './multi-select-staff.component.html',\r\n styleUrls: ['./multi-select-staff.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MultiSelectStaffComponent implements OnInit {\r\n @Input('selected') selected:number[]=[];\r\n // activefilters: any[] = [];\r\n selectedFilter: { name: string; } | undefined;\r\n allStaffs$ = new BehaviorSubject([])\r\n // claims!:CLAIMSSTATEINTERFACE;\r\n selectedStaffList: FormGroup = new FormGroup({})\r\n @Output() selectStaffEvent = new EventEmitter()\r\n constructor(private store: Store, private fb: FormBuilder) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.selectedStaffList = this.fb.group({\r\n selectedStaffs: []\r\n })\r\n\r\n\r\n\r\n this.store.select(STAFF_STATE).subscribe((s:any)=>{\r\n this.allStaffs$.next(s.staffListAll);\r\n if(s.staffListAll && s.staffListAll.length > 0)\r\n this.setSelectedStaff(s.staffListAll);\r\n if(this.selected && this.selected.length>0 && s && s.length>0){\r\n let staffs:any[]=[];\r\n s.forEach((staff:any) => {\r\n if(this.selected.includes(staff.id)){\r\n staffs.push(staff);\r\n }\r\n });\r\n this.selectedStaffList.get('selectedStaffs')?.setValue(staffs)\r\n }\r\n })\r\n }\r\n\r\n\r\n // Run this on exchange\r\n setSelectedStaff(allList:STAFFINTERFACE[]){\r\n let tempSelected:STAFFINTERFACE[]=[];\r\n allList.forEach((elm:STAFFINTERFACE) => {\r\n if(this.selected.includes(elm.id)){\r\n tempSelected.push(elm);\r\n }\r\n });\r\n\r\n this.selectedStaffs.setValue(tempSelected);\r\n }\r\n\r\n get selectedStaffs(): FormControl {\r\n return this.selectedStaffList.get('selectedStaffs') as FormControl\r\n }\r\n getSelectedStaff(e:any){\r\n this.selectStaffEvent.emit( this.selectedStaffs.value)\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [MultiSelectStaffComponent],\r\n imports: [\r\n CommonModule,\r\n MultiSelectModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n StyleClassModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n exports: [MultiSelectStaffComponent]\r\n})\r\nexport class MultiSelectStaffComponentModule {\r\n}\r\n","\r\n
\r\n \r\n
\r\n
\r\n","import { Store,select } from '@ngrx/store';\r\nimport { BehaviorSubject, map, mergeMap } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { OverlayPanel, OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport {\r\n ShortNamePipeModule,\r\n} from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { STAFF_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\n@Component({\r\n selector: 'staff-info',\r\n templateUrl: './staff-info.component.html',\r\n styleUrls: ['./staff-info.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class StaffInfoComponent implements OnInit {\r\n @Input() staffId:number=0;\r\n @Input() columnData:any = ''\r\n @Input() additionData:any\r\n @ViewChild('op') op: OverlayPanel;\r\n staffInfo:BehaviorSubject = new BehaviorSubject(null);\r\n\r\n constructor(\r\n private store:Store,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.columnData.subscribe({next:(cData:any)=>{\r\n if(!this.staffId)this.staffId = cData.updated_by?cData.updated_by:cData.assigned_to_staff_id;\r\n this.store.pipe(\r\n select(STAFF_STATE),\r\n map((loaded) => {\r\n return loaded.staffListAll.filter((value) => value.id === this.staffId);\r\n }),\r\n mergeMap((value) => value)\r\n ).subscribe({\r\n next: (staff) => {\r\n this.staffInfo.next(staff);\r\n },\r\n });\r\n }});\r\n\r\n }\r\n toggleOverlay = (event:any) => this.op.toggle(event);\r\n show = (event:any) => this.op.show(event);\r\n hide = () => this.op.hide();\r\n}\r\n@NgModule({\r\n declarations: [StaffInfoComponent],\r\n imports: [\r\n CommonModule,\r\n AvatarModule,\r\n DropdownModule,\r\n StyleClassModule,\r\n ShortNamePipeModule,\r\n OverlayPanelModule,\r\n ],\r\n exports: [StaffInfoComponent],\r\n})\r\nexport class StaffInfoComponentModule {}\r\n","
\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n {{ data.name | titlecase }}\r\n {{ data.id }}\r\n
\r\n {{ data.role |\r\n titlecase }}\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n {{ data.mobile_country_code }} {{ data.mobile_number}} \r\n Not specified\r\n
\r\n
\r\n \r\n {{ data.email_id }}\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n {{ data.name }}\r\n
\r\n\r\n-\r\n","import {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport {\r\n FormBuilder,\r\n FormGroup,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TaskCategoryService } from '@fitness-force/api';\r\nimport { ErrorMsgComponentModule } from '@fitness-force/errors';\r\nimport { MessageService } from 'primeng/api';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { FactoryHttpLoader } from '../../helpsupport/helpsupport.component';\r\nimport { BehaviorSubject, forkJoin } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'inplace-category-edit',\r\n templateUrl: './inplace-category-edit.component.html',\r\n styleUrls: ['./inplace-category-edit.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class InplaceCategoryEditComponent implements OnInit {\r\n @Input() additionData = new BehaviorSubject(null);\r\n @Input() columnData = new BehaviorSubject(null);\r\n cData:any;\r\n aData:any;\r\n\r\n edit = false;\r\n inplaceForm!: FormGroup;\r\n @Output() onAction = new EventEmitter();\r\n categoryForm: any;\r\n value!: string;\r\n isFormSubmitting=false;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private taskCategoryService: TaskCategoryService,\r\n private changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n forkJoin([this.additionData,this.columnData]).subscribe({next:(data:any)=>{\r\n this.aData=data[0];\r\n this.cData=data[1];\r\n this.value = this.aData.primary\r\n ? this.cData.name_primary_language\r\n : this.cData.name_secondary_language;\r\n this.buildForm();\r\n }});\r\n\r\n }\r\n\r\n buildForm() {\r\n this.inplaceForm = this.formBuilder.group({\r\n value: [\r\n this.aData.primary\r\n ? this.cData.name_primary_language\r\n : this.cData.name_secondary_language,\r\n [Validators.required],\r\n ],\r\n });\r\n }\r\n\r\n updateValue() {\r\n if (this.inplaceForm.valid) {\r\n let rawValue = this.inplaceForm.getRawValue();\r\n this.isFormSubmitting=true;\r\n if (\r\n this.aData.primary &&\r\n rawValue.value != this.cData.name_primary_language\r\n ) {\r\n let inputData = {\r\n name_primary_language: rawValue.value,\r\n name_secondary_language: this.cData.name_secondary_language\r\n ? this.cData.name_secondary_language\r\n : '',\r\n };\r\n this.taskCategoryService\r\n .updateTaskCategory(\r\n this.cData.tenant_id,\r\n this.cData.id,\r\n inputData\r\n )\r\n .subscribe({\r\n next: (res:any) => {\r\n this.isFormSubmitting=false;\r\n this.onAction.emit({\r\n action: 'categoryUpdated',\r\n columnData: this.columnData,\r\n });\r\n this.edit = false;\r\n },\r\n error: (error:any) => {\r\n this.isFormSubmitting=false;\r\n this.handleError(error);\r\n this.onAction.emit({ action: 'categoryUpdatedError', error });\r\n },\r\n });\r\n } else if (\r\n !this.aData.primary &&\r\n rawValue.value != this.cData.name_secondary_language\r\n ) {\r\n let inputData = {\r\n name_secondary_language: rawValue.value,\r\n name_primary_language: this.cData.name_primary_language,\r\n };\r\n this.taskCategoryService\r\n .updateTaskCategory(\r\n this.cData.tenant_id,\r\n this.cData.id,\r\n inputData\r\n )\r\n .subscribe({\r\n next: (res:any) => {\r\n this.isFormSubmitting=false;\r\n this.onAction.emit({\r\n action: 'categoryUpdated',\r\n columnData: this.columnData,\r\n });\r\n this.edit = false;\r\n },\r\n error: (error) => {\r\n this.isFormSubmitting=false;\r\n this.handleError(error);\r\n this.onAction.emit({ action: 'categoryUpdatedError', error });\r\n },\r\n });\r\n }\r\n } else {\r\n this.edit = false;\r\n }\r\n }\r\n\r\n handleError(error: any) {\r\n if (\r\n error.originalError &&\r\n error.originalError.error &&\r\n error.originalError.error[0]\r\n ) {\r\n let currentError = error.originalError.error[0];\r\n if (currentError.errorCode == 'duplicatevalue') {\r\n this.inplaceForm.controls['value'].setErrors({\r\n duplicate: true,\r\n });\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n }\r\n close() {\r\n this.edit = false;\r\n this.buildForm();\r\n }\r\n\r\n onKeyEnter(event:any){\r\n this.updateValue();\r\n }\r\n onKeyEscape(event:any){\r\n this.close()\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [InplaceCategoryEditComponent],\r\n imports: [\r\n CommonModule,\r\n InplaceModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n TooltipModule,\r\n InputTextModule,\r\n ErrorMsgComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [InplaceCategoryEditComponent],\r\n})\r\nexport class InplaceCategoryEditComponentModule {}\r\n","\r\n {{\r\n value && value.length > 24 ? (value | slice: 0:24) + '...' : value\r\n }}\r\n {{ !value ? '-' : '' }}\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit, NgModule, Input, Output, EventEmitter, SimpleChanges, ChangeDetectorRef, NgZone } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { StyleClassModule } from 'primeng/styleclass';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { Client, CreateRecurringTaskByClientRequest, CreateRecurringTaskByOpportunityRequest, CreateTaskByClientRequest, CreateTaskByOpportunityRequest, RepeatRuleResponse, TENANTSINTERFACE } from '@fitness-force/models';\r\nimport { AbstractControl, FormArray, FormBuilder, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';\r\nimport { TaskAssignToType, TaskPriority, TaskType } from '@fitness-force/enum';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { ErrorMsgComponentModule, NotFoundError } from '@fitness-force/errors';\r\nimport { FooterComponentModule, HeaderComponentModule, SidebarComponentModule } from '@fitness-force/core';\r\nimport { IntercepterService } from 'libs/api/src/lib/intercepter.service';\r\n\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { ListboxModule } from 'primeng/listbox';\r\n\r\nimport { COMPANY_INFO, TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { AssignedToComponentModule } from '../../staff/assigned-to/assigned-to.component';\r\nimport { RruleComponentModule } from '../../rrule/rrule.component';\r\nimport { MiniSearchComponentModule } from '../../search/mini-search/mini-search.component';\r\nimport { TaskCategoryDropdownComponentModule } from '../../crm/task-category-dropdown/task-category-dropdown.component';\r\nimport { TaskTypeDropdownComponentModule } from '../../crm/task-type-dropdown/task-type-dropdown.component';\r\nimport { PriorityComponentModule } from '../../crm/priority/priority.component';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { AuthSevices, TaskService } from '@fitness-force/api';\r\nimport { ErrorsComponentModule } from '@fitness-force/shared';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { ScrollPanelModule } from 'primeng/scrollpanel';\r\nimport { TextTransFormPipeModule } from '../../../filters/text-transform.pipe';\r\nimport { ShortNamePipeModule } from 'libs/shared/src/lib/filters/name-initials.pipe';\r\nimport { AvatarModule } from 'primeng/avatar';\r\nimport { ChipModule } from 'primeng/chip';\r\n\r\n@Component({\r\n selector: 'task-create',\r\n templateUrl: './task-create.component.html',\r\n styleUrls: ['./task-create.component.scss'],\r\n providers: [MessageService],\r\n})\r\nexport class TaskCreateComponent implements OnInit {\r\n @Input('visible') showPopup: boolean = false;\r\n\r\n @Input('cltIds') clientIds: number[] = [];\r\n @Input('oppIds') opportunityIds: number[] = [];\r\n\r\n @Input('staffId') assignedToStaffId: number = 0;\r\n @Input('clientGroup') clientGroup: any[] = [];\r\n\r\n @Input('opportunity') opportunity: any;\r\n @Input('clientInfo') clientInfo: any = []; //this is not required this has to be removed\r\n\r\n @Output('hide') HidePopup: EventEmitter = new EventEmitter();\r\n\r\n clientIds$ = new BehaviorSubject([]);\r\n\r\n public clients: Client[] = [];\r\n showMiniSearch: boolean = false;\r\n showRRule: boolean = false;\r\n tenantId: number = 0;\r\n formGroup: FormGroup;\r\n rRuleObj: RepeatRuleResponse = {} as RepeatRuleResponse;\r\n showErrorPopup = new BehaviorSubject(false);\r\n errorMessages = [] as any;\r\n languageCode: string = '';\r\n currentUserDetails: any;\r\n assignedToId = new BehaviorSubject(0);\r\n showAllMembers = false;\r\n\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private store: Store,\r\n public translate: TranslateService,\r\n public taskService: TaskService,\r\n private messageService: MessageService,\r\n private authService: AuthSevices,\r\n private ngZone: NgZone\r\n // private cd: ChangeDetectorRef\r\n ) {\r\n this.formGroup = this.fb.group({\r\n selectedClients: new FormControl('', [Validators.required]),\r\n selectedTaskCategory: new FormControl('', [Validators.required]),\r\n selectedTask: new FormControl('', [Validators.required]),\r\n selectedPriority: new FormControl('', [Validators.required]),\r\n selectedAssigned: new FormControl('', [Validators.required]),\r\n scheduleDate: new FormControl('', [Validators.required]),\r\n scheduleTime: new FormControl('', [Validators.required]),\r\n title: new FormControl('', [Validators.required]),\r\n comment: new FormControl('', [Validators.required]),\r\n });\r\n this.setVariables();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setVariables();\r\n this.store.select(COMPANY_INFO).subscribe((responseData) => {\r\n this.languageCode = responseData.selectedLang.LANG_CODE;\r\n this.translate.setDefaultLang(responseData.selectedLang.LANG_CODE);\r\n this.translate.use(responseData.selectedLang.LANG_CODE);\r\n });\r\n this.currentUserDetails = this.authService.currentUserDetails();\r\n this.assignedToId.next(this.currentUserDetails.Id);\r\n if (this.opportunity && this.opportunity?.client_info) {\r\n this.clientIds$.next([this.opportunity?.client_info.id]);\r\n\r\n this.opportunityIds.push(this.opportunity.id);\r\n\r\n this.clientIds = [];\r\n this.clientIds.push(this.opportunity?.client_info.id);\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.clientIds?.currentValue) {\r\n this.clientIds = changes?.clientIds?.currentValue;\r\n this.clientIds$.next([...new Set(this.clientIds)]);\r\n } else {\r\n this.clientIds = [];\r\n this.clientIds$.next([]);\r\n }\r\n // if (this.clientInfo && this.clientInfo.length > 0 && changes.clientInfo.currentValue) {\r\n // this.clients = changes.clientInfo.currentValue;\r\n // this.clientGroup = this.clients;\r\n // this.showMiniSearch = true;\r\n // }\r\n // if (this.opportunity && changes.opportunity.currentValue) {\r\n // this.clientIds = [];\r\n // this.opportunityIds.push(this.opportunity.id);\r\n // this.clientIds.push(this.opportunity?.client_info.id);\r\n // this.opportunityIds.push(this.opportunity?.id);\r\n // this.showMiniSearch = false;\r\n // this.formGroup.controls.selectedClients.setValue(this.clientIds);\r\n // }\r\n // if (this.clientGroup && this.clientGroup?.length > 0 && changes?.clientGroup?.currentValue) {\r\n // this.clientIds = [];\r\n // this.clientGroup.forEach((val) => {\r\n // this.clientIds.push(val.id);\r\n // })\r\n // this.showMiniSearch = false;\r\n // this.formGroup.controls.selectedClients.setValue(this.clientIds);\r\n // }\r\n }\r\n\r\n //#region get value\r\n get SelectedTaskValue(): any {\r\n let val: any = this.SelectedTask.value;\r\n let taskType: any;\r\n if (val && val.value) {\r\n switch (val.value) {\r\n case 'email': taskType = TaskType.Email; break;\r\n case 'sms': taskType = TaskType.Sms; break;\r\n case 'call': taskType = TaskType.Call; break;\r\n case 'task': taskType = TaskType.Task; break;\r\n case 'tour': taskType = TaskType.Tour; break;\r\n }\r\n }\r\n return taskType;\r\n }\r\n\r\n get SelectedPriorityValue(): any {\r\n let val: any = this.SelectedPriority.value;\r\n let priority: any;\r\n if (val && val.value) {\r\n switch (val.value) {\r\n case 'high': priority = TaskPriority.High; break;\r\n case 'medium': priority = TaskPriority.Med; break;\r\n case 'low': priority = TaskPriority.low; break;\r\n }\r\n }\r\n return priority;\r\n }\r\n\r\n get SelectedClients(): number[] {\r\n return this.formGroup.controls.selectedClients.value || [];\r\n }\r\n\r\n get ScheduledDateTimeValue(): Date {\r\n let d: Date = this.ScheduleTime.value;\r\n return new Date(this.ScheduleDateValue.getFullYear(), this.ScheduleDateValue.getMonth(), this.ScheduleDateValue.getDate(), d.getHours(), d.getMinutes());\r\n }\r\n\r\n get ScheduleDateValue(): Date {\r\n let d: Date = this.ScheduleDate.value;\r\n return new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0, 0, 0);\r\n }\r\n\r\n get ScheduleTimeValue(): string {\r\n let d: Date = this.ScheduleTime.value;\r\n return d.getHours() + ':' + d.getMinutes()\r\n }\r\n //#region get value\r\n\r\n\r\n //#region get\r\n get SelectedTaskCategory(): FormControl {\r\n return this.formGroup.controls.selectedTaskCategory as FormControl;\r\n }\r\n\r\n get SelectedTask(): FormControl {\r\n return this.formGroup.controls.selectedTask as FormControl;\r\n }\r\n\r\n get SelectedPriority(): FormControl {\r\n return this.formGroup.controls.selectedPriority as FormControl;\r\n }\r\n\r\n get SelectedAssigned(): FormControl {\r\n return this.formGroup.controls.selectedAssigned as FormControl;\r\n }\r\n\r\n get ScheduleDate(): FormControl {\r\n return this.formGroup.controls.scheduleDate as FormControl;\r\n }\r\n\r\n get ScheduleTime(): FormControl {\r\n return this.formGroup.controls.scheduleTime as FormControl;\r\n }\r\n\r\n get Title(): FormControl {\r\n return this.formGroup.controls.title as FormControl;\r\n }\r\n\r\n get Comment(): FormControl {\r\n return this.formGroup.controls.comment as FormControl;\r\n }\r\n\r\n get RRuleData(): RepeatRuleResponse {\r\n return this.rRuleObj || {} as RepeatRuleResponse;\r\n }\r\n\r\n get isRruleSet(): boolean {\r\n return (this.rRuleObj && this.rRuleObj.RRule && this.rRuleObj.RRule) ? true : false;\r\n }\r\n\r\n //#endregion get\r\n\r\n clearRRuleData() {\r\n this.rRuleObj = {} as RepeatRuleResponse;\r\n }\r\n\r\n setClient(e: any) {\r\n if (Array.isArray(e)) {\r\n this.clients = e;\r\n }\r\n else if (e && e.clt_id > 0) {\r\n this.clients = [e];\r\n }\r\n else if (e && e.id) {\r\n this.clients = [e];\r\n }\r\n else {\r\n this.clients = [];\r\n }\r\n\r\n let clientIds: number[] = this.clients.map((c) => { return c.clt_id || (c as any)?.id });\r\n this.formGroup.controls.selectedClients.setValue(clientIds);\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n }\r\n\r\n ClosePopUp() {\r\n this.ngZone.run(() => { \r\n this.formGroup.reset();\r\n this.clearRRuleData();\r\n this.showPopup = false;\r\n this.HidePopup.emit(this.showPopup);\r\n });\r\n }\r\n\r\n setVariables(): void {\r\n this.showMiniSearch = this.clients.length == 0;\r\n if (this.clientGroup) {\r\n this.clientIds = [];\r\n this.clientGroup.forEach((val) => {\r\n this.clientIds.push(val.id);\r\n })\r\n this.showMiniSearch = false;\r\n this.formGroup.controls.selectedClients.setValue(this.clientIds);\r\n\r\n }\r\n this.store.select(TENANTS_INFO).subscribe((tenant: TENANTSINTERFACE) => {\r\n this.tenantId = tenant.selected_tenant.id;\r\n if (this.tenantId > 0) {\r\n this.store.dispatch({ type: 'ROUTER_GO' })\r\n }\r\n });\r\n\r\n if (this.clientIds && this.clientIds.length > 0) {\r\n this.formGroup.controls.selectedClients.setValue(this.clientIds);\r\n }\r\n\r\n if (this.opportunityIds.length > 0 && this.clientIds.length == 0)\r\n this.clientIds = [0, 0];\r\n }\r\n\r\n HideRRule(e: any): void {\r\n this.showRRule = e;\r\n }\r\n\r\n FetchRRuleData(e: any): void {\r\n this.rRuleObj = e;\r\n }\r\n\r\n CreateTask(): void {\r\n this.formGroup.markAllAsTouched();\r\n this.markAllControlsAsDirty(Object.values(this.formGroup.controls));\r\n\r\n if (this.opportunityIds.length > 0 && this.clientIds.length == 0) {\r\n this.errorMessages.push('client required');\r\n this.showErrorPopup?.next(true);\r\n return;\r\n }\r\n\r\n if (this.rRuleObj && this.rRuleObj.RRule) {\r\n if (this.opportunityIds.length > 0)\r\n this.CreateRecurringTaskByOpportunity();\r\n else\r\n this.CreateRecurringTaskByClient();\r\n }\r\n else {\r\n if (this.opportunityIds.length > 0)\r\n this.CreateTaskByOpportunity();\r\n else\r\n this.CreateTaskByClient();\r\n }\r\n }\r\n\r\n CreateTaskByClient(): void {\r\n let obj: CreateTaskByClientRequest = {\r\n client_id: this.SelectedClients,\r\n assigned_to_type: TaskAssignToType.SpecificStaff,\r\n assigned_to_staff_id: this.SelectedAssigned.value.id,\r\n type: this.SelectedTaskValue,\r\n category_id: this.SelectedTaskCategory.value.id,\r\n title: this.Title.value,\r\n notes: this.Comment.value,\r\n priority: this.SelectedPriorityValue,\r\n scheduled_date: this.ScheduledDateTimeValue\r\n }\r\n\r\n this.taskService.TaskCreateServiceByClient(this.tenantId, obj).subscribe({\r\n next: (obj: any) => {\r\n\r\n if (obj.task_id.length > 0) {\r\n this.translate.get('Shared.TASK.TASK-CREATE.TASK_CREATED_MESSAGE').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation, });\r\n });\r\n }\r\n else {\r\n this.errorMessages.push('Something went wrong');\r\n this.showErrorPopup?.next(true);\r\n throw new Error('Error on creating prospect.');\r\n }\r\n },\r\n error: (error: any) => {\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n CreateRecurringTaskByClient(): void {\r\n let obj: CreateRecurringTaskByClientRequest = {\r\n client_id: this.SelectedClients,\r\n assigned_to_type: TaskAssignToType.SpecificStaff,\r\n assigned_to_staff_id: this.SelectedAssigned.value.id,\r\n type: this.SelectedTaskValue,\r\n category_id: this.SelectedTaskCategory.value.id,\r\n title: this.Title.value,\r\n notes: this.Comment.value,\r\n priority: this.SelectedPriorityValue,\r\n start_date: this.ScheduleDateValue,\r\n time: this.ScheduleTimeValue,\r\n repeat_rule: this.rRuleObj.RRule,\r\n }\r\n\r\n this.taskService.TaskCreateRecurringServiceByClient(this.tenantId, obj).subscribe({\r\n next: (obj: any) => {\r\n if (obj.recurring_template_id.length > 0) {\r\n this.translate.get('Shared.TASK.TASK-CREATE.TASK_CREATED_MESSAGE').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation });\r\n });\r\n }\r\n else {\r\n this.errorMessages.push('Something went wrong');\r\n this.showErrorPopup?.next(true);\r\n throw new Error('Error on creating prospect.');\r\n }\r\n },\r\n error: (error: any) => {\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n CreateTaskByOpportunity(): void {\r\n let obj: CreateTaskByOpportunityRequest = {\r\n opportunity_id: this.opportunityIds,\r\n assigned_to_type: TaskAssignToType.SpecificStaff,\r\n assigned_to_staff_id: this.SelectedAssigned.value.id,\r\n type: this.SelectedTaskValue,\r\n category_id: this.SelectedTaskCategory.value.id,\r\n title: this.Title.value,\r\n notes: this.Comment.value,\r\n priority: this.SelectedPriorityValue,\r\n scheduled_date: this.ScheduledDateTimeValue\r\n }\r\n\r\n this.taskService.TaskCreateServiceByOpportunity(this.tenantId, obj).subscribe({\r\n next: (obj: any) => {\r\n\r\n if (obj.task_id.length > 0) {\r\n this.translate.get('Shared.TASK.TASK-CREATE.TASK_CREATED_MESSAGE').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation });\r\n });\r\n }\r\n else {\r\n this.errorMessages.push('Something went wrong');\r\n this.showErrorPopup?.next(true);\r\n throw new Error('Error on creating prospect.');\r\n }\r\n },\r\n error: (error: any) => {\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n CreateRecurringTaskByOpportunity(): void {\r\n let obj: CreateRecurringTaskByOpportunityRequest = {\r\n opportunity_id: this.opportunityIds,\r\n assigned_to_type: TaskAssignToType.SpecificStaff,\r\n assigned_to_staff_id: this.SelectedAssigned.value.id,\r\n type: this.SelectedTaskValue,\r\n category_id: this.SelectedTaskCategory.value.id,\r\n title: this.Title.value,\r\n notes: this.Comment.value,\r\n priority: this.SelectedPriorityValue,\r\n start_date: this.ScheduleDateValue,\r\n time: this.ScheduleTimeValue,\r\n repeat_rule: this.rRuleObj.RRule,\r\n }\r\n\r\n this.taskService.TaskCreateRecurringServiceByOpportunity(this.tenantId, obj).subscribe({\r\n next: (obj: any) => {\r\n\r\n if (obj.recurring_template_id.length > 0) {\r\n this.translate.get('Shared.TASK.TASK-CREATE.TASK_CREATED_MESSAGE').subscribe((translation) => {\r\n this.messageService.add({ severity: 'success', summary: 'Success', detail: translation, });\r\n });\r\n }\r\n else {\r\n this.errorMessages.push('Something went wrong');\r\n this.showErrorPopup?.next(true);\r\n throw new Error('Error on creating prospect.');\r\n }\r\n },\r\n error: (error: any) => {\r\n\r\n if (error instanceof NotFoundError) {\r\n this.errorMessages.push(error.originalError.error.errorMessage);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n if (error.originalError.status == 500) {\r\n this.errorMessages.push(error.originalError.error);\r\n this.showErrorPopup?.next(true);\r\n } else {\r\n error.originalError.error.forEach((e: any) => {\r\n this.errorMessages.push(e.errorMessage);\r\n });\r\n this.showErrorPopup?.next(true);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n onRemoveClient(index: number) {\r\n if (this.clientGroup[index])\r\n this.clientGroup.splice(index, 1);\r\n // this.cd.detectChanges();\r\n }\r\n\r\n /**\r\n * Code used for debugging only\r\n */\r\n findInvalidControls() {\r\n const invalid = [];\r\n const controls = this.formGroup.controls;\r\n for (const name in controls) {\r\n if (controls[name].invalid) {\r\n invalid.push(name);\r\n }\r\n }\r\n return invalid;\r\n }\r\n\r\n public markAllControlsAsDirty(abstractControls: AbstractControl[]): void {\r\n abstractControls.forEach(abstractControl => {\r\n if (abstractControl instanceof FormControl) {\r\n (abstractControl as FormControl).markAsDirty({ onlySelf: true });\r\n } else if (abstractControl instanceof FormGroup) {\r\n this.markAllControlsAsDirty(Object.values((abstractControl as FormGroup).controls));\r\n } else if (abstractControl instanceof FormArray) {\r\n this.markAllControlsAsDirty((abstractControl as FormArray).controls);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction FactoryHttpLoader(http: HttpClient): TranslateHttpLoader {\r\n return new TranslateHttpLoader(http, 'assets/dist/i18n/', '.json');\r\n}\r\n@NgModule({\r\n declarations: [TaskCreateComponent],\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n FooterComponentModule,\r\n HeaderComponentModule,\r\n SidebarComponentModule,\r\n DialogModule,\r\n DropdownModule,\r\n InputTextModule,\r\n InputTextareaModule,\r\n ButtonModule,\r\n StyleClassModule,\r\n CommonModule,\r\n CalendarModule,\r\n MultiSelectModule,\r\n SelectButtonModule,\r\n InputMaskModule,\r\n InputSwitchModule,\r\n InputSwitchModule,\r\n ScrollPanelModule,\r\n ToastModule,\r\n DividerModule,\r\n RruleComponentModule,\r\n AssignedToComponentModule,\r\n MiniSearchComponentModule,\r\n ErrorMsgComponentModule,\r\n TaskCategoryDropdownComponentModule,\r\n TaskTypeDropdownComponentModule,\r\n PriorityComponentModule,\r\n ErrorsComponentModule,\r\n TextTransFormPipeModule,\r\n AvatarModule,\r\n ChipModule,\r\n ShortNamePipeModule,\r\n ListboxModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient]\r\n }\r\n }),\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: IntercepterService, multi: true },\r\n ],\r\n exports: [TaskCreateComponent]\r\n})\r\nexport class TaskCreateComponentModule { }\r\n","\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n

\r\n {{'Shared.TASK.TASK-CREATE.CREATE_TASK' | translate}}\r\n

\r\n

1\">\r\n {{'Shared.TASK.TASK-CREATE.CREATE_TASK_FOR' | translate}}\r\n {{(clientIds$ | async)?.length}} {{'Shared.TASK.TASK-CREATE.MEMBERS' | translate}}\r\n \r\n

\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n 0\">\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Select...
\r\n
\r\n
\r\n \r\n
\r\n {{RRuleData.RRuleText}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'tax-category-modal',\r\n templateUrl: './tax-category-modal.component.html',\r\n styleUrls: ['./tax-category-modal.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TaxCategoryModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaxCategoryModalComponent],\r\n imports: [],\r\n exports: [TaxCategoryModalComponent]\r\n})\r\nexport class TaxCategoryModalComponentModule {\r\n}\r\n","

tax-category-modal works!

\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n NgModule,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n FormBuilder,\r\n FormGroup,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { TaxMasterService } from '@fitness-force/api';\r\nimport { AppErrors, ErrorMsgComponentModule, UnauthorizedError } from '@fitness-force/errors';\r\nimport { ValidationError } from '@fitness-force/models';\r\nimport {\r\n TranslateLoader,\r\n TranslateModule,\r\n TranslateService,\r\n} from '@ngx-translate/core';\r\nimport {\r\n ConflictError,\r\n NotFoundError,\r\n} from 'libs/errors/src/lib/not-found.error';\r\nimport { MessageService } from 'primeng/api';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport {\r\n DynamicDialogRef,\r\n DynamicDialogConfig,\r\n DynamicDialogModule,\r\n} from 'primeng/dynamicdialog';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { FactoryHttpLoader } from '../helpsupport/helpsupport.component';\r\nimport { ErrorsComponentModule } from '../errors/errors.component';\r\n\r\n@Component({\r\n selector: 'tax-group-create',\r\n templateUrl: './tax-group-create.component.html',\r\n styleUrls: ['./tax-group-create.component.scss'],\r\n providers: [MessageService],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TaxGroupCreateComponent implements OnInit {\r\n taxCategoryForm!: FormGroup;\r\n taxCategory!: any;\r\n tenantId!: number;\r\n\r\n primaryLanguage!: string;\r\n secondaryLanguage!: string;\r\n isSecondaryLanguage = false;\r\n\r\n // ERRors\r\n showErrorPopup = new BehaviorSubject(false);\r\n error = new BehaviorSubject(null as AppErrors | null);\r\n errorMessages: ValidationError[] = [];\r\n\r\n constructor(\r\n public ref: DynamicDialogRef,\r\n public config: DynamicDialogConfig,\r\n private taxCategoryService: TaxMasterService,\r\n public translate: TranslateService,\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef,\r\n ) {\r\n this.taxCategory = this.config.data?.taxCategory;\r\n this.tenantId = this.config.data?.tenantId;\r\n if (this.config.data?.isSecondaryLanguage) {\r\n this.isSecondaryLanguage = true;\r\n this.secondaryLanguage = this.config.data?.secondaryLanguage;\r\n this.primaryLanguage = this.config.data?.primaryLanguage;\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.createTaxCategoryFrom();\r\n }\r\n\r\n close() {\r\n this.ref.close();\r\n }\r\n\r\n HideErrorPopup(event: any) {\r\n this.showErrorPopup?.next(false);\r\n this.errorMessages = [];\r\n this.error.next(null);\r\n }\r\n\r\n createTaxCategoryFrom() {\r\n this.taxCategoryForm = this.fb.group({\r\n name_primary_language: [\r\n this.taxCategory ? this.taxCategory.name_primary_language : '',\r\n [Validators.required],\r\n ],\r\n name_secondary_language: [\r\n this.taxCategory ? this.taxCategory.name_secondary_language : ''\r\n ],\r\n });\r\n }\r\n\r\n get CatNamePrimary(): AbstractControl | null {\r\n return this.taxCategoryForm.get('name_primary_language');\r\n }\r\n get CatNameSecondary(): AbstractControl | null {\r\n return this.taxCategoryForm.get('name_secondary_language');\r\n }\r\n\r\n saveTaxCategory() {\r\n if (this.taxCategoryForm.valid) {\r\n let formData = { ...this.taxCategoryForm.getRawValue() };\r\n if (this.taxCategory) {\r\n this.taxCategoryService\r\n .updateTaxGroup(this.tenantId, this.taxCategory.id, formData)\r\n .subscribe({\r\n next: (res) => {\r\n this.ref.close({ result: res });\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n } else {\r\n this.taxCategoryService\r\n .createTaxGroup(this.tenantId, formData)\r\n .subscribe({\r\n next: (res) => {\r\n this.ref.close(res);\r\n },\r\n error: (error) => {\r\n this.handleError(error);\r\n },\r\n });\r\n }\r\n } else {\r\n console.log(\"form invlid...\");\r\n Object.keys(this.taxCategoryForm.controls).forEach((field) => {\r\n const control = this.taxCategoryForm.get(field);\r\n control?.markAsTouched({ onlySelf: true });\r\n });\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n handleError(error: any) {\r\n // if (error instanceof NotFoundError) {\r\n // this.translate\r\n // .get([\r\n // 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n // 'Shared.TASK.TASK-CREATE.PAGE_NOT_FOUND',\r\n // ])\r\n // .subscribe((translations) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n // detail: translations['common.errors.SERVER_SIDE.PAGE_NOT_FOUND'],\r\n // });\r\n // });\r\n // } else if (error instanceof UnauthorizedError) {\r\n // } else if (error instanceof ConflictError) {\r\n // error.originalError.error.forEach((item: any) => {\r\n // if (item.errorCode == 'duplicatevalue') {\r\n // this.translate\r\n // .get([\r\n // 'common.errors.SERVER_SIDE.DUPLICATE',\r\n // 'common.errors.SERVER_SIDE.DUPLICATE_MESSAGE',\r\n // ])\r\n // .subscribe((translations) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: translations['common.errors.SERVER_SIDE.DUPLICATE'],\r\n // detail:\r\n // translations['common.errors.SERVER_SIDE.DUPLICATE_MESSAGE'],\r\n // });\r\n // });\r\n // }\r\n // });\r\n // }\r\n // else {\r\n // this.translate\r\n // .get([\r\n // 'common.errors.SERVER_SIDE.ERROR_OCCURRED',\r\n // 'common.errors.SERVER_SIDE.SOMETHING_WRONG',\r\n // ])\r\n // .subscribe((translations) => {\r\n // this.messageService.add({\r\n // severity: 'error',\r\n // summary: translations['common.errors.SERVER_SIDE.ERROR_OCCURRED'],\r\n // detail: translations['common.errors.SERVER_SIDE.SOMETHING_WRONG'],\r\n // });\r\n // });\r\n // }\r\n\r\n this.error.next(error);\r\n this.showErrorPopup?.next(true);\r\n }\r\n\r\n extractErrorMessages(error: any) {\r\n error.originalError.error.forEach((item: any) => {\r\n this.errorMessages.push(item.errorMessage);\r\n });\r\n if (Array.isArray(error)) {\r\n error.forEach((item: any) => {\r\n this.errorMessages.push(item.errorMessage);\r\n });\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [TaxGroupCreateComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n DialogModule,\r\n DynamicDialogModule,\r\n FormsModule,\r\n InputTextModule,\r\n ErrorsComponentModule,\r\n ErrorMsgComponentModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: FactoryHttpLoader,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n ],\r\n exports: [TaxGroupCreateComponent],\r\n})\r\nexport class TaxGroupCreateComponentModule {}\r\n","\r\n\r\n
\r\n \r\n

\r\n {{taxCategory?('ADMIN.TAX.EDIT_TAX_CATEGORY' | translate):('ADMIN.TAX.ADD_TAX_CATEGORY' | translate)}}\r\n

\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n \r\n\r\n
\r\n\r\n\r\n\r\n","import { Component, OnInit, ChangeDetectionStrategy, NgModule } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'toast',\r\n templateUrl: './toast.component.html',\r\n styleUrls: ['./toast.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ToastComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [ToastComponent],\r\n imports: [],\r\n exports: [ToastComponent]\r\n})\r\nexport class ToastComponentModule {\r\n}\r\n","

toast works!

\r\n","import { Directive, Injectable, Input, EventEmitter, Output, ElementRef, HostListener, NgModule } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[scrollSpy]'\r\n})\r\nexport class ScrollSpyDirective {\r\n @Input() spiedTags = [];\r\n @Output() sectionChange :EventEmitter = new EventEmitter();\r\n \r\n constructor(private _el: ElementRef) {}\r\n private currentSection: string=\"\";\r\n\r\n @HostListener('scroll', ['$event'])\r\n onScroll(event: any) {\r\n const children = this._el.nativeElement.children;\r\n const scrollTop = event.target.scrollTop;\r\n const parentOffset = event.target.offsetTop;\r\n\r\n for (let i = 0; i < children.length; i++) {\r\n const element = children[i];\r\n if (this.spiedTags.some(spiedTag => spiedTag === element.tagName)) {\r\n if ((element.offsetTop - parentOffset) <= scrollTop) {\r\n this.currentSection = element.id;\r\n }\r\n }\r\n }\r\n this.sectionChange.emit(this.currentSection);\r\n }\r\n\r\n}\r\n\r\n@NgModule(\r\n {\r\n declarations: [ScrollSpyDirective],\r\n exports:[ScrollSpyDirective]\r\n }\r\n )\r\n \r\n export class ScrollSpyDirectiveModule {}\r\n","import { NgModule, Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'Age',\r\n pure: true\r\n})\r\nexport class AgePipe implements PipeTransform {\r\n\r\n\r\n // convert date to local date with time zone passed as string ...\r\n // i.e\r\n // date = convertTimezoneToLocal(date, timezone, true);\r\n convertTimezoneToLocal(date: Date, timezone: string, reverse: boolean): Date {\r\n const reverseValue = reverse ? -1 : 1;\r\n const dateTimezoneOffset = date.getTimezoneOffset();\r\n const timezoneOffset = this.timezoneToOffset(timezone, dateTimezoneOffset);\r\n return this.addDateMinutes(date, reverseValue * (timezoneOffset - dateTimezoneOffset));\r\n }\r\n\r\n addDateMinutes(date: Date, minutes: number) {\r\n date = new Date(date.getTime());\r\n date.setMinutes(date.getMinutes() + minutes);\r\n return date;\r\n }\r\n\r\n\r\n // Convert sting time zone to offset.\r\n timezoneToOffset(timezone: string, fallback: number): number {\r\n // Support: IE 9-11 only, Edge 13-15+\r\n // IE/Edge do not \"understand\" colon (`:`) in timezone\r\n timezone = timezone.replace(/:/g, '');\r\n const requestedTimezoneOffset = Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;\r\n return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;\r\n }\r\n\r\n\r\n\r\n transform(value: any, args?: any): any {\r\n if (value) {\r\n // Create date object without timezone added..\r\n let newDate= new Date(value);\r\n\r\n // add timezone value to date.\r\n newDate= this.addDateMinutes(newDate,-1*newDate.getTimezoneOffset())\r\n let seconds = Math.floor((+new Date() - +newDate) / 1000);\r\n\r\n const intervals: { [key: string]: number } = {\r\n 'year': 31536000,\r\n 'month': 2592000,\r\n // 'week': 604800,\r\n 'day': 86400,\r\n // 'hour': 3600,\r\n // 'minute': 60,\r\n // 'second': 1\r\n };\r\n let counter=[];\r\n if (seconds <= 86400) {\r\n return 'Today';\r\n }\r\n if(seconds <=172800 && seconds>86400){\r\n return 'Yesterday';\r\n }\r\n for (const i in intervals) {\r\n let part = Math.floor(seconds / intervals[i]);\r\n if (part > 0)\r\n if (part === 1) {\r\n counter.push(' '+part+ ' ' + i + '') ; // singular (1 day ago)\r\n seconds=seconds-intervals[i];\r\n } else {\r\n counter.push(' '+part+ ' ' + i + 's') ; // singular (1 day ago) return counter + ' ' + i + 's'; // plural (2 days ago)\r\n seconds=seconds-(part*intervals[i]);\r\n }\r\n if(seconds<=0){\r\n break;\r\n }\r\n }\r\n return counter.join(\",\");\r\n\r\n }\r\n return value;\r\n}\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [AgePipe],\r\n imports: [],\r\n exports: [AgePipe],\r\n})\r\nexport class AgePipeModule {}\r\n","import { CommonModule } from '@angular/common';\r\nimport { Pipe, PipeTransform, NgModule } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'bday'\r\n})\r\nexport class BdayPipe implements PipeTransform {\r\n\r\n transform(value: string): boolean {\r\n \r\n const today = new Date()\r\n const nextDate = new Date(value);\r\n const localNextDate = new Date(nextDate.toLocaleString())\r\n console.log('bhgjd', value, today.getMonth(), localNextDate.getMonth(), today.getDate(), localNextDate.getDate())\r\n if(today.getMonth() == localNextDate.getMonth() && today.getDate() == localNextDate.getDate()) {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n}\r\n\r\n@NgModule({\r\n declarations: [BdayPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [BdayPipe]\r\n})\r\nexport class BdayPipeModule {\r\n}\r\n","import { NgModule, Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { PlanMasterList, Report, ReportListResponse, Settings } from '@fitness-force/models';\r\n\r\n@Pipe({\r\n name: 'settingsFilter',\r\n})\r\nexport class SettingsFilterPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(settings: Settings[], term: string): any {\r\n //check if the search term is defined\r\n if (!settings || !term) return settings;\r\n const re = new RegExp(term, 'gi');\r\n //return updated setting array\r\n let result = settings.filter(s => s.name.toLowerCase().includes(term.toLowerCase())\r\n || s.categories.some(c => c.name.toLowerCase().includes(term.toLowerCase()))\r\n || s.categories.some(c => c.description.toLowerCase().includes(term.toLowerCase()))\r\n );\r\n return result;\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'reportFilter',\r\n})\r\nexport class ReportFilterPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(reports: ReportListResponse[], term: string): any {\r\n //check if the search term is defined\r\n if (!reports || !term) return reports;\r\n const re = new RegExp(term, 'gi');\r\n //return updated setting array\r\n let result = reports.filter(s => s.category.toLowerCase().includes(term.toLowerCase())\r\n || s.reports.some(c => c.report_key.toLowerCase().includes(term.toLowerCase()))\r\n || s.reports.some(c => c.report_description.toLowerCase().includes(term.toLowerCase()))\r\n );\r\n return result;\r\n }\r\n}\r\n\r\n\r\n@Pipe({\r\n name: 'fevouriteReportFilter',\r\n})\r\nexport class FevouriteReportFilterPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(reports: any, term: string): any {\r\n //check if the search term is defined\r\n if (!reports || !term) return reports;\r\n const re = new RegExp(term, 'gi');\r\n //return updated setting array\r\n let result = reports.filter((s: any) => s.report.report_key.toLowerCase().includes(term.toLowerCase())\r\n || s.report.report_description.toLowerCase().includes(term.toLowerCase())\r\n );\r\n return result;\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'highlight'\r\n})\r\n\r\nexport class HighlightSearch implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(value: any, args: any): any {\r\n\r\n if (!args) {\r\n return value;\r\n }\r\n // Match in a case insensitive maneer\r\n const re = new RegExp(args, 'gi');\r\n const match = value.match(re);\r\n\r\n // If there's no match, just return the original value.\r\n if (!match) {\r\n return value;\r\n }\r\n\r\n const replacedValue = value.replace(re, \"\" + match[0] + \"\");\r\n return replacedValue;\r\n }\r\n}\r\n\r\n@Pipe({\r\n name: 'planFilter',\r\n})\r\nexport class PlanFilterPipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(plan: any, term: any): PlanMasterList[] {\r\n //check if the search term is defined \r\n if (!plan || !term) return plan; \r\n if (!term.filter && !term.serviceTypeFilter) return plan;\r\n\r\n let result = {} as PlanMasterList[];\r\n if (term.filter && term.serviceTypeFilter) {\r\n result = plan.filter((s: any) =>\r\n (\r\n s.name_primary_language.toLowerCase().includes(term.filter.toLowerCase())\r\n || s.name_secondary_language.toLowerCase().includes(term.filter.toLowerCase())\r\n || s.subscription_category.toLowerCase().includes(term.filter.toLowerCase())\r\n ) && (\r\n ((s.recurring_service_catagories) && s.recurring_service_catagories.includes(term.serviceTypeFilter))\r\n || ((s.nonrecurring_service_catagories) && s.nonrecurring_service_catagories.includes(term.serviceTypeFilter))\r\n )\r\n );\r\n }\r\n else if (term.filter) {\r\n result = plan.filter((s: any) =>\r\n s.name_primary_language.toLowerCase().includes(term.filter.toLowerCase())\r\n || s.name_secondary_language.toLowerCase().includes(term.filter.toLowerCase())\r\n || s.subscription_category.toLowerCase().includes(term.filter.toLowerCase())\r\n );\r\n }\r\n else if (term.serviceTypeFilter) {\r\n result = plan.filter((s: any) =>\r\n ((s.recurring_service_catagories) && s.recurring_service_catagories.includes(term.serviceTypeFilter))\r\n || ((s.nonrecurring_service_catagories) && s.nonrecurring_service_catagories.includes(term.serviceTypeFilter))\r\n );\r\n }\r\n return result;\r\n }\r\n}\r\n\r\n@NgModule(\r\n {\r\n declarations: [HighlightSearch, SettingsFilterPipe, ReportFilterPipe, FevouriteReportFilterPipe, PlanFilterPipe],\r\n exports: [HighlightSearch, SettingsFilterPipe, ReportFilterPipe, FevouriteReportFilterPipe, PlanFilterPipe]\r\n }\r\n)\r\n\r\nexport class CommmonPipeModule { }\r\n","import { Pipe, PipeTransform, NgModule, Injectable } from '@angular/core';\r\nimport { formatCurrency, getCurrencySymbol, getLocaleCurrencyCode, getLocaleNumberFormat, getNumberOfCurrencyDigits, NumberFormatStyle } from '@angular/common';\r\nimport { Store } from '@ngrx/store';\r\nimport { COUNTRY_MASTER_STATE } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { Country } from '@fitness-force/models';\r\nimport { CommonService, CountryService } from '@fitness-force/api';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { LOCALE_ID, Inject } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'currencyformat',\r\n})\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CurrencyformatPipe implements PipeTransform {\r\n currencyCode = new BehaviorSubject('');\r\n currencyName = new BehaviorSubject('');\r\n country: Country;\r\n constructor(public store: Store, @Inject(LOCALE_ID) public locale: string, private commmonService: CommonService) { }\r\n\r\n transform(value: number, digitsInfo?: string): string {\r\n this.store.select(COUNTRY_MASTER_STATE).subscribe((country: Country) => {\r\n this.currencyCode.next(country.currency_code);\r\n this.currencyName.next(country.currency_name);\r\n this.country = country;\r\n });\r\n value = this.commmonService.ConvertAmountFromMinorCurrency(value);\r\n return formatCurrency(\r\n value,\r\n this.locale,\r\n getCurrencySymbol(this.currencyCode.value, 'wide', this.locale),\r\n getLocaleCurrencyCode(this.locale)!\r\n );\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [CurrencyformatPipe],\r\n imports: [],\r\n exports: [CurrencyformatPipe],\r\n})\r\nexport class CurrencyformatPipeModule { }\r\n","import { Pipe, PipeTransform, NgModule } from '@angular/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { LOCALE_ID, Inject } from '@angular/core';\r\nimport { TimeconversionService } from '@fitness-force/api';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Pipe({\r\n name: 'datetimeformat',\r\n})\r\nexport class DateTimeFormatPipe implements PipeTransform {\r\n constructor(@Inject(LOCALE_ID) public locale: string, private timeService: TimeconversionService,\r\n private translateService: TranslateService) {}\r\n\r\n private readonly datePatterns = new Map([\r\n ['short', 'd/M/y, h:mm:ss a'],\r\n ['medium', 'MMM d, y, h:mm:ss a'],\r\n ['long', 'EEEE, LLLL d, y, h:mm:ss a'],\r\n ['dateOnly', 'MMM d, y'],\r\n ['full','EEEE, MMMM d, y, h:mm:ss a zzzz'],\r\n ['shortDate','M/d/yy'],\r\n ['mediumDate','MMM d, y'],\r\n ['longDate','MMMM d, y'],\r\n ['fullDate','EEEE, MMMM d, y'],\r\n ['shortTime','h:mm a'],\r\n ['mediumTime','h:mm:ss a'],\r\n ['longTime','h:mm:ss a z'],\r\n ['fullTime','h:mm:ss a zzzz'],\r\n ['atDate','dd MMM yyyy,hh:mm a'],\r\n ['usformat','M/d/yyyy'],\r\n ['expiryDate','M/d'],\r\n ['date','d'],\r\n ['month','M'],\r\n ['year','yyyy'],\r\n ]);\r\n\r\n\r\n // transform(date: Date | string ,format?: string): string | null {\r\n\r\n // let localDate= this.timeService.ConvertUTCToLocalDateTime(date);\r\n // if (format) {\r\n // const pattern = this.datePatterns.get(format!);\r\n // if (pattern)\r\n // {\r\n // if(format == 'atDate')\r\n // {\r\n // return new DatePipe(this.locale).transform(localDate, pattern.split(',')[0])+\" at \"+ new DatePipe(this.locale).transform(localDate,pattern.split(',')[1]);\r\n // }\r\n // else return new DatePipe(this.locale).transform(localDate, pattern);\r\n // }\r\n // else return new DatePipe(this.locale).transform(localDate, format);\r\n // } else {\r\n // return new DatePipe(this.locale).transform(localDate,this.datePatterns.get('dateOnly'));\r\n // }\r\n // }\r\n\r\n\r\n transform(date: Date | string, format?: string): any {\r\n let pattern=this.datePatterns.get('dateOnly');\r\n if (format) pattern = this.datePatterns.get(format!);\r\n // TODO: Need to put defaultTimezone here discussion needed how localization is handled\r\n const datePipe: DatePipe = new DatePipe(this.translateService.currentLang);\r\n return datePipe.transform(date, pattern);\r\n }\r\n\r\n}\r\nexport const dateCollection = [\r\n {\r\n name: \"Tomorrow\", value: \"tomorrow\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 1));\r\n }\r\n },\r\n {\r\n name: \"Yesterday\", value: \"yesterday\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() - 1));\r\n }\r\n },\r\n {\r\n name: \"In 2 days\", value: \"in 2 buisness days\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 2));\r\n }\r\n },\r\n {\r\n name: \"In 3 days\", value: \"in 3 buisness days\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 3));\r\n }\r\n },\r\n {\r\n name: \"this week\", value: \"this week\", date: (): Date => {\r\n return new Date((new Date()).setDate((new Date()).getDate() + 2));\r\n }\r\n },\r\n {\r\n name: \"In 1 Week\", value: \"in 1 week\", date: (): Date => {\r\n return new Date((new Date()).getTime() + 7 * 24 * 60 * 60 * 1000);\r\n }\r\n },\r\n {\r\n name: \"In 2 Weeks\", value: \"in 2 week\", date: (): Date => {\r\n return new Date((new Date()).getTime() + 14 * 24 * 60 * 60 * 1000);\r\n }\r\n },\r\n {\r\n name: \"In 1 Month\", value: \"in 1 month\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 2, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 1, date);\r\n }\r\n },\r\n {\r\n name: \"In 2 Months\", value: \"in 2 months\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 3, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 2, date);\r\n }\r\n },\r\n {\r\n name: \"In 6 Months\", value: \"in 6 months\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() + 7, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() + 6, date);\r\n }\r\n },\r\n {\r\n name: \"Last 6 Months\", value: \"last 6 months\", date: (): Date => {\r\n let now = new Date();\r\n let lastDateOfNewDate: number = new Date(now.getFullYear(), now.getMonth() - 7, 0).getDate();\r\n let date = (now.getDate() >= lastDateOfNewDate ? lastDateOfNewDate : now.getDate()) - 1;\r\n return new Date(now.getFullYear(), now.getMonth() - 6, date);\r\n }\r\n },\r\n {\r\n name: \"Custom Date\", value: \"custom date\", date: (): Date => {\r\n return new Date()\r\n }\r\n }\r\n];\r\n\r\nexport function weekData(type: string){\r\n let date = new Date();\r\n let dayOfWeekNumber = date.getDay();\r\n let nameOfDay;\r\n let quote;\r\n\r\n switch(dayOfWeekNumber){\r\n case 0:\r\n nameOfDay = 'Sunday';\r\n quote = 'Time to chillax!';\r\n break;\r\n case 1:\r\n nameOfDay = 'Monday';\r\n quote = 'Monday morning blues!';\r\n break;\r\n case 2:\r\n nameOfDay = 'Tuesday';\r\n quote = 'Taco Time!';\r\n break;\r\n case 3:\r\n nameOfDay = 'Wednesday';\r\n quote = 'Two more days to the weekend.';\r\n break;\r\n case 4:\r\n nameOfDay = 'Thursday';\r\n quote = 'The weekend is almost here...';\r\n break;\r\n case 5:\r\n nameOfDay = 'Friday';\r\n quote = 'Weekend is here!';\r\n break;\r\n case 6:\r\n nameOfDay = 'Saturday';\r\n quote = 'Time to party!';\r\n break;\r\n\r\n }\r\n\r\n let curr = new Date; // get current date\r\n let first = curr.getDate() - curr.getDay(); // First day is the day of the month - the day of the week\r\nlet last = first + 6; // last day is the first day + 6\r\n\r\nlet firstDayWeek = new Date(curr.setDate(first));\r\nlet lastDayWeek = new Date(curr.setDate(last));\r\nlet nextweekFristDate = new Date(curr.setDate(last+1));\r\n let nextweekLastDate = new Date(curr.setDate(last+7));\r\n\r\n\r\n if(type == 'start'){\r\n return firstDayWeek;//new Date(firstDayWeek.toLocaleDateString())\r\n } else if(type == 'end'){\r\n return lastDayWeek;//new Date(lastDayWeek.toLocaleDateString())\r\n } else if(type == 'nextweekstart'){\r\n return nextweekFristDate\r\n } else if(type == 'nextweekend'){\r\n return nextweekLastDate\r\n } else {\r\n return null\r\n }\r\n}\r\n@NgModule({\r\n declarations: [DateTimeFormatPipe],\r\n imports: [],\r\n exports: [DateTimeFormatPipe],\r\n})\r\nexport class DateTimeFormatPipeModule {}\r\n","import { NgModule, Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'DayAgo',\r\n pure: true,\r\n})\r\nexport class DayAgoPipe implements PipeTransform {\r\n // convert date to local date with time zone passed as string ...\r\n // i.e\r\n // date = convertTimezoneToLocal(date, timezone, true);\r\n convertTimezoneToLocal(date: Date, timezone: string, reverse: boolean): Date {\r\n const reverseValue = reverse ? -1 : 1;\r\n const dateTimezoneOffset = date.getTimezoneOffset();\r\n const timezoneOffset = this.timezoneToOffset(timezone, dateTimezoneOffset);\r\n return this.addDateMinutes(\r\n date,\r\n reverseValue * (timezoneOffset - dateTimezoneOffset)\r\n );\r\n }\r\n\r\n addDateMinutes(date: Date, minutes: number) {\r\n date = new Date(date.getTime());\r\n date.setMinutes(date.getMinutes() + minutes);\r\n return date;\r\n }\r\n\r\n // Convert sting time zone to offset.\r\n timezoneToOffset(timezone: string, fallback: number): number {\r\n // Support: IE 9-11 only, Edge 13-15+\r\n // IE/Edge do not \"understand\" colon (`:`) in timezone\r\n timezone = timezone.replace(/:/g, '');\r\n const requestedTimezoneOffset =\r\n Date.parse('Jan 01, 1970 00:00:00 ' + timezone) / 60000;\r\n return isNaN(requestedTimezoneOffset) ? fallback : requestedTimezoneOffset;\r\n }\r\n\r\n transform(value: any, args?: any): any {\r\n if (value) {\r\n // Create date object without timezone added..\r\n let newDate = new Date(value);\r\n\r\n // -1 to Reverse.\r\n // add timezone value to date.\r\n newDate = this.addDateMinutes(newDate, -1 * newDate.getTimezoneOffset());\r\n const seconds = Math.floor((+new Date() - +newDate) / 1000);\r\n if (seconds < 29)\r\n // less than 30 seconds ago will show as 'Just now'\r\n return 'Just now';\r\n const intervals: { [key: string]: number } = {\r\n year: 31536000,\r\n month: 2592000,\r\n week: 604800,\r\n day: 86400,\r\n hour: 3600,\r\n minute: 60,\r\n second: 1,\r\n };\r\n let counter;\r\n\r\n for (const i in intervals) {\r\n counter = Math.floor(seconds / intervals[i]);\r\n if (counter > 0)\r\n if (counter === 1) {\r\n return counter + ' ' + i + ' ago'; // singular (1 day ago)\r\n } else {\r\n return counter + ' ' + i + 's ago'; // plural (2 days ago)\r\n }\r\n }\r\n }\r\n return value;\r\n }\r\n}\r\nexport function getCutomDate(daysCount: any, stDate: any) {\r\n const currentDate = new Date();\r\n const startDate = new Date(stDate);\r\n const newTargetDate = new Date(\r\n startDate.getTime() + daysCount * 24 * 60 * 60 * 1000\r\n );\r\n const last = new Date(newTargetDate.getTime() - newTargetDate.getTime());\r\n return `${last.getDate()}-${last.getMonth() + 1}-${last.getFullYear()}`;\r\n}\r\n@NgModule({\r\n declarations: [DayAgoPipe],\r\n imports: [],\r\n exports: [DayAgoPipe],\r\n})\r\nexport class DayAgoPipeModule {}\r\n","import { NgModule, Pipe, PipeTransform } from \"@angular/core\";\r\n\r\n@Pipe({\r\n name: \"shortName\"\r\n})\r\nexport class ShortNamePipe implements PipeTransform {\r\n transform(fullName: string): any {\r\n return fullName?fullName\r\n .split(\" \")\r\n .map(n => n[0])\r\n .join(\"\"):\"\";\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [ShortNamePipe],\r\n imports: [\r\n ],\r\n exports: [ShortNamePipe]\r\n})\r\nexport class ShortNamePipeModule { }\r\n","import { CommonModule } from '@angular/common';\r\n\r\nimport { NgModule, Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'appsearchterm'\r\n})\r\nexport class SearchPipe implements PipeTransform {\r\n\r\n transform(value: any, args?: any): any {\r\n if (!args) {\r\n return value;\r\n }\r\n return value.filter((val:any) => {\r\n let rVal = ((val.name_primary_language && val.name_primary_language.toLowerCase().includes(args.toLowerCase()))) ||\r\n (( val.email_id && val.email_id.toLowerCase().includes(args.toLowerCase()))) || (( val.id && val.id.toString().includes(args.toLowerCase())));\r\n return rVal ? rVal : null;\r\n })\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n@NgModule({\r\n declarations: [SearchPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [SearchPipe]\r\n })\r\n export class SearchPipeModule { }","import { CommonModule } from '@angular/common';\r\nimport { NgModule, Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'TextTransForm',\r\n})\r\nexport class TextTransFormPipe implements PipeTransform {\r\n transform(status: string): any {\r\n console.log('sasiorjkd', status)\r\n if (status) {\r\n let result = status.replace(/([A-Z])/g, ' $1');\r\n let finalStatus = result.charAt(0).toUpperCase() + result.slice(1);\r\n console.log(finalStatus);\r\n if (finalStatus.toLowerCase().includes('non member')) {\r\n return finalStatus.toLowerCase().replace(/non member/g, 'non-member');\r\n } else {\r\n return finalStatus;\r\n }\r\n } else {\r\n return status;\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [TextTransFormPipe],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [TextTransFormPipe],\r\n})\r\nexport class TextTransFormPipeModule {}\r\n","import { NgModule, Pipe, PipeTransform } from '@angular/core';\r\n@Pipe({\r\n name: 'TimeLine',\r\n})\r\nexport class TimeLinePipe implements PipeTransform {\r\n\r\n transform(value: any) {\r\n return timeLineService(value)\r\n }\r\n}\r\nexport function timeLineService(value:any):any{\r\n if (value) {\r\n const oneDay = 24 * 60 * 60 * 1000; // hours*minutes*seconds*milliseconds\r\n const firstDate =new Date();\r\n let nextDate = new Date(value);\r\n\r\n // Timezone modification\r\n const secondDate = addDateMinutes(nextDate,-1*nextDate.getTimezoneOffset());// new Date(nextDate.toLocaleString())\r\n\r\n const diffDays = Math.round(\r\n (firstDate.getTime() - secondDate.getTime()) / oneDay\r\n );\r\n const noRounddiffDays = (firstDate.getTime() - secondDate.getTime()) / oneDay\r\n if (diffDays === 0) {\r\n return { label: 'Today',task_label:\"due Today\", status: 'task-due', value: 0, exact: 'Today', type: 'today'};\r\n } else {\r\n\r\n if(diffDays == 1){\r\n return { label: 'Yesterday',task_label:\"overdue Yesterday\", status: 'task-overdue', value: -1, exact: 'Yesterday', type: 'yesterday'};\r\n } else if(diffDays == -1 && Math.sign(diffDays) == -1){\r\n return { label: 'Tomorrow',task_label:\"due tomorrow\", status: 'task-due', value: 1, exact: 'Tomorrow', type: 'tomorrow'};\r\n } else if(Math.abs(diffDays) < 365 && Math.abs(diffDays) >= 30){\r\n let totalMonth = Math.round(Math.abs(diffDays) / 30)\r\n let exactDays= Math.abs(totalMonth*30 - Math.abs(noRounddiffDays))\r\n let mo='months';\r\n if(totalMonth===1) mo=\"month\"\r\n if(Math.sign(diffDays) == -1) {\r\n return { label: `${totalMonth} ${mo}` , value: `${totalMonth}` ,task_label:`due in ${totalMonth} ${mo}`, status: 'normal', exact: exactDays > 0 ? `${totalMonth} ${mo} ${exactDays} Days`: `${totalMonth} ${mo}`, type: 'togo', timeline: 'month'};\r\n } else {\r\n return { label: `${totalMonth} ${mo}`,task_label:`overdue by ${totalMonth} ${mo}`, value: `${totalMonth}`, status: 'task-overdue', exact: exactDays > 0 ? `${totalMonth} ${mo} ${exactDays} Days`: `${totalMonth} ${mo}`, type: 'ago', timeline: 'month'};\r\n\r\n }\r\n } else if(Math.abs(diffDays) >= 365){\r\n let totalMonth = Math.round(Math.abs(diffDays) / 365)\r\n let exactMonths= Math.round(Math.abs((totalMonth - Math.abs(noRounddiffDays) / 365) * 12))\r\n let ye='years';\r\n if(totalMonth===1) ye=\"year\"\r\n if(Math.sign(diffDays) == -1) {\r\n return { label: `${totalMonth} ${ye}`,task_label:`due in ${totalMonth} ${ye}`, status: 'normal', value: `${totalMonth}`, exact: exactMonths > 0 ? `${totalMonth} ${ye} ${exactMonths} Month`: `${totalMonth} ${ye}`, type: 'togo', timeline: 'year'};\r\n } else {\r\n return { label: `${totalMonth} ${ye}`,task_label:`overdue by ${totalMonth} ${ye}`, status: 'task-overdue', value: `${totalMonth}`, exact: exactMonths > 0 ? `${totalMonth} ${ye} ${exactMonths} Month`: `${totalMonth} ${ye}`, type: 'ago', timeline: 'year'};\r\n\r\n }\r\n } else if( Math.abs(diffDays) < 30 && Math.abs(diffDays) > 1){\r\n\r\n if(Math.sign(diffDays) == -1) {\r\n\r\n return { label: `${Math.abs(diffDays)} days`,task_label:`due in ${Math.abs(diffDays)} days`, status: 'normal ',value: `${Math.abs(diffDays)}`, exact: `${Math.abs(diffDays)}days`, type: 'togo', timeline: 'day'};\r\n\r\n } else {\r\n return { label: `${diffDays} days`,task_label:`overdue by ${Math.abs(diffDays)} days`, status: 'task-overdue',value: `${Math.abs(diffDays)}`, exact: `${Math.abs(diffDays)}days`, type: 'ago', timeline: 'day'};\r\n }\r\n }\r\n else {\r\n return diffDays + 'Days';\r\n }\r\n }\r\n } else {\r\n return { label: '', status: 'no-task'};\r\n }\r\n\r\n}\r\nfunction addDateMinutes(date: Date, minutes: number) {\r\n// date = new Date(date.getTime());\r\n date.setMinutes(date.getMinutes() + minutes);\r\n return date;\r\n}\r\n\r\n@NgModule({\r\n declarations: [TimeLinePipe],\r\n imports: [],\r\n exports: [TimeLinePipe],\r\n})\r\nexport class TimeLinePipeModule {}\r\n","import { AuthSevices } from './../../../../api/src/lib/auth.service';\r\nimport { TENANTS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\nimport { select, Store } from '@ngrx/store';\r\nimport { filter, first, Observable, tap } from 'rxjs';\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from '@angular/router';\r\nimport {SET_CLAIMS_DETAILS} from 'apps/ff-frontend/src/app/state/actions/claim.action'\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TenantResolverService implements Resolve {\r\n\r\n constructor(private store:Store, private authService: AuthSevices) { }\r\n\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot):Observable{\r\n return this.store.pipe(\r\n select(TENANTS_INFO),\r\n tap((loaded)=>{\r\n this.store.dispatch(SET_CLAIMS_DETAILS({claims: this.authService.parseDecodedToken}));\r\n if(loaded?.selected_tenant.id == 0){\r\n // console.log('callingg')\r\n this.store.dispatch({type: 'FETCHED_TENANT_LIST'});\r\n }\r\n }),\r\n filter((loaded:any) => {\r\n // console.log('loaded(((((((((((', loaded);\r\n return loaded.selected_tenant.id > 0 ? true : false\r\n }),\r\n first()\r\n )\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { CONSTANTS_DATA } from '@fitness-force/constants';\r\nimport { AuthSevices } from 'libs/api/src/lib/auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthguardService implements CanActivate {\r\n constructor(private authservice: AuthSevices, private router: Router ) {}\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n if (this.authservice.isLoginedIn) {\r\n \r\n return true;\r\n } \r\n this.router.navigate(['/auth/login'], {queryParams: { returnUrl: state.url }});\r\n return false;\r\n \r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanDeactivate } from '@angular/router';\r\nimport { ConfirmationService } from 'primeng/api';\r\nimport { Observable, of } from 'rxjs';\r\nimport { ComponentCanDeactivate } from './component-can-deactivate';\r\n\r\n@Injectable()\r\nexport class CanDeactivateGuard\r\n implements CanDeactivate\r\n{\r\n constructor(private confirmationService: ConfirmationService) {}\r\n canDeactivate(\r\n component: ComponentCanDeactivate\r\n ): Observable | boolean {\r\n if (component.canDeactivate()) {\r\n return of(true);\r\n }\r\n return new Observable((subscriber) => {\r\n this.confirmationService.confirm({\r\n message:\r\n 'You have unsaved changes. Are you sure you want to leave this page?',\r\n accept: () => {\r\n subscriber.next(true);\r\n subscriber.complete();\r\n },\r\n reject: () => {\r\n subscriber.next(false);\r\n subscriber.complete();\r\n },\r\n });\r\n });\r\n }\r\n}\r\n","import {Component, HostListener} from \"@angular/core\";\r\n\r\n@Component({\r\n template: ''\r\n})\r\nexport abstract class ComponentCanDeactivate {\r\n abstract canDeactivate(): boolean;\r\n @HostListener('window:beforeunload', ['$event'])\r\n unloadNotification($event: any) {\r\n if (!this.canDeactivate()) {\r\n $event.returnValue =true;\r\n }\r\n }\r\n}\r\n","import {ComponentCanDeactivate} from './component-can-deactivate';\r\nimport {NgForm} from \"@angular/forms\";\r\nimport { Component } from '@angular/core';\r\n\r\n@Component({\r\n template: ''\r\n})\r\nexport abstract class FormCanDeactivate extends ComponentCanDeactivate{\r\n\r\n abstract get form():NgForm;\r\n\r\n canDeactivate():boolean{\r\n return this.form.submitted || !this.form.dirty\r\n }\r\n}\r\n","import { Store } from '@ngrx/store';\r\nimport { AuthSevices } from 'libs/api/src/lib/auth.service';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { CLAIMS_INFO } from 'apps/ff-frontend/src/app/state/app.state';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n })\r\nexport class ClaimsguardService implements CanActivate{\r\n getSubDomain = '';\r\n isResponse = '';\r\n constructor(private authservice: AuthSevices, private router: Router, private store:Store) {}\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | boolean {\r\n if (this.authservice.isLoginedIn) {\r\n return new Promise((resolve, reject)=>{\r\n this.store.select(CLAIMS_INFO).subscribe(\r\n {\r\n next: (claimsData:any)=>{\r\n console.log('all claims data', claimsData, state, route, route.data, claimsData[route.data.id])\r\n if(claimsData[route.data.id]){\r\n resolve(claimsData[route.data.id])\r\n } else {\r\n this.router.navigate(['/'], {queryParams: { returnUrl: state.url }});\r\n resolve(false)\r\n }\r\n },\r\n error: (err)=>{\r\n resolve(false)\r\n }\r\n \r\n }\r\n )\r\n })\r\n \r\n } else{\r\n return false;\r\n }\r\n }\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { CyptoSevice } from 'libs/api/src/lib/crypto.service';\r\nimport { Observable } from 'rxjs';\r\nimport {COMPANY_INFO} from 'apps/ff-frontend/src/app/state/app.state'\r\nimport { AppInitService } from '@fitness-force/api';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DomainguardService implements CanActivate{\r\n getSubDomain = '';\r\n isResponse = '';\r\n constructor(private appInit: AppInitService, private store: Store, private router: Router, private cryp: CyptoSevice, private translate: TranslateService) {}\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | Promise | boolean {\r\n // this.getSubDomain = new URL(window.location.href).port;\r\n // this.getSubDomain = 'mygym' + '.' + CONSTANTS_DATA.DOMAIN_INFO.DOMAIN;\r\n\r\n this.getSubDomain = 'fftesting.fitnessforce.com';\r\n\r\n return new Promise((resolve, reject)=>{\r\n this.store.select(COMPANY_INFO).subscribe({\r\n next: (data:any)=>{\r\n console.log('this.companyDetails', data, this.isDomainValid(data.compDetails.subdomain))\r\n \r\n if(data.err.status){\r\n resolve(this.isDomainValid(''));\r\n } else {\r\n resolve(this.isDomainValid(data.compDetails.subdomain));\r\n }\r\n }\r\n }\r\n )\r\n })\r\n }\r\n\r\n isDomainValid(domain: string): boolean {\r\n\r\n if (this.getSubDomain == domain) {\r\n // this.router.navigate(['/'])\r\n return true;\r\n } else{\r\n this.router.navigate(['/page-not-found'])\r\n return false;\r\n }\r\n }\r\n}\r\n","import { AbstractControl, ValidationErrors, ValidatorFn } from \"@angular/forms\";\r\n\r\n\r\nexport function confirmationTextValidator(\r\n matchTo: string,\r\n isBlocked: any, \r\n reverse?: boolean\r\n): ValidatorFn {\r\n return (control: AbstractControl | any): \r\n ValidationErrors | null => {\r\n console.log('control', control.value.toLowerCase().replaceAll(/\\s/g,''), control.parent?.controls[matchTo].value.toLowerCase().replaceAll(/\\s/g,''))\r\n if (control.parent && reverse) {\r\n const c = (control.parent?.controls as any)[matchTo] as AbstractControl;\r\n if (c) {\r\n c.updateValueAndValidity();\r\n }\r\n return null;\r\n }\r\n const confirMationText = 'iconfirm'+(control.parent?.controls as any)[matchTo].value.toLowerCase().replaceAll(/\\s/g,'')+'canbe'+isBlocked.toLowerCase().replaceAll(/\\s/g,'')\r\n const controlValue = control.value.toLowerCase().replaceAll(/\\s/g,'')\r\n const confirMationTextQoute = \"'iconfirm\" +(control.parent?.controls as any)[matchTo].value.toLowerCase().replaceAll(/\\s/g,\"\")+\"canbe\"+isBlocked.toLowerCase().replaceAll(/\\s/g,\"\") + \"'\"\r\n return !!control.parent &&\r\n !!control.parent.value &&\r\n (controlValue == confirMationText || controlValue == confirMationTextQoute) ? null : { wrongText: true };\r\n };\r\n}\r\n","import { ValidatorFn, AbstractControl } from \"@angular/forms\";\r\n\r\nexport class CustomeDateValidators {\r\n static fromToDate(fromDateField: string, toDateField: string, errorName: string = 'fromToDate'): ValidatorFn {\r\n return (formGroup: AbstractControl): { [key: string]: boolean } | null => {\r\n const fromDate = formGroup.get(fromDateField)?.value;\r\n const toDate = formGroup.get(toDateField)?.value;\r\n // Ausing the fromDate and toDate are numbers. In not convert them first after null check\r\n if ((fromDate !== null && toDate !== null) && fromDate > toDate) {\r\n return {[errorName]: true};\r\n }\r\n return null;\r\n };\r\n}\r\n}\r\n","import { AbstractControl, FormControl, FormGroup, ValidationErrors, ValidatorFn } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function DecimalValidation(controlName: string, decimals:number) {\r\n return (formGroup: FormGroup) => {\r\n if (!formGroup.controls) return;\r\n const control = formGroup.controls[controlName];\r\n const value = control.value; \r\n if (control.errors) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n const regValue = /^[1-9]\\d*(\\.\\d+)?$/; /// DNW ^[-+]?([1-9]{1}\\d*|0{1})(\\.?)(?(2)\\d+)$/; //NEED TO SEE IF COMMA AND + signed needs to be allowed\r\n if (!regValue.test(value)) {\r\n control.setErrors({ decimalNumberLimit: true });\r\n } else {\r\n control.setErrors(null);\r\n } \r\n }\r\n}\r\n\r\n\r\n\r\n// import { FormControl } from \"@angular/forms\";\r\n// import * as moment from \"moment\";\r\n\r\n// export function DateValidator(format = \"MM/dd/YYYY\"): any {\r\n// return (control: FormControl): { [key: string]: any } => {\r\n// const val = moment(control.value, format, true);\r\n\r\n// if (!val.isValid()) {\r\n// return { invalidDate: true };\r\n// }\r\n\r\n// return null;\r\n// };\r\n// }\r\n ","import { AbstractControl, FormGroup, ValidationErrors, ValidatorFn } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function IpAddressCheck(): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n if (!control.errors) {\r\n return control.errors;\r\n }\r\n\r\n if (checkIpSetting(control.value)) {\r\n return { specialIpAddressCheck: true };\r\n } else {\r\n return null;\r\n }\r\n }\r\n};\r\n\r\nfunction checkIpSetting(str: any): boolean {\r\n let ipAddressControl: string[] = str.split(',');\r\n const ipRegex = new RegExp(\"(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\");\r\n let isIpInValid: boolean = false;\r\n if (ipAddressControl.length > 0) {\r\n for (let i = 0; i < ipAddressControl.length; i++) {\r\n if (!ipRegex.test(ipAddressControl[i])) {\r\n isIpInValid = true;\r\n break;\r\n }\r\n }\r\n }\r\n else {\r\n isIpInValid = true;\r\n }\r\n\r\n return isIpInValid;\r\n}\r\n","import { FormGroup } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function MinimumLowerCaseCheck(controlName: any, limit: any):any{\r\n return (formGroup: FormGroup) => {\r\n if (!formGroup.controls) return;\r\n const control = formGroup.controls[controlName];\r\n\r\n if (control.errors) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (countSpecialCharacter(control.value) < limit) {\r\n control.setErrors({ lowercaseCharacterCheck: true });\r\n } else {\r\n control.setErrors(null);\r\n }\r\n };\r\n}\r\n\r\nfunction countSpecialCharacter(str: any): any{\r\n const punct = /[a-z]/;\r\n let count = 0;\r\n for (let i = 0; i < str.length; i++){\r\n if (!punct.test(str[i])){\r\n continue;\r\n }\r\n count++;\r\n }\r\n return count;\r\n}\r\n","import { FormGroup } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function MinimumUpperCaseCheck(controlName: any, limit: any):any{\r\n return (formGroup: FormGroup) => {\r\n if (!formGroup.controls) return;\r\n const control = formGroup.controls[controlName];\r\n\r\n if (control.errors) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (countSpecialCharacter(control.value) < limit) {\r\n control.setErrors({ uppercaseCharacterCheck: true });\r\n } else {\r\n control.setErrors(null);\r\n }\r\n };\r\n}\r\n\r\nfunction countSpecialCharacter(str: any): any{\r\n const punct = /[A-Z]/;\r\n let count = 0;\r\n for (let i = 0; i < str.length; i++){\r\n if (!punct.test(str[i])){\r\n continue;\r\n }\r\n count++;\r\n }\r\n return count;\r\n}","import { FormGroup } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function MinimumNumericalCheck(controlName: any, limit: any) {\r\n const format = /\\d/;\r\n return (formGroup: FormGroup) => {\r\n if (!formGroup.controls) return;\r\n const control = formGroup.controls[controlName];\r\n\r\n if (control.errors) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n\r\n if (countSpecialCharacter(control.value) < limit) {\r\n control.setErrors({ minimumNumericalCheck: true });\r\n } else {\r\n control.setErrors(null);\r\n }\r\n }\r\n}\r\n\r\nfunction countSpecialCharacter(str: any): any {\r\n const punct = /1234567890/;\r\n let count = 0;\r\n for (let i = 0; i < str.length; i++) {\r\n if (!punct.toString().includes(str[i])) {\r\n continue;\r\n }\r\n count++;\r\n }\r\n return count;\r\n}\r\n","import { AbstractControl, ValidationErrors, ValidatorFn } from \"@angular/forms\";\r\n\r\nexport function matchValidator(\r\n matchTo: string, \r\n reverse?: boolean\r\n ): ValidatorFn {\r\n return (control: AbstractControl): \r\n ValidationErrors | null => {\r\n if (control.parent && reverse) {\r\n const c = (control.parent?.controls as any)[matchTo] as AbstractControl;\r\n if (c) {\r\n c.updateValueAndValidity();\r\n }\r\n return null;\r\n }\r\n return !!control.parent &&\r\n !!control.parent.value &&\r\n control.value === \r\n (control.parent?.controls as any)[matchTo].value\r\n ? null\r\n : { matching: true };\r\n };\r\n }\r\n","import { FormGroup } from '@angular/forms';\r\n\r\n// custom validator to check that two fields match\r\nexport function SpecialCharacterCheck(controlName: any, limit: any): any {\r\n return (formGroup: FormGroup) => {\r\n\r\n if (!formGroup.controls) return;\r\n\r\n const control = formGroup.controls[controlName];\r\n\r\n if (control.errors) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (countSpecialCharacter(control.value) < limit) {\r\n control.setErrors({ specialCharacterCheck: true });\r\n } else {\r\n control.setErrors(null);\r\n }\r\n };\r\n}\r\n\r\nfunction countSpecialCharacter(str: any): any {\r\n const punct = /[ `!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?~]/;\r\n let count = 0;\r\n for (let i = 0; i < str.length; i++) {\r\n if (!punct.toString().includes(str[i])) {\r\n continue;\r\n }\r\n count++;\r\n }\r\n return count;\r\n}\r\n","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":[],"sourceRoot":"webpack:///"}