{"version":3,"sources":["security/getUser/index.tsx","security/accessRightChecker/index.tsx","constants/accessRight/index.tsx","security/voter/absence/index.tsx","security/voter/eventOffer/index.tsx","constants/expense/index.tsx","security/voter/expense/index.tsx","security/voter/task/index.tsx","security/granted/index.tsx","components/navigation/bl.tsx","constants/global/index.tsx","adapters/xhr/index.tsx","adapters/auth/index.tsx","constants/auth/index.tsx","actions/auth/index.tsx","utils/formError/index.tsx","components/auth/login/index.tsx","pages/auth/login/index.tsx","adapters/sellsy/index.tsx","utils/loader/index.tsx","components/auth/register/sellsy/index.tsx","actions/header/index.tsx","adapters/company/index.tsx","adapters/salary/index.tsx","adapters/job/index.tsx","adapters/taskGroup/index.tsx","adapters/accessLevel/index.tsx","adapters/localisation/index.tsx","adapters/activity/index.tsx","adapters/team/index.tsx","adapters/timetable/index.tsx","adapters/salary/template/index.tsx","utils/bootstrapSelect/index.tsx","utils/validationClass/index.tsx","utils/customInput/index.tsx","components/auth/register/index.tsx","pages/auth/register/index.tsx","constants/companies/index.tsx","actions/companies/index.tsx","constants/rightSidebar/index.tsx","actions/rightSidebar/index.tsx","constants/axios/index.tsx","actions/axios/index.tsx","components/companies/list/index.tsx","utils/locale/index.tsx","security/hasModule/index.tsx","components/companies/show/information/index.tsx","utils/background/single/index.tsx","components/companies/show/index.tsx","pages/companies/index.tsx","components/error/404/index.tsx","components/auth/confirmation/index.tsx","pages/auth/confirmation/index.tsx","components/auth/passwordConfirmation/index.tsx","pages/auth/passwordConfirmation/index.tsx","constants/accessLevel/index.tsx","actions/accessLevel/index.tsx","components/accessLevel/list/index.tsx","components/accessLevel/show/index.tsx","pages/accessLevel/index.tsx","constants/absence/index.tsx","actions/absence/index.tsx","adapters/absence/index.tsx","constants/calendar/index.tsx","actions/calendar/index.tsx","components/absence/calendar/index.tsx","pages/absence/calendar/index.tsx","constants/localisation/index.tsx","actions/localisation/index.tsx","components/localisation/list/index.tsx","components/localisation/show/need/index.tsx","adapters/localisation/needs/index.tsx","components/localisation/show/index.tsx","pages/localisation/index.tsx","adapters/calendar/index.tsx","constants/task/calendar/index.tsx","actions/task/calendar/index.tsx","adapters/booking/index.tsx","adapters/booking/exception/index.tsx","constants/booking/index.tsx","utils/loader/small/index.tsx","utils/eventPop/index.tsx","adapters/slotExchange/index.tsx","security/getVersion/index.tsx","utils/resourceActions/index.tsx","constants/alert/index.tsx","actions/alert/index.tsx","adapters/task/index.tsx","utils/taskEventPop/index.tsx","constants/template/applied/index.tsx","actions/template/applied/index.tsx","constants/event/index.tsx","utils/calendar/index.tsx","constants/keepNote/index.tsx","actions/keepNote/index.tsx","utils/eventAppliedPop/index.tsx","adapters/event/exception/index.tsx","adapters/eventExchange/index.tsx","utils/event/popup/index.tsx","components/calendar/index.tsx","pages/calendar/show/index.tsx","components/profile/show/index.tsx","pages/auth/profile/show/index.tsx","constants/channel/index.tsx","components/channel/list/index.tsx","actions/channel/index.tsx","adapters/channel/index.tsx","adapters/channel/message/index.tsx","components/channel/show/index.tsx","adapters/channel/message/reaction/index.tsx","pages/channel/index.tsx","components/auth/account/index.tsx","pages/auth/account/index.tsx","components/taskGroup/calendar/index.tsx","adapters/task/calendar/index.tsx","pages/taskGroup/calendar/index.tsx","utils/fileUpload/index.tsx","utils/colorPicker/index.tsx","utils/arrayEqual/index.tsx","utils/scrollbar/index.tsx","components/salary/selector/index.tsx","constants/taskGroup/customField/index.tsx","components/task/edit/form/index.tsx","components/calendar/task/edit/index.tsx","constants/task/index.tsx","adapters/task/status/index.tsx","components/task/utils/index.tsx","components/calendar/task/show/index.tsx","components/task/add/form/index.tsx","components/calendar/task/add/index.tsx","components/calendar/task/add/select/index.tsx","components/calendar/task/sidebar/index.tsx","utils/mouseOverTooltip/index.tsx","constants/companyGroup/index.tsx","security/getMaxDate/index.tsx","utils/duration/index.tsx","utils/timeFormat/index.tsx","components/calendar/utils/index.tsx","components/calendar/task/list/index.tsx","components/dashboard/absenceRequest/index.tsx","adapters/keepNote/index.tsx","components/dashboard/keepNote/index.tsx","adapters/salary/settings/index.tsx","components/dashboard/feed/index.tsx","adapters/timeClock/index.tsx","components/dashboard/pointing/index.tsx","adapters/booking/offer/index.tsx","constants/booking/offer/index.tsx","actions/booking/offer/index.tsx","components/dashboard/bookingOffer/index.tsx","adapters/counter/index.tsx","components/dashboard/counter/index.tsx","adapters/event/offer/index.tsx","constants/event/offer/index.tsx","actions/event/offer/index.tsx","components/dashboard/eventOffer/index.tsx","adapters/expense/index.tsx","actions/expense/index.tsx","components/dashboard/expenseRequest/list/index.tsx","components/dashboard/expenseRequest/index.tsx","components/dashboard/timeClock/missing/index.tsx","components/dashboard/timeClock/late/index.tsx","components/dashboard/timeClock/list/index.tsx","components/dashboard/timeClock/index.tsx","components/event/edit/form/index.tsx","components/calendar/event/edit/index.tsx","components/calendar/event/edit/resize/index.tsx","adapters/event/index.tsx","components/calendar/event/show/index.tsx","utils/moment.utils.ts","components/event/add/form/index.tsx","components/calendar/event/add/index.tsx","components/calendar/event/add/drop/index.tsx","components/calendar/event/add/select/index.tsx","components/calendar/event/substitute/index.tsx","components/calendar/event/exchange/index.tsx","components/calendar/event/sidebar/index.tsx","constants/salary/index.tsx","actions/salary/index.tsx","utils/salarySelector/single/index.tsx","models/booking/index.tsx","components/booking/edit/form/index.tsx","components/calendar/booking/edit/index.tsx","components/calendar/booking/edit/resize/index.tsx","security/isGranted/index.tsx","components/calendar/booking/show/index.tsx","adapters/booking/group/index.tsx","components/booking/add/form/index.tsx","components/calendar/booking/add/index.tsx","components/calendar/booking/add/drop/index.tsx","components/calendar/booking/add/select/index.tsx","components/calendar/booking/sidebar/index.tsx","components/calendar/signed/edit/form/index.tsx","components/calendar/signed/edit/index.tsx","components/calendar/signed/edit/resize/index.tsx","adapters/timeClock/file/index.tsx","components/calendar/signed/show/index.tsx","components/booking/table/index.tsx","components/calendar/signed/add/form/index.tsx","components/calendar/signed/add/index.tsx","components/calendar/signed/add/select/index.tsx","components/calendar/signed/sidebar/index.tsx","models/absence/index.tsx","components/absence/balance/index.tsx","adapters/absence/file/index.tsx","components/absence/add/form/index.tsx","components/absence/edit/form/index.tsx","components/calendar/absence/edit/index.tsx","components/calendar/absence/add/index.tsx","components/calendar/absence/sidebar/index.tsx","utils/companySelector/single/index.tsx","components/event/offer/edit/form/index.tsx","components/calendar/offer/edit/index.tsx","adapters/event/offer/applicant/index.tsx","components/calendar/offer/show/index.tsx","components/event/offer/add/form/index.tsx","components/calendar/offer/add/index.tsx","components/calendar/offer/application/index.tsx","components/calendar/offer/sidebar/index.tsx","adapters/template/applied/resource/index.tsx","adapters/template/applied/index.tsx","components/calendar/template/show/index.tsx","adapters/template/index.tsx","components/calendar/template/import/index.tsx","components/calendar/template/event/show/index.tsx","adapters/template/applied/exception/index.tsx","components/calendar/template/event/edit/index.tsx","components/calendar/template/event/substitute/index.tsx","components/calendar/template/export/index.tsx","components/calendar/template/sidebar/index.tsx","components/calendar/publish/index.tsx","components/calendar/single/index.tsx","constants/timeClock/index.tsx","actions/timeClock/index.tsx","components/dashboard/index.tsx","pages/dashboard/index.tsx","utils/loaderList/index.tsx","components/salary/list/index.tsx","components/timetable/add/form/index.tsx","components/timetable/add/index.tsx","components/timetable/list/index.tsx","components/timetable/event/add/form/index.tsx","adapters/timetable/event/index.tsx","components/timetable/event/add/select/index.tsx","components/timetable/event/edit/form/index.tsx","components/timetable/event/edit/index.tsx","components/timetable/event/show/index.tsx","components/timetable/event/copy/index.tsx","components/timetable/event/sidebar/index.tsx","components/timetable/edit/form/index.tsx","components/timetable/edit/index.tsx","components/timetable/add/duplicate/index.tsx","components/timetable/add/import/index.tsx","components/timetable/show/index.tsx","components/timetable/index.tsx","components/salary/show/manageur/show/index.tsx","adapters/salary/manager/index.tsx","adapters/billing/index.tsx","components/salary/show/settings/index.tsx","components/common/EmptyList.tsx","adapters/salary/repartition/index.tsx","components/salary/show/repartitions/add/index.tsx","components/salary/show/repartitions/index.tsx","components/salary/show/information/qr/index.tsx","components/salary/show/information/index.tsx","adapters/salary/defaultLabel/index.tsx","adapters/salary/account/index.tsx","components/salary/show/absence/counter/index.tsx","components/common/TabMenu.tsx","components/absence/file/show/index.tsx","components/common/Loading.tsx","adapters/salary/paidVacation/index.tsx","components/salary/show/absence/paidVacations/AddPaidVacationDrawer.tsx","components/salary/show/absence/paidVacations/index.tsx","components/salary/show/absence/index.tsx","adapters/reporting/index.tsx","constants/counter/index.tsx","actions/counter/index.tsx","constants/reporting/index.tsx","actions/reporting/index.tsx","components/salary/show/counter/index.tsx","constants/synthesis/index.tsx","actions/synthesis/index.tsx","adapters/paid/index.tsx","components/synthesis/signature/index.tsx","adapters/companyGroup/index.tsx","components/salary/show/counter/test.tsx","adapters/counter/withdrawn/index.tsx","adapters/salary/file/index.tsx","components/salary/common/SalaryFileListItem.tsx","components/salary/show/storage/bucket/index.tsx","components/salary/show/storage/index.tsx","adapters/document/index.tsx","components/salary/show/document/generated/index.tsx","components/salary/show/document/index.tsx","components/salary/show/index.tsx","pages/salary/index.tsx","constants/staticBackdropModal/index.tsx","actions/staticBackdropModal/index.tsx","components/absence/list/index.tsx","components/absence/show/calendar/index.tsx","components/absence/show/index.tsx","pages/absence/index.tsx","constants/job/index.tsx","actions/job/index.tsx","components/job/list/index.tsx","components/booking/default/list/index.tsx","components/job/show/index.tsx","pages/job/index.tsx","components/companyGroup/settings/timeClock/index.tsx","components/companyGroup/settings/absence/index.tsx","components/companyGroup/settings/accounting/index.tsx","security/hasRole/index.tsx","security/hasPreviousRole/index.tsx","components/companyGroup/settings/module/index.tsx","components/companyGroup/settings/general/index.tsx","components/companyGroup/settings/notification/index.tsx","adapters/notification/index.tsx","constants/notification/index.tsx","components/companyGroup/settings/index.tsx","pages/companyGroup/settings/index.tsx","components/timeClock/list/test.tsx","pages/timeClock/index.tsx","components/reporting/periodView/index.tsx","components/reporting/list/index.tsx","pages/reporting/index.tsx","components/reporting/show/index.tsx","pages/reporting/show/index.tsx","components/error/403/index.tsx","components/auth/password/index.tsx","pages/auth/password/index.tsx","components/companies/noCompany/index.tsx","components/error/500/index.tsx","components/auth/passwordRequest/index.tsx","pages/auth/passwordRequest/index.tsx","adapters/user/index.tsx","constants/admin/user/index.tsx","actions/admin/user/index.tsx","components/admin/user/list/index.tsx","components/admin/user/show/information/index.tsx","components/admin/user/show/companyGroup/show/index.tsx","components/admin/user/show/companyGroup/list/index.tsx","adapters/admin/billing/index.tsx","components/admin/user/show/billing/_components/SellsyContactCard.tsx","constants/subscriptions/index.ts","components/admin/user/show/billing/_components/CompanySubscriptionsItem.tsx","components/admin/user/show/billing/_components/CompanyLinkItem.tsx","components/admin/user/show/billing/_components/CompanyGroupCompaniesCard.tsx","adapters/admin/companyGroup/index.tsx","components/admin/user/show/billing/_components/CompanySalaryLinkItem.tsx","components/admin/user/show/billing/_components/CompanySalariesCard.tsx","components/admin/user/show/billing/index.tsx","components/admin/user/show/index.tsx","pages/admin/user/index.tsx","constants/activity/index.tsx","actions/activity/index.tsx","components/activity/list/index.tsx","components/activity/show/need/index.tsx","adapters/activity/needs/index.tsx","components/activity/show/index.tsx","pages/activity/index.tsx","constants/taskGroup/index.tsx","actions/taskGroup/index.tsx","components/taskGroup/list/index.tsx","pages/taskGroup/list/index.tsx","actions/task/index.tsx","components/taskGroup/show/index.tsx","pages/taskGroup/show/index.tsx","components/team/list/index.tsx","constants/team/index.tsx","actions/team/index.tsx","components/team/show/index.tsx","pages/team/index.tsx","adapters/booking/offer/applicant/index.tsx","components/booking/offer/show/index.tsx","pages/booking/offer/index.tsx","components/timeClock/calendar/index.tsx","pages/timeClock/calendar/index.tsx","constants/document/index.tsx","actions/document/index.tsx","components/document/list/index.tsx","components/document/editor/helpers.tsx","components/document/editor/plugins.tsx","components/document/editor/components.tsx","components/document/editor/keyboardShortcuts.tsx","components/document/editor/toolbarElements.tsx","components/document/editor/SlateEditor.tsx","components/document/editor/index.ts","components/document/show/index.tsx","pages/document/index.tsx","components/document/add/index.tsx","pages/document/add/index.tsx","components/sponsorship/show/index.tsx","pages/sponsorship/show/index.tsx","components/admin/index.tsx","pages/admin/index.tsx","adapters/admin/salary/index.tsx","components/admin/salary/list/index.tsx","components/admin/salary/show/index.tsx","pages/admin/salary/index.tsx","components/counter/table/single/index.tsx","components/counter/table/multiple/index.tsx","components/counter/table/index.tsx","components/counter/chart/multiple/index.tsx","components/counter/chart/single/index.tsx","components/counter/chart/index.tsx","components/counter/index.tsx","adapters/chart/index.tsx","pages/counter/index.tsx","components/export/silae/index.tsx","pages/export/silae/index.tsx","components/export/index.tsx","pages/export/index.tsx","components/calendar/modal/company/index.tsx","components/calendar/modal/team/index.tsx","components/calendar/modal/job/index.tsx","components/calendar/modal/settings/index.tsx","components/calendar/presence/index.tsx","components/calendar/order/index.tsx","components/calendar/reporting/index.tsx","components/calendar/absence/list/index.tsx","components/calendar/offer/list/index.tsx","components/keepNote/edit/form/index.tsx","components/calendar/keepNote/edit/index.tsx","components/keepNote/create/form/index.tsx","components/calendar/keepNote/add/index.tsx","components/calendar/keepNote/show/index.tsx","components/calendar/keepNote/sidebar/index.tsx","components/calendar/download/test.tsx","components/salary/template/add/form/index.tsx","components/salary/template/add/index.tsx","components/salary/template/list/index.tsx","adapters/salary/template/event/index.tsx","components/salary/template/event/add/form/index.tsx","components/salary/template/event/add/select/index.tsx","components/salary/template/event/edit/form/index.tsx","components/salary/template/event/edit/index.tsx","components/salary/template/event/show/index.tsx","components/salary/template/event/copy/index.tsx","components/salary/template/event/sidebar/index.tsx","components/salary/template/edit/form/index.tsx","components/salary/template/edit/index.tsx","components/salary/template/add/duplicate/index.tsx","components/salary/template/add/import/index.tsx","components/salary/template/show/index.tsx","components/salary/template/index.tsx","components/calendar/timetable/index.tsx","components/calendar/multiple/index.tsx","components/expense/list/index.tsx","adapters/expense/file/index.tsx","components/expense/show/index.tsx","pages/expense/index.tsx","components/event/offer/show/index.tsx","pages/event/offer/index.tsx","components/test/index.tsx","constants/template/index.tsx","actions/template/index.tsx","components/template/list/test.tsx","adapters/template/resource/index.tsx","components/template/resource/salaries/index.tsx","components/template/resource/add/form/index.tsx","components/template/resource/add/test.tsx","components/template/resource/edit/form/index.tsx","components/template/resource/edit/test.tsx","components/template/resource/sidebar/index.tsx","components/template/event/add/form/index.tsx","adapters/template/event/index.tsx","components/template/event/add/index.tsx","components/template/event/edit/form/index.tsx","components/template/event/edit/index.tsx","components/template/event/show/show.tsx","components/template/event/sidebar/index.tsx","components/template/scheduler/form/index.tsx","components/template/show/test.tsx","pages/template/index.tsx","components/helps/helpsData.ts","components/help/index.tsx","components/report/list/index.tsx","components/synthesis/tables/workingTime/index.tsx","components/synthesis/tables/absence/index.tsx","adapters/report/index.tsx","components/synthesis/tables/counter/test.tsx","components/synthesis/tables/other/index.tsx","components/report/paid/index.tsx","components/synthesis/tables/paid/index.tsx","components/synthesis/tables/index.tsx","constants/report/index.tsx","components/report/download/index.tsx","actions/report/index.tsx","components/report/edit/index.tsx","components/report/show/index.tsx","components/report/add/index.tsx","pages/report/index.tsx","components/storage/index.tsx","components/helps/HelpItem/index.tsx","components/helps/HelpModal/index.tsx","components/billing/list/index.tsx","components/billing/show/subscription/edit/index.tsx","components/billing/show/subscription/show/index.tsx","components/billing/show/invoices/index.tsx","components/billing/show/salaries/index.tsx","components/billing/show/index.tsx","pages/billing/index.tsx","components/navigation/index.tsx","components/job/utils/form/index.tsx","components/job/add/index.tsx","components/companies/add/index.tsx","components/accessLevel/add/index.tsx","components/absence/add/index.tsx","components/absence/edit/index.tsx","utils/iconPicker/index.tsx","components/localisation/utils/form/index.tsx","components/localisation/add/index.tsx","components/localisation/edit/index.tsx","components/common/PhoneInputCustom.tsx","components/salary/add/index.tsx","components/salary/information/add/index.tsx","components/booking/add/index.tsx","components/salary/edit/index.tsx","components/salary/information/edit/index.tsx","adapters/salary/information/index.tsx","components/taskGroup/add/index.tsx","components/task/add/index.tsx","components/taskGroup/customField/add/index.tsx","adapters/taskGroup/customField/index.tsx","components/template/add/index.tsx","constants/template/calendar/index.tsx","actions/template/calendar/index.tsx","constants/template/resource/index.tsx","components/template/resource/add/index.tsx","actions/template/resource/index.tsx","components/template/booking/add/index.tsx","adapters/template/booking/index.tsx","components/profile/information/add/index.tsx","adapters/auth/profile/index.tsx","actions/auth/profile/index.tsx","utils/salarySelector/index.tsx","components/channel/add/index.tsx","utils/companySelector/index.tsx","components/job/edit/index.tsx","components/calendar/download/index.tsx","components/localisation/show/salaries/add/index.tsx","adapters/localisation/salaries/index.tsx","components/booking/exception/edit/index.tsx","components/booking/substitute/index.tsx","components/file/add/index.tsx","adapters/file/index.tsx","components/task/recurrence/edit/index.tsx","adapters/task/recurrence/index.tsx","components/task/edit/index.tsx","components/calendar/setting/index.tsx","components/template/resource/edit/index.tsx","components/template/sidebarList/index.tsx","components/template/applied/edit/index.tsx","components/timeClock/generatedList/index.tsx","components/timeClock/sidebarList/index.tsx","components/absence/sidebarList/index.tsx","components/timeClock/booking/add/index.tsx","components/booking/edit/recurrence/index.tsx","adapters/booking/recurrence/index.tsx","components/counter/edit/index.tsx","components/keepNote/create/index.tsx","components/keepNote/edit/index.tsx","components/keepNote/list/index.tsx","components/dashboard/feed/sidebar/index.tsx","components/calendar/needEvents/index.tsx","components/template/addFromCalendar/index.tsx","components/template/dropdownList/index.tsx","components/template/edit/index.tsx","components/localisation/show/need/add/index.tsx","components/planner/form/index.tsx","components/counter/settings/index.tsx","components/salary/import/index.tsx","components/companies/edit/index.tsx","components/reporting/showWeek/index.tsx","components/timeClock/booking/edit/index.tsx","components/reporting/download/index.tsx","utils/locale/format/index.tsx","components/booking/default/popup/button/index.tsx","components/booking/default/popup/index.tsx","components/booking/group/add/index.tsx","components/booking/group/list/index.tsx","components/booking/group/edit/history/modal/index.tsx","components/booking/group/edit/history/button/index.tsx","components/booking/group/edit/index.tsx","components/activity/add/index.tsx","components/activity/edit/index.tsx","components/activity/show/need/add/index.tsx","components/booking/default/add/index.tsx","adapters/booking/default/index.tsx","components/booking/default/sidebarList/index.tsx","components/booking/default/edit/index.tsx","components/team/add/index.tsx","components/team/edit/index.tsx","components/team/show/salary/selector/index.tsx","components/booking/exception/history/index.tsx","components/booking/offer/add/index.tsx","components/booking/offer/sidebarList/index.tsx","components/booking/offer/sidebarList/applicant/index.tsx","components/booking/offer/sidebarShow/index.tsx","components/team/show/manager/add/index.tsx","adapters/team/manager/index.tsx","components/team/show/manager/edit/index.tsx","components/counter/sidebar/index.tsx","components/calendar/resource/order/index.tsx","components/timeClock/booking/show/index.tsx","components/counter/show/index.tsx","components/counter/withdrawn/add/index.tsx","components/counter/withdrawn/edit/index.tsx","components/companyGroup/settings/email/index.tsx","components/template/applied/exception/add/index.tsx","components/template/applied/exception/edit/index.tsx","components/template/booking/edit/recurrence/index.tsx","adapters/template/booking/recurrence/index.tsx","components/template/booking/edit/index.tsx","components/booking/edit/test.tsx","components/booking/group/edit/reload/index.tsx","components/salary/show/information/defaultLabelSelector/index.tsx","components/slotExchange/add/index.tsx","components/slotExchange/add/validate/index.tsx","components/booking/add/group/index.tsx","components/booking/cancel/index.tsx","constants/salary/template/index.tsx","actions/salary/template/index.tsx","components/salary/show/template/add/index.tsx","components/salary/show/template/edit/index.tsx","components/salary/show/template/list/index.tsx","components/salary/show/template/event/add/index.tsx","components/salary/show/template/event/edit/index.tsx","components/salary/show/template/show/copy/index.tsx","components/salary/show/template/show/index.tsx","components/salary/show/template/copy/index.tsx","components/salary/show/template/duplicate/index.tsx","components/event/add/index.tsx","components/event/exception/edit/index.tsx","components/event/exception/add/index.tsx","components/event/cancel/index.tsx","components/eventExchange/add/validate/index.tsx","components/eventExchange/add/index.tsx","components/event/offer/add/index.tsx","components/event/offer/edit/index.tsx","components/event/offer/sidebarList/index.tsx","components/event/offer/sidebarShow/index.tsx","components/event/offer/sidebarList/applicant/index.tsx","components/taskGroup/edit/index.tsx","components/absence/file/index.tsx","components/salary/show/storage/bucket/add/index.tsx","components/expense/utils/index.tsx","components/expense/add/index.tsx","components/expense/file/index.tsx","components/expense/edit/index.tsx","components/salary/show/manageur/add/index.tsx","components/salary/show/manageur/edit/index.tsx","components/synthesis/signatureLoad/index.tsx","components/rightSidebar/index.tsx","components/alert/index.tsx","components/absence/list/filter/index.tsx","utils/staticBackdropModal/index.tsx","App.tsx","reportWebVitals.ts","models/companies/index.tsx","utils/arrayReplace/index.tsx","reducers/companies/index.tsx","models/auth/index.tsx","security/impersonate/index.tsx","reducers/auth/index.tsx","models/companyGroup/index.tsx","reducers/companyGroup/index.tsx","models/salary/index.tsx","reducers/salary/index.tsx","models/rightSidebar/index.tsx","reducers/rightSidebar/index.tsx","models/job/index.tsx","reducers/job/index.tsx","models/alert/index.tsx","reducers/alert/index.tsx","models/accessLevel/index.tsx","reducers/accessLevel/index.tsx","models/axios/index.tsx","reducers/axios/index.tsx","utils/arrayRemove/index.tsx","reducers/absence/index.tsx","models/localisation/index.tsx","reducers/localisation/index.tsx","models/taskGroup/index.tsx","reducers/taskGroup/index.tsx","models/template/index.tsx","reducers/template/index.tsx","models/channel/index.tsx","reducers/channel/index.tsx","models/task/index.tsx","reducers/task/index.tsx","models/statickBackdropModal/index.tsx","reducers/statickBackdropModal/index.tsx","reducers/header/index.tsx","models/calendar/index.tsx","reducers/calendar/index.tsx","models/task/calendar/index.tsx","reducers/task/calendar/index.tsx","models/template/calendar/index.tsx","reducers/template/calendar/index.tsx","constants/template/applied/resource/index.tsx","models/template/applied/index.tsx","reducers/template/applied/index.tsx","models/timeClock/index.tsx","reducers/timeClock/index.tsx","models/reporting/index.tsx","reducers/reporting/index.tsx","models/counter/index.tsx","reducers/counter/index.tsx","models/keepNote/index.tsx","reducers/keepNote/index.tsx","reducers/admin/user/index.tsx","models/activity/index.tsx","reducers/activity/index.tsx","models/team/index.tsx","reducers/team/index.tsx","models/document/index.tsx","reducers/document/index.tsx","models/booking/offer/index.tsx","reducers/booking/offer/index.tsx","models/event/offer/index.tsx","reducers/event/offer/index.tsx","models/expense/index.tsx","reducers/expense/index.tsx","models/report/index.tsx","reducers/report/index.tsx","models/synthesis/index.tsx","utils/arrayReplaceMany/index.tsx","reducers/synthesis/index.tsx","reducers/index.tsx","index.tsx","middleware/logger/index.tsx","middleware/errorHandler/index.tsx","middleware/eventEditAbort/index.tsx"],"names":["getUser","user","localStorage","getItem","JSON","parse","AccessRightChecker","right","salary","currentSalary","rights","includes","ret","concat","managed","map","m","target","filter","id","targets","i","this","grantedFor","HANDLE_BILLING","LIST_SALARY","LIST_SALARY_FILE","LIST_SELF_SALARY_FILE","IMPORT_SALARY","EDIT_SALARY","LIST_BOOKING","LIST_SELF_BOOKING","EDIT_BOOKING","DELETE_BOOKING","SHOW_ABOVE_MAX_VISIBILITY_DATE","PUBLISH_CALENDAR","DOWNLOAD_CALENDAR","LIST_BOOKING_OFFER","EDIT_BOOKING_OFFER","DELETE_BOOKING_OFFER","APPLY_BOOKING_OFFER","LIST_DOCUMENT","EDIT_DOCUMENT","LIST_KEEP_NOTE","EDIT_KEEP_NOTE","DELETE_KEEP_NOTE","LIST_TIME_CLOCK","LIST_SELF_TIME_CLOCK","EDIT_TIME_CLOCK","DELETE_TIME_CLOCK","CLOCK_IN_FROM_APP","LIST_COMPANY","EDIT_COMPANY","DELETE_COMPANY","LIST_CUSTOMER_FLOW","LIST_JOB","EDIT_JOB","LIST_LOCALISATION","EDIT_LOCALISATION","DELETE_LOCALISATION","LIST_ABSENCE","EDIT_ABSENCE","EDIT_ABSENCE_FILE","DELETE_ABSENCE","REQUEST_ABSENCE","VALIDATE_SELF_ABSENCE","LIST_EXPENSE","EDIT_EXPENSE","DELETE_EXPENSE","REQUEST_EXPENSE","LIST_TASK_GROUP","EDIT_TASK_GROUP","DELETE_TASK_GROUP","LIST_SELF_TASK","EDIT_TASK","LIST_TEMPLATE","EDIT_TEMPLATE","DELETE_TEMPLATE","LIST_ACTIVITY","EDIT_ACTIVITY","DELETE_ACTIVITY","LIST_COUNTER","LIST_SELF_COUNTER","EDIT_COUNTER","DELETE_COUNTER","LIST_TEAM","LIST_ACCESS_LEVEL","EDIT_ACCESS_LEVEL","LIST_CHANNEL","LIST_REPORTING","LIST_SELF_REPORTING","EXPORT_REPORTING","READ_FLAT_RATE","EDIT_COMPANY_GROUP","FEED_LIST_BIRTHDAY","FEED_LIST_SENIORITY","FEED_LIST_TRIAL","FEED_LIST_START","FEED_LIST_END","FEED_LIST_END_ACTIVATED","availableAccessRight","title","icon","module","items","underscoreCase","description","company","job","localisation","activity","booking","absence","expense","task","template","timeClock","reporting","counter","accessLevel","team","settings","channel","feed","bookingOffer","document","keepNotes","ManagerAccessRights","billing","AbsenceVoter","object","accessRights","canEdit","canList","accessRightChecker","granted","hasGlobalRight","EventOfferVoter","salaries","s","grantedForMany","ADD_EXPENSE","ADD_EXPENSE_SUCCESS","EDIT_EXPENSE_SUCCESS","FETCH_EXPENSES","FETCH_EXPENSES_SUCCESS","FETCH_EXPENSES_FAILURE","SHOW_EXPENSE","SHOW_EXPENSE_SUCCESS","SHOW_EXPENSE_FAILURE","CANCEL_EXPENSE_SUCCESS","STATUS_NAMES","1","2","3","getStatusChoices","value","label","getStatusIcon","status","TYPE_NAMES","4","5","6","7","getTypeChoices","getTypeChoice","type","find","c","VEHICLE_CAR","VEHICLE_MOTORCYCLE","VEHICLE_NAMES","getVehicleChoices","VEHICLE_CAR_POWER_NAMES","VEHICLE_MOTORCYCLE_POWER_NAMES","getVehiclePowerChoices","vehicle","getVehiclePowerChoice","vehiclePower","getVehiclePowerName","ExpenseVoter","TaskVoter","Granted","storage","supports","voteOnAttribute","hasManagerRight","timeClockFromApp","GrantedAny","GrantedMany","GuestRoute","component","rest","isAuthenticated","useSelector","state","auth","token","render","props","to","pathname","React","createElement","AdminRoute","location","useLocation","initialUser","roles","setItem","PrivateRoute","hasCurrentSalary","hasCurrentCompany","companies","length","PrivateRouteWithoutCompany","PrivateRouteWithoutAccount","PrivateRouteAny","CHANNEL_SUBSCRIBER","PAGINATION","CURRENCY_NAMES","getCurrencyChoices","CurrencyIcon","currency","className","getTemplateDayOptions","dt","Date","getTemplateDayOption","d","o","getMonthOption","getISOWeeks","y","isLeap","getMonth","getDay","range","start","end","push","MULTIPART_FORM_DATA","APPLICATION_PDF","DISABLED_SWITCH","headers","additionalHeaders","Object","assign","hasOwnProperty","impersonated","email","instance","options","Axios","create","baseURL","responseType","timeout","transformResponse","data","str","e","isJson","get","url","signal","post","requestData","selectAccount","LOGIN","LOGIN_SUCCESS","LOGIN_FAILURE","REGISTER","REGISTER_SUCCESS","REGISTER_FAILURE","CONFIRM","CONFIRM_SUCCESS","CONFIRM_FAILURE","CONFIRM_TOKEN_EXIST","EDIT_PASSWORD","EDIT_PASSWORD_SUCCESS","EDIT_PASSWORD_FAILURE","LOGOUT","ADD_USER_INFORMATION","ADD_USER_INFORMATION_SUCCESS","EDIT_USER_INFORMATION","EDIT_USER_INFORMATION_SUCCESS","SELECT_ACCOUNT","UNSELECT_ACCOUNT","FETCH_ACCOUNTS_SUCCESS","EDIT_USER_COMPANY_GROUP_SUCCESS","EDIT_USER_CALENDAR_SETTING_SUCCESS","IMPERSONATE_USER","EXIT_IMPERSONATE_USER","ADD_AUTH_COMPANY","REFRESH_AUTH_SUCCESS","REFRESH_USER_SUCCESS","loginSuccess","types","refreshUserSuccess","confirm","confirmSuccess","confirmFailure","message","logout","account","editUserCompanyGroupSuccess","companyGroup","impersonateUser","exitImpersonateUser","FormError","errors","touched","field","touched_bool","getIn","error_str","LoginForm","dispatch","useDispatch","useState","sessionStorage","error","setError","SignupSchema","Yup","shape","password","required","username","formik","useFormik","initialValues","validationSchema","onSubmit","values","formikHelpers","then","window","ReactNativeWebView","postMessage","stringify","action","actions","catch","response","setSubmitting","src","alt","handleSubmit","name","placeholder","disabled","isSubmitting","onChange","handleChange","htmlFor","role","LoginPage","list","Loader","style","zIndex","backgroundColor","width","height","SellsyContactListModal","timer","setContact","pagination","count","total","offset","limit","payload","setPayload","query","fetchParams","setFetchParams","loading","setLoading","useEffect","api","r","tabIndex","aria-labelledby","aria-hidden","data-bs-dismiss","aria-label","clearTimeout","setTimeout","defaultValue","contact","first_name","last_name","Array","from","Math","ceil","keys","onClick","p","setPageTitle","pageTitle","pageUnderTitle","setHelpProductSheetIds","productSheetIds","helpProductSheetIds","show","optionalHeader","available","edit","checkEmailAvailable","order","xhr","select","copy","copyEvents","week","clean","deactivate","duplicate","BootstrapSelect","displayValue","onTouch","notFloating","enableReinitialize","labelIcon","onChangeObject","onChangeMultiple","isMultiple","fetchEntity","initialObjectsValues","isMenuOpen","setIsMenuOpen","initialOptions","setInitialOptions","initialObjects","setInitialObjects","filteredOptions","setFilteredOptions","setQuery","setOffset","isLast","setIsLast","isLoading","setIsLoading","scrollBottom","setScrollBottom","menuRef","useRef","_values","setValues","_value","setValue","offsetTop","setOffsetTop","hasFetchedOnce","setHasFetchedOnce","addEventListener","handleBodyClick","container","current","onScrollBottom","removeEventListener","dimensions","getBoundingClientRect","top","abs","innerHeight","fetch","item","toLowerCase","controller","AbortController","abort","undefined","validOption","option","choice","fetchSuccess","_offset","merge","elem","clientHeight","scrollTop","scrollHeight","companyApi","ids","salaryApi","jobs","jobApi","accessLevelApi","localisationApi","activityApi","teamApi","taskGroupApi","timetableApi","templateApi","evt","popup","left","xStart","xEnd","yStart","yEnd","clickOutsideX","clientX","clickOutsideY","clientY","removeValue","val","__values","index","findIndex","v","splice","minHeight","stopPropagation","autoFocus","currentTarget","sort","ref","obj","validationClass","DateCustomInput","forwardRef","readOnly","innerWidth","autoComplete","RegisterForm","setEmail","setTitle","isRegistered","setIsRegistered","firstname","lastname","billingVersion","billingRate","sellsyId","birthdate","tel","repeatPassword","setInitialValues","setValidationSchema","setFieldValue","version","_schema","fields","handleBillingVersionChange","Number","onBlur","handleBlur","customInput","date","dateFormat","selected","peekNextMonth","showMonthDropdown","showYearDropdown","dropdownMode","endDate","data-bs-toggle","data-bs-target","RegisterPage","ADD_COMPANY","ADD_COMPANY_SUCCESS","EDIT_COMPANY_SUCCESS","SHOW_COMPANY","SHOW_COMPANY_SUCCESS","FETCH_COMPANIES","FETCH_COMPANIES_SUCCESS","FETCH_COMPANIES_FAILURE","editCompanySuccess","showCompanySuccess","fetchCompaniesSuccess","fetchCompanies","fetchCompaniesFailure","OPEN_SIDEBAR","SUBMIT_SIDEBAR","CLOSE_SIDEBAR","FORM_NEW_JOB","FORM_EDIT_JOB","FORM_NEW_COMPANY","FORM_EDIT_COMPANY","FORM_NEW_ACCESS_LEVEL","FORM_EDIT_ACCESS_LEVEL","FORM_NEW_ABSENCE","FORM_NEW_ABSENCE_FILE","FORM_EDIT_ABSENCE","FORM_NEW_LOCALISATION","FORM_EDIT_LOCALISATION","FORM_LOCALISATION_SALARIES","FORM_NEW_ACTIVITY","FORM_EDIT_ACTIVITY","FORM_NEW_SALARY","FORM_EDIT_SALARY","FORM_NEW_SALARY_INFORMATION","FORM_EDIT_SALARY_INFORMATION","FORM_NEW_SALARY_STOCKED_DOCUMENT","LIST_DEFAULT_BOOKING","FORM_NEW_DEFAULT_BOOKING","FORM_EDIT_DEFAULT_BOOKING","BOOKING_HISTORY","FORM_NEW_BOOKING","BOOKING_CANCEL","FORM_NEW_BOOKING_GROUP","FORM_NEW_BOOKING_GROUP_FROM_BOOKING","FORM_EDIT_BOOKING_GROUP","FORM_EDIT_BOOKING_GROUP_RELOAD","LIST_BOOKING_GROUP","LIST_SALARY_TEMPLATE","COPY_SALARY_TEMPLATE","DUPLICATE_SALARY_TEMPLATE","SHOW_SALARY_TEMPLATE","FORM_EDIT_BOOKING","FORM_EDIT_BOOKING_RECURRENCE","FORM_EDIT_BOOKING_EXCEPTION","FORM_EDIT_BOOKING_SUBSTITUTE","FORM_EVENT_ADD","FORM_EVENT_EXCEPTION_EDIT","FORM_EVENT_EXCEPTION_ADD","FORM_EVENT_CANCEL","FORM_NEW_TASK_GROUP","FORM_EDIT_TASK_GROUP","FORM_NEW_TASK","FORM_EDIT_TASK","FORM_NEW_TASK_GROUP_CUSTOM_FIELD","FORM_EDIT_TASK_GROUP_CUSTOM_FIELD","FORM_NEW_TEMPLATE","FORM_NEW_TEMPLATE_FROM_CALENDAR","FORM_EDIT_TEMPLATE","TEMPLATE_LIST","FORM_NEW_TEMPLATE_RESOURCE","FORM_EDIT_TEMPLATE_RESOURCE","FORM_NEW_TEMPLATE_BOOKING","FORM_EDIT_TEMPLATE_BOOKING","FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION","FORM_EDIT_TEMPLATE_APPLIED_BOOKING_EXCEPTION","FORM_NEW_CHANNEL","FORM_EDIT_CHANNEL","FORM_CALENDAR_DOWNLOAD","FORM_CALENDAR_RESOURCE_ORDER","FORM_FILE_ADD","FORM_CALENDAR_SETTINGS","LIST_TEMPLATES_APPLY","TEMPLATES_APPLY_EDIT","TIME_CLOCK_LIST","TIME_CLOCK_SHOW","PENDING_ABSENCE_LIST","TIME_CLOCK_BOOKING_ADD","TIME_CLOCK_BOOKING_EDIT","FORM_COUNTER_EDIT","FORM_COUNTER_SHOW","FEED_LIST","NEED_LIST","FORM_KEEP_NOTE_LIST","FORM_KEEP_NOTE_ADD","FORM_KEEP_NOTE_EDIT","LOCALISATION_NEED_ADD","ACTIVITY_NEED_ADD","PLANNER_FORM","COUNTER_SETTINGS","ABSENCE_SETTINGS","ACCOUNTING_SETTINGS","TIME_CLOCK_SETTINGS","SALARY_IMPORT","REPORTING_SHOW_WEEK","REPORTING_SHOW_WEEK_LOAD","FORM_EXPORT_REPORTING","EDIT_PASSWORD_FORM","FORM_NEW_TEAM","FORM_EDIT_TEAM","FORM_TEAM_SALARY","FORM_TEAM_ADD_MANAGER","FORM_TEAM_EDIT_MANAGER","FORM_NEW_BOOKING_OFFER","SHOW_BOOKING_OFFER","LIST_BOOKING_OFFER_APPLICANTS","FORM_NEW_EVENT_OFFER","FORM_EDIT_EVENT_OFFER","LIST_EVENT_OFFER","SHOW_EVENT_OFFER","LIST_EVENT_OFFER_APPLICANTS","COUNTER_SIDEBAR","FORM_COUNTER_WITHDRAWN_ADD","FORM_COUNTER_WITHDRAWN_EDIT","SALARY_DEFAULT_LABEL_SELECTOR","FORM_NEW_SLOT_EXCHANGE","FORM_NEW_SLOT_EXCHANGE_VALIDATE","FORM_NEW_EVENT_EXCHANGE","FORM_NEW_EVENT_EXCHANGE_VALIDATE","FORM_EXPENSE_ADD","FORM_EXPENSE_EDIT","FORM_NEW_EXPENSE_FILE","FORM_MANAGER_ADD","FORM_MANAGER_EDIT","openSidebar","submitSidebar","closeSidebar","force","AXIOS_ERROR","axiosError","CompaniesList","isFiltering","setIsFiltering","params","useParams","prevState","getElementById","aria-describedby","single","aria-current","locales","fr","formatStr","format","locale","HasModule","modules","accounting","payroll","slotExchange","smsNotifications","CompanyInformation","isGeneratingToken","setIsGeneratingToken","generateToken","updateTimezone","t","timezone","activated","alert","address","city","zip","timesheet","openAt","closeAt","breakStart","breakFinish","recurrence","currentWeek","timeClockToken","href","substring","timeClockTimezone","String","BgSingle","showLoader","hasId","backgroundImage","backgroundRepeat","backgroundSize","CompanyShow","currentTab","setCurrentTab","a","toString","parseInt","NavMenu","CompaniesPage","Error404","Confirmation","isConfirm","setIsConfirm","redirect","ConfirmationPage","PasswordConfirmation","PasswordConfirmationPage","ADD_ACCESS_LEVEL","ADD_ACCESS_LEVEL_SUCCESS","EDIT_ACCESS_LEVEL_SUCCESS","FETCH_ACCESS_LEVELS","FETCH_ACCESS_LEVELS_SUCCESS","FETCH_ACCESS_LEVELS_FAILURE","SHOW_ACCESS_LEVEL","SHOW_ACCESS_LEVEL_SUCCESS","SHOW_ACCESS_LEVEL_FAILURE","showAccessLevelSuccess","AccessLevelList","accessLevels","AccessLevelShow","addOrRemove","editAccessLevelSuccess","entries","accessRightsConstants","aria-controls","key","checked","AccessLevelPage","ADD_ABSENCE","ADD_ABSENCE_SUCCESS","EDIT_ABSENCE_SUCCESS","FETCH_ABSENCES","FETCH_ABSENCES_SUCCESS","FETCH_ABSENCES_FAILURE","SHOW_ABSENCE","SHOW_ABSENCE_SUCCESS","SHOW_ABSENCE_FAILURE","CANCEL_ABSENCE_SUCCESS","TYPE_CHILD_DISEASE","TYPE_WORK_ACCIDENT","TYPE_UNJUSTIFIED","TYPE_PROTECTIVE_LAYOFF","TYPE_DISCIPLINARY_DISMISSAL","TYPE_TRAVEL_ACCIDENT","8","9","10","11","12","13","14","15","16","17","COMPLEMENT_MORNING","COMPLEMENT_AFTERNOON","COMPLEMENT_NAMES","EVENT_TYPE_NAMES","eventPrecisionWedding","eventPrecisionWeddingName","getEventPrecisionChoices","eventType","eventPrecisionBirth","eventPrecisionBirthName","eventPrecisionDeath","eventPrecisionDeathName","eventPrecisionElse","eventPrecisionElseName","getComplementChoices","getEventTypeChoices","editAbsenceSuccess","fetchAbsences","fetchAbsencesSuccess","absences","showAbsence","showAbsenceSuccess","editStatus","cancel","days","FETCH_EVENTS","FETCH_EVENTS_SUCCESS","FETCH_ALL_EVENTS_SUCCESS","FETCH_PRESENCE_EVENTS_SUCCESS","FETCH_NEED_EVENTS_SUCCESS","FETCH_TASKS_SUCCESS","FETCH_RESOURCES","FETCH_RESOURCES_SUCCESS","FETCH_TITLE_SUCCESS","SHOW_EVENT_POP","HIDE_EVENT_POP","SHOW_EVENT_POPUP","HIDE_EVENT_POPUP","SHOW_TEMPLATE_EVENT_POP","HIDE_TEMPLATE_EVENT_POP","SHOW_RESOURCE_ACTIONS","HIDE_RESOURCE_ACTIONS","REFRESH","SET_COMPANIES","SET_JOB","SET_GROUP_BY","SET_GENERATED","CANCEL_BOOKING_OFFER","ADD_BOOKING_OFFER","FETCH_BOOKING_OFFERS_EVENT_SUCCESS","REFRESH_RESOURCE","REFRESH_RESOURCE_SUCCESS","EVENT_EDIT","EVENT_EDIT_ABORT","EVENT_EDIT_VALIDATE","CALENDAR_EVENTS_GLOBAL","CALENDAR_EVENTS_SINGLE","CALENDAR_SIGNED_GLOBAL","CALENDAR_SIGNED_REPORTING","CALENDAR_SIGNED_SINGLE","CALENDAR_ABSENCE","CALENDAR_TASK","CALENDAR_TIME_SHEET","RESOURCE_TIMELINE_DAY_VIEW","RESOURCE_TIMELINE_VIEW","RESOURCE_TIMELINE_WEEK_VIEW","RESOURCE_TIMELINE_MONTH_VIEW","LIST_DAY_VIEW","LIST_WEEK_VIEW","LIST_MONTH_VIEW","TIME_GRID_DAY_VIEW","TIME_GRID_WEEK_VIEW","DAY_GRID_MONTH_VIEW","RESOURCE_TYPE_EVENT","RESOURCE_TYPE_SIGNED","RESOURCE_TYPE_KEEP_NOTE","RESOURCE_TYPE_TASK","RESOURCE_TYPE_TEMPLATE","RESOURCE_HIERARCHY_PARENT","RESOURCE_HIERARCHY_CHILD","EVENT_TYPE_EVENT","EVENT_TYPE_EVENT_EXCEPTION","EVENT_TYPE_TIME_CLOCK","EVENT_TYPE_TIME_CLOCK_EXCEPTION","EVENT_TYPE_TIME_CLOCK_MISSING","EVENT_TYPE_ABSENCE","EVENT_TYPE_BOOKING","EVENT_TYPE_BOOKING_EXCEPTION","EVENT_TYPE_TEMPLATE_EVENT","EVENT_TYPE_TEMPLATE_EVENT_EXCEPTION","EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION","EVENT_TYPE_TEMPLATE_APPLIED_EVENT","EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION","EVENT_TYPE_OFFER_PENDING","EVENT_TYPE_OFFER_VALIDATED","EVENT_TYPE_PRESENCE","EVENT_TYPE_KEEP_NOTE","EVENT_TYPE_TASK","EVENT_TYPE_TASK_EXCEPTION","PRECISION_ONE_DAY","getCalendarTypesChoices","getMovableHolidays","year","easter","f","floor","G","C","H","I","L","month","day","getEasterDate","lundiPaques","setDate","getDate","ascension","pentecote","moment","fetchTitleSuccess","hideEventPop","hideEventPopup","hideTemplateEventPop","hideResourceActions","refresh","setView","view","editEvent","event","pendingEvent","refreshResource","resourceId","parentId","AbsenceCalendar","refreshAbsences","calendar","pickerDate","setPickerDate","setCompanies","calendarRef","createRef","API","getApi","absenceAPI","dates","currentStart","currentEnd","calendarApiNavActions","prev","next","ViewTitleContainer","minWidth","CalendarTitle","gotoDate","choices","resourceLaneDidMount","updateSize","editable","schedulerLicenseKey","resourceOrder","resourceAreaWidth","plugins","resourceTimeline","interactionPlugin","initialView","resourceAreaHeaderContent","resourceLabelContent","resource","nbDays","extendedProps","jobColor","opacity","eventClick","allLocales","stickyHeaderDates","stickyFooterScrollbar","displayEventTime","headerToolbar","slotDuration","resources","information","color","orderBy1","orderBy2","events","typeName","borderColor","classNames","handleWindowResize","progressiveEventRendering","AbsenceCalendarPage","ADD_LOCALISATION","ADD_LOCALISATION_SUCCESS","EDIT_LOCALISATION_SUCCESS","FETCH_LOCALISATIONS","FETCH_LOCALISATIONS_SUCCESS","FETCH_LOCALISATIONS_FAILURE","SHOW_LOCALISATION","SHOW_LOCALISATION_SUCCESS","SHOW_LOCALISATION_FAILURE","editLocalisationSuccess","showLocalisationSuccess","LocalisationList","setActivated","localisations","defaultChecked","LocalisationNeedTable","needs","setNeeds","dateRange","setDateRange","setDisabled","_start","_end","getTimeOccurrences","includeLastSlot","times","setTime","getTime","getHours","toLocaleString","minimumIntegerDigits","getMinutes","addOrEdit","time","arr","arraySearch","handleTypeChange","needType","needJobs","need","LocalisationShow","activate","resp","l","LocalisationPage","fetchCalendar","test","setting","showEventPop","eventClickArg","editDay","createException","bookingId","instanceToken","editException","bookingExceptionId","split","splitDay","splitBetween","instanceId","cancelAfter","cancelOnce","ACCOUNTING_TYPE_WORK_ACCOUNTED","ACCOUNTING_TYPE_WORK_UNACCOUNTED","ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED","ACCOUNTING_TYPE_ABSENCE_ACCOUNTED","AccountingTypes","getAccountingTypeChoice","accountingType","getAccountingTypeChoiceClassName","SmallLoader","EventPop","displayEventPop","eventPopRef","cancelType","cancelSub","setCancelSub","setLabourDayLoading","positionsLoaded","setPositionsLoaded","positions","setPositions","eventPopPosition","el","cancelSubstitution","exceptionId","exceptionInstanceId","diff","console","table","EventPopContent","bookingGroupId","bookingGroupTitle","isException","bookingInstanceId","group","groupId","isSlotExchange","timeCaption","labourDay","ev","worked","labourDayWorked","endAt","beginAt","substitute","setLabourDayWorked","slotExchangeDecodedInstance","substitution","transition","getVersion","ResourceActions","resourceLabelContentArg","displayResourceActions","resourceActionButton","resourceActionsButton","resourceActionRef","dropdown","ActionsDropdown","_resource","activeStart","activeEnd","SHOW_ALERT_SUCCESS","SHOW_ALERT_INFO","SHOW_ALERT_WARNING","SHOW_ALERT_DANGER","HIDE_ALERT","ALERT_SUCCESS","ALERT_INFO","ALERT_WARNING","ALERT_DANGER","showAlertSuccess","showAlertInfo","showAlertDanger","taskGroupId","taskId","exDate","TaskEventPop","taskCalendar","displayCancelConfirmation","setDisplayCancelConfirmation","setCancelType","statusUpdating","setStatusUpdating","updateStatus","allDay","initialStart","customFieldsValues","preventException","aria-expanded","cancelBooking","cancelValidation","CancelConfirmation","ADD_TEMPLATE_APPLIED","ADD_TEMPLATE_APPLIED_SUCCESS","EDIT_TEMPLATE_APPLIED","EDIT_TEMPLATE_APPLIED_SUCCESS","FETCH_TEMPLATE_APPLIES","FETCH_TEMPLATE_APPLIES_SUCCESS","FETCH_TEMPLATE_APPLIES_FAILURE","SHOW_TEMPLATE_APPLIED","SHOW_TEMPLATE_APPLIED_SUCCESS","SHOW_TEMPLATE_APPLIED_FAILURE","editTemplateApplied","editTemplateAppliedSuccess","TYPE_EVENT","TYPE_EVENT_EXCEPTION","renderEvent","arg","timeText","typeShortName","isAnomaly","planned","children","reduce","accumulator","exchange","exchanged","applicantCount","resourceLaneContent","isTopLevel","lane","querySelector","ADD_KEEP_NOTE","ADD_KEEP_NOTE_SUCCESS","ADD_KEEP_NOTE_FAILURE","REMOVE_KEEP_NOTE","REMOVE_KEEP_NOTE_SUCCESS","REMOVE_KEEP_NOTE_FAILURE","EDIT_KEEP_NOTE_SUCCESS","FETCH_KEEP_NOTES","FETCH_KEEP_NOTES_SUCCESS","FETCH_KEEP_NOTES_FAILURE","SHOW_KEEP_NOTE","SHOW_KEEP_NOTE_SUCCESS","SHOW_KEEP_NOTE_FAILURE","fetchKeepNotesSuccess","keepNote","EventAppliedPop","displayTemplateEventPop","isAppliedException","templateAppliedId","templateTitle","groupTitle","exception","removeSub","EventPopup","showEventPopup","removingSub","setRemovingSub","eventId","daysOfWeek","weekDays","comment","eventExchangeApi","eventExchangeId","templateId","templateStart","templateEnd","exceptionApi","CalendarShow","defaultView","calendarSettings","isPresence","defaultGroupBy","timePrecision","isRefresh","needEvents","workingTimes","tasks","bookingOffers","presenceEvents","resourceSalary","minTime","maxTime","timeRange","setTimeRange","isOuter","setIsOuter","isAbsence","setIsAbsence","isAbsent","setIsAbsent","isBookingOffer","setIsBookingOffer","Wn","setWn","viewType","setViewType","labourDays","setLabourDays","groupBy","setGroupBy","templates","templateApplied","isSm","setIsSm","nightView","setNightView","userCompanies","selectingCompanies","setSelectingCompanies","teams","setTeams","setJob","selectedTeams","setSelectedTeams","companyQuery","setCompanyQuery","teamQuery","setTeamQuery","onValidateBsDropdown","selecting","_companies","min","b","max","max_hours","pad","max_minutes","min_hours","min_minutes","num","size","renderDaySeparator","handleResize","tooltipTriggerList","slice","call","querySelectorAll","tooltipTriggerEl","Tooltip","getInstance","hide","refreshCalendar","workingTime","presence","sortBy","refreshResourceSuccess","leadingZero","lanes","dataset","maxDate","apply","getSeconds","join","hasAttribute","getAttribute","cssText","getOption","setOption","changeView","Promise","all","fetchTemplatesAppliesSuccess","fetchResourcesSuccess","fetchAllEventsSuccess","getMaxEnd","resourceEvents","getEvents","maxEnd","RenderResourceAreaHeader","data-bs-auto-close","_selectingCompanies","handleCompanyChange","_t","_selectedTeams","data-bs-placement","needEvent","weekNumber","getFullYear","resourceTimelinePlugin","listPlugin","rrulePlugin","eventMouseEnter","parentElement","classList","toggle","textContent","alternativeTitle","eventMouseLeave","replace","eventOverlap","lazyFetching","resourceGroupLabelContent","array","groupValue","views","resourceTimelineDay","minutes","resourceTimelineWeek","resourceTimelineMonth","hiddenDays","slotMinTime","slotMaxTime","selectable","jsEvent","longResourceId","resourceParentId","showTemplateEventPop","taskCalendarActions","offer","eventResize","oldEvent","eventDrop","newResource","getResources","revert","expandRows","hierarchy","resourceType","preventDefault","_localisation","_activity","grouped","diffTimestamp","diffInterval","showSalaryDropdown","showResourceActions","resourceLabelClassNames","resourceGroupField","eventResourceEditable","eventSources","isOuterEvent","eventContent","slotLabelContent","ld","level","dueDate","text","navLinks","navLinkDayClick","viewDidMount","slotEventOverlap","refetchResourcesOnNavigate","CalendarPage","ProfileShow","removeItem","ProfileShowPage","ADD_CHANNEL","ADD_CHANNEL_SUCCESS","EDIT_CHANNEL","EDIT_CHANNEL_SUCCESS","FETCH_CHANNELS","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","SHOW_CHANNEL","SHOW_CHANNEL_SUCCESS","SHOW_CHANNEL_FAILURE","ChannelList","channels","lastMessage","createdAt","body","channelId","ChannelShow","param","sent","setSent","sentError","setSentError","isLoadingMessages","messages","setMessages","setChannel","attachments","of","nullable","pendingId","now","owner","toDateString","messageReactions","pending","resetForm","scrollMessageContainer","_channel","URL","searchParams","append","EventSource","onmessage","newMessage","messageApi","handleReactionClick","messageId","reactionId","_messages","messageIndex","x","exist","reactionIndex","reactionApi","ReactionCounters","reactionsTab","reactionsTabCount","reactionsTabTooltip","forEach","reaction","data-bs-html","newEvent","setNewEvent","element","reverse","ChannelPage","AccountList","hasLoaded","setHasLoaded","setSelecting","accounts","current_account","AccountListPage","TaskGroupCalendar","filteredResources","setFilteredResources","resourcesQuery","setResourcesQuery","groups","setGroups","filtered","fetchEvents","fetchResources","taskGroups","dayGridPlugin","html","indexOf","displayEventEnd","resourceAreaHeaderDidMount","innerHTML","resourceSearch","onkeyup","getElementsByClassName","TaskGroupCalendarPage","Container","styled","div","isDragAccept","isDragReject","isDragActive","getColor","StyledDropzone","handleUploadedFile","acceptedFilesProps","multiple","useDropzone","accept","maxSize","onDrop","acceptedFile","getRootProps","getInputProps","acceptedFiles","FileNames","file","ColorPicker","colors","setItems","borderRadius","lineHeight","fontSize","arrayEquals","isArray","every","Scrollbar","contentRef","scrollTrackRef","scrollThumbRef","observer","thumbHeight","setThumbHeight","scrollStartPosition","setScrollStartPosition","initialScrollTop","setInitialScrollTop","isDragging","setIsDragging","handleScrollButton","direction","scrollAmount","scrollBy","behavior","handleTrackClick","useCallback","trackCurrent","contentCurrent","clickRatio","scrollTo","handleThumbPosition","contentTop","contentHeight","trackHeight","newTop","handleThumbMousedown","handleThumbMouseup","handleThumbMousemove","contentScrollHeight","contentOffsetHeight","offsetHeight","deltaY","trackSize","ResizeObserver","observe","unobserve","triggerResize","onMouseDown","cursor","SalarySelector","setOptions","teamLoading","setTeamLoading","initiallyOpen","isOpen","setIsOpen","displayFilter","setDisplayFilter","setTimer","displayAllValues","setDisplayAllValues","formRef","bodyRef","headerRef","inputRef","extraCompany","setExtraCompany","fetchOptions","_jobs","_options","_initialValue","__companies","accessRight","getRoute","setIsScrollBottom","bodyDimension","headerDimension","oversize","focus","isScrollBottom","addValue","reset","clearQuery","Label","Filters","maxHeight","handleExtraCompanyChange","contentEditable","st","pt","ps","ts","toAdd","vs","handleTeamClick","display","_query","areEqual","prevProps","nextProps","_beginAt","_endAt","initialValue","value1","value2","isSame","memo","CustomFieldValue","customField","customFieldValue","position","CustomInput","customFields","maxLength","rows","isClearable","files","fieldValues","fv","TaskEditForm","handleSubmitSuccess","_taskValidationSchema","_customFieldsValidationSchema","_initialValues","parent","taskGroup","dateValue","helpers","handleAllDayChange","showTimeSelect","timeIntervals","selectsStart","selectsEnd","startDate","TaskEdit","close","calendarTypes","ADD_TASK","ADD_TASK_SUCCESS","EDIT_TASK_SUCCESS","FETCH_TASKS","FETCH_TASKS_FAILURE","SHOW_TASK","SHOW_TASK_SUCCESS","SHOW_TASK_FAILURE","EDIT_TASK_STATUS_SUCCESS","DELETE_TASK_SUCCESS","getTaskStatusChoice","statusId","StatusSelector","_handleChangeSuccess","_status","_setStatus","setSelected","handleChangeSuccess","statusApi","TaskShow","setCalendarTaskSidebarProps","canceling","setCanceling","sidebarType","trigger","TaskAddForm","validation","setValidation","currentTaskGroup","setCurrentTaskGroup","setTaskGroups","_validationSchema","j","onFocus","popperPlacement","showPopperArrow","minDate","_recurrenceValues","recurrenceFields","dayOfMonth","monthOfYear","separationCount","handleRecurrenceTypeChange","getDaysOfMonth","opt","months","getMonthsOfYear","TaskAdd","setKey","setMinutes","TaskSelect","CalendarTaskSidebar","offcanvas","setOffcanvas","referer","Offcanvas","open","Content","handleEventChange","onMouseEnterTooltip","tooltip","FETCH_COMPANY_GROUP","FETCH_COMPANY_GROUP_SUCCESS","FETCH_COMPANY_GROUP_FAILURE","ADD_COMPANY_GROUP","ADD_COMPANY_GROUP_SUCCESS","EDIT_COMPANY_GROUP_SUCCESS","BILLING_RATE_OPTIONS","getMaxVisibilityDate","currentDate","generalSettings","visibleUntil","setMonth","duration","breakDuration","setSeconds","padStart","timeFormat","addSign","addMinus","h","toFixed","RenderTimeSheet","timeSheets","timeSheet","accountedWorkingTime","RenderTemplateResource","removeResource","setTemplateResourceSidebarProps","setConfirm","removing","setRemoving","floating","contractWorkingTime","RenderResource","setCalendarAbsenceSidebarProps","setCalendarSignedSidebarProps","setCalendarEventSidebarProps","setCalendarTimeTableProps","underTitle","setHours","presenceType","n","_v","_vv","_vn","onMouseEnter","textColor","private","taskTypes","ResourceAreaHeaderContent","filterEventsWithResources","setFilterEventsWithResources","setIsBackgroundEvents","isBackgroundEvents","setIsOuterEvent","isOuterEvents","viewTitle","prevClick","nextClick","handlePickedDateChange","maxWidth","handlePickerDateChange","CalendarTaskList","setTasks","calendarTaskSidebarProps","initialDate","setInitialDate","setInitialView","setEndDate","hasApi","_view","Toolbar","previousSalaries","DashboardAbsenceRequest","DashboardKeepNote","today","disable","DashboardFeed","feeds","setFeeds","getIcon","salaryId","settingsApi","_feeds","removeFeed","removeAnomaly","remove","DashboardPointing","setType","setCompany","showError","setShowError","_clockIn","ADD_BOOKING_OFFER_SUCCESS","EDIT_BOOKING_OFFER_SUCCESS","FETCH_BOOKING_OFFERS","FETCH_BOOKING_OFFERS_SUCCESS","FETCH_BOOKING_OFFERS_FAILURE","SHOW_BOOKING_OFFER_SUCCESS","SHOW_BOOKING_OFFER_FAILURE","CANCEL_BOOKING_OFFER_SUCCESS","cancelBookingOfferSuccess","editBookingOfferSuccess","DashboardBookingOffer","applicants","validated","saveSingle","DashboardCounter","setCounter","ADD_EVENT_OFFER","ADD_EVENT_OFFER_SUCCESS","EDIT_EVENT_OFFER","EDIT_EVENT_OFFER_SUCCESS","FETCH_EVENT_OFFERS","FETCH_EVENT_OFFERS_SUCCESS","FETCH_EVENT_OFFERS_FAILURE","SHOW_EVENT_OFFER_SUCCESS","SHOW_EVENT_OFFER_FAILURE","CANCEL_EVENT_OFFER_SUCCESS","cancelEventOfferSuccess","eventOffer","editEventOfferSuccess","DashboardEventOffer","eventOffers","applications","editExpenseSuccess","fetchExpenses","fetchExpensesSuccess","expenses","showExpenseSuccess","DashboardExpenseRequestList","statusLoading","setStatusLoading","amount","globals","manageStatus","DashboardExpenseRequest","DashboardTimeClockMissing","signed","handleClick","signedMissing","setSignedMissing","timeClockSettings","lateAfter","DashboardTimeClockLate","signedLate","setSignedLate","isLate","TimeClockDashboardList","origin","onTime","setOnTime","late","setLate","missing","setMissing","applyFilters","lateOfCaption","DashboardTimeClock","setSigned","setOrigin","tomorrow","EventEditForm","setSalary","exdate","accessRightsTypes","setFieldTouched","CalendarEventEdit","EventResizeEdit","cancelResize","setDates","EventShow","removingEvent","setRemovingEvent","removingAbsence","setRemovingAbsence","absenceInfoLoading","setAbsenceInfoLoading","setNbDays","nextWorkingDay","setNextWorkingDay","absenceApi","removeSubSuccess","removingExchange","setRemovingExchange","removeEventSuccess","removeExchangeSuccess","removeAbsenceSuccess","substituted","exchangeApi","exchangeId","finalEvent","finalTarget","eventApi","removeEvent","isLabourDay","EventAddForm","initialSalary","initialCompany","isoWeek","weekYear","clone","showTimeSelectOnly","EventAdd","EventDrop","cancelDrop","oldResource","setResources","EventSelect","EventSubstitute","setJobs","setSalaries","handleSelectChange","substituteId","rate","counterDuration","CalendarEventExchange","submiting","setSubmiting","isSameDuration","setIsSameDuration","slots","setSlots","targetExDate","CalendarEventSidebar","ADD_SALARY","ADD_SALARY_SUCCESS","EDIT_SALARY_SUCCESS","FETCH_SALARIES","FETCH_SALARIES_SUCCESS","FETCH_SALARIES_FAILURE","SHOW_SALARY","SHOW_SALARY_SUCCESS","SHOW_SALARY_FAILURE","editSalarySuccess","fetchSalaries","fetchSalariesSuccess","showSalary","showSalarySuccess","SingleSalarySelector","onClose","fetchedSalaries","setFetchedSalaries","jobsArray","companiesArray","salariesArray","SingleSalarySelected","onDelete","onOpen","BOOKING_RECURRENCE_CHOICES","getBookingRecurrenceChoice","BookingEditForm","displayConfirmationTypeSelector","setDisplayConfirmationTypeSelector","confirmationType","setConfirmationType","displaySalarySelector","setDisplaySalarySelector","weeks","setWeeks","init","setInit","submitSuccess","getWeeks","weekLetters","fromCharCode","submitForm","log","ariaLabelledBy","isValid","CalendarBookingEdit","BookingResizeEdit","IsGranted","BookingShow","setCalendarSidebarBookingProps","setCalendarSidebarSignedProps","confirmCancel","setConfirmCancel","removingBooking","setRemovingBooking","removeBookingSuccess","setExtendedProp","removeBooking","BookingAddForm","groupApi","defaultLabels","bookingGroup","validateOnChange","isInitialValid","handleBookingGroupChange","recurrenceValidation","handleSalaryChange","g","finish","dayElements","getElementsByName","daysOfWeek_copy","weekElements","weekLetters_copy","BookingAdd","setStart","setEnd","BookingDrop","BookingSelect","CalendarBookingSidebar","SignedEditForm","timeClockId","showTimeInput","SignedEdit","SignedResizeEdit","download","fileId","SignedShow","loaded","_files","setFiles","fileApi","newBlob","Blob","createObjectURL","addImage","BookingTable","setEvents","isSingle","explodeRecurrence","colSpan","SignedAddForm","SignedAdd","SignedSelect","CalendarSignedSidebar","TYPE","EVENT_TYPE","initialState","TIME_ACCOUNTED_TYPE","AbsenceBalance","balanceBefore","setBalanceBefore","balanceAfter","setBalanceAfter","add","absenceId","typesAvailableToComplementTime","AbsenceAddForm","startComplement","setFile","eventPrecisions","setEventPrecisions","formData","FormData","handleDateChange","removeFields","startComplementTime","endComplement","endComplementTime","handleComplementChange","filterComplementChoices","_fields","lastDayIn","eventPrecision","precision","AbsenceEditForm","initiateFormValues","initiateFormValidationSchema","validationShape","timeAccountedType","absenceSettings","accountedTime","handleTimeAccountedTypeChange","step","AbsenceEdit","AbsenceAdd","CalendarAbsenceSidebar","SingleCompanySelector","selectedCompany","SingleCompanySelected","btnClassName","onShow","OfferEditForm","_company","displayCompanySelector","setDisplayCompanySelector","CalendarOfferEdit","offerId","applicationId","validate","invalidate","CalendarOfferShow","setCalendarOfferSidebarProps","applicationApi","OfferAddForm","CalendarOfferAdd","CalendarOfferApplication","CalendarOfferSidebar","CalendarTemplateShow","_template","setTemplate","handleStatusChange","isPreview","setCalendarData","floatingResources","previousResource","appliedResources","ar","resourceApi","handleFloatingResourceChange","CalendarTemplateImport","setTemplates","submitting","setYear","setWeek","CalendarTemplateEventShow","setCalendarTemplateSidebarProps","templateEventId","exDay","CalendarTemplateEventEdit","templateEventExceptionId","TemplateEventSubstitute","CalendarTemplateExport","filterType","setFilterType","linkId","visibility","handleFilterTypeChange","CalendarTemplateSidebar","CalendarPublish","publishType","removed","CalendarSingle","setCalendar","setSortBy","isNightTime","setNightTime","companyWeeks","setCompanyWeeks","setKeepNotes","offers","setOffers","calendarEvents","setCalendarEvents","setTimeSheets","isOffers","setIsOffers","sm","setSm","disableDemarcation","setDisableDemarcation","calendarEventSidebarProps","calendarBookingSidebarProps","setCalendarBookingSidebarProps","calendarSignedSidebarProps","calendarAbsenceSidebarProps","calendarOfferSidebarProps","calendarTemplateSidebarProps","overrides","overrideCalendar","overrideView","overrideSortBy","overrideNightTime","eventsTimeSheet","signedTimeSheet","companyWeek","_c","handleCalendarChange","TimeSheetSlot","data-bs-trigger","data-bs-content","popover","Popover","allDaySlot","slotMinWidth","timeGridPlugin","resourceTimeGridPlugin","dayHeaderContent","info","labourDates","headerDate","scrollTime","weekNumbers","visibleRange","ADD_TIME_CLOCK","ADD_TIME_CLOCK_SUCCESS","EDIT_TIME_CLOCK_SUCCESS","FETCH_TIME_CLOCKS","FETCH_TIME_CLOCKS_SUCCESS","FETCH_TIME_CLOCKS_FAILURE","SHOW_TIME_CLOCK","SHOW_TIME_CLOCK_SUCCESS","SHOW_TIME_CLOCK_FAILURE","REFRESH_TIME_CLOCK","REMOVE_TIME_CLOCK_SUCCESS","editTimeClockGeneratedSuccess","timeClockGenerated","removeTimeClockGeneratedSuccess","fetchTimeClocks","fetchTimeClocksSuccess","timeClocks","Dashboard","hasModule","DashboardPage","LoaderList","leftCircle","listLength","listArray","setListArray","_listArray","SalaryList","setFiltering","isExporting","setIsExporting","__export","FileSaver","saveAs","TimetableAddForm","timetables","lastEnd","timetable","_validation","overlap","isOverlap","TimetableAdd","setTimetables","setLastEnd","TimetableList","setTimetable","_timetable","TimetableEventAddForm","refreshValues","renderDayContents","renderCustomHeader","openToDate","TimetableEventSelect","TimetableEventEditForm","activities","TimetableEventEdit","TimetableEventShow","initialEnd","TimetableCopyWeek","setTargets","submit","w","_targets","TimetableEventSidebar","handleEventEdit","handleEventAdd","TimetableEditForm","TimetableEdit","TimetableDuplicate","TimetableImport","_salary","setIsSubmitting","importTimetable","targetTimetable","TimetableShow","counterFetched","setCounterFetched","cleanWeek","deltaDuration","delta","validRange","rrule","freq","byweekday","dtstart","startTime","until","eventResizableFromStart","targetSalary","Timetable","ManagerShow","handleRemove","managers","manager","ACCOUNTED_TYPES_OPTIONS","SalarySettings","absenceAcquisition","acquisition","setAcquisition","connector","silaeMatricule","setSilaeMatricule","activationError","setActivationError","billingOptions","setBillingOptions","setAccountedTime","handleActivation","billingApi","isGranted","shouldUpgrade","billingCompany","timeClockActivated","advanceBefore","parseFloat","accountedType","EmptyList","updateSalaryRepartition","salaryRepartitionId","validations","contractWorkingTimeRepartition","contractWorkingTimeRepartitionTrigger","contractWorkingTimeRepartitionCurrentWeek","AddOrUpdateSalaryRepartitionForm","repartitionData","onSuccess","contractWorkingTimeRepartitionValues","toDate","startOf","isNaN","isBefore","contractWorkingTimeRepartitionCurrentWeekEditedAt","drawerElement","newTab","endOf","SalaryRepartitions","repartitionToEdit","setRepartitionToEdit","isAvailable","flatRate","activeRepartitionsList","repartitions","archived","onArchivedSalaryRepartition","salaryRepartition","repartition","SalaryTimeClockToken","setTimeClockToken","setIsValid","handleQueryChange","success","SalaryInformation","removeActivity","defaultLabelApi","removeLocalisation","downloadQr","b64toBlob","base64","b64Data","contentType","sliceSize","byteCharacters","atob","byteArrays","byteNumbers","charCodeAt","byteArray","Uint8Array","aria-orientation","aria-selected","accessRightId","contract","hourlyRate","dayAnnualFlatRate","overtimeBasis","absenceBasis","companyDefaultLabel","SalaryAbsenceCounter","tookBetween","cp","acquired","taken","balance","n1","n2","TabMenu","colsNumber","tabItems","selectedIndex","gridColsVariants","tabItem","AbsenceFileShow","downloading","setDownloading","deleting","setDeleting","justificatifUrl","setJustificatifUrl","loadingFile","setLoadingFile","displayFile","downloadJustification","deleteJustification","frameBorder","Loading","addSalaryPaidVacation","deleteSalaryPaidVacation","paidVacationId","AddPaidVacationSchema","availableStart","reason","AddPaidVacationDrawer","drawerId","onSubmitSuccess","offcanvasElement","PaidVacations","salaryPaidVacationsList","setSalaryPaidVacationsList","fetchCounterData","fetchPaidVacations","noLoading","onDeletePaidVacation","paidVacation","SalaryAbsence","isListEnd","setIsListEnd","period","setTabIndex","filters","newTabIndex","createdBy","editedBy","editedAt","exportDays","FETCH_COUNTERS","FETCH_COUNTERS_SUCCESS","FETCH_COUNTERS_FAILURE","SHOW_COUNTER","SHOW_COUNTER_SUCCESS","SHOW_COUNTER_FAILURE","EDIT_COUNTER_SUCCESS","EDIT_COUNTER_FAILURE","REFRESH_COUNTER","showCounterSuccess","totalCounter","editCounterSuccess","refreshCounter","FETCH_REPORTING","FETCH_REPORTING_SUCCESS","FETCH_REPORTING_FAILURE","SHOW_REPORTING","SHOW_REPORTING_SUCCESS","SHOW_REPORTING_FAILURE","REFRESH_SINGLE","fetchReporting","fetchReportingSuccess","singleReporting","showReportingSuccess","refreshSingleReporting","SalaryCounter","weeksReporting","setWeeksReporting","setReporting","counterLoading","setCounterLoading","setStartDate","hasChanged","fetchItems","isCounter","month_array","TableLoader","counterApi","_item","_key","_dt","weekReporting","counterWithdrawn","counterWithdrawnStep","counterSaved","counterStep","counterTotalInitial","counterSavedTotal","counterTotal","FETCH_SYNTHESES","FETCH_SYNTHESES_SUCCESS","UPDATE_SYNTHESES","UPDATE_SYNTHESES_SUCCESS","SHOW_SYNTHESIS","SHOW_SYNTHESIS_SUCCESS","fetchSynthesesSuccess","syntheses","synthesis","updateSyntheses","updateSynthesesSuccess","showSynthesis","showSynthesisSuccess","SynthesisSignature","displayOverlappingDays","setDisplayOverlappingDays","toHHMMSS","secs","sec_num","overlapStart","nightTimeDetails","maj","done","nonBadgedBreak","overlapWorkingTime","overlapAbsenceAccountedTime","overlapAccountedWorkingTime","absenceAccountedTime","accountingSetting","SalaryCounterV2","isOvertimeMarkUp","accountingSettings","overtimeMarkUp","firstDay","lastDay","modal","setModal","paidModal","setPaidModal","downloadModal","setDownloadModal","withdrawnModal","setWithdrawnModal","Modal","setCurrentWeek","saveCounters","counters","fetchCounters","clearCounters","signe","hours","initialWithdrawnValues","setInitialWithdrawnValues","paidInitialValues","setPaidInitialValues","downloadInitialValues","setDownloadInitialValues","updateForm","setUpdateForm","absValue","withdrawnAbsValue","withdrawnHours","withdrawnMinutes","counterWithdrawnDescription","paid","paidLowMajoration","paidHighMajoration","wn","formikPaid","paidApi","formikDownload","formikWithdrawn","withdrawn","addWithdrawn","cgApi","overtime25","overtime50","overlapEnd","initialCounter","finalCounter","monthlyContractWorkingTime","nightTime20","nightTime40","labourDayWorkingTime","sundayWorkingTime","SalaryFileListItem","onDisplay","onDownload","SalaryDocumentStocked","fetchSalaryFilesList","fileUrl","deleteFile","downloadFile","SalaryStorage","SalaryDocumentGenerated","documents","setDocuments","doc","SalaryDocument","SalaryShow","setCurrentDate","locked","SalaryPage","OPEN_MODAL","SUBMIT_MODAL","CLOSE_MODAL","FORM_FILTER_ABSENCE","closeModal","AbsenceList","setTypes","validateFilter","validateModal","AbsenceCalendarShow","setViewTitle","defaultAllDay","showNonCurrentDates","AbsenceShow","setRange","AbsencePage","ADD_JOB","ADD_JOB_SUCCESS","ADD_JOB_FAILURE","EDIT_JOB_SUCCESS","FETCH_JOBS","FETCH_JOBS_SUCCESS","FETCH_JOBS_FAILURE","SHOW_JOB","SHOW_JOB_SUCCESS","SHOW_JOB_FAILURE","editJobSuccess","fetchJobsSuccess","showJobSuccess","JobList","setStatus","BookingDefaultList","bookings","setBookings","defaultBookings","JobShow","JobPage","TimeClockConfig","beforeSchedule","afterSchedule","pointBreak","break","floatingBreak","shouldTakePicture","pictureFrequency","AbsenceConfig","countdown","returnDay","decrementPeriod","resetRTT","AccountingConfig","labourDaysWorked","setLabourDaysWorked","regionalLabourDays","setRegionalLabourDays","setFields","accountedAbsenceType","absenceTypes","setAbsenceTypes","regional_labour_days","camelCase","absenceDisabledCounter","HasRole","HasPreviousRole","ModuleConfig","askedModulesInStorage","askedModules","setAskedModules","onAskModule","GeneralConfig","NotificationSettings","notifications","setNotifications","setAccessLevels","handleEmailChange","handlePushNotificationChange","handleSmsNotificationChange","handleManagerChange","handlePopulationChange","accessLevelId","population","populationDescription","sms","notification","_n","isEmail","isPushNotification","isSms","isManager","CompanyGroupSettings","CompanyGroupSettingsPage","TimeClockList","setIsAnomaly","setFilter","fetchSigned","arcLabelsRadiusOffset","margin","bottom","sortByValue","arcLinkLabel","enableArcLabels","arcLabelsSkipAngle","arcLinkLabelsSkipAngle","arcLabel","datum","round","applyChartFilters","selectsRange","inline","TimeClockPage","ReportingPeriodView","periodsReporting","displaySalaryColumn","timesheetExpanded","setTimesheetExpanded","absenceExpanded","setAbsenceExpanded","counterExpanded","setCounterExpanded","wageExpanded","setWageExpanded","savingCounter","setSavingCounter","getCollSpan","typeFields","af","hasAny","span","overTimeLow","overTimeHigh","overTime","nightTime","low","high","labourWorkingTime","fullDays","shift","reportingApi","_data","sickLeave","recovery","rtt","unpaidVacation","specialEvent","monthlyRate","ReportingList","closingDay","setFullYear","goToPrevMonth","goToNextMonth","ReportingListPage","ReportingShow","isDownloading","setSalaryId","savingWeekCounter","setSavingWeekCounter","pendingStartDate","setPendingStartDate","pendingEndDate","setPendingEndDate","saveCounter","_startDate","_endDate","unaccountedAbsence","data-bs-keyboard","ReportingShowPage","Error403","Password","previousPassword","PasswordPage","NoCompany","updateSalary","salaryActions","authActions","Error500","PasswordRequest","confirmEmail","setConfirmEmail","confirmedEmail","setConfirmedEmail","code","setCode","isValidating","setIsValidating","isValidated","setIsValidated","verifyCode","formikPwd","onKeyPress","_array","pattern","inputMode","onKeyDown","PasswordRequestPage","ADD_USER","ADD_USER_SUCCESS","EDIT_USER","EDIT_USER_SUCCESS","FETCH_USERS","FETCH_USERS_SUCCESS","FETCH_USERS_FAILURE","SHOW_USER","SHOW_USER_SUCCESS","SHOW_USER_FAILURE","fetchUsersSuccess","users","showUserSuccess","UserList","abortController","UserInformationShow","UserCompanyGroupShow","setSingle","salariesCount","userApi","UserCompanyGroupList","companyGroups","linkSellsyIdToCompanyGroup","companyGroupId","linkSellsyIdToCompany","companyId","createCompanySubscription","updateCompanySubscription","linkBillingCompanyToSalary","SellsyContactCard","selectedCompanyGroupId","companyGroupSellsyId","userEmail","setSellsyContact","onRefresh","selectedTab","setSelectedTab","companyGroupIsLoading","setCompanyGroupIsLoading","associatedSellsyContact","setAssociatedSellsyContact","onFetchAssociatedSellsyContactData","onSearchSellsyContactData","onLinkSellsyId","civility","phone_number","mobile_number","fax_number","created","updated","is_archived","SUBSCRIPTIONS_MODELS_NORMAL_RATE","SUBSCRIPTIONS_MODELS_REDUCED_RATE","CompanySubscriptionsItem","subscriptions","companyGroupBillingRate","subscriptionIsLoading","onCreateSubscription","onUpdateSubscription","selectedSubscriptionModel","setSelectedSubscriptionModel","subscriptionStartDate","setSubsciptionStartDate","billingStartDate","setBillingStartDate","showUpdateSubscription","setShowUpdateSubscription","selectedToUpdateSubscriptionModel","setSelectedToUpdateSubscriptionModel","subscriptionModelsOptions","hasActiveSubscription","sub","canceled","subscriptionModelId","subscription","model","model_id","modelId","capacity","used","subscriptionModel","CompanyLinkItem","sellsyCompanies","onLink","selectedSellsyCompanyId","setSelectedSellsyCompanyId","showSubscriptions","setShowSubscriptions","sellsyCompany","legal_france","siret","CompanyGroupCompaniesCard","selectedCompanyGroup","setSelectedCompanyGroup","sellsyContactId","setSellsyCompanies","setSubscriptionIsLoading","onFetchContactCompanies","contactId","onLinkCompanySellsyId","onCreateCompanySubscription","onUpdateCompanySubscription","CompanySalaryLinkItem","selectedCompanyId","setSelectedCompanyId","CompanySalariesCard","onLinkSalaryToBillingCompany","UserBilling","userId","userIsLoading","setUserIsLoading","userData","setUserData","sellsyContact","onFetchUserData","companyGroupSalaries","UserShow","tab","setTab","Nav","UserPage","ADD_ACTIVITY","ADD_ACTIVITY_SUCCESS","EDIT_ACTIVITY_SUCCESS","FETCH_ACTIVITIES","FETCH_ACTIVITIES_SUCCESS","FETCH_ACTIVITIES_FAILURE","SHOW_ACTIVITY","SHOW_ACTIVITY_SUCCESS","SHOW_ACTIVITY_FAILURE","editActivitySuccess","showActivitySuccess","ActivityList","Activity","ActivityNeedTable","ActivityShow","ActivityPage","ADD_TASK_GROUP","ADD_TASK_GROUP_SUCCESS","EDIT_TASK_GROUP_SUCCESS","FETCH_TASK_GROUPS","FETCH_TASK_GROUPS_SUCCESS","FETCH_TASK_GROUPS_FAILURE","SHOW_TASK_GROUP","SHOW_TASK_GROUP_SUCCESS","SHOW_TASK_GROUP_FAILURE","CANCEL_TASK_GROUP_SUCCESS","editTaskGroupSuccess","fetchTaskGroups","fetchTaskGroupsFailure","fetchTaskGroupsSuccess","showTaskGroupSuccess","TaskGroupList","TaskGroupListPage","editTaskSuccess","fetchTasksFailure","fetchTasksSuccess","TaskGroupShow","removeTask","TaskGroupShowPage","TeamList","ADD_TEAM","ADD_TEAM_SUCCESS","EDIT_TEAM","EDIT_TEAM_SUCCESS","FETCH_TEAMS","FETCH_TEAMS_SUCCESS","FETCH_TEAMS_FAILURE","SHOW_TEAM","SHOW_TEAM_SUCCESS","SHOW_TEAM_FAILURE","editTeamSuccess","TeamShow","teamData","fetchTeamsList","useHistory","isDeleting","setIsDeleting","onRemoveSalary","onRemoveTeam","TeamPage","setTeamData","applicantId","BookingOfferShow","setOffer","applicant","_cancel","_apply","_invalidate","_validate","BookingOfferPage","TimeCLockCalendar","timeCLock","setIsLate","isMissing","setIsMissing","reload","setReload","setWorkingTimes","isResource","TimeClockCalendarPage","ADD_DOCUMENT","ADD_DOCUMENT_SUCCESS","EDIT_DOCUMENT_SUCCESS","FETCH_DOCUMENTS","FETCH_DOCUMENTS_SUCCESS","FETCH_DOCUMENTS_FAILURE","SHOW_DOCUMENT","SHOW_DOCUMENT_SUCCESS","SHOW_DOCUMENT_FAILURE","CANCEL_DOCUMENT_SUCCESS","fetchDocuments","fetchDocumentsSuccess","showDocumentSuccess","DocumentList","LIST_TYPES","ALIGNMENT_TYPES","isBlockActive","editor","_it","Editor","nodes","match","Symbol","iterator","isMarkActive","marks","toggleMark","removeMark","addMark","isLinkActive","wrapLink","Transforms","unwrapNodes","unwrapLink","selection","isCollapsed","Range","link","insertNodes","wrapNodes","collapse","edge","validURL","RegExp","Button","reversed","active","Icon","verticalAlign","Menu","padding","borderBottom","BlockButton","useSlate","isActive","isList","isAlignment","setNodes","block","toggleBlock","MarkButton","LinkButton","prompt","insertLink","HOTKEYS","Element","attributes","Leaf","leaf","bold","italic","underline","SlateEditor","toolbar","toolbarSubmit","insertData","insertText","isInline","getData","withLinks","withHistory","withReact","createEditor","totalNodes","at","removeNodes","renderElement","RenderLeaf","addVariable","variable","hotkey","isHotkey","toggleKeyboardShortcut","renderLeaf","DocumentShow","setHasChanged","setInitialValue","editDocumentSuccess","DocumentPage","DocumentAdd","DocumentAddPage","SponsorshipShow","copyText","hidden","setSelectionRange","navigator","clipboard","writeText","SponsorshipShowPage","Admin","AdminPage","AdminSalaryList","AdminSalaryShow","pwd","setPwd","setDisable","AdminSalaryPage","CounterTableSingle","weekStart","weekEnd","countersWithdrawn","totalWithdrawn","totalPaid","CounterTableMultiple","CounterTable","CounterChartMultiple","barContainerHeight","setBarContainerHeight","layout","enableGridY","enableGridX","modalEl","groupMode","indexBy","innerPadding","valueScale","indexScale","labelTextColor","modifiers","axisBottom","axisLeft","tickRotation","legend","ticksPosition","tickPadding","axisTop","tickSize","labelSkipWidth","labelSkipHeight","background","totalMarkUp","valueFormat","CounterSingleChart","barContainerWidth","setBarContainerWidth","clientWidth","yearWeek","withdrawnDecimal","decimal","withdrawnTime","markUpDecimal","markUpTime","CounterChart","Counter","totalCounters","CounterPage","ExportSilae","exporting","setExporting","setTeam","fileName","ExportSilaePage","ExportList","ExportPage","CalendarCompanySelector","_setCompanies","CalendarTeamSelector","_teams","_setTeams","allTeams","setAllTeams","CalendarJobSelector","CalendarSetting","setDaysOfWeek","handleTimePrecisionChange","handlePresenceChange","handleGroupEtpChange","defaultGroupEtp","isTasks","isAbsenceRequest","_daysOfWeek","ratio","displayAbsence","displayEmpty","displayBackgroundEdit","displayOuter","CalendarPresence","presences","currentItem","setCurrentItem","displayMissing","setDisplayMissing","displayOver","setDisplayOver","displayOk","setDisplayOk","_items","resourceTitle","self","groupByDay","presenceItems","filterTypes","isOk","filterATypes","CalendarOrder","onDragStart","dataTransfer","setData","onDragEnd","clearData","draggableElement","dropzone","parentNode","insertBefore","nextSibling","handleDataChange","reOrderItems","border","_resources","_r","itemId","order1","onDragOver","onDragLeave","data-bs-scroll","draggable","data-target","CalendarReporting","CalendarAbsenceList","CalendarOfferList","isOffersOnly","setIsOffersOnly","application","cancelApply","KeepNoteEditForm","isPrivate","keepNoteId","KeepNoteEdit","KeepNoteCreateForm","KeepNoteAdd","KeepNoteShow","setCalendarKeepNoteSidebarProps","CalendarKeepNoteSidebar","transformNote","createdAT","handleKeepNoteAdd","handleKeepNoteRemove","k","handleKeepNoteEdit","CalendarDownload","TYPE_DAILY","TYPE_WEEKLY","getDefaultType","dtf","hideAbsence","SalaryTemplateAddForm","SalaryTemplateAdd","SalaryTemplateList","SalaryTemplateEventAddForm","SalaryTemplateEventSelect","SalaryTemplateEventEditForm","SalaryTemplateEventEdit","SalaryTemplateEventShow","SalaryTemplateCopyWeek","SalaryTemplateEventSidebar","SalaryTemplateEditForm","SalaryTemplateEdit","SalaryTemplateDuplicate","SalaryTemplateImport","importTemplate","targetTemplate","SalaryTemplateShow","fetchSalaryCompanies","TemplateDetail","CalendarTimetable","setOpen","handleClosing","handleOpening","CalendarMultiple","initialCalendar","calendarData","setDisplayEventTime","setRatio","smViewType","setSmViewType","localSettings","parsedTab","getDefaultCompaniesToDisplay","setOuterEvents","setPresence","displayEvents","setDisplayEvents","displayTaskSidebar","setDisplayTaskSidebar","setTimePrecision","calendarKeepNoteSidebarProps","calendarTimetableProps","reportingOrigin","setReportingOrigin","overrideTimePrecision","overridePresence","outerEvents","_p","allValues","_timePrecision","handleSortByChange","_sortBy","smViewTypeSetting","anomaly","scrollTimeReset","eventMinWidth","filterResourcesWithEvents","titleFormat","weekday","cx","_presence","ExpenseList","fetchMore","setFetchMore","statuses","setStatuses","expenseTypes","setExpenseTypes","expenseId","ExpenseShow","distance","shop","clientMeal","ExpensePage","EventOfferShow","EventOfferPage","Test","ADD_TEMPLATE","ADD_TEMPLATE_SUCCESS","EDIT_TEMPLATE_SUCCESS","FETCH_TEMPLATES","FETCH_TEMPLATES_SUCCESS","FETCH_TEMPLATES_FAILURE","SHOW_TEMPLATE","SHOW_TEMPLATE_SUCCESS","SHOW_TEMPLATE_FAILURE","HIDE_TEMPLATE_SUCCESS","fetchTemplates","fetchTemplatesSuccess","TemplateList","expanded","setExpanded","TemplateSalaries","TemplateResourceAddForm","ResourceAdd","TemplateResourceEditForm","ResourceEdit","TemplateResourceSidebar","EventEdit","setTemplateEventSidebarProps","TemplateEventSidebar","TemplateSchedulerForm","targetId","shiftDuration","TemplateShow","hideChevronRight","setHideChevronRight","hideChevronLeft","setHideChevronLeft","templateResourceSidebarProps","templateEventSidebarProps","simulation","simulate","overrideAPI","overrideSimulation","handleSimulationChange","templateEvents","templatePresences","templateTimeSheet","TemplatePage","HELP_PRODUCTS_SHEETS","content","img","Help","data-bs-parent","process","ReportList","report","closedAt","SynthesisWorkingTimeTable","presenceDays","SynthesisAbsenceTable","labourDayNonWorkingTime","paidElse","unpaidElse","compensatedElse","countersAdd","countersClear","SynthesisCounterTable","isClearing","setIsClearing","currentRow","setCurrentRow","currentRowDetail","setCurrentRowDetail","updating","u","validateSingleCounter","clearSingleCounter","overtime","SynthesisOtherTable","formation","ReportPaid","weeksOptions","hour","setHour","setMin","handleOvertimeClick","SynthesisPaidTable","SynthesisTable","paginationLength","paidMaj","setPaidMaj","setMaj","ADD_REPORT","ADD_REPORT_SUCCESS","EDIT_REPORT","EDIT_REPORT_SUCCESS","FETCH_REPORTS","FETCH_REPORTS_SUCCESS","FETCH_REPORTS_FAILURE","SHOW_REPORT","SHOW_REPORT_SUCCESS","SHOW_REPORT_FAILURE","PAYROLL_EXPORT","COUNTER_EXPORT","EXPENSE_EXPORT","SIGNATURE_EXPORT","SILAE_AJ_EXPORT","SILAE_ABSENCE_EXPORT","SILAE_GLOBAL","ReportDownload","updateSalaries","checkboxes","filename","editReportSuccess","showReport","ReportEdit","overlapping","setOverlapping","setValid","validating","setValidating","isForecast","ReportShow","onFetchReports","_updating","setUpdating","setPaginationLength","fetchReport","overrideOffset","overrideQuery","timeSheetData","salaryCompany","synthesisActions","ReportAdd","ReportPage","reports","MyStorage","HelpItem","header","hasToOpenModal","setHasToOpenModal","HelpModal","dataToDisplay","setDataToDiplay","productSheetData","whiteSpace","BillingList","BillingSubscriptionUpdate","_model","setSubscription","AVAILABLE_MODELS","setModel","setPending","BillingSubscriptionShow","intervalType","autoRenewal","BillingInvoicesShow","invoice","number","due_date","pdf_link","BillingSalaries","sapi","BillingShow","BillingPage","Navigation","isAuthUpdating","setIsAuthUpdating","isAuthUpdated","setIsAuthUpdated","refreshAuthSuccess","simulateClick","MouseEvent","bubbles","cancelable","dispatchEvent","linkColor","dropdowns","childrenLinkColor","colorLink","elements","silaeExport","path","exact","Calendar","JobForm","form","meta","JobAdd","JobSchema","CompaniesAdd","sellsyModelId","AccessLevelSchema","AccessLevelAdd","rightSidebar","IconPicker","icons","setAll","allIcons","iconsFile","iconClass","FormLocalisation","LocalisationSchema","LocalisationAdd","LocalisationEdit","PhoneInputCustom","containerStyle","inputStyle","country","countryCodeEditable","phone","SalaryAdd","billingCompanies","setBillingCompanies","aria-valuenow","aria-valuemin","aria-valuemax","bc","initialSchema","optional","socialSecurityNumber","nightWorker","absenceBasisN1","SalaryInformationAdd","jobActions","SalaryEdit","startsWith","SalaryInformationEdit","handleFlatRateChange","TaskGroupSchema","TaskGroupAdd","calendarActions","CustomFieldSchema","InitialValues","TaskGroupCustomFieldAdd","classNamePrefix","TemplateAdd","FETCH_TEMPLATE_CALENDAR","FETCH_TEMPLATE_CALENDAR_SUCCESS","FETCH_TEMPLATE_CALENDAR_FAILURE","REFRESH_TEMPLATE","SET_TEMPLATE_GROUP_BY","EDIT_RESOURCE_SUCCESS","ADD_RESOURCE_SUCCESS","TemplateResourceAdd","selectSalary","setSelectSalary","setInitialSchema","as","baseSchema","TemplateBookingAdd","_recurrenceSchema","timeInputLabel","handleWeekDayChange","ProfileInformationAdd","userInformation","selectedSalaries","setSelectedSalaries","_list","SalarySelected","ChannelSchema","ChannelAdd","_salaries","CompanySelector","selectedValues","setSelectedValues","JobEdit","_initForm","handleJobChange","_validationFields","LocalisationSalariesAdd","BookingExceptionEdit","BookingSubstitute","jobFetchTimer","substitutes","setSubstitutes","filteredSubstitutes","setFilteredSubstitutes","isJobsLoading","setIsJobsLoading","filteredJobs","setFilteredJobs","handleSuccess","eventExceptionAPI","isMulti","loadingMessage","closeMenuOnSelect","onMenuClose","onMenuScrollToBottom","hideSelectedOptions","FileAdd","entity","TaskRecurrenceEdit","setEditRecurrence","recurrenceForm","editRecurrence","editType","setEditType","displayEditTypeSelector","setDisplayEditTypeSelector","taskForm","CalendarSettings","TemplateResourceEdit","handleSelectSalaryChange","TemplateAppliedSidebarList","TemplateAppliedEdit","currentResource","setCurrentResource","templateAppliedApi","isApplied","appliedResource","appliedResourceApi","removeAppliedResource","editAppliedResource","addAppliedResource","GeneratedList","cancelConfirmation","setCancelConfirmation","cancelItem","ignoreStart","anomalyCode","TimeClockSidebarList","filterHasChanged","setFilterHasChanged","setFiltered","absent","AbsenceSidebarList","TimeClockBookingAdd","setParams","BookingRecurrenceEdit","setWeekLetters","preSetRecurrenceData","nextState","CounterEdit","markUpHour","setMarkUpHour","markUpMin","setMarkUpMin","_hour","_min","KeepNoteCreate","KeepNote","KeepNoteList","filterDate","isRemoving","setIsRemoving","removingKeepNote","setRemovingKeepNote","removeKeepNoteSuccess","keeNote","dueDateFormat","DashboardFeedSidebar","setGrouped","groupByDueDate","xs","rv","CalendarNeedEvents","setFilters","selectedItem","setSelectedItem","allItems","setAllItems","groupItems","filterVal","TemplateAddFromCalendar","TemplateSidebarList","TemplateEdit","LocalisationNeedAdd","PlannerForm","isGenerated","CounterSettings","SalaryImport","setErrors","setIsDownloading","_importFile","row","CompanyEdit","todayWeek","ReportingShowWeek","moduleSettings","periodReporting","daysGrouped","breakRemoved","__init","isExchange","slotExchangeSalary","initDelta","TimeClockBookingEdit","ExportReporting","toHms","displaySigne","BookingDefaultPopupListButton","BookingDefaultPopupList","onSelect","selectDefaultBooking","getDaysArray","_s","_e","db","BookingGroupAdd","setLocalisations","setActivities","defaultBookingIndex","setDefaultBookingIndex","checkData","_bookings","checkDateTimeOverlap","_localisations","_activities","getWeekLetters","dateTimes","_errors","st1","et1","wl1","wd1","time2","wl2","wd2","st2","et2","WeekCounter","wls","wl","sc","duplicateBooking","_index","addBooking","_input","BookingGroupList","bookingGroups","setBookingGroups","isCanceling","setIsCanceling","cancelGroup","_bookingGroups","BookingGroupEditHistoryModal","exceptions","BookingGroupEditHistoryButton","BookingGroupEdit","initialBookings","setInitialBookings","_initialBookings","ActivitySchema","ActivityAdd","ActivityEdit","ActivityNeedAdd","BookingDefaultAdd","BookingDefaultSidebarList","addDefaultBooking","BookingDefaultEdit","TeamAdd","TeamEdit","TeamShowSalarySelector","teamActions","BookingExceptionHistory","setExceptions","isCanceled","BookingOfferAdd","BookingOfferSidebarList","offerApi","BookingOfferApplicantSidebarList","BookingOfferSidebarShow","_cancelOffer","apiOffer","cancelBookingOffer","TeamAddManager","teamId","TeamEditManager","managerId","CounterSidebar","reportings","CalendarResourceOrder","isUpdating","setIsUpdating","TimeCLockBookingShow","_timeClockBooking","timeClockBooking","setTimeClockBooking","anomalyDisabled","setAnomalyDisabled","CounterShow","initialTime","CounterWithdrawnAdd","CounterWithdrawnEdit","EmailSettings","TemplateAppliedExceptionAdd","TemplateAppliedExceptionEdit","TemplateBookingRecurrenceEdit","TemplateBookingEdit","displayConfirmation","setDisplayConfirmation","confirmation","setConfirmation","BookingEditTest","BookingGroupLoadEdit","SalaryInformationDefaultLabelSelector","SlotExchangeAdd","slot","timeDiff","timeDiffCaption","SlotExchangeAddValidation","exchangeInstanceToken","exchangedInstanceToken","BookingGroupAddFromBookingForm","_sidebarData","BookingCancel","ADD_SALARY_TEMPLATE_SUCCESS","REMOVE_SALARY_TEMPLATE_SUCCESS","FETCH_SALARY_TEMPLATE","FETCH_SALARY_TEMPLATE_SUCCESS","ADD_SALARY_TEMPLATE_EVENT","EDIT_SALARY_TEMPLATE_EVENT","REMOVE_SALARY_TEMPLATE_EVENT","addSalaryTemplateSuccess","setFormOpen","editSalaryTemplateSuccess","formOpen","formOpenIndex","setFormOpenIndex","fetchSalaryTemplateSuccess","SalaryTemplateEventAdd","selectArg","setSelectArg","setEventClickArg","addModal","setAddModal","editModal","setEditModal","copyWeekModal","setCopyWeekModal","getCounter","sum","dHour","dMinutes","SalaryTemplateCopy","EventExceptionEdit","EventExceptionAdd","EventCancel","cancelSuccess","EventExchangeAddValidation","EventExchangeAdd","EventOfferAdd","EventOfferEdit","EventOfferSidebarList","EventOfferSidebarShow","EventOfferApplicationSidebarList","TaskGroupEdit","AbsenceFileAdd","SalaryDocumentStockedAdd","mileageAmountCalculator","vehicleEngine","ExpenseAdd","dynamicAmountProps","setDynamicAmountProps","mapFields","override","newValues","newValidationSchema","handleVehicleChange","ExpenseFileAdd","ExpenseEdit","initForm","SalaryManagerAdd","SalaryManagerEdit","SynthesisSignatureLoad","rState","RightSidebar","_props","onCloseSidebarEvent","closeAndDispatch","initOffcanvas","CurrentForm","formTypes","CurrentTitle","AlertSivan","alertSivan","Info","Success","Warning","Danger","CurrentAlert","transform","AbsenceFilters","staticBackdropModal","StaticBackdropModal","myModalEl","openModal","hideModal","keyboard","ModalContent","ModalTitle","data-bs-backdrop","App","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","models","initialStateUser","impersonate","exitImpersonate","saveAuth","saveInitialUser","saveUser","_saveInitialUser","clearAuth","current_id","addEvent","templateKey","replaceEvent","eventKey","removeTemplate","templateTypes","axios","arrayRemove","resourceTypes","eventsCopy","presenceEventsCopy","resourcesCopy","isTemplate","uid","templateCalendar","ADD_APPLIED_RESOURCE_SUCCESS","EDIT_APPLIED_RESOURCE_SUCCESS","_payload","arrayReplace","arrayReplaceMany","appReducer","combineReducers","rootReducer","registerLocale","setDefaultLocale","store","createStore","rootReducers","applyMiddleware","err","getState","ReactDOM","StrictMode"],"mappings":"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AAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IAGX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,eAAoBL,IAC/B,KAAKK,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,IvmBlQkB,iBumBmQd,OAAO,eAAC,GAAD,IACX,IvmBnQoB,mBumBoQhB,OAAO,eAAC,GAAD,IACX,IvmBpQmB,kBumBqQf,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IAGX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,KAAKA,GACD,OAAO,eAAC,GAAD,IACX,QACI,OAAO,eAAC,GAAD,KAInB,IAAMC,EAAe,WAEjB,IAAIltH,EAAa,KACjB,OAAQmX,GACJ,KAAK81G,GACDjtH,EAAQ,+DACR,MACJ,KAAKitH,GACDjtH,EAAQ,wBACR,MACJ,KAAKitH,GACDjtH,EAAQ,oEACR,MACJ,KAAKitH,GACDjtH,EAAQ,qEACR,MACJ,KAAKitH,GACDjtH,EAAQ,6DACR,MACJ,KAAKitH,GACDjtH,EAAQ,8DACR,MACJ,KAAKitH,GACDjtH,EAAQ,sBACR,MACJ,KAAKitH,GACDjtH,EAAQ,uBACR,MACJ,KAAKitH,GACDjtH,EAAQ,yBACR,MACJ,KAAKitH,GACDjtH,EAAQ,0BACR,MACJ,KAAKitH,GACDjtH,EAAQ,2BACR,MACJ,KAAKitH,GACDjtH,EAAQ,4BACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,oEACR,MACJ,KAAKitH,GACDjtH,EAAQ,4BACR,MACJ,KAAKitH,GACDjtH,EAAQ,iEACR,MACJ,KAAKitH,GACDjtH,EAAQ,6BACR,MACJ,KAAKitH,GACL,KAAKA,GACL,KAAKA,GACDjtH,EAAQ,yBACR,MACJ,KAAKitH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,qBAAb,eAAH,qCACR,MACJ,KAAKqlH,GACDjtH,EAAQ,iCACR,MACJ,KAAKitH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,qBAAb,eAAH,4BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,wBACR,MACJ,KAAKitH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,yBAAb,eAAH,wCACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,yBAAb,eAAH,yCACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,cAAb,eAAH,2BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,sBAAb,eAAH,4BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,oBAAb,eAAH,6BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,sBAAb,eAAH,8BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,sBAAb,eAAH,6BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,wBAAb,eAAH,8BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,gBAAb,eAAH,2BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,sBAAb,eAAH,+BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,iBAAb,eAAH,qCACR,MACJ,KAAKqlH,GACDjtH,EAAQ,sBACR,MACJ,KAAKitH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,kBAAb,eAAH,0BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,aAAb,eAAH,8BACR,MACJ,IvmB/cyB,wBumBgdrB5H,EAAQ,2CAAG,oBAAG4H,UAAU,eAAb,eAAH,eACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,wBAAb,eAAH,6BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,wBAAb,eAAH,wCACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,mBAAb,eAAH,2BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,2CAAG,oBAAG4H,UAAU,uBAAb,eAAH,2BACR,MACJ,KAAKqlH,GACDjtH,EAAQ,8DACR,MACJ,KAAKitH,GACDjtH,EAAQ,0DACR,MACJ,KAAKitH,GACDjtH,EAAQ,2DACR,MACJ,KAAKitH,GACDjtH,EAAQ,+CACR,MACJ,KAAKitH,GACDjtH,EAAQ,uDACR,MACJ,KAAKitH,GACDjtH,EAAQ,6DACR,MACJ,KAAKitH,GACDjtH,EAAQ,iFACR,MACJ,KAAKitH,GACDjtH,EAAQ,mDACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,2DACR,MACJ,KAAKitH,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACDjtH,EAAQ,qDACR,MACJ,KAAKitH,GACDjtH,EAAQ,qEACR,MACJ,KAAKitH,GACDjtH,EAAQ,8DACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,2DACR,MACJ,KAAKitH,GACDjtH,EAAQ,+DACR,MACJ,KAAKitH,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACDjtH,EAAQ,oEACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,qEACR,MACJ,KAAKitH,GACDjtH,EAAQ,yDACR,MACJ,KAAKitH,GACDjtH,EAAQ,oEACR,MACJ,KAAKitH,GACDjtH,EAAQ,qEACR,MACJ,KAAKitH,GACDjtH,EAAQ,0DACR,MACJ,KAAKitH,GACDjtH,EAAQ,+DACR,MACJ,KAAKitH,GACDjtH,EAAQ,gEACR,MACJ,KAAKitH,GACDjtH,EAAQ,wDACR,MACJ,KAAKitH,GACDjtH,EAAQ,sEACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,+EACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,qEACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,wFACR,MACJ,KAAKitH,GACDjtH,EAAQ,6DACR,MACJ,KAAKitH,GACDjtH,EAAQ,8DACR,MACJ,KAAKitH,GACDjtH,EAAQ,mDACR,MACJ,KAAKitH,GACDjtH,EAAQ,6DACR,MACJ,KAAKitH,GACDjtH,EAAQ,gFACR,MACJ,KAAKitH,GACDjtH,EAAQ,iFACR,MACJ,KAAKitH,GACDjtH,EAAQ,kDACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,4EACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,+EACR,MACJ,KAAKitH,GACDjtH,EAAQ,0EACR,MACJ,KAAKitH,GACDjtH,EAAQ,iEACR,MACJ,IvmBzhB4B,2BumB0hBxBA,EAAQ,oEACR,MACJ,IvmB3hBkC,iCumB4hB9BA,EAAQ,+DACR,MACJ,IvmB7hBmC,kCumB8hB/BA,EAAQ,gEACR,MACJ,KAAKitH,GACDjtH,EAAQ,yDACR,MACJ,KAAKitH,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACDjtH,EAAQ,uEACR,MACJ,KAAKitH,GACDjtH,EAAQ,sEACR,MACJ,KAAKitH,GACDjtH,EAAQ,+DACR,MACJ,KAAKitH,GACL,KAAKA,GACDjtH,EAAQ,gEACR,MACJ,KAAKitH,GACDjtH,EAAQ,iEACR,MACJ,KAAKitH,GACDjtH,EAAQ,mEACR,MACJ,KAAKitH,GACDjtH,EAAQ,oEACR,MACJ,KAAKitH,GACDjtH,EAAQ,6DACR,MACJ,KAAKitH,GACDjtH,EAAQ,8DAIhB,OAAOA,EAAQ,uBAAK4H,UAAU,sFAAf,WACN,OAAJmC,QAAI,IAAJA,OAAA,EAAAA,EAAMosB,OAAQ,yBAAQjyB,KAAK,SAAS0D,UAAU,MAAMgL,QAAS,kBAAMlF,EAAS2X,GAAYtb,EAAKosB,KAAMpsB,EAAKA,QAA1F,SACV,oBAAGnC,UAAW,wBAAd,iBAEL,uBAAMA,UAAW,KAAM9M,GAAG,sBAA1B,SACKkF,IAEL,yBAAQ4H,UAAW,0BAA2BgL,QAAS,kBAAMlF,EAAS6X,YAGjE,gCAGb,OACI,uBAAK3d,UAAW,2BACZ,CACIqlH,GACAA,GACAA,GACAA,GACAA,GACAA,GACAA,GACAA,GACAA,IACF3yH,SAAS6c,GAAQ,UAAY,KAAO/D,EAAO,SAAW,IAAKxB,UAAW,EAAG9W,GAAG,iBAC7E+W,kBAAgB,sBAZrB,UAaI,eAACq7G,EAAD,IACA,sBAAKtlH,UAAU,wCAAf,SACK6N,EAAY,sBAAK7N,UAAW,aAAhB,SAA8B,eAAC,GAAD,MAAmB,eAAColH,EAAD,UClrB/DG,I,OAzFqB,WAChC,IAAM5pH,EAAQuC,aAAY,SAACC,GAAD,OAA2BA,EAAMqnH,WAAW7pH,SAChE3I,EAASkL,aAAY,SAACC,GAAD,OAA2BA,EAAMqnH,WAAWxyH,UACjEwY,EAAOtN,aAAY,SAACC,GAAD,OAA2BA,EAAMqnH,WAAWh6G,QAE/Di6G,EAAO,WACT,OACI,uBAAKzlH,UAAU,yEAAyEqI,KAAK,QAA7F,UACI,sBAAKrI,UAAU,gBAAf,SACI,oBAAGA,UAAU,yBAAb,iBAEJ,sBAAKA,UAAU,MAAf,SACKrE,QAMX+pH,EAAU,WACZ,OACI,uBAAK1lH,UAAU,yEAAyEqI,KAAK,QAA7F,UACI,sBAAKrI,UAAU,gBAAf,SACI,oBAAGA,UAAU,0BAAb,iBAEJ,sBAAKA,UAAU,MAAf,SACKrE,QAMXgqH,EAAU,WACZ,OACI,uBAAK3lH,UAAU,yEAAyEqI,KAAK,QAA7F,UACI,sBAAKrI,UAAU,gBAAf,SACI,oBAAGA,UAAU,kCAAb,iBAEJ,sBAAKA,UAAU,MAAf,SACKrE,QAMXiqH,EAAS,WACX,OACI,uBAAK5lH,UAAU,yDAAyDqI,KAAK,QAA7E,UACI,sBAAKrI,UAAU,gBAAf,SACI,oBAAGA,UAAU,gCAAb,iBAEJ,sBAAKA,UAAU,MAAf,SACKrE,QAMXkqH,EAAe,WACjB,OAAQ7yH,GACJ,KAAKgmC,GACD,OAAO,eAAC0sF,EAAD,IACX,KAAKzsF,GACD,OAAO,eAACwsF,EAAD,IACX,KAAKvsF,GACD,OAAO,eAACysF,EAAD,IACX,KAAKxsF,GACD,OAAO,eAACysF,EAAD,IACX,QACI,OAAO,OAInB,OACI,sBACI5lH,WAAYwL,EAAO,OAAS,IAAM,yCAC9B/C,MAAO,CACPoxE,OAAQ,GACRxoE,KAAM,MACNzI,MAAO,IACPk9G,UAAW,qBACXp9G,OAAQ,UAPhB,SAUI,eAACm9G,EAAD,QCgDGE,GA3HsC,SAACxnH,GAAW,IAEtD61E,EAAiB71E,EAAjB61E,cAEDtuE,EAAWC,cACX5H,EAAQD,aAAa,SAACC,GAAD,OAA2BA,EAAM6nH,uBALA,EAMxBhgH,oBAAS,GANe,mBAMrDomE,EANqD,KAMzCkmB,EANyC,KAQtDzrF,EAAmBR,OAAaC,MAAM,CACxCxK,OAAQuK,OAAYslC,GAAGtlC,QAAc87B,IAAI,EAAG,kDAC5Cz9B,MAAO2B,OAAYslC,GAAGtlC,QAAc87B,IAAI,EAAG,4DAGzCz7B,EAASC,aAAU,CACrBC,cAAe,CACX9K,OAAQqC,EAAMgE,KAAKrG,QAAU,CAAC,IAAI,IAAI,KACtC4I,MAAOvG,EAAMgE,KAAKuC,OAASpI,KAAsBxJ,KAAI,SAAA0J,GAAC,OAAImkB,OAAOnkB,EAAEb,WAEvEkL,iBAAkBA,EAClBC,SAAU,SAAAC,GACFqlE,GACAgI,EAAcrtE,GAElBjB,EAASyB,SAIjB,OACI,qCACI,wBAAMvH,UAAW,QAAS8G,SAAUJ,EAAOmB,aAA3C,UACJ,uBAAK7H,UAAW,aAAhB,UACI,uBAAKA,UAAU,OAAf,UACI,qBAAIA,UAAW,OAAf,oBAGA,eAAC,GAAD,CAAWuF,OAAQmB,EAAOnB,OAAQC,QAASkB,EAAOlB,QAASC,MAAO,cAEtE,uBAAKzF,UAAU,8BAAf,UACI,wBACI8H,KAAM,SACNxL,KAAK,WACLy1B,eAAgBrrB,EAAOK,OAAOjL,OAAOpJ,SAAS,KAC9CiJ,MAAO,IACP4Y,OAAQ7N,EAAO8N,WACftM,SAAU,SAAC7F,GACPiwF,GAAc,GACd5rF,EAAOyB,aAAa9F,IAExBrC,UAAU,qBAEd,wBAAOA,UAAU,mBAAmBoI,QAAQ,uBAA5C,2BAIJ,uBAAKpI,UAAU,8BAAf,UACI,wBACI8H,KAAM,SACNnM,MAAO,IACP4Y,OAAQ7N,EAAO8N,WACfud,eAAgBrrB,EAAOK,OAAOjL,OAAOpJ,SAAS,KAC9CwV,SAAU,SAAC7F,GACPiwF,GAAc,GACd5rF,EAAOyB,aAAa9F,IAExBrC,UAAU,mBACV1D,KAAK,aAET,wBAAO0D,UAAU,mBAAmBoI,QAAQ,wBAA5C,2BAIJ,uBAAKpI,UAAU,8BAAf,UACI,wBAAO8H,KAAM,SACNnM,MAAO,IACP4Y,OAAQ7N,EAAO8N,WACfud,eAAgBrrB,EAAOK,OAAOjL,OAAOpJ,SAAS,KAC9CwV,SAAU,SAAC7F,GACPiwF,GAAc,GACd5rF,EAAOyB,aAAa9F,IAExBrC,UAAU,mBAAmB1D,KAAK,aAEzC,wBAAO0D,UAAU,mBAAmBoI,QAAQ,uBAA5C,0BAIJ,uBAAKpI,UAAU,OAAf,UACI,qBAAIA,UAAW,OAAf,4BAGA,eAAC,GAAD,CAAWuF,OAAQmB,EAAOnB,OAAQC,QAASkB,EAAOlB,QAASC,MAAO,aAEtE,qBAAIzF,UAAW,aAAf,SACK1D,KAAsBxJ,KAAI,SAAC0J,EAAGyV,GAAJ,OAAc,sBAAgBjS,UAAU,8BAA1B,UACrC,wBAAO8H,KAAM,QACNnM,MAAOa,EAAEb,MACT4Y,OAAQ7N,EAAO8N,WACfud,eAAgBrrB,EAAOK,OAAOrC,MAAMhS,SAASiuB,OAAOnkB,EAAEb,QACtDuM,SAAU,SAAC7F,GACPiwF,GAAc,GACd5rF,EAAOyB,aAAa9F,IAExBrC,UAAU,mBAAmB1D,KAAK,aAEzC,wBAAO0D,UAAU,mBAAmBoI,QAAQ,uBAA5C,SACK5L,EAAEZ,UAZuCqW,WAiBtD,uBAAKjS,UAAU,eAAf,UACI,yBAAQ1D,KAAK,SAAS0D,UAAU,gBAAgBmK,kBAAgB,QAAhE,SACI,oBAAGnK,UAAW,iCAElB,yBAAQ1D,KAAK,SAAS0D,UAAU,gBAAhC,SACI,oBAAGA,UAAW,+CCtDnBimH,GArEsB,WAEjC,IAAM9nH,EAAQD,aAAY,SAACC,GAAD,OAA2BA,EAAM6nH,uBACrDlgH,EAAWC,cAEjB8D,qBAAU,WACN,IAAIq8G,EAAYtsH,SAASykB,eAAe,uBASxC,OARA6nG,EAAUv3G,iBAAiB,iBAAiB,kBAAM7I,EAASyB,UAExC,IAAfpJ,EAAMqN,KACN26G,KACqB,IAAfhoH,EAAMqN,MACZ46G,IAGG,kBAAMF,EAAUl3G,oBAAoB,iBAAiB,kBAAMlJ,EAASyB,YAE5E,CAACpJ,EAAMqN,OAEV,IAAM26G,EAAY,WACd,IAAIn2C,KAAMp2E,SAASykB,eAAe,uBAAmC,CACjEgoG,UAAU,IACX76G,QAGD46G,EAAY,WACdp2C,KAAM3sC,YAAYzpC,SAASykB,eAAe,wBAAmCilB,QAG3EgjF,EAAe,WACjB,OAAQnoH,EAAMoR,MACV,KAAK7K,GACD,OAAO,eAAC,GAAD,eAAoBvG,EAAMI,QACrC,QACI,OAAO,sBAAKyB,UAAW,yBAAhB,SACH,sBAAKA,UAAU,8BAA8BqI,KAAK,SAAlD,SACI,uBAAMrI,UAAU,kBAAhB,8BAMdumH,EAAa,WACf,OAAQpoH,EAAMoR,MACV,KAAK7K,GACD,OAAO,2DACX,QACI,OAAO,oDAInB,OAAO,qCACH,sBAAK1E,UAAU,aAAawmH,mBAAiB,SAASxoC,mBAAiB,QAAQ9zE,cAAa,OAAQhX,GAAE,sBAAyB8W,UAAW,EAA1I,SACI,sBAAKhK,UAAU,qCAAf,SACI,uBAAKA,UAAU,gBAAf,UACI,uBAAKA,UAAU,eAAf,UACI,sBAAIA,UAAU,cAAd,cAA6B,eAACumH,EAAD,IAA7B,OACA,yBAAQjqH,KAAK,SAAS0D,UAAU,YAAYmK,kBAAgB,QACpDC,aAAW,QADnB,kBAGJ,sBAAKpK,UAAU,QAAQ9M,GAAE,6BAAzB,SACI,eAACozH,EAAD,gBClDTG,OAXf,WACI,OACQ,uBAAKzmH,UAAU,MAAf,UACI,eAAC,GAAD,IACA,eAAC,GAAD,IACA,eAAC,GAAD,IACA,eAAC,GAAD,QCCD0mH,GAZS,SAACC,GACnBA,GAAeA,aAAuBC,UACxC,8BAAqB3/G,MAAK,YAAkD,IAA/C4/G,EAA8C,EAA9CA,OAAQC,EAAsC,EAAtCA,OAAQC,EAA8B,EAA9BA,OAAQC,EAAsB,EAAtBA,OAAQC,EAAc,EAAdA,QAC3DJ,EAAOF,GACPG,EAAOH,GACPI,EAAOJ,GACPK,EAAOL,GACPM,EAAQN,O,UCwDDn0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCrEI,YAAS3N,EAAcgX,GAClC,IAAI0C,EAAQ1Z,EAAM2Z,WAAU,SAACmP,GAAD,OAAYA,EAAEnuB,KAAOqc,EAAKrc,MAMtD,OAJe,IAAX+e,IACA1Z,EAAM0Z,GAAN,2BAAoB1Z,EAAM0Z,IAAW1C,IAGlChX,GCgCI8G,GAnCG,WAA4J,IAEtKA,EAFWlB,EAA0J,uDAArH+oH,GAAqB5/G,EAAgG,uCAGzK,OAAQA,EAAOhL,MAEX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOjI,UAAWkf,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEhF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GAKD,OAJArF,EAAS,sBACFlB,EAAMmL,SADJ,CAELhC,EAAO5O,UAEJ,CAAE4Q,QAASjK,EAAWkf,OAAQjX,EAAO5O,QAASmV,WAAW,EAAO3H,MAAO,MAElF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO5O,QAASmV,WAAW,EAAM3H,MAAO,MACrF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAO5O,SAAU6lB,OAAQjX,EAAO5O,QAASmV,WAAW,EAAO3H,MAAO,MAEhH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUnL,EAAMmL,QAASiV,OAAQjX,EAAO5O,QAASmV,WAAW,EAAO3H,MAAO,MACvF,QACI,OAAO/H,ICoDNq0D,GAAsC,CAC/Cn0D,MAAOpM,aAAaC,QAAQ,SAC5BF,KAAMC,aAAaC,QAAQ,gBAAkBC,KAAKC,MAAMH,aAAaC,QAAQ,iBAAqBD,aAAaC,QAAQ,QAAUC,KAAKC,MAAMH,aAAaC,QAAQ,SAAY,KAC7K6M,YAAa9M,aAAaC,QAAQ,QAAUC,KAAKC,MAAMH,aAAaC,QAAQ,SAAY,KACxF2b,WAAW,EACX9I,QAAS,MAGAoiH,GAA8C,CACvD5oG,OAAQ,KACRjV,QAAS,GACTuE,WAAW,EACX3H,MAAO,MCjGEkhH,GAAc,SAACjlH,GACxBlQ,aAAagN,QAAQ,eAAgB9M,KAAKkV,UAAUlF,KAG3CklH,GAAkB,WAC3Bp1H,aAAa63C,WAAW,iBC4HtBw9E,GAAW,SAACnlH,GACdlQ,aAAagN,QAAQ,QAASkD,EAAK9D,OACnCpM,aAAagN,QAAQ,OAAQ9M,KAAKkV,UAAUlF,EAAKnQ,OACjDiU,eAAehH,QAAQ,cAAe,MAGpCsoH,GAAkB,SAACplH,GACrBlQ,aAAagN,QAAQ,cAAe9M,KAAKkV,UAAUlF,EAAKnQ,QAGtDw1H,GAAW,SAACrlH,GACdlQ,aAAagN,QAAQ,OAAQ9M,KAAKkV,UAAUlF,KAG1CslH,GAAmB,SAACtlH,GACtBlQ,aAAagN,QAAQ,cAAe9M,KAAKkV,UAAUlF,KAGjDulH,GAAY,WACdz1H,aAAa63C,WAAW,SACxB73C,aAAa63C,WAAW,QACxB73C,aAAa63C,WAAW,cACxB73C,aAAa63C,WAAW,gBACxB73C,aAAa63C,WAAW,eACxB73C,aAAa63C,WAAW,oBACxB7jC,eAAehH,QAAQ,cAAe,MAG3Bb,GAvJF,WAeP,IAAD,IAdDD,EAcC,uDAdqC+oH,GACtC5/G,EAaC,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAM3H,MAAO,MACjF,KAAKxB,GACD,OAAI4C,EAAOtV,MACPw1H,GAASlgH,EAAOtV,MACT,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMsV,EAAOtV,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,OAEtG/H,EACX,KAAKuG,GACL,KAAKA,GAGD,OAFA4iH,GAAShgH,EAAOnF,MAChBolH,GAAgBjgH,EAAOnF,MAChB,CAAE9D,MAAOiJ,EAAOnF,KAAK9D,MAAOrM,KAAMsV,EAAOnF,KAAKnQ,KAAM+M,YAAauI,EAAOnF,KAAKnQ,KAAM6b,WAAW,EAAO3H,MAAO,MACvH,KAAKxB,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAO3H,MAAOoB,EAAOvC,SACzF,KAAKL,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAM3H,MAAO,MACjF,KAAKxB,GACD,MAAO,CAAErG,MAAOiJ,EAAOnF,KAAK9D,MAAOrM,KAAMsV,EAAOnF,KAAKnQ,KAAM+M,YAAauI,EAAOnF,KAAKnQ,KAAM6b,WAAW,EAAO3H,MAAO,MACvH,KAAKxB,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAO3H,MAAOoB,EAAOnF,MACzF,KAAKuC,GAED,OADAgjH,KACO,CAAErpH,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAO3H,MAAO,MAClF,KAAKxB,GACD,MAAO,CAAErG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAM3H,MAAO,MAC3G,KAAKxB,GACD,MAAO,CAAErG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAOoB,EAAOvC,SACnH,KAAKL,GACD,MAAO,CAAErG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAM3H,MAAO,MACjF,KAAKxB,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAO3H,MAAO,MAClF,KAAKxB,GAED,OADA4iH,GAAShgH,EAAOnF,MACT,CAAE9D,MAAOiJ,EAAOnF,KAAK9D,MAAOrM,KAAMsV,EAAOnF,KAAKnQ,KAAM+M,YAAauI,EAAOnF,KAAKnQ,KAAM6b,WAAW,EAAO3H,MAAO,MACvH,KAAKxB,GACD,MAAO,CAAErG,MAAO,KAAMrM,KAAM,KAAM+M,YAAa,KAAM8O,WAAW,EAAO3H,MAAOoB,EAAOvC,SACzF,KAAKL,GACD,MAAO,CAAErG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAM3H,MAAO,MAC3G,KAAKxB,GAKD,OAJAvG,EAAMnM,KAAMs+B,YAAZ,eAA8BhpB,EAAOiqG,iBAClCpzG,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCiL,EAAMY,YAAauxB,YAAnB,eAAqChpB,EAAOiqG,kBAEzC,CAAElzG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GACD,MAAO,CAAErG,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAM3H,MAAO,MAC3G,KAAKxB,GAMD,OALAvG,EAAMnM,KAAMs+B,YAAZ,eAA8BhpB,EAAOiqG,iBAClCpzG,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCiL,EAAMY,YAAauxB,YAAnB,eAAqChpB,EAAOiqG,kBAEhDiW,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAMD,OALAvG,EAAMnM,KAAMQ,cAAgB8U,EAAOrC,QAChC9G,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCiL,EAAMY,YAAavM,cAAgB8U,EAAOrC,SAE9CuiH,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAMD,OALAvG,EAAMnM,KAAMQ,cAAgB,KACzB2L,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCiL,EAAMY,YAAavM,cAAgB,MAEvCg1H,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAMD,OALAvG,EAAMnM,KAAMyI,SAAW6M,EAAOgnC,SAC3BnwC,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCiL,EAAMY,YAAatE,SAAW6M,EAAOgnC,UAEzCk5E,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAGD,OAFAvG,EAAMnM,KAAMQ,cAAe2S,aAAemC,EAAOnC,aACjDqiH,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAOD,OANAvG,EAAMnM,KAAM+sC,iBAAmBz3B,EAAOy3B,iBACnC5gC,EAAMnM,KAAMkB,KAAOiL,EAAMY,YAAa7L,KACrCu0H,GAAiBtpH,EAAMnM,MACvBmM,EAAMY,YAAaggC,iBAAmBz3B,EAAOy3B,kBAEjDyoF,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,KAAKxB,GAGD,OAFA8iH,GAASlgH,EAAO7F,cAChB2lH,GAAY9/G,EAAO7F,cACZ,CAAEpD,MAAOF,EAAME,MAAOrM,KAAMsV,EAAO7F,aAAc1C,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MACrH,KAAKxB,GAGD,OAFA2iH,KACAG,GAASrpH,EAAMY,aACR,CAAEV,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMY,YAAaA,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MACnH,KAAKxB,GAGD,OAFA,UAAAvG,EAAMnM,YAAN,mBAAYQ,qBAAZ,SAA2B6M,UAAU2B,KAAKsG,EAAO5O,SACjD8uH,GAASrpH,EAAMnM,MACR,CAAEqM,MAAOF,EAAME,MAAOrM,KAAMmM,EAAMnM,KAAM+M,YAAaZ,EAAMY,YAAa8O,WAAW,EAAO3H,MAAO,MAC5G,QACI,OAAO/H,ICzBNq0D,GAAsC,CAC/ClpD,QAAS,GACTwF,QAAS,KACT64G,WAAY11H,aAAaC,QAAQ,oBACjC2b,WAAW,EACX3H,MAAO,MCjFIf,GAvBM,WAA8K,IAA7KhH,EAA4K,uDAAvI+oH,GAAqB5/G,EAAkH,uCAE9L,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAQ,YAAKnL,EAAMmL,SAAUuE,WAAW,EAAMiB,QAAS,KAAM64G,WAAYxpH,EAAMwpH,WAAazhH,MAAO,MAChH,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO65E,cAAeryE,QAAS,KAAM64G,WAAYxpH,EAAMwpH,WAAY95G,WAAW,EAAO3H,MAAO,MAClH,KAAKxB,GACD,MAAO,CAAE4E,QAAS,GAAIwF,QAAS,KAAMjB,WAAW,EAAO3H,MAAOoB,EAAOpB,OACzE,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAAUuE,WAAW,EAAM3H,MAAO,MAC9D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAOnL,EAAMmL,SAAb,CAAsBhC,EAAOnC,eAAiB0I,WAAW,EAAO3H,MAAO,MAC3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAAUuE,WAAW,EAAM3H,MAAO,MAC9D,KAAKxB,GAED,OADAvG,EAAMmL,QAAUnL,EAAMmL,QAAQrW,QAAO,SAAAmvC,GAAC,OAAI96B,EAAOnC,aAAajS,KAAOkvC,EAAElvC,MAChE,CAAEoW,QAAQ,GAAD,mBAAOnL,EAAMmL,SAAb,CAAsBhC,EAAOnC,eAAgB0I,WAAW,EAAO3H,MAAO,MAC1F,QACI,OAAO/H,IC4GNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCpEL0hH,GAAW,SAACr1H,EAAuB2G,EAA0Bg0B,GAE/D,IAAI26F,EAAct1H,EAAOuuC,UAAU5uB,WAAU,SAAAuN,GAAC,OAAIA,EAAEvsB,KAAOgG,EAAShG,MAMpE,OAJqB,IAAjB20H,GACAt1H,EAAOuuC,UAAU+mF,GAAan3F,OAAO1vB,KAAKksB,GAGvC,eAAI36B,IAETu1H,GAAe,SAACv1H,EAAuB2G,EAA0Bg0B,GAEnE,IAAI26F,EAAct1H,EAAOuuC,UAAU5uB,WAAU,SAAAuN,GAAC,OAAIA,EAAEvsB,KAAOgG,EAAShG,MAEpE,IAAqB,IAAjB20H,EAAmB,CACnB,IAAIE,EAAWx1H,EAAOuuC,UAAU+mF,GAAan3F,OAAOxe,WAAU,SAAA7P,GAAC,OAAIA,EAAEnP,KAAOg6B,EAAMh6B,OAChE,IAAd60H,IACAx1H,EAAOuuC,UAAU+mF,GAAan3F,OAAOq3F,GAAY76F,GAIzD,OAAO,eAAI36B,IAGTu3D,GAAc,SAACv3D,EAAuB2G,EAA0Bg0B,GAElE,IAAI26F,EAAct1H,EAAOuuC,UAAU5uB,WAAU,SAAAuN,GAAC,OAAIA,EAAEvsB,KAAOgG,EAAShG,MAEpE,IAAqB,IAAjB20H,EAAmB,CACnB,IAAIE,EAAWx1H,EAAOuuC,UAAU+mF,GAAan3F,OAAOxe,WAAU,SAAA7P,GAAC,OAAIA,EAAEnP,KAAOg6B,EAAMh6B,OAChE,IAAd60H,GACAx1H,EAAOuuC,UAAU+mF,GAAan3F,OAAOte,OAAO21G,EAAU,GAI9D,OAAO,eAAIx1H,IAGTy1H,GAAiB,SAACz1H,EAAuB2G,GAE3C,IAAI2uH,EAAct1H,EAAOuuC,UAAU5uB,WAAU,SAAAuN,GAAC,OAAIA,EAAEvsB,KAAOgG,EAAShG,MAMpE,OAJqB,IAAjB20H,GACAt1H,EAAOuuC,UAAU1uB,OAAOy1G,EAAa,GAGlC,eAAIt1H,IAGAA,GA5GA,WAQR,IARS4L,EAQV,uDARgD+oH,GAAqB5/G,EAQrE,uCAEF,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO7M,SAAU8jB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO7M,SAAU8jB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE7F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO/U,SAASgsB,OAAQjX,EAAO/U,OAAQsb,WAAW,EAAO3H,MAAO,MAEzG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAO/U,QAASgsB,OAAO,2BAAMpgB,EAAMogB,QAAWjX,EAAO/U,QAASsb,WAAW,EAAO3H,MAAO,MACrI,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO/U,OAAQsb,WAAW,EAAO3H,MAAO,MACrF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,KAAK+hH,GAED,OADA9pH,EAAMogB,OAAQuiB,UAAU9/B,KAAKsG,EAAOpO,UAC7B,CAAEoQ,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACpF,KAAK+hH,GAED,OADA9pH,EAAMogB,OAAQuiB,UAAY,GACnB,CAAEx3B,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACpF,KAAK+hH,GAED,OADA9pH,EAAMogB,OAAQuiB,UAAYx5B,EAAOw5B,UAC1B,CAAEx3B,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAEhF,KAAK+hH,GACL,MAAO,CAAE3+G,QAASnL,EAAMmL,QAASiV,OAAQqpG,GAASzpH,EAAMogB,OAASjX,EAAOpO,SAAWoO,EAAO4lB,OAASrf,WAAW,EAAO3H,MAAO,MAChI,KAAK+hH,GACD,MAAO,CAAE3+G,QAASnL,EAAMmL,QAASiV,OAAQupG,GAAa3pH,EAAMogB,OAASjX,EAAOpO,SAAWoO,EAAO4lB,OAASrf,WAAW,EAAO3H,MAAO,MACpI,KAAK+hH,GACD,MAAO,CAAE3+G,QAASnL,EAAMmL,QAASiV,OAAQurC,GAAY3rD,EAAMogB,OAASjX,EAAOpO,SAAWoO,EAAO4lB,OAASrf,WAAW,EAAO3H,MAAO,MACnI,KAAK+hH,GACD,MAAO,CAAE3+G,QAASnL,EAAMmL,QAASiV,OAAQypG,GAAe7pH,EAAMogB,OAASjX,EAAOpO,UAAY2U,WAAW,EAAO3H,MAAO,MAGvH,QACI,OAAO/H,ICnDNq0D,GAAsC,CAC/Cp6D,MAAO,GACPoT,MAAM,EACNqC,WAAW,EACX0B,KAAM,GACNpN,KAAM,GACN5D,MAAO,ICYImvG,GAzBM,WAA2I,IAA1IvvG,EAAyI,uDAAnG+oH,GAAqB5/G,EAA8E,uCAE3J,OAAQA,EAAOhL,MACX,KAAKoI,GAMD,OALAvG,EAAMqN,MAAO,EACbrN,EAAMoR,KAAOjI,EAAOiI,KACpBpR,EAAMgE,KAAOmF,EAAOnF,KACpBhE,EAAMI,MAAQ+I,EAAO/I,MACrBJ,EAAM0P,WAAY,EACX1P,EACX,KAAKuG,GAMD,OALAvG,EAAMqN,MAAO,EACbrN,EAAMoR,KAAO,GACbpR,EAAMgE,KAAO,GACbhE,EAAMI,MAAQ,KACdJ,EAAM0P,WAAY,EACX1P,EACX,KAAKuG,GAED,OADAvG,EAAM0P,WAAY,EACX1P,EACX,QACI,OAAOA,ICNNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCaIvN,GAhCH,WAA2I,IAA1IwF,EAAyI,uDAAnG+oH,GAAqB5/G,EAA8E,uCAElJ,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOoJ,KAAM6N,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAClF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOoJ,KAAM6N,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEzF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO3O,MAAM4lB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACrG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAAUuE,WAAW,EAAM3H,MAAO,MAC9D,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAO3O,KAAM4lB,OAAQjX,EAAO3O,IAAKkV,WAAW,EAAO3H,MAAO,MACvG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO3O,IAAKkV,WAAW,EAAO3H,MAAO,MAClF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICxBNq0D,GAAsC,CAC/ChnD,MAAM,EACN7P,MAAO,GACP3I,OAAQ,ICyBGwyH,GAhCI,WAAuG,IAAtGrnH,EAAqG,uDAA/D+oH,GAAqB5/G,EAA0C,uCACrH,OAAQA,EAAOhL,MACX,KAAKoI,GAID,OAHAvG,EAAMqN,MAAO,EACbrN,EAAMxC,MAAQ2L,EAAO3L,MACrBwC,EAAMnL,OAASgmC,GACR76B,EACX,KAAKuG,GAID,OAHAvG,EAAMqN,MAAO,EACbrN,EAAMxC,MAAQ2L,EAAO3L,MACrBwC,EAAMnL,OAASimC,GACR96B,EACX,KAAKuG,GAID,OAHAvG,EAAMqN,MAAO,EACbrN,EAAMxC,MAAQ2L,EAAO3L,MACrBwC,EAAMnL,OAASkmC,GACR/6B,EACX,KAAKuG,GAID,OAHAvG,EAAMqN,MAAO,EACbrN,EAAMxC,MAAQ2L,EAAO3L,MACrBwC,EAAMnL,OAASmmC,GACRh7B,EACX,KAAKuG,GAID,OAHAvG,EAAMqN,MAAO,EACbrN,EAAMxC,MAAQ,GACdwC,EAAMnL,OAAS,GACRmL,EACX,QACI,OAAOA,ICTNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCQI5M,GA/BK,WAA2K,IAA1K6E,EAAyK,uDAAnI+oH,GAAqB5/G,EAA8G,uCAE1L,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOub,aAActE,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAC1F,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOub,aAActE,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEjG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOhO,cAAcilB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAC7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOhO,aAAcilB,OAAQjX,EAAOhO,YAAauU,WAAW,EAAO3H,MAAO,MAEvH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOhO,YAAauU,WAAW,EAAO3H,MAAO,MAC1F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEnF,QACI,OAAO/H,ICzBNq0D,GAAsC,CAC/CtsD,MAAO,MCOIgiH,GAVD,WAA6E,IAA5E/pH,EAA2E,uDAAnE+oH,GAAqB5/G,EAA8C,uCACtF,OAAQA,EAAOhL,MACX,KAAKuhB,GAED,OADA1f,EAAM+H,MAAQoB,EAAOpB,MACd/H,EACX,QACI,OAAOA,ICVJ,YAAS5F,EAAcgX,GAClC,IAAI8pF,EAAM,YAAO9gG,GACb0Z,EAAQonF,EAAOnnF,WAAU,SAACmP,GAAD,OAAYA,EAAEnuB,KAAOqc,EAAKrc,MAMvD,OAJe,IAAX+e,GACAonF,EAAOjnF,OAAOH,EAAO,GAGlB,YAAIonF,IC2BAtgG,GA9BC,WAA2J,IAA1JoF,EAAyJ,uDAAnH+oH,GAAqB5/G,EAA8F,uCAEtK,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO8e,SAAU7H,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO8e,SAAU7H,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAC7F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAOvO,SAAV,mBAAsBoF,EAAMmL,UAAUiV,OAAQjX,EAAOvO,QAAS8U,WAAW,EAAO3H,MAAO,MAC3G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOvO,SAAUwlB,OAAQjX,EAAOvO,QAAS8U,WAAW,EAAO3H,MAAO,MAC/G,KAAKxB,GACD,MAAO,CAAE4E,QAAS45C,GAAO/kD,EAAMmL,QAAShC,EAAOvO,SAAUwlB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MACpG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOvO,QAAS8U,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICONq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCRItN,GA9BM,WAA+K,IAA9KuF,EAA6K,uDAAvI+oH,GAAqB5/G,EAAkH,uCAC/L,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOwqB,cAAevT,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAC3F,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOwqB,cAAevT,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAElG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO1O,eAAe2lB,OAAQjX,EAAO1O,aAAciV,WAAW,EAAO3H,MAAO,MAErH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAO1O,cAAe2lB,OAAQjX,EAAO1O,aAAciV,WAAW,EAAO3H,MAAO,MACzH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO1O,aAAciV,WAAW,EAAO3H,MAAO,MAC3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,QACI,OAAO/H,ICRNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCYIizC,GAjCG,WAAmK,IAAlKh7C,EAAiK,uDAA3H+oH,GAAqB5/G,EAAsG,uCAEhL,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO6nC,WAAY5wB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACxF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO6xC,YAAY56B,OAAQjX,EAAO6xC,UAAWtrC,WAAW,EAAO3H,MAAO,MAE/G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAO6xC,WAAY56B,OAAQjX,EAAO6xC,UAAWtrC,WAAW,EAAO3H,MAAO,MACpH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO6xC,UAAWtrC,WAAW,EAAO3H,MAAO,MACxF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,KAAKxB,GACD,MAAO,CAAE4E,QAAS6+G,GAAYhqH,EAAMmL,QAAShC,EAAO6xC,WAAYtrC,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEpG,QACI,OAAO/H,ICuCNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MC5BIhN,GA5CE,WAEX,IAFYiF,EAEb,uDAFmD+oH,GAAqB5/G,EAExE,uCAED,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOw5B,UAAWviB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOw5B,UAAWviB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE9F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOpO,WAAWqlB,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MAE7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAOpO,UAAWqlB,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MAElH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,KAAKkiH,GAED,OADAjqH,EAAMogB,OAAQ8R,UAAd,sBAA8BlyB,EAAMogB,OAAQ8R,WAA5C,CAAuD/oB,EAAOmoB,WACvD,CAAEnmB,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAC3F,KAAKkiH,GAED,OADAjqH,EAAMogB,OAAQ8R,UAAYiW,GAAQnoC,EAAMogB,OAAQ8R,UAAY/oB,EAAOmoB,UAC5D,CAAEnmB,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAG3F,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,YAAKnL,EAAMmL,QAAQrW,QAAO,SAACwsB,GAAD,OAAQA,EAAEvsB,KAAOoU,EAAOpO,SAAShG,OAAMqrB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MAE7H,QACI,OAAO/H,ICANq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCbIzM,GAhCC,WAEV,IAFW0E,EAEZ,uDAFkD+oH,GAAqB5/G,EAEvE,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOqjC,SAAUpsB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOqjC,SAAUpsB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE7F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO7N,UAAU8kB,OAAQjX,EAAO7N,QAASoU,WAAW,EAAO3H,MAAO,MAE3G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAO7N,SAAU8kB,OAAQjX,EAAO7N,QAASoU,WAAW,EAAO3H,MAAO,MAEhH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO7N,QAASoU,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICoCNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MC9BIjN,GArCF,WAA+I,IAA9IkF,EAA6I,uDAAvG+oH,GAAqB5/G,EAAkF,uCAEvJ,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOg4B,MAAO/gB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOrO,OAAOslB,OAAQjX,EAAOrO,KAAM4U,WAAW,EAAO3H,MAAO,MAErG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAOrO,MAAOslB,OAAQjX,EAAOrO,KAAM4U,WAAW,EAAO3H,MAAO,MAE1G,KAAKxB,GACD,MAAO,CAAE4E,QAAU45C,GAAO/kD,EAAMmL,QAAShC,EAAOrO,MAAOslB,OAAQjX,EAAOrO,KAAM4U,WAAW,EAAO3H,MAAO,MAEzG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MAEnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOrO,KAAM4U,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,IC3BNq0D,GAAsC,CAC/Cp6D,MAAO,GACPoT,UAAMoE,EACN/B,WAAW,EACX0B,KAAM,GACNpN,KAAM,GACN5D,MAAO,ICCIynH,GAda,WAA2I,IAA1I7nH,EAAyI,uDAAnG+oH,GAAqB5/G,EAA8E,uCAElK,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE8G,MAAM,EAAM+D,KAAMjI,EAAOiI,KAAMpN,KAAMmF,EAAOnF,KAAM5D,MAAO+I,EAAO/I,MAAOsP,WAAW,EAAO3H,MAAO,MAC7G,KAAKxB,GAEL,KAAKA,GACD,MAAO,CAAE8G,MAAM,EAAO+D,KAAMpR,EAAMoR,KAAMpN,KAAMhE,EAAMgE,KAAM5D,MAAOJ,EAAMI,MAAOsP,WAAW,EAAO3H,MAAO,MAC3G,QACI,OAAO/H,ICAbq0D,GAAe,CACjBrnD,UAAW,GACXC,eAAgB,GAChBG,oBAAqB,IAuBV2+F,GApBA,WAAkE,IAAjE/rG,EAAgE,uDAAtCq0D,GAAclrD,EAAwB,uCAC5E,OAAQA,EAAOhL,MACX,IAAK,iBACD,OAAO,2BACA6B,GADP,IAEIgN,UAAW7D,EAAO6D,UAClBC,eAAgB9D,EAAO8D,iBAG/B,IAAK,6BACD,OAAO,2BACAjN,GADP,IAEIoN,oBAAqBjE,EAAOiE,sBAGpC,QACI,OAAOpN,IC8DNq0D,GAA8C,CACvD1xD,MAAO,IAAIX,KACXY,IAAK,IAAIZ,KACTktB,WAAY,GACZC,SAAU,GACVN,KAAM,GACN0D,OAAQ,GACR23F,WAAY,GACZ7oF,eAAgB,GAChB8oF,mBAAoB,GACpBj4F,UAAW,GACXk4F,cAAe,GACfhpF,cAAe,GACfD,MAAO,GACPF,WAAY,GACZC,aAAc,GACdpgB,QAAS,EACTwW,iBAAiB,EACjBuI,gBAAgB,EAChBR,yBAAyB,EACzBtF,wBAAwB,EACxBugF,aAAa,EACb73E,QAAS,EACTjoC,IAAK,EACLP,MAAO,GACP00B,QAAS,EACTM,iBAAiB,EACjB/tB,UAAW,GACXsK,SAAS,EACT6+G,YAAY,EACZtvH,SAAU,MC8HCu0B,GApPE,WAqCX,IArCYtvB,EAqCb,uDArC2D+oH,GAAqB5/G,EAqChF,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GAOD,OANAvG,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACnBjhC,EAAMwL,SAAU,EACTxL,EACX,KAAKuG,GAED,OADAvG,EAAMqhC,eAAiBl4B,EAAOk4B,eACvBrhC,EACX,KAAKuG,GAID,OAHAvG,EAAMuyB,OAASppB,EAAOopB,OACtBvyB,EAAMkhC,aAAe/3B,EAAO+3B,aAC5BlhC,EAAMwL,SAAU,EACTxL,EACX,KAAKuG,GAQD,OAPAvG,EAAMuyB,OAASppB,EAAOopB,QAAW,GACjCvyB,EAAMqhC,eAAiBl4B,EAAOk4B,gBAAkB,GAChDrhC,EAAMihC,WAAa93B,EAAO83B,YAAc,GACxCjhC,EAAMkhC,aAAe/3B,EAAO+3B,cAAiB,GAC7ClhC,EAAMmhC,MAAQh4B,EAAOg4B,OAAU,GAC/BnhC,EAAMohC,cAAgBj4B,EAAOi4B,eAAkB,GAC/CphC,EAAMwL,SAAU,EACTxL,EACX,KAAKuG,GAED,OADAvG,EAAMihC,WAAa93B,EAAO83B,WACnBjhC,EACX,KAAKuG,GAED,OADAvG,EAAMmhC,MAAQh4B,EAAOg4B,MACdnhC,EACX,KAAKuG,GAED,OADAvG,EAAMwL,SAAU,EACTxL,EACX,KAAKuG,GAGD,OAFAvG,EAAMwL,SAAU,EAChBxL,EAAMkyB,UAAY/oB,EAAO+oB,UAClBlyB,EACX,KAAKuG,GAGD,OAFAvG,EAAMwL,SAAU,EAChBxL,EAAMohC,cAAgBj4B,EAAOi4B,cACtBphC,EACX,KAAKuG,GAED,OADAvG,EAAMohC,cAAgBphC,EAAMohC,cAActsC,QAAO,SAAAoP,GAAC,OAAIA,EAAEqlC,MAAMx0C,KAAOoU,EAAO3N,aAAazG,MAClFiL,EACX,KAAKuG,GAED,OADAvG,EAAMohC,cAAN,sBAA0BphC,EAAMohC,eAAhC,CAA+Cj4B,EAAO3N,eAC/CwE,EACX,KAAKuG,GAID,OAHAvG,EAAM/F,MAAQkP,EAAOlP,MACrB+F,EAAM2C,MAAQwG,EAAOxG,MACrB3C,EAAM4C,IAAMuG,EAAOvG,IACZ5C,EACX,KAAKuG,GAKD,OAJAvG,EAAM+1B,cAAgB5sB,EAAO4sB,cAC7B/1B,EAAMkvB,WAAa/lB,EAAO+lB,WAC1BlvB,EAAMmvB,SAAWhmB,EAAOgmB,SACxBnvB,EAAMs3B,iBAAkB,EACjBt3B,EACX,KAAKuG,GAKD,OAJAvG,EAAM+1B,cAAgB5sB,EAAO4sB,cAC7B/1B,EAAMkvB,WAAa/lB,EAAO+lB,WAC1BlvB,EAAMmvB,SAAWhmB,EAAOgmB,SACxBnvB,EAAM6/B,gBAAiB,EAChB7/B,EACX,KAAKuG,GAED,OADAvG,EAAMgvB,aAAe7lB,EAAO6lB,aACrBhvB,EACX,KAAKuG,GAID,OAHAvG,EAAMgvB,aAAcD,MAAMy9B,aAAaxsD,EAAMgvB,aAAcya,SAAUG,gBACrE5pC,EAAMgvB,aAAcD,MAAMo7B,SAASnqD,EAAMgvB,aAAcya,SAAS9mC,MAAQ3C,EAAMgvB,aAAcya,SAAS7mC,YAC9F5C,EAAMgvB,aACNhvB,EACX,KAAKuG,GAED,cADOvG,EAAMgvB,aACNhvB,EACX,KAAKuG,GAGD,OAFAvG,EAAM+1B,mBAAgBtkB,EACtBzR,EAAMs3B,iBAAkB,EACjBt3B,EACX,KAAKuG,GAGD,OAFAvG,EAAM+1B,mBAAgBtkB,EACtBzR,EAAM6/B,gBAAiB,EAChB7/B,EACX,KAAKuG,GAKD,OAJAvG,EAAM+1B,cAAgB5sB,EAAO4sB,cAC7B/1B,EAAMkvB,WAAa/lB,EAAO+lB,WAC1BlvB,EAAMmvB,SAAWhmB,EAAOgmB,SACxBnvB,EAAMq/B,yBAA0B,EACzBr/B,EACX,KAAKuG,GAGD,OAFAvG,EAAM+1B,mBAAgBtkB,EACtBzR,EAAMq/B,yBAA0B,EACzBr/B,EACX,KAAKuG,GAID,OAHAvG,EAAM85B,wBAA0B3wB,EAAO2wB,wBACvC95B,EAAMi6B,sBAAwB9wB,EAAO8wB,sBACrCj6B,EAAM+5B,wBAAyB,EACxB/5B,EACX,KAAKuG,GAID,OAHAvG,EAAM+5B,wBAAyB,EAC/B/5B,EAAM85B,6BAA0BroB,EAChCzR,EAAMi6B,2BAAwBxoB,EACvBzR,EACX,KAAKuG,GAQD,OAPAvG,EAAMkB,UAAYiI,EAAOjI,UACzBlB,EAAM2uB,SAAW,EACjB3uB,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACZjhC,EACX,KAAKuG,GAQD,OAPAvG,EAAMxF,IAAM2O,EAAO3O,IACnBwF,EAAM2uB,SAAW,EACjB3uB,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACZjhC,EACX,KAAKuG,GAQD,OAPAvG,EAAMyiC,QAAUt5B,EAAOs5B,QACvBziC,EAAM2uB,SAAW,EACjB3uB,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACZjhC,EACX,KAAKuG,GAOD,OANAvG,EAAM2uB,SAAW,EACjB3uB,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACZjhC,EACX,KAAKuG,GAQD,OAPAvG,EAAMs6G,YAAcnxG,EAAOmxG,YAC3Bt6G,EAAM2uB,SAAW,EACjB3uB,EAAMkyB,UAAY,GAClBlyB,EAAMqhC,eAAiB,GACvBrhC,EAAMuyB,OAAS,GACfvyB,EAAMkhC,aAAe,GACrBlhC,EAAMihC,WAAa,GACZjhC,EACX,KAAKuG,GAQD,OAPAvG,EAAM5L,OAAS+U,EAAO/U,OACtB4L,EAAMkvB,WAAa/lB,EAAO+lB,WAC1BlvB,EAAMmvB,SAAWhmB,EAAOgmB,SACxBnvB,EAAM5L,OAAS+U,EAAO/U,OACtB4L,EAAMmqH,mBAAN,YAA+BnqH,EAAMqhC,gBACrCrhC,EAAMqhC,eAAiB,GACvBrhC,EAAMivB,iBAAkB,EACjBjvB,EACX,KAAKuG,GA0CD,OAzCAvG,EAAMkhC,aAAN,sBAAyBlhC,EAAMkhC,aAAapsC,QAAO,SAAAssE,GAAC,OAAIA,EAAEhtE,OAAOW,KAAOiL,EAAM5L,OAAQW,OAAtF,YAA8FoU,EAAO+3B,eACrGlhC,EAAMuyB,OAAN,sBAAmBvyB,EAAMuyB,OAAOz9B,QAAO,SAAAoP,GAAC,OAAIA,EAAE9P,OAAOW,KAAOiL,EAAM5L,OAAQW,OAA1E,YAAkFoU,EAAOopB,SAEzFvyB,EAAMqhC,eAAN,YACOrhC,EAAMmqH,mBACJx1H,KAAI,SAACmY,GAEF,IAAIe,EAAI,eAAOf,GAQf,GANIA,EAAEoiB,aAAelvB,EAAMmvB,UAAYthB,EAAK8vB,SAASx8B,QAAU0M,EAAK8vB,SAAShpC,KAAI,SAAA0J,GAAC,OAAIA,EAAE8qC,kBAAgB50C,SAASyL,EAAMkvB,cAEnHrhB,EAAK8vB,SAAL,YAAoB7wB,EAAE6wB,SAAS7oC,QAAO,SAAAuJ,GAAC,OAAIA,EAAE8qC,iBAAmBnpC,EAAMkvB,gBAItEpiB,EAAEoiB,aAAelvB,EAAMmvB,SAEvB,OAAOthB,EAIX,IAAM1E,EAAOk4B,eAAe1sC,KAAI,SAAA24B,GAAC,OAAIA,EAAEg9F,OAAK/1H,SAASuY,EAAEw9G,KAEnD,OAAOz8G,EAIX,IAAI,IAAI5Y,EAAI,EAAGA,EAAIkU,EAAOk4B,eAAelgC,OAAQlM,IACzCkU,EAAOk4B,eAAepsC,GAAGq1H,MAAQz8G,EAAKy8G,KAAOnhH,EAAOk4B,eAAepsC,GAAG0oC,SAASx8B,SAC/E0M,EAAK8vB,SAAL,sBAAoB9vB,EAAK8vB,UAAzB,YAAsCx0B,EAAOk4B,eAAepsC,GAAG0oC,YAIvE,OAAO9vB,MAInB7N,EAAMivB,iBAAkB,EACxBjvB,EAAMkvB,WAAa,GACnBlvB,EAAMmvB,SAAW,GAEVnvB,EACX,QACI,OAAOA,ICtONq0D,GAAsC,CAC/C9hC,OAAQ,GACRL,UAAW,GACXoF,iBAAiB,EACjBr9B,MAAO,GACP00B,SAAS,EACTnjB,SAAS,GCgBEgwB,GArCM,WASf,IATgBx7B,EASjB,uDATuD+oH,GAAqB5/G,EAS5E,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAgB,EAAQ9rB,SAAS,GACpH,KAAKjF,GACD,MAAO,CAACgsB,OAAQppB,EAAOopB,OAAQL,UAAWlyB,EAAMkyB,UAAWj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAgB,EAAQ9rB,SAAS,GACpH,KAAKjF,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAgB,EAAQ9rB,SAAS,GACpH,KAAKjF,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAW/oB,EAAO+oB,UAAYj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAgB,EAAQ9rB,SAAS,GACrH,KAAKjF,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAOkP,EAAOlP,MAAOuR,SAAS,EAAO8rB,gBAAiBt3B,EAAMs3B,iBAC3H,KAAK/wB,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAO87B,cAAe5sB,EAAO4sB,cAAeuB,iBAAiB,EAAM9rB,SAAS,EAAOuuB,wBAAwB,GACvL,KAAKxzB,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAO87B,cAAe,KAAMuB,iBAAiB,EAAO9rB,SAAS,EAAOuuB,wBAAwB,GACxK,KAAKxzB,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAiB,EAAO9rB,SAAS,EAAOuuB,wBAAwB,EAAMD,wBAAyB3wB,EAAO2wB,wBAAyBG,sBAAuB9wB,EAAO8wB,uBAChP,KAAK1zB,GACD,MAAO,CAACgsB,OAAQvyB,EAAMuyB,OAAQL,UAAWlyB,EAAMkyB,UAAYj4B,MAAO+F,EAAM/F,MAAOq9B,iBAAiB,EAAO9rB,SAAS,EAAOuuB,wBAAwB,GACnJ,KAAKxzB,GAED,OADAvG,EAAM2uB,SAAW3uB,EAAM2uB,QAChB3uB,EACX,QACI,OAAOA,ICNNq0D,GAAsC,CAC/C9hC,OAAQ,GACRL,UAAW,GACXgP,aAAc,GACd5J,iBAAiB,EACjBmL,QAAS,EACT9T,QAAS,EACTnjB,SAAS,GCyBE++G,GA1DU,WAWnB,IAXoBvqH,EAWrB,uDAX2D+oH,GAAqB5/G,EAWhF,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GAKD,OAJAvG,EAAMwL,SAAU,EAChBxL,EAAMuyB,OAAS,GACfvyB,EAAMkyB,UAAY,GAClBlyB,EAAMkhC,aAAe,GACd,eAAIlhC,GACf,KAAKuG,GAKD,OAJAvG,EAAMuyB,OAASppB,EAAOopB,OACtBvyB,EAAMkyB,UAAY/oB,EAAO+oB,UACzBlyB,EAAMkhC,aAAe/3B,EAAO+3B,aAC5BlhC,EAAMwL,SAAU,EACT,eAAIxL,GACf,KAAKuG,GAKD,OAJAvG,EAAMuyB,OAAS,GACfvyB,EAAMkyB,UAAY,GAClBlyB,EAAMkhC,aAAe,GACrBlhC,EAAMwL,SAAU,EACT,eAAIxL,GACf,KAAKuG,GAGD,OAFAvG,EAAM+1B,cAAgB5sB,EAAO4sB,cAC7B/1B,EAAMs3B,iBAAkB,EACjB,eAAIt3B,GACf,KAAKuG,GAGD,OAFAvG,EAAM+1B,mBAAgBtkB,EACtBzR,EAAMs3B,iBAAkB,EACjB,eAAIt3B,GACf,KAAKuG,GAGD,OAFAvG,EAAMyiC,QAAUt5B,EAAOs5B,QACvBziC,EAAM2uB,SAAW,EACV,eAAI3uB,GACf,KAAKuG,GAED,OADAvG,EAAM2uB,SAAW,EACV,eAAI3uB,GACf,KAAKuG,GACD,IACiB,EADbuN,EAAQ9T,EAAMkyB,UAAUne,WAAU,SAAC7P,GAAD,aAAOA,EAAEotB,SAASv8B,MAAX,UAAkBoU,EAAOmoB,gBAAzB,aAAkB,EAAiBv8B,OAChF,IAAe,IAAX+e,EACA9T,EAAMkyB,UAAUpe,GAAOwd,SAAWnoB,EAAOmoB,SACzCtxB,EAAMkyB,UAAUpe,GAAO7Z,MAAvB,UAA+BkP,EAAOmoB,gBAAtC,aAA+B,EAAiBr3B,MAEpD,OAAO,eAAI+F,GACf,QACI,OAAOA,IC3DNwqH,GAA+B,+BAQ/BC,GAAgC,gCCoBhCp2D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCYI66B,GAxCS,WAElB,IAFmB5iC,EAEpB,uDAF0D+oH,GAAqB5/G,EAE/E,uCACD,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOw5B,UAAWviB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOw5B,UAAWviB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE9F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOpO,WAAWqlB,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MAE7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAOpO,UAAWqlB,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MAElH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOpO,SAAU2U,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,KAAKkiH,GAED,OADAjqH,EAAMogB,OAAQs4C,iBAAd,sBAAqC14D,EAAMogB,OAAQs4C,kBAAnD,CAAsEvvD,EAAOmoB,WACtE,CAAEnmB,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAC3F,KAAKkiH,GAED,OADAjqH,EAAMogB,OAAQs4C,iBAAmBvwB,GAAQnoC,EAAMogB,OAAQs4C,iBAAmBvvD,EAAOmoB,UAC1E,CAAEnmB,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,QACI,OAAO/H,IC6BNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACRuO,SAAS,EACTjf,WAAW,EACX3H,MAAO,MCTI/M,GA9DG,WAKZ,IAEE8Y,EACA42G,EARW1qH,EAKd,uDALoD+oH,GAAqB5/G,EAKzE,uCAKD,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOq1D,WAAYp+C,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACxF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOq1D,WAAYp+C,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE/F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAOi1D,oBAAV,mBAAiCp+D,EAAMmL,UAAUiV,OAAQjX,EAAOi1D,mBAAoB1uD,WAAW,EAAO3H,MAAO,MAEjI,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GASD,OAPAuN,EAAQ9T,EAAMmL,QAAQ4I,WAAU,SAAAqqD,GAAkB,OAAIA,EAAmBrpE,KAAOoU,EAAO8b,OACvFylG,EAAQ,YAAO1qH,EAAMmL,UAEN,IAAX2I,IACA42G,EAAS52G,GAAS3K,EAAOi1D,oBAGtB,CAAEjzD,QAAQ,YAAKu/G,GAAWtqG,OAAQjX,EAAOnO,UAAW0U,WAAW,EAAO3H,MAAO,MAExF,KAAKxB,GASD,OAPAuN,EAAQ9T,EAAMmL,QAAQ4I,WAAU,SAAAqqD,GAAkB,OAAIA,EAAmBrpE,KAAOoU,EAAO8b,OACvFylG,EAAQ,YAAO1qH,EAAMmL,UAEN,IAAX2I,GACA42G,EAASz2G,OAAOH,EAAO,GAGpB,CAAE3I,QAAQ,YAAKu/G,GAAWtqG,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAEpF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOnO,UAAW0U,WAAW,EAAO3H,MAAO,MACxF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,KAAKxB,GAED,OADAvG,EAAM2uB,SAAU,EACT,eAAI3uB,GAEf,QACI,OAAOA,ICsHNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MC7II9M,GAxCG,WAOZ,IAPa+E,EAOd,uDAPoD+oH,GAAqB5/G,EAOzE,uCAED,OAAQA,EAAOhL,MAEX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOgC,QAASiV,OAAQjX,EAAOiX,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAExE,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MAC5E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOiX,OAAQ1Q,WAAW,EAAO3H,MAAO,MACrF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEnF,KAAKxB,GAED,IAAIuN,EAAQ9T,EAAMmL,QAAQ4I,WAAU,SAAAknG,GAAe,OAAIA,EAAgB7mH,OAAOW,KAAOoU,EAAOiX,OAAOhsB,OAAOW,MAM1G,OAJe,IAAX+e,IACA9T,EAAMmL,QAAQ2I,GAAS3K,EAAOiX,QAG3B,CAAEjV,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOiX,OAAQ1Q,WAAW,EAAO3H,MAAO,MAErF,QACI,OAAO/H,ICoENq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,KACPkmE,YAAY,GCtED/yE,GAtCC,WAOV,IAPW8E,EAOZ,uDAPkD+oH,GAAqB5/G,EAOvE,uCACD,OAAQA,EAAOhL,MAEX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,KAAMkmE,YAAY,GAC1F,KAAK1nE,GACD,MAAO,CAAE4E,QAAShC,EAAOgC,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,KAAMkmE,YAAY,GACvG,KAAK1nE,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQ,GAAI1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,MAAOkmE,YAAY,GAEzF,KAAK1nE,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,GAAI1Q,WAAW,EAAO3H,MAAO,KAAMkmE,YAAY,GAC5F,KAAK1nE,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOiX,OAAQ1Q,WAAW,EAAO3H,MAAO,KAAMkmE,YAAY,GACvG,KAAK1nE,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,GAAI1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,MAAOkmE,YAAY,GAEpG,KAAK1nE,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,KAAMkmE,YAAY,GACtG,KAAK1nE,GACD,MAAO,CAAE4E,QAASw/G,GAAa3qH,EAAMmL,QAAShC,EAAOiX,QAASA,OAAQjX,EAAOiX,OAAQ1Q,WAAW,EAAO3H,MAAO,KAAMkmE,YAAajuE,EAAMiuE,YAC3I,KAAK1nE,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,GAAI1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,MAAOkmE,YAAY,GACpG,KAAK1nE,GAED,OADAvG,EAAMiuE,YAAcjuE,EAAMiuE,WACnB,eAAIjuE,GAChB,QACK,OAAOA,IClBNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCuBIo3B,GA3CE,WAIO,IAJNn/B,EAIK,uDAJiC+oH,GAAqB5/G,EAItD,uCAEnB,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOzN,UAAW0kB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOzN,UAAW0kB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE9F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOg2B,WAAW/e,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAC1G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,YAAKnL,EAAMmL,QAAQrW,QAAO,SAAAsc,GAAI,OAAIA,EAAKrc,KAAOoU,EAAOg2B,SAASpqC,OAAMqrB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACxI,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAAUuE,WAAW,EAAM3H,MAAO,MAC9D,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOg2B,UAAW/e,OAAQjX,EAAOg2B,SAAUzvB,WAAW,EAAO3H,MAAO,MACjH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOg2B,SAAUzvB,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICJJnM,GAnCF,WAKN,IALOmM,EAKR,uDALkD+oH,GAAyB5/G,EAK3E,uCACF,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOm5E,MAAOliE,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOm5E,MAAOliE,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE1F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOtV,OAAOusB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOtV,MAAOusB,OAAQjX,EAAOtV,KAAM6b,WAAW,EAAO3H,MAAO,MAEzG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOtV,KAAM6b,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEnF,QACI,OAAO/H,ICGNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCRIrN,GA9BE,WAAiK,IAAhKsF,EAA+J,uDAAzH+oH,GAAqB5/G,EAAoG,uCAC7K,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO03D,WAAYzgD,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACxF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO03D,WAAYzgD,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE/F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAOzO,WAAW0lB,OAAQjX,EAAOzO,SAAUgV,WAAW,EAAO3H,MAAO,MAE7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOzO,UAAW0lB,OAAQjX,EAAOzO,SAAUgV,WAAW,EAAO3H,MAAO,MACjH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOzO,SAAUgV,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE3F,QACI,OAAO/H,ICJNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCKI3M,GA/BF,WAA+I,IAA9I4E,EAA6I,uDAAvG+oH,GAAqB5/G,EAAkF,uCAEvJ,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi6B,MAAOhjB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi6B,MAAOhjB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE1F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,GAAD,mBAAMnL,EAAMmL,SAAZ,CAAqBhC,EAAO/N,OAAOglB,OAAQjX,EAAO/N,KAAMsU,WAAW,EAAO3H,MAAO,MAErG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAAUg9B,GAAQnoC,EAAMmL,QAAShC,EAAO/N,MAAOglB,OAAQjX,EAAO/N,KAAMsU,WAAW,EAAO3H,MAAO,MAC1G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO/N,KAAMsU,WAAW,EAAO3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,QACI,OAAO/H,ICRNq0D,GAAsC,CAC/ClpD,QAAS,GACTuE,WAAW,EACX3H,MAAO,KACPkmE,YAAY,GCWDxyE,GAjCE,WAA+J,IAA9JuE,EAA6J,uDAAvH+oH,GAAqB5/G,EAAkG,uCAE3K,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO8rE,UAAW70D,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAO8rE,UAAW70D,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAE9F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAO1N,UAAV,mBAAuBuE,EAAMmL,UAAUiV,OAAQjX,EAAO1N,SAAUiU,WAAW,EAAO3H,MAAO,MAE7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAO1N,UAAW2kB,OAAQjX,EAAO1N,SAAUiU,WAAW,EAAO3H,MAAO,MACjH,KAAKxB,GACD,MAAO,CAAE4E,QAAS45C,GAAO/kD,EAAMmL,QAAShC,EAAO1N,UAAW2kB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MACrG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO1N,SAAUiU,WAAW,EAAO3H,MAAO,MACvF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,QACI,OAAO/H,ICINq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCJIvM,GAjCM,WAA+K,IAA9KwE,EAA6K,uDAAvI+oH,GAAqB5/G,EAAkH,uCAE/L,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi4B,cAAehhB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MAC3F,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi4B,cAAehhB,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAElG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAO3N,cAAV,mBAA2BwE,EAAMmL,UAAUiV,OAAQjX,EAAO3N,aAAckU,WAAW,EAAO3H,MAAO,MAErH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAO3N,cAAe4kB,OAAQjX,EAAO3N,aAAckU,WAAW,EAAO3H,MAAO,MACzH,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,YAAKnL,EAAMmL,QAAQrW,QAAO,SAAAmvC,GAAC,OAAIA,EAAElvC,KAAOoU,EAAO3N,aAAazG,OAAMqrB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MAC9H,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO3N,aAAckU,WAAW,EAAO3H,MAAO,MAC3F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,QACI,OAAO/H,ICENq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCHIk/C,GAjCI,WAAuK,IAAtKjnD,EAAqK,uDAA/H+oH,GAAqB5/G,EAA0G,uCAErL,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi+C,YAAahnC,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACzF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOi+C,YAAahnC,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAEhG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAO89C,YAAV,mBAAyBjnD,EAAMmL,UAAUiV,OAAQjX,EAAO89C,WAAYv3C,WAAW,EAAO3H,MAAO,MAEjH,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAO89C,YAAa7mC,OAAQjX,EAAO89C,WAAYv3C,WAAW,EAAO3H,MAAO,MACrH,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,YAAKnL,EAAMmL,QAAQrW,QAAO,SAAAmvC,GAAC,OAAIA,EAAElvC,KAAOoU,EAAO89C,WAAWlyD,OAAMqrB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MAC5H,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAO89C,WAAYv3C,WAAW,EAAO3H,MAAO,MACzF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OAErE,QACI,OAAO/H,ICMNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCRIlN,GA9BC,WAA2J,IAA1JmF,EAAyJ,uDAAnH+oH,GAAqB5/G,EAA8F,uCAEtK,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACxE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOs+C,SAAUrnC,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOs+C,SAAUrnC,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAC7F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAOtO,SAAV,mBAAsBmF,EAAMmL,UAAUiV,OAAQjX,EAAOtO,QAAS6U,WAAW,EAAO3H,MAAO,MAC3G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOtO,SAAUulB,OAAQjX,EAAOtO,QAAS6U,WAAW,EAAO3H,MAAO,MAC/G,KAAKxB,GACD,MAAO,CAAE4E,QAAS45C,GAAO/kD,EAAMmL,QAAShC,EAAOtO,SAAUulB,OAAQ,KAAM1Q,WAAW,EAAO3H,MAAO,MACpG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOtO,QAAS6U,WAAW,EAAO3H,MAAO,MACtF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICRNq0D,GAAsC,CAC/ClpD,QAAS,GACTiV,OAAQ,KACR1Q,WAAW,EACX3H,MAAO,MCKI6+F,GA5BA,WAAuJ,IAAtJ5mG,EAAqJ,uDAA/G+oH,GAAqB5/G,EAA0F,uCAEjK,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAE4E,QAAS,GAAIiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAChE,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOyiG,QAASxrF,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAO,MACrF,KAAKxB,GACD,MAAO,CAAE4E,QAAShC,EAAOyiG,QAASxrF,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAO3H,MAAOoB,EAAOpB,OAC5F,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAM3H,MAAO,MAC7D,KAAKxB,GACD,MAAO,CAAE4E,QAAQ,CAAEhC,EAAOy9F,QAAV,mBAAqB5mG,EAAMmL,UAAUiV,OAAQjX,EAAOy9F,OAAQl3F,WAAW,EAAO3H,MAAO,MACzG,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQ1Q,WAAW,EAAM3H,MAAO,MACnF,KAAKxB,GACD,MAAO,CAAE4E,QAASg9B,GAAQnoC,EAAMmL,QAAShC,EAAOy9F,QAASxmF,OAAQjX,EAAOy9F,OAAQl3F,WAAW,EAAO3H,MAAO,MAC7G,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQ,KAAM1Q,WAAW,EAAM3H,MAAO,MAC3E,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOy9F,OAAQl3F,WAAW,EAAO3H,MAAO,MACrF,KAAKxB,GACD,MAAO,CAAE4E,QAASnL,EAAMmL,QAASuE,WAAW,EAAO3H,MAAOoB,EAAOpB,OACrE,QACI,OAAO/H,ICkDNq0D,GAAsC,CAC/ClpD,QAAS,GACT28F,SAAU,GACV1nF,OAAQ,KACRuvC,MAAO,GACPhtD,MAAO,IAAIX,KACXY,IAAK,IAAIZ,KACT0N,WAAW,EACX3H,MAAO,MCtFI,YAAS3N,EAAc8gG,GAAe,IAAD,WAEvCjmG,GACL,IAAI6e,EAAQ1Z,EAAM2Z,WAAU,SAACmP,GAAD,OAAYA,EAAEnuB,KAAOmmG,EAAOjmG,GAAGF,OAE5C,IAAX+e,IACA1Z,EAAM0Z,GAASonF,EAAOjmG,KAJ9B,IAAK,IAAIA,KAAKimG,EAAQ,EAAbjmG,GAQT,OAAOmF,GCcIs1E,GApBG,WAA8M,IAA7M1vE,EAA4M,uDAAtK+oH,GAAqB5/G,EAAiJ,uCAE3N,OAAQA,EAAOhL,MACX,KAAKoI,GACD,MAAO,CAAEuhG,SAAU,GAAI38F,QAAS,GAAIiV,OAAQ,KAAMuvC,MAAO3vD,EAAM2vD,MAAOhtD,MAAOwG,EAAOxG,MAAOC,IAAKuG,EAAOvG,IAAK8M,WAAW,EAAM3H,MAAO,MACxI,KAAKxB,GACD,MAAO,CAAEuhG,SAAU,GAAI38F,QAAShC,EAAOsmE,UAAWrvD,OAAQpgB,EAAMogB,OAAQuvC,MAAOxmD,EAAOwmD,MAAOhtD,MAAO3C,EAAM2C,MAAOC,IAAK5C,EAAM4C,IAAK8M,WAAW,EAAO3H,MAAO,MAC9J,KAAKxB,GACD,MAAO,CAAEuhG,SAAU3+F,EAAOsmE,UAAWtkE,QAASnL,EAAMmL,QAASiV,OAAQpgB,EAAMogB,OAAQuvC,MAAO3vD,EAAM2vD,MAAOhtD,MAAO3C,EAAM2C,MAAOC,IAAK5C,EAAM4C,IAAK8M,WAAW,EAAO3H,MAAO,MACxK,KAAKxB,GACD,MAAO,CAAEuhG,SAAU,GAAI38F,QAASy/G,GAAiB5qH,EAAMmL,QAAShC,EAAOsmE,WAAYrvD,OAAQpgB,EAAMogB,OAAQuvC,MAAO3vD,EAAM2vD,MAAOhtD,MAAO3C,EAAM2C,MAAOC,IAAK5C,EAAM4C,IAAK8M,WAAW,EAAO3H,MAAO,MAC9L,KAAKxB,GACD,MAAO,CAAEuhG,SAAU,GAAI38F,QAASnL,EAAMmL,QAASiV,OAAQ,KAAMuvC,MAAO3vD,EAAM2vD,MAAOhtD,MAAO3C,EAAM2C,MAAOC,IAAK5C,EAAM4C,IAAK8M,WAAW,EAAM3H,MAAO,MACjJ,KAAKxB,GACD,MAAO,CAAEuhG,SAAU,GAAI38F,QAASnL,EAAMmL,QAASiV,OAAQjX,EAAOumE,UAAW/f,MAAO3vD,EAAM2vD,MAAOhtD,MAAO3C,EAAM2C,MAAOC,IAAK5C,EAAM4C,IAAK8M,WAAW,EAAO3H,MAAO,MAC9J,QACI,OAAO/H,ICkBb6qH,GAAaC,aAAgB,CAC/B5pH,aACAjB,QACA+G,gBACA5S,UACAoG,OACAW,eACAP,WACAH,gBACAC,YACAsgD,aACAlgD,QACA0gC,gBACAzgC,YACA6nC,mBACA2nF,oBACAjvH,WACAg0B,YACAt0B,aACAC,aACA2rG,UACAl3B,aACAx0E,WACAikC,YACA/jC,QACAI,gBACAyrD,cACAxrD,YACAZ,WAGA00G,gBACAxD,UACA8b,uBACAR,cACA0C,SAGAl2H,UAUWk3H,GAPK,SAAC/qH,EAAuBmJ,GACxC,MAAI,CAAC5D,GAAQM,IAAkBtR,SAAS4U,EAAOhL,MACpC0sH,QAAWp5G,EAAWtI,GAE1B0hH,GAAW7qH,EAAOmJ,ICnE7B6hH,0BAAe,KAAMzqG,MACrB0qG,4BAAiB,MAEV,IAAMC,GAAQC,aAAYC,GAAeC,cCCxC,SAAAH,GAAK,OAAI,SAAA96F,GAAI,OAAI,SAAAjnB,GACrB,IACI,OAAOinB,EAAKjnB,GACd,MAAOmiH,GACLhzF,QAAQvwB,MAAM,uBAAwBujH,SAQtC,SAAAJ,GAAK,OAAI,SAAA96F,GAAI,OAAI,SAAAjnB,GACrB,IAMI,MALI,CAACqxB,GAAoBG,GAAmBD,GAAoBD,IAAiBlmC,SAAS4U,EAAOhL,OAC7FgO,YAAW,WACP++G,EAAMvjH,StoBPX,CACHxJ,KAAMoI,OsoBOC,KAEA6pB,EAAKjnB,GACd,MAAOmiH,GAEL,MADAhzF,QAAQvwB,MAAM,uBAAwBujH,GAChCA,QChCN,SAAAJ,GAAK,OAAI,SAAA96F,GAAI,OAAI,SAAAjnB,GAAW,IAAD,IAC/B,IACI,GAAIA,EAAOhL,OAASuhB,GAAY,CAC5B,IAAI3X,EAAoBoB,EAAOpB,MAE/B,GAAIA,EAAMuB,SACN,OAAQvB,EAAMuB,SAAS3L,QACnB,KAAK,IACDutH,EAAMvjH,SAASwzB,IAAgB,UAAApzB,EAAMuB,gBAAN,mBAAgBtF,YAAhB,eAAsB4C,UAAW,4BAChE,MACJ,KAAK,IACDkB,eAAehH,QAAQ,kBAAmB,6BAC1CoqH,EAAMvjH,SAASd,MACf,MACJ,KAAK,IACDkC,OAAOrI,SAAS2hB,KAAO,QACvB,MACJ,KAAK,IACDtZ,OAAOrI,SAAS2hB,KAAO,SAMvC,OAAO+N,EAAKjnB,GACd,MAAOmiH,GAEL,MADAhzF,QAAQvwB,MAAM,uBAAwBujH,GAChCA,QC7BN,SAAAJ,GAAK,OAAI,SAAA96F,GAAI,OAAI,SAAAjnB,GACrB,IAII,MAHI,CAAC8O,IAAe1jB,SAAS4U,EAAOhL,OAAS+sH,EAAMK,WAAWj8F,SAASN,cACnEk8F,EAAMvjH,S9pB+NP,CACHxJ,KAAMoI,K8pB9NC6pB,EAAKjnB,GACd,MAAOmiH,GAEL,MADAhzF,QAAQvwB,MAAM,uBAAwBujH,GAChCA,SHKdE,IAASrrH,OACP,eAAC,IAAMsrH,WAAP,UACI,eAAC,IAAD,CAAUP,MAAOA,GAAjB,SACI,eAAC,IAAD,UACI,eAAC,GAAD,UAIZzvH,SAASykB,eAAe,SAM1BqoG,O","file":"static/js/main.b977f456.chunk.js","sourcesContent":["import {User} from \"../../models/auth\";\n\nconst getUser = () => {\n let user = localStorage.getItem('user')!\n return JSON.parse(user);\n}\n\nexport default getUser;","import {Salaries, Salary} from \"../../models/salary\";\nimport getUser from \"../getUser\";\n\nclass AccessRightChecker {\n\n static granted(right: string){\n const salary: Salary = getUser()?.currentSalary!;\n \n if (!salary) return false;\n\n if (salary.rights.includes(right)){\n return true;\n }\n\n let ret:string[] = [];\n\n return ret.concat(...salary.managed.map(m => m.rights)).includes(right);\n }\n\n static grantedFor(right: string, target: number){\n const salary: Salary = getUser().currentSalary!;\n\n if (!salary) return false;\n\n return salary.rights.concat(...salary.managed.filter(m => m.managed.id === target).map(m => m.rights)).includes(right);\n }\n\n static grantedForMany(right: string, targets: number[]){\n for (let i in targets){\n if (!this.grantedFor(right, targets[i])){\n return false;\n }\n }\n\n return true;\n }\n\n static hasGlobalRight(right: string){\n const salary: Salary = getUser()?.currentSalary;\n \n if (!salary) return false;\n\n return salary.rights.includes(right);\n }\n\n static hasManagerRight(right: string){\n const salary: Salary = getUser()?.currentSalary;\n\n if (!salary) return false;\n\n let ret:string[] = [];\n return ret.concat(...salary.managed.map(m => m.rights)).includes(right);\n }\n}\n\nexport default AccessRightChecker;","export const HANDLE_BILLING = 'HANDLE_BILLING';\n\nexport const LIST_SALARY = 'LIST_SALARY';\nexport const LIST_SALARY_FILE = 'LIST_SALARY_FILE';\nexport const LIST_SELF_SALARY_FILE = 'LIST_SELF_SALARY_FILE';\nexport const IMPORT_SALARY = 'IMPORT_SALARY';\nexport const EDIT_SALARY = 'EDIT_SALARY';\nexport const DELETE_SALARY = 'DELETE_SALARY';\n\nexport const LIST_BOOKING = 'LIST_BOOKING';\nexport const LIST_SELF_BOOKING = 'LIST_SELF_BOOKING';\nexport const EDIT_BOOKING = 'EDIT_BOOKING';\nexport const DELETE_BOOKING = 'DELETE_BOOKING';\nexport const SHOW_ABOVE_MAX_VISIBILITY_DATE = 'SHOW_ABOVE_MAX_VISIBILITY_DATE';\n\nexport const PUBLISH_CALENDAR = \"PUBLISH_CALENDAR\";\nexport const DOWNLOAD_CALENDAR = \"DOWNLOAD_CALENDAR\";\n\nexport const LIST_BOOKING_OFFER = 'LIST_BOOKING_OFFER';\nexport const EDIT_BOOKING_OFFER = 'EDIT_BOOKING_OFFER';\nexport const DELETE_BOOKING_OFFER = 'DELETE_BOOKING_OFFER';\nexport const APPLY_BOOKING_OFFER = 'APPLY_BOOKING_OFFER';\n\nexport const LIST_DOCUMENT = 'LIST_DOCUMENT';\nexport const EDIT_DOCUMENT = 'EDIT_DOCUMENT';\nexport const DELETE_DOCUMENT = 'DELETE_DOCUMENT';\n\nexport const LIST_KEEP_NOTE = 'LIST_KEEP_NOTE';\nexport const EDIT_KEEP_NOTE = 'EDIT_KEEP_NOTE';\nexport const DELETE_KEEP_NOTE = 'DELETE_KEEP_NOTE';\n\nexport const LIST_TIME_CLOCK = 'LIST_TIME_CLOCK';\nexport const LIST_SELF_TIME_CLOCK = 'LIST_SELF_TIME_CLOCK';\nexport const EDIT_TIME_CLOCK = 'EDIT_TIME_CLOCK';\nexport const DELETE_TIME_CLOCK = 'DELETE_TIME_CLOCK';\nexport const CLOCK_IN_FROM_APP = 'CLOCK_IN_FROM_APP';\n\nexport const LIST_COMPANY = 'LIST_COMPANY';\nexport const EDIT_COMPANY = 'EDIT_COMPANY';\nexport const DELETE_COMPANY = 'DELETE_COMPANY';\nexport const LIST_CUSTOMER_FLOW = 'LIST_CUSTOMER_FLOW';\n\nexport const LIST_JOB = 'LIST_JOB';\nexport const EDIT_JOB = 'EDIT_JOB';\nexport const DELETE_JOB = 'DELETE_JOB';\n\nexport const LIST_LOCALISATION = 'LIST_LOCALISATION';\nexport const EDIT_LOCALISATION = 'EDIT_LOCALISATION';\nexport const DELETE_LOCALISATION = 'DELETE_LOCALISATION';\n\nexport const LIST_ABSENCE = 'LIST_ABSENCE';\nexport const EDIT_ABSENCE = 'EDIT_ABSENCE';\nexport const EDIT_ABSENCE_FILE = 'EDIT_ABSENCE_FILE';\nexport const DELETE_ABSENCE = 'DELETE_ABSENCE';\nexport const REQUEST_ABSENCE = 'REQUEST_ABSENCE';\nexport const VALIDATE_SELF_ABSENCE = 'VALIDATE_SELF_ABSENCE';\n\nexport const LIST_EXPENSE = 'LIST_EXPENSE';\nexport const EDIT_EXPENSE = 'EDIT_EXPENSE';\nexport const DELETE_EXPENSE = 'DELETE_EXPENSE';\nexport const REQUEST_EXPENSE = 'REQUEST_EXPENSE';\n\nexport const LIST_TASK_GROUP = 'LIST_TASK_GROUP';\nexport const EDIT_TASK_GROUP = 'EDIT_TASK_GROUP';\nexport const DELETE_TASK_GROUP = 'DELETE_TASK_GROUP';\nexport const LIST_SELF_TASK = 'LIST_SELF_TASK';\nexport const EDIT_TASK = 'EDIT_TASK';\n\n\nexport const LIST_TEMPLATE = 'LIST_TEMPLATE';\nexport const EDIT_TEMPLATE = 'EDIT_TEMPLATE';\nexport const DELETE_TEMPLATE = 'DELETE_TEMPLATE';\n\nexport const EDIT_TEMPLATE_APPLIED = 'EDIT_TEMPLATE_APPLIED';\nexport const DELETE_TEMPLATE_APPLIED = 'DELETE_TEMPLATE_APPLIED';\n\nexport const LIST_ACTIVITY = 'LIST_ACTIVITY';\nexport const EDIT_ACTIVITY = 'EDIT_ACTIVITY';\nexport const DELETE_ACTIVITY = 'DELETE_ACTIVITY';\n\nexport const LIST_COUNTER = 'LIST_COUNTER';\nexport const LIST_SELF_COUNTER = 'LIST_SELF_COUNTER';\nexport const EDIT_COUNTER = 'EDIT_COUNTER';\nexport const DELETE_COUNTER = 'DELETE_COUNTER';\n\nexport const LIST_TEAM = 'LIST_TEAM';\nexport const EDIT_TEAM = 'EDIT_TEAM';\nexport const DELETE_TEAM = 'DELETE_TEAM';\n\nexport const LIST_ACCESS_LEVEL = 'LIST_ACCESS_LEVEL';\nexport const EDIT_ACCESS_LEVEL = 'EDIT_ACCESS_LEVEL';\nexport const DELETE_ACCESS_LEVEL = 'DELETE_ACCESS_LEVEL';\n\nexport const LIST_CHANNEL = 'LIST_CHANNEL';\nexport const EDIT_CHANNEL = 'EDIT_CHANNEL';\nexport const DELETE_CHANNEL = 'DELETE_CHANNEL';\n\nexport const LIST_REPORTING = 'LIST_REPORTING';\nexport const LIST_SELF_REPORTING = 'LIST_SELF_REPORTING';\nexport const EXPORT_REPORTING = 'EXPORT_REPORTING';\nexport const READ_FLAT_RATE = 'READ_FLAT_RATE';\n\nexport const EDIT_COMPANY_GROUP = 'EDIT_COMPANY_GROUP';\n\n\nexport const FEED_LIST_BIRTHDAY = 'FEED_LIST_BIRTHDAY';\nexport const FEED_LIST_SENIORITY = 'FEED_LIST_SENIORITY';\nexport const FEED_LIST_TRIAL = 'FEED_LIST_TRIAL';\nexport const FEED_LIST_START = 'FEED_LIST_START';\nexport const FEED_LIST_END = 'FEED_LIST_END';\nexport const FEED_LIST_END_ACTIVATED = 'FEED_LIST_END_ACTIVATED';\n\nexport const availableAccessRight = {\n salary: {\n title: \"Collaborateurs\",\n icon: 'bi bi-person',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_SALARY,\n description: \"Afficher les collaborateurs\",\n },\n {\n underscoreCase: LIST_SALARY_FILE,\n description: \"Accès à l'espace de stockage\",\n },\n {\n underscoreCase: LIST_SELF_SALARY_FILE,\n description: \"Accès à son propre espace de stockage\",\n },\n {\n underscoreCase: READ_FLAT_RATE,\n description: \"Afficher les taux horaires bruts\",\n },\n {\n underscoreCase: EDIT_SALARY,\n description: \"Ajouter/Modifier les collaborateurs\",\n },\n {\n underscoreCase: IMPORT_SALARY,\n description: \"Importer des collaborateurs\",\n },\n {\n underscoreCase: DELETE_SALARY,\n description: \"Supprimer les collaborateurs\",\n },\n ]\n },\n company: {\n title: \"Points de ventes\",\n icon: 'bi bi-shop',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_COMPANY,\n description: \"Afficher les points de ventes\",\n },\n {\n underscoreCase: EDIT_COMPANY,\n description: \"Ajouter/Modifier les points de ventes\",\n },\n {\n underscoreCase: DELETE_COMPANY,\n description: \"Supprimer les points de ventes\",\n },\n {\n underscoreCase: LIST_CUSTOMER_FLOW,\n description: \"Afficher le flux client\",\n },\n ]\n },\n job: {\n title: \"Métiers\",\n icon: 'bi bi-person-bounding-box',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_JOB,\n description: \"Afficher les métiers\",\n },\n {\n underscoreCase: EDIT_JOB,\n description: \"Ajouter/Modifier les métiers\",\n },\n {\n underscoreCase: DELETE_JOB,\n description: \"Supprimer les métiers\",\n },\n ]\n },\n localisation: {\n title: \"Localisations\",\n icon: 'bi bi-geo-alt',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_LOCALISATION,\n description: \"Afficher les localisations\",\n },\n {\n underscoreCase: EDIT_LOCALISATION,\n description: \"Ajouter/Modifier les localisations\",\n },\n {\n underscoreCase: DELETE_LOCALISATION,\n description: \"Supprimer les localisations\",\n },\n ]\n },\n activity: {\n title: \"Activités\",\n icon: 'bi bi-bookmark',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_ACTIVITY,\n description: \"Afficher les activités\",\n },\n {\n underscoreCase: EDIT_ACTIVITY,\n description: \"Ajouter/Modifier les activités\",\n },\n {\n underscoreCase: DELETE_ACTIVITY,\n description: \"Supprimer les activités\",\n },\n ]\n },\n booking: {\n title: \"Planning\",\n icon: 'bi bi-calendar-day',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_BOOKING,\n description: \"Afficher le planning général\",\n },\n {\n underscoreCase: LIST_SELF_BOOKING,\n description: \"Afficher son propre planning\",\n },\n {\n underscoreCase: SHOW_ABOVE_MAX_VISIBILITY_DATE,\n description: \"Afficher le planning au-delà de la date de visibilité\",\n },\n {\n underscoreCase: EDIT_BOOKING,\n description: \"Ajouter/Modifier les créneaux\",\n },\n {\n underscoreCase: DELETE_BOOKING,\n description: \"Supprimer les créneaux\",\n },\n {\n underscoreCase: PUBLISH_CALENDAR,\n description: \"Publier le planning\",\n },\n {\n underscoreCase: DOWNLOAD_CALENDAR,\n description: \"Télécharger le planning\",\n },\n ]\n },\n absence: {\n title: \"Absences\",\n icon: 'bi bi-calendar-x',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_ABSENCE,\n description: \"Afficher les absences\",\n },\n {\n underscoreCase: EDIT_ABSENCE,\n description: \"Ajouter/Modifier les absences\",\n },\n {\n underscoreCase: DELETE_ABSENCE,\n description: \"Supprimer les absences\",\n },\n {\n underscoreCase: REQUEST_ABSENCE,\n description: \"Demander les absences\",\n },\n {\n underscoreCase: VALIDATE_SELF_ABSENCE,\n description: \"Valider ses propres demandes d'absences\",\n },\n ]\n },\n expense: {\n title: \"Notes de frais\",\n icon: 'bi bi-cash',\n module: \"expense\",\n items :[\n {\n underscoreCase: LIST_EXPENSE,\n description: \"Afficher les notes de frais\",\n },\n {\n underscoreCase: EDIT_EXPENSE,\n description: \"Ajouter/Modifier les notes de frais\",\n },\n {\n underscoreCase: DELETE_EXPENSE,\n description: \"Supprimer les notes de frais\",\n },\n {\n underscoreCase: REQUEST_EXPENSE,\n description: \"Demander les notes de frais\",\n },\n ]\n },\n task: {\n title: \"Tâches\",\n icon: 'bi bi-journal',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_TASK_GROUP,\n description: \"Afficher toutes les tâches\",\n },\n {\n underscoreCase: LIST_SELF_TASK,\n description: \"Afficher ses propres tâches\",\n },\n {\n underscoreCase: EDIT_TASK_GROUP,\n description: \"Ajouter/Modifier les groupes de tâches\",\n },\n {\n underscoreCase: EDIT_TASK,\n description: \"Ajouter/Modifier les tâches\",\n },\n {\n underscoreCase: DELETE_TASK_GROUP,\n description: \"Supprimer les groupes de tâches\",\n }\n\n ]\n },\n template: {\n title: \"Templates\",\n icon: 'bi bi-front',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_TEMPLATE,\n description: \"Afficher les templates\",\n },\n {\n underscoreCase: EDIT_TEMPLATE,\n description: \"Ajouter/Modifier les templates\",\n },\n {\n underscoreCase: DELETE_TEMPLATE,\n description: \"Supprimer les templates\",\n },\n {\n underscoreCase: EDIT_TEMPLATE_APPLIED,\n description: \"Ajouter/Modifier les templates appliqués au planning\",\n },\n {\n underscoreCase: DELETE_TEMPLATE_APPLIED,\n description: \"Supprimer les templates appliqués au planning\",\n },\n ]\n },\n timeClock: {\n title: \"Badgeages\",\n icon: 'bi bi-person-badge',\n module: \"timeClock\",\n items :[\n {\n underscoreCase: LIST_TIME_CLOCK,\n description: \"Afficher tous les badgeages\",\n },\n {\n underscoreCase: LIST_SELF_TIME_CLOCK,\n description: \"Afficher ses propres badgeages\",\n },\n {\n underscoreCase: EDIT_TIME_CLOCK,\n description: \"Ajouter/Modifier les badgeages\",\n },\n {\n underscoreCase: DELETE_TIME_CLOCK,\n description: \"Supprimer les badgeages\",\n },\n {\n underscoreCase: CLOCK_IN_FROM_APP,\n description: \"Badger depuis l'application\",\n },\n ]\n },\n reporting: {\n title: \"Rapports\",\n icon: 'bi bi-file-check',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_REPORTING,\n description: \"Afficher les rapports\",\n },\n {\n underscoreCase: LIST_SELF_REPORTING,\n description: \"Afficher ses propres rapports\",\n },\n {\n underscoreCase: EXPORT_REPORTING,\n description: \"Exporter les rapports\",\n },\n ]\n },\n counter: {\n title: \"Compteurs\",\n icon: 'bi bi-bar-chart',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_COUNTER,\n description: \"Afficher tous les compteurs\",\n },\n {\n underscoreCase: LIST_SELF_COUNTER,\n description: \"Afficher son propre compteur\",\n },\n {\n underscoreCase: EDIT_COUNTER,\n description: \"Ajouter/Modifier les compteurs\",\n },\n {\n underscoreCase: DELETE_COUNTER,\n description: \"Supprimer les compteurs\",\n }\n ]\n },\n accessLevel: {\n title: \"Droits d'accès\",\n icon: \"bi bi-shield\",\n module: \"\",\n items :[\n {\n underscoreCase: LIST_ACCESS_LEVEL,\n description: \"Afficher les droits d'accès\",\n },\n {\n underscoreCase: EDIT_ACCESS_LEVEL,\n description: \"Ajouter/Modifier les droits d'accès\",\n },\n {\n underscoreCase: DELETE_ACCESS_LEVEL,\n description: \"Supprimer les droits d'accès\",\n }\n ]\n },\n team: {\n title: \"Équipes\",\n icon: \"bi bi-people\",\n module: \"team\",\n items :[\n {\n underscoreCase: LIST_TEAM,\n description: \"Afficher les équipes\",\n },\n {\n underscoreCase: EDIT_TEAM,\n description: \"Ajouter/Modifier les équipes\",\n },\n {\n underscoreCase: DELETE_TEAM,\n description: \"Supprimer les équipes\",\n }\n ]\n },\n settings: {\n title: \"Réglages\",\n icon: \"bi bi-gear\",\n module: \"\",\n items :[\n {\n underscoreCase: EDIT_COMPANY_GROUP,\n description: \"Afficher/modifier les réglages globaux\",\n },\n ]\n },\n channel: {\n title: \"Messagerie\",\n icon: \"bi bi-envelope\",\n module: \"\",\n items :[\n {\n underscoreCase: LIST_CHANNEL,\n description: \"Accéder à la messagerie\",\n },\n {\n underscoreCase: EDIT_CHANNEL,\n description: \"Créer des discussions\",\n },\n {\n underscoreCase: DELETE_CHANNEL,\n description: \"Archiver les discussions\",\n }\n ]\n },\n feed: {\n title: \"Actualités\",\n icon: \"bi bi-journal-text\",\n module: \"\",\n items :[\n {\n underscoreCase: FEED_LIST_BIRTHDAY,\n description: \"Lister les dates anniversaires\",\n },\n {\n underscoreCase: FEED_LIST_SENIORITY,\n description: \"Lister les seuils d'ancienneté\",\n },\n {\n underscoreCase: FEED_LIST_TRIAL,\n description: \"Lister les fins de période d'essai\",\n },\n {\n underscoreCase: FEED_LIST_START,\n description: \"Lister les dates de début de contrat\",\n },\n {\n underscoreCase: FEED_LIST_END,\n description: \"Lister les dates de fin de contrat\",\n },\n {\n underscoreCase: FEED_LIST_END_ACTIVATED,\n description: \"Lister les collaborateurs avec un compte actif qui ont fini leur contrat\",\n }\n ]\n },\n bookingOffer: {\n title: \"Offres de créneaux\",\n icon: \"bi bi-calendar-plus\",\n module: \"bookingOffer\",\n items :[\n {\n underscoreCase: LIST_BOOKING_OFFER,\n description: \"Afficher les offres de créneaux\",\n },\n {\n underscoreCase: EDIT_BOOKING_OFFER,\n description: \"Ajouter/Modifier les offres de créneaux\",\n },\n {\n underscoreCase: DELETE_BOOKING_OFFER,\n description: \"Supprimer les offres de créneaux\",\n },\n {\n underscoreCase: APPLY_BOOKING_OFFER,\n description: \"Postuler aux offres de créneaux\",\n },\n ]\n },\n document: {\n title: \"Documents\",\n icon: \"bi bi-file-earmark\",\n module: \"document\",\n items :[\n {\n underscoreCase: LIST_DOCUMENT,\n description: \"Afficher\",\n },\n {\n underscoreCase: EDIT_DOCUMENT,\n description: \"Ajouter/Modifier\",\n },\n {\n underscoreCase: DELETE_DOCUMENT,\n description: \"Supprimer\",\n },\n ]\n },\n keepNotes: {\n title: \"Notes\",\n icon: \"bi bi-file-earmark\",\n module: \"\",\n items :[\n {\n underscoreCase: LIST_KEEP_NOTE,\n description: \"Afficher\",\n },\n {\n underscoreCase: EDIT_KEEP_NOTE,\n description: \"Ajouter/Modifier\",\n },\n {\n underscoreCase: DELETE_KEEP_NOTE,\n description: \"Supprimer\",\n },\n ]\n },\n}\n\nexport const ManagerAccessRights = {\n booking: {\n title: \"Planning\",\n icon: 'bi bi-calendar-day',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_BOOKING,\n description: \"Afficher le planning\",\n },\n {\n underscoreCase: EDIT_BOOKING,\n description: \"Ajouter/Modifier les créneaux\",\n },\n {\n underscoreCase: DELETE_BOOKING,\n description: \"Supprimer les créneaux\",\n },\n ]\n },\n absence: {\n title: \"Absences\",\n icon: 'bi bi-calendar-x',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_ABSENCE,\n description: \"Afficher les absences\",\n },\n {\n underscoreCase: EDIT_ABSENCE,\n description: \"Ajouter/Modifier les absences\",\n },\n {\n underscoreCase: DELETE_ABSENCE,\n description: \"Supprimer les absences\",\n }\n ]\n },\n expense: {\n title: \"Notes de frais\",\n icon: 'bi bi-cash',\n module: \"expense\",\n items :[\n {\n underscoreCase: LIST_EXPENSE,\n description: \"Afficher les notes de frais\",\n },\n {\n underscoreCase: EDIT_EXPENSE,\n description: \"Ajouter/Modifier les notes de frais\",\n },\n {\n underscoreCase: DELETE_EXPENSE,\n description: \"Supprimer les notes de frais\",\n }\n ]\n },\n task: {\n title: \"Tâches\",\n icon: 'bi bi-journal',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_TASK_GROUP,\n description: \"Afficher toutes les tâches\",\n },\n {\n underscoreCase: EDIT_TASK_GROUP,\n description: \"Ajouter/Modifier les groupes de tâches\",\n },\n {\n underscoreCase: EDIT_TASK,\n description: \"Ajouter/Modifier les tâches\",\n },\n\n ]\n },\n timeClock: {\n title: \"Badgeages\",\n icon: 'bi bi-person-badge',\n module: \"timeClock\",\n items :[\n {\n underscoreCase: LIST_TIME_CLOCK,\n description: \"Afficher tous les badgeages\",\n },\n {\n underscoreCase: EDIT_TIME_CLOCK,\n description: \"Ajouter/Modifier les badgeages\",\n },\n {\n underscoreCase: DELETE_TIME_CLOCK,\n description: \"Supprimer les badgeages\",\n },\n ]\n },\n reporting: {\n title: \"Rapports\",\n icon: 'bi bi-file-check',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_REPORTING,\n description: \"Afficher les rapports\",\n },\n {\n underscoreCase: EXPORT_REPORTING,\n description: \"Exporter les rapports\",\n },\n ]\n },\n counter: {\n title: \"Compteurs\",\n icon: 'bi bi-bar-chart',\n module: \"\",\n items :[\n {\n underscoreCase: LIST_COUNTER,\n description: \"Afficher tous les compteurs\",\n },\n {\n underscoreCase: EDIT_COUNTER,\n description: \"Ajouter/Modifier les compteurs\",\n },\n {\n underscoreCase: DELETE_COUNTER,\n description: \"Supprimer les compteurs\",\n }\n ]\n },\n bookingOffer: {\n title: \"Offres de créneaux\",\n icon: \"bi bi-calendar-plus\",\n module: \"bookingOffer\",\n items :[\n {\n underscoreCase: LIST_BOOKING_OFFER,\n description: \"Afficher les offres de créneaux\",\n },\n {\n underscoreCase: EDIT_BOOKING_OFFER,\n description: \"Ajouter/Modifier les offres de créneaux\",\n },\n {\n underscoreCase: DELETE_BOOKING_OFFER,\n description: \"Supprimer les offres de créneaux\",\n },\n ]\n },\n billing: {\n title: \"Facturation\",\n icon: \"bi bi-cart\",\n module: \"billing\",\n items :[\n {\n underscoreCase: HANDLE_BILLING,\n description: \"Gérer la facturation (sourscrire aux abonnements, accèder aux factures)\",\n },\n ]\n },\n}\nexport const getAllManagerRights = () => [\n LIST_BOOKING,\n EDIT_BOOKING,\n DELETE_BOOKING,\n LIST_ABSENCE,\n EDIT_ABSENCE,\n DELETE_ABSENCE,\n LIST_EXPENSE,\n EDIT_EXPENSE,\n DELETE_EXPENSE,\n LIST_TASK_GROUP,\n EDIT_TASK_GROUP,\n EDIT_TASK,\n LIST_TIME_CLOCK,\n EDIT_TIME_CLOCK,\n DELETE_TIME_CLOCK,\n LIST_REPORTING,\n EXPORT_REPORTING,\n LIST_COUNTER,\n EDIT_COUNTER,\n DELETE_COUNTER,\n LIST_BOOKING_OFFER,\n EDIT_BOOKING_OFFER,\n DELETE_BOOKING_OFFER,\n]\n\nexport function getAvailableRightsWithoutSubject()\n{\n return [\n DOWNLOAD_CALENDAR,\n PUBLISH_CALENDAR,\n LIST_SALARY,\n LIST_BOOKING_OFFER,\n LIST_BOOKING,\n LIST_SELF_BOOKING,\n LIST_TIME_CLOCK,\n LIST_COMPANY,\n LIST_JOB,\n LIST_LOCALISATION,\n LIST_ABSENCE,\n LIST_TASK_GROUP,\n LIST_SELF_TASK,\n LIST_SELF_TIME_CLOCK,\n LIST_SELF_COUNTER,\n LIST_KEEP_NOTE,\n LIST_TEMPLATE,\n LIST_ACTIVITY,\n LIST_COUNTER,\n LIST_REPORTING,\n LIST_ACCESS_LEVEL,\n LIST_CUSTOMER_FLOW,\n LIST_CHANNEL,\n CLOCK_IN_FROM_APP,\n REQUEST_ABSENCE,\n READ_FLAT_RATE,\n IMPORT_SALARY,\n FEED_LIST_BIRTHDAY,\n FEED_LIST_SENIORITY,\n FEED_LIST_TRIAL,\n FEED_LIST_START,\n FEED_LIST_END,\n FEED_LIST_END_ACTIVATED,\n LIST_DOCUMENT,\n LIST_TEAM,\n LIST_EXPENSE,\n REQUEST_EXPENSE,\n ];\n}","import * as accessRights from \"../../../constants/accessRight\";\nimport * as models from \"../../../models/absence\";\nimport * as constants from \"../../../constants/absence\";\nimport {User} from \"../../../models/auth\";\nimport {Salary} from \"../../../models/salary\";\nimport accessRightChecker from \"../../accessRightChecker\";\n\nclass AbsenceVoter {\n\n static supports(right: string, object?: models.Absence)\n {\n return [\n accessRights.LIST_ABSENCE,\n accessRights.EDIT_ABSENCE,\n accessRights.REQUEST_ABSENCE,\n accessRights.DELETE_ABSENCE,\n accessRights.EDIT_ABSENCE_FILE,\n ].includes(right) && object\n }\n\n voteOnAttribute(right: string, object: models.Absence, user: User){\n\n let currentSalary = user.currentSalary;\n\n if (!currentSalary){\n return false;\n }\n\n switch (right){\n case accessRights.EDIT_ABSENCE_FILE:\n case accessRights.EDIT_ABSENCE:\n return this.canEdit(currentSalary, object)\n case accessRights.LIST_ABSENCE:\n return this.canList(currentSalary, object)\n default:\n return accessRightChecker.grantedFor(right, object.salary.id)\n }\n }\n\n canEdit(salary: Salary, absence: models.Absence){\n\n if (absence.salary.id === salary.id && !accessRightChecker.granted(accessRights.VALIDATE_SELF_ABSENCE))\n {\n return false;\n }\n\n if (accessRightChecker.grantedFor(accessRights.EDIT_ABSENCE, absence.salary.id)){\n return true;\n }\n\n return accessRightChecker.granted(accessRights.VALIDATE_SELF_ABSENCE) && salary.id === absence.salary.id;\n }\n\n canList(salary: Salary, absence: models.Absence)\n {\n if (accessRightChecker.grantedFor(accessRights.LIST_ABSENCE, absence.salary.id)){\n return true;\n }\n\n return accessRightChecker.hasGlobalRight(accessRights.REQUEST_ABSENCE) && absence.salary.id === salary.id;\n }\n}\n\nexport default AbsenceVoter;","import * as accessRights from \"../../../constants/accessRight\";\nimport * as models from \"../../../models/event/offer\";\nimport {User} from \"../../../models/auth\";\nimport accessRightChecker from \"../../accessRightChecker\";\nimport AccessRightChecker from \"../../accessRightChecker\";\n\nclass EventOfferVoter {\n\n static supports(right: string, object?: models.EventOffer)\n {\n return [\n accessRights.LIST_BOOKING_OFFER,\n accessRights.EDIT_BOOKING_OFFER,\n accessRights.DELETE_BOOKING_OFFER,\n accessRights.APPLY_BOOKING_OFFER,\n ].includes(right) && object\n }\n\n voteOnAttribute(right: string, object: models.EventOffer, user: User){\n\n let currentSalary = user.currentSalary;\n\n if (!currentSalary){\n return false;\n }\n\n switch (right){\n case accessRights.APPLY_BOOKING_OFFER:\n return AccessRightChecker.hasGlobalRight(right) && object.salaries.map(s => s.id).includes(currentSalary.id);\n case accessRights.LIST_BOOKING_OFFER:\n return AccessRightChecker.hasGlobalRight(right) || object.salaries.map(s => s.id).includes(currentSalary.id);\n default:\n return accessRightChecker.grantedForMany(right, object.salaries.map(s => s.id))\n }\n }\n}\n\nexport default EventOfferVoter;","export const ADD_EXPENSE = 'ADD_EXPENSE';\nexport const ADD_EXPENSE_SUCCESS = 'ADD_EXPENSE_SUCCESS';\nexport const ADD_EXPENSE_FAILURE = 'ADD_EXPENSE_FAILURE';\n\nexport const EDIT_EXPENSE = 'EDIT_EXPENSE';\nexport const EDIT_EXPENSE_SUCCESS = 'EDIT_EXPENSE_SUCCESS';\nexport const EDIT_EXPENSE_FAILURE = 'EDIT_EXPENSE_FAILURE';\n\nexport const FETCH_EXPENSES = 'FETCH_EXPENSES';\nexport const FETCH_EXPENSES_SUCCESS = 'FETCH_EXPENSES_SUCCESS';\nexport const FETCH_EXPENSES_FAILURE = 'FETCH_EXPENSES_FAILURE';\n\nexport const SHOW_EXPENSE = 'SHOW_EXPENSE';\nexport const SHOW_EXPENSE_SUCCESS = 'SHOW_EXPENSE_SUCCESS';\nexport const SHOW_EXPENSE_FAILURE = 'SHOW_EXPENSE_FAILURE';\n\nexport const CANCEL_EXPENSE_SUCCESS = 'CANCEL_EXPENSE_SUCCESS';\n\nexport const TYPE_MEAL = 1;\nexport const TYPE_TRANSPORT = 2;\nexport const TYPE_HOTEL = 3;\nexport const TYPE_EQUIPMENT = 4;\nexport const TYPE_SERVICE = 5;\nexport const TYPE_MILEAGE = 6;\nexport const TYPE_ELSE = 7;\n\nexport const STATUS_PENDING = 1;\nexport const STATUS_ACCEPTED = 2;\nexport const STATUS_REFUSED = 3;\n\nexport const STATUS_NAMES: any = {\n 1: 'En attente',\n 2: 'Acceptée',\n 3: 'Refusée'\n};\n\nexport const getStatusChoices = () => {\n return [\n {value: STATUS_ACCEPTED, label: STATUS_NAMES[STATUS_ACCEPTED]},\n {value: STATUS_REFUSED, label: STATUS_NAMES[STATUS_REFUSED]},\n {value: STATUS_PENDING, label: STATUS_NAMES[STATUS_PENDING]},\n ]\n}\n\nexport const getStatusChoice = (status: number) => {\n return getStatusChoices().find(c => c.value === status)\n}\n\nexport const getStatusIcon = (status: number) => {\n switch (status){\n case 1:\n return 'bi bi-clock-history text-warning'\n case 2:\n return 'bi bi-check-circle text-success'\n case 3:\n return 'bi bi-x-circle text-danger'\n }\n}\n\nexport const TYPE_NAMES: any = {\n 1: 'Repas',\n 2: 'Transport',\n 3: 'Hotel/Hébergement',\n 4: 'Équipement',\n 5: 'Service',\n 6: 'Frais kilométrique',\n 7: 'Autre',\n};\n\nexport const getTypeChoices = () => {\n return [\n {value: TYPE_MEAL, label: TYPE_NAMES[TYPE_MEAL]},\n {value: TYPE_TRANSPORT, label: TYPE_NAMES[TYPE_TRANSPORT]},\n {value: TYPE_HOTEL, label: TYPE_NAMES[TYPE_HOTEL]},\n {value: TYPE_EQUIPMENT, label: TYPE_NAMES[TYPE_EQUIPMENT]},\n {value: TYPE_SERVICE, label: TYPE_NAMES[TYPE_SERVICE]},\n {value: TYPE_MILEAGE, label: TYPE_NAMES[TYPE_MILEAGE]},\n {value: TYPE_ELSE, label: TYPE_NAMES[TYPE_ELSE]},\n ]\n}\nexport const getTypeChoice = (type: number) => {\n return getTypeChoices().find(c => c.value === type)\n}\n\nexport const getCurrencyChoices = () => {\n return [\n {value: 1, label: \"EUR (€)\"}\n ]\n}\n\nexport const VEHICLE_ENGINE_THERMAL = 1;\nexport const VEHICLE_ENGINE_ELECTRIC = 2;\n\nexport const VEHICLE_CAR = 1;\nexport const VEHICLE_MOTORCYCLE = 2;\nexport const VEHICLE_MOPED = 3;\nexport const VEHICLE_BIKE = 4;\n\n\nexport const VEHICLE_NAMES: any = {\n 1: 'Automobile',\n 2: 'Motocyclette',\n 3: 'Cyclomoteur',\n 4: 'Vélo'\n};\n\n\nexport const getVehicleChoices = () => {\n return [\n {value: 1, label: VEHICLE_NAMES[VEHICLE_CAR]},\n {value: 2, label: VEHICLE_NAMES[VEHICLE_MOTORCYCLE]},\n {value: 3, label: VEHICLE_NAMES[VEHICLE_MOPED]},\n {value: 4, label: VEHICLE_NAMES[VEHICLE_BIKE]},\n ]\n}\n\nexport const getVehicleChoice = (vehicle: number) => {\n return getVehicleChoices().find(c => c.value === vehicle)\n}\n\nexport const VEHICLE_CAR_POWER_3 = 1;\nexport const VEHICLE_CAR_POWER_4 = 2;\nexport const VEHICLE_CAR_POWER_5 = 3;\nexport const VEHICLE_CAR_POWER_6 = 4;\nexport const VEHICLE_CAR_POWER_7 = 5;\n\nexport const VEHICLE_CAR_POWER_NAMES: any = {\n 1: '3 CV et -',\n 2: '4 CV',\n 3: '5 CV',\n 4: '6 CV',\n 5: '7 CV et +',\n};\n\nexport const VEHICLE_MOTORCYCLE_POWER_2 = 1;\nexport const VEHICLE_MOTORCYCLE_POWER_5 = 2;\nexport const VEHICLE_MOTORCYCLE_POWER_5_AND_MORE = 3;\n\nexport const VEHICLE_MOTORCYCLE_POWER_NAMES: any = {\n 1: '1 à 2 CV',\n 2: '3 à 4 CV',\n 3: '5 CV et +',\n};\n\nexport const getVehiclePowerChoices = (vehicle: number) => {\n\n switch (vehicle)\n {\n case VEHICLE_CAR:\n return [\n {value: VEHICLE_CAR_POWER_3, label: VEHICLE_CAR_POWER_NAMES[VEHICLE_CAR_POWER_3]},\n {value: VEHICLE_CAR_POWER_4, label: VEHICLE_CAR_POWER_NAMES[VEHICLE_CAR_POWER_4]},\n {value: VEHICLE_CAR_POWER_5, label: VEHICLE_CAR_POWER_NAMES[VEHICLE_CAR_POWER_5]},\n {value: VEHICLE_CAR_POWER_6, label: VEHICLE_CAR_POWER_NAMES[VEHICLE_CAR_POWER_6]},\n {value: VEHICLE_CAR_POWER_7, label: VEHICLE_CAR_POWER_NAMES[VEHICLE_CAR_POWER_7]},\n ]\n case VEHICLE_MOTORCYCLE:\n return [\n {value: VEHICLE_MOTORCYCLE_POWER_2, label: VEHICLE_MOTORCYCLE_POWER_NAMES[VEHICLE_MOTORCYCLE_POWER_2]},\n {value: VEHICLE_MOTORCYCLE_POWER_5, label: VEHICLE_MOTORCYCLE_POWER_NAMES[VEHICLE_MOTORCYCLE_POWER_5]},\n {value: VEHICLE_MOTORCYCLE_POWER_5_AND_MORE, label: VEHICLE_MOTORCYCLE_POWER_NAMES[VEHICLE_MOTORCYCLE_POWER_5_AND_MORE]},\n ]\n }\n\n return []\n}\n\nexport const getVehiclePowerChoice = (vehicle: number, vehiclePower: number) => {\n return getVehiclePowerChoices(vehicle).find(c => c.value === vehiclePower)\n}\n\nexport const getVehiclePowerName = (vehicle: number, vehiclePower: number) => {\n\n switch (vehicle)\n {\n case VEHICLE_CAR:\n return VEHICLE_CAR_POWER_NAMES[vehiclePower]\n case VEHICLE_MOTORCYCLE:\n return VEHICLE_MOTORCYCLE_POWER_NAMES[vehiclePower]\n }\n\n return \"\"\n}","import * as accessRights from \"../../../constants/accessRight\";\nimport * as models from \"../../../models/expense\";\nimport * as constants from \"../../../constants/expense\";\nimport {User} from \"../../../models/auth\";\nimport {Salary} from \"../../../models/salary\";\nimport accessRightChecker from \"../../accessRightChecker\";\n\nclass ExpenseVoter {\n\n static supports(right: string, object?: models.Expense)\n {\n return [\n accessRights.LIST_EXPENSE,\n accessRights.EDIT_EXPENSE,\n accessRights.DELETE_EXPENSE,\n ].includes(right) && object\n }\n\n voteOnAttribute(right: string, object: models.Expense, user: User){\n\n let currentSalary = user.currentSalary;\n\n if (!currentSalary){\n return false;\n }\n\n switch (right){\n case accessRights.EDIT_EXPENSE:\n return this.canEdit(currentSalary, object)\n case accessRights.LIST_EXPENSE:\n return this.canList(currentSalary, object)\n default:\n return accessRightChecker.grantedFor(right, object.salary.id)\n }\n }\n\n canEdit(salary: Salary, expense: models.Expense){\n if (accessRightChecker.grantedFor(accessRights.EDIT_EXPENSE, expense.salary.id)){\n return true;\n }\n\n return accessRightChecker.hasGlobalRight(accessRights.REQUEST_EXPENSE) && salary.id === expense.salary.id && expense.status === constants.STATUS_PENDING;\n }\n\n canList(salary: Salary, expense: models.Expense)\n {\n if (accessRightChecker.grantedFor(accessRights.LIST_EXPENSE, expense.salary.id)){\n return true;\n }\n\n return accessRightChecker.hasGlobalRight(accessRights.REQUEST_EXPENSE) && expense.salary.id === salary.id;\n }\n}\n\nexport default ExpenseVoter;","import * as accessRights from \"../../../constants/accessRight\";\nimport * as models from \"../../../models/task\";\nimport {User} from \"../../../models/auth\";\nimport accessRightChecker from \"../../accessRightChecker\";\n\nclass TaskVoter {\n\n static supports(right: string, object?: models.Task)\n {\n return [\n accessRights.EDIT_TASK,\n ].includes(right) && object\n }\n\n voteOnAttribute(right: string, object: models.Task, user: User){\n\n let currentSalary = user.currentSalary;\n\n if (!currentSalary){\n return false;\n }\n\n return accessRightChecker.grantedForMany(right, object.salaries.map(s => s.id))\n }\n}\n\nexport default TaskVoter;","import Voter from \"../voter\";\nimport {User} from \"../../models/auth\";\nimport AccessRightChecker from \"../accessRightChecker\";\nimport * as accessRights from \"../../constants/accessRight\";\nimport AbsenceVoter from \"../voter/absence\";\nimport getUser from \"../getUser\";\nimport EventOfferVoter from \"../voter/eventOffer\";\nimport ExpenseVoter from \"../voter/expense\";\nimport TaskVoter from \"../voter/task\";\n\nexport const Granted = (right: string, salary?: number, object?: any) => {\n let storage = localStorage.getItem('user')\n\n if (storage){\n let user: User = JSON.parse(storage)\n \n if (!user.currentSalary){\n return false;\n }\n\n if (AccessRightChecker.hasGlobalRight(right)){\n return true;\n }\n\n if (salary){\n return AccessRightChecker.grantedFor(right, salary);\n }else if(!object){\n\n if (AccessRightChecker.hasManagerRight(right)){\n return true;\n }\n\n switch (right)\n {\n case \"HAS_ACCOUNT\":\n return true;\n case accessRights.LIST_ABSENCE:\n return AccessRightChecker.hasGlobalRight(accessRights.REQUEST_ABSENCE);\n case accessRights.LIST_EXPENSE:\n return AccessRightChecker.hasGlobalRight(accessRights.REQUEST_EXPENSE);\n case accessRights.LIST_BOOKING_OFFER:\n return AccessRightChecker.hasGlobalRight(accessRights.EDIT_EXPENSE);\n case accessRights.LIST_TASK_GROUP:\n return AccessRightChecker.hasGlobalRight(accessRights.LIST_SELF_TASK);\n case accessRights.LIST_TIME_CLOCK:\n return AccessRightChecker.hasGlobalRight(accessRights.LIST_SELF_TIME_CLOCK);\n case accessRights.LIST_COUNTER:\n return AccessRightChecker.hasGlobalRight(accessRights.LIST_SELF_COUNTER);\n case accessRights.LIST_REPORTING:\n return AccessRightChecker.hasGlobalRight(accessRights.LIST_SELF_REPORTING);\n case accessRights.CLOCK_IN_FROM_APP:\n return user.currentSalary.settings.timeClockFromApp;\n }\n }else if(object){\n\n if (AbsenceVoter.supports(right, object)){\n return new AbsenceVoter().voteOnAttribute(right, object, getUser())\n }else if (EventOfferVoter.supports(right, object)){\n return new EventOfferVoter().voteOnAttribute(right, object, getUser())\n }else if (ExpenseVoter.supports(right, object)){\n return new ExpenseVoter().voteOnAttribute(right, object, getUser())\n }else if (TaskVoter.supports(right, object)){\n return new TaskVoter().voteOnAttribute(right, object, getUser())\n }\n\n return false;\n }\n\n return false;\n }\n\n return false;\n}\n\nexport const GrantedAny = (rights: string[], salary?: number) => {\n\n for (let i in rights){\n if (Granted(rights[i], salary)){\n return true;\n }\n }\n\n return false;\n}\n\nexport const GrantedMany = (rights: string[], salary?: number) => {\n\n for (let i in rights){\n if (!Granted(rights[i], salary)){\n return false;\n }\n }\n\n return true;\n}","import {RootStateOrAny, useSelector} from \"react-redux\";\nimport React from \"react\";\nimport {Redirect, Route, useLocation} from \"react-router-dom\";\nimport {GrantedAny} from \"../../security/granted\";\n\nexport const GuestRoute = ({component, ...rest}: any) => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n\n const routeComponent = (props: any) => (\n !isAuthenticated\n ? React.createElement(component, props)\n : \n );\n return ;\n};\n\nexport const AdminRoute = ({component, rights, ...rest}: any) => {\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n const location = useLocation();\n\n const RouteComponent = (props: any) => {\n if (!isAuthenticated){\n localStorage.setItem('next_route', location.pathname);\n return \n }else if (!state.auth.initialUser.roles.includes('ROLE_SUPER_ADMIN')) {\n return \n }else{\n return React.createElement(component, props)\n }\n }\n\n return ;\n}\n\nexport const PrivateRoute = ({component, rights, ...rest}: any) => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n const hasCurrentSalary = !!state.auth.user?.currentSalary;\n const hasCurrentCompany = !!state.auth.user?.currentSalary?.companies.length;\n const location = useLocation();\n\n const RouteComponent = (props: any) => {\n if (!isAuthenticated){\n localStorage.setItem('next_route', location.pathname);\n return \n }else if (rights && !GrantedAny(rights)) {\n return \n }else if (hasCurrentSalary && !hasCurrentCompany){\n return \n }else if (hasCurrentSalary){\n return React.createElement(component, props)\n }else{\n localStorage.setItem('next_route', location.pathname);\n return \n }\n }\n\n return ;\n};\n\nexport const PrivateRouteWithoutCompany = ({component, rights, ...rest}: any) => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n const hasCurrentSalary = !!state.auth.user?.currentSalary;\n const hasCurrentCompany = !!state.auth.user?.currentSalary?.companies.length;\n const location = useLocation();\n\n const RouteComponent = (props: any) => {\n if (!isAuthenticated){\n localStorage.setItem('next_route', location.pathname);\n return \n }else if (rights && !GrantedAny(rights)) {\n return \n }else if (hasCurrentSalary && !hasCurrentCompany){\n localStorage.setItem('next_route', location.pathname);\n return React.createElement(component, props)\n }else{\n return \n }\n }\n\n return ;\n};\n\nexport const PrivateRouteWithoutAccount = ({component, ...rest}: any) => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n const hasCurrentSalary = !!state.auth.user?.currentSalary;\n\n const RouteComponent = (props: any) => {\n if (!isAuthenticated){\n return \n }else if (!hasCurrentSalary){\n return React.createElement(component, props)\n }else{\n return \n }\n }\n\n return ;\n};\n\nexport const PrivateRouteAny = ({component, ...rest}: any) => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const isAuthenticated = !!state.auth.token;\n\n const RouteComponent = (props: any) => {\n if (isAuthenticated){\n return \n }else{\n return React.createElement(component, props)\n }\n }\n\n return ;\n};","export const MERCURE_PUBLIC_URL = \"https://hub.sivan.io:3000/.well-known/mercure\";\nexport const API_DEV_URl = \"http://127.0.0.1:8000/api/\"\nexport const API_DEV_LOCAL_URl = \"http://192.168.1.174:8000/api/\"\nexport const API_PROD_URl = \"https://api.sivan.io/api/\"\nexport const CHANNEL_SUBSCRIBER = \"https://api.sivan.io/api/channel/listen/\";\nexport const JWT = \"eyJhbGciOiJIUzI1NiJ9.eyJtZXJjdXJlIjp7InB1Ymxpc2giOlsiKiJdLCJzdWJzY3JpYmUiOlsiKiJdfX0.pm8JV4wLrO1hs-aJtu6LhZfbbOb6Nqk8xIgw7kr4K6I\"\nexport const PAGINATION = 20;\n\n\nexport const CURRENCY_EUR = 1;\n\nexport const CURRENCY_NAMES: any = {\n 1: 'EUR (€)'\n}\n\nexport const getCurrencyChoices = () => {\n return [\n {value: CURRENCY_EUR, label: CURRENCY_NAMES[CURRENCY_EUR]}\n ]\n}\nexport const getCurrencyChoice = (currency: number) => {\n return getCurrencyChoices().find(c => c.value === currency)\n}\n\nexport const CurrencyIcon = (currency: number) => {\n switch (currency){\n case CURRENCY_EUR:\n return \n }\n\n return <>\n}\n\nexport const getDayOptions = () => [\n {label: 'Lundi', value: '1'},\n {label: 'Mardi', value: '2'},\n {label: 'Mercredi', value: '3'},\n {label: 'Jeudi', value: '4'},\n {label: 'Vendredi', value: '5'},\n {label: 'Samedi', value: '6'},\n {label: 'Dimanche', value: '7'},\n ]\n\nexport const getTemplateDayOptions = () => [\n {label: 'Lun.', value: '1', dt: new Date('2021-10-04 00:00:00')},\n {label: 'Mar.', value: '2', dt: new Date('2021-10-05 00:00:00')},\n {label: 'Mer.', value: '3', dt: new Date('2021-10-06 00:00:00')},\n {label: 'Jeu.', value: '4', dt: new Date('2021-10-07 00:00:00')},\n {label: 'Ven.', value: '5', dt: new Date('2021-10-08 00:00:00')},\n {label: 'Sam.', value: '6', dt: new Date('2021-10-09 00:00:00')},\n {label: 'Dim.', value: '0', dt: new Date('2021-10-10 00:00:00')},\n ]\n\nexport const getDayOption = (d: string) => getDayOptions().find(o => o.value === d);\nexport const getTemplateDayOption = (d: string) => getTemplateDayOptions().find(o => o.value === d);\n\nexport const getMonthOptions = () => [\n {label: 'Janvier', value: '1'},\n {label: 'Fevrier', value: '2'},\n {label: 'Mars', value: '3'},\n {label: 'Avril', value: '4'},\n {label: 'Mai', value: '5'},\n {label: 'Juin', value: '6'},\n {label: 'Juillet', value: '7'},\n {label: 'Aout', value: '8'},\n {label: 'Septembre', value: '9'},\n {label: 'Octobre', value: '10'},\n {label: 'Novembre', value: '11'},\n {label: 'Décembre', value: '12'},\n ]\n\nexport const getMonthOption = (d: string) => getMonthOptions().find(o => o.value === d);\n\nexport function getISOWeeks(y: number) {\n let d,\n isLeap;\n\n d = new Date(y, 0, 1);\n isLeap = new Date(y, 1, 29).getMonth() === 1;\n\n return d.getDay() === 4 || isLeap && d.getDay() === 3 ? 53 : 52\n}\n\n\nexport const range = (start: number, end: number) => {\n let ret = []\n for (let i = start; i <= end; i++){\n ret.push(i)\n }\n return ret;\n}","import Axios, {ResponseType} from \"axios\";\nimport {API_DEV_LOCAL_URl, API_DEV_URl, API_PROD_URl} from \"../../constants/global\";\nimport {User} from \"../../models/auth\";\n\nexport const MULTIPART_FORM_DATA = 'MULTIPART_FORM_DATA';\nexport const APPLICATION_PDF = 'application/pdf';\nexport const SWITCH_USER = 'x-switch-user';\nexport const DISABLED_SWITCH = 'DISABLED_SWITCH';\n\nconst headers = (additionalHeaders?: string[]) => {\n\n const ret = {\n 'Content-Type': 'application/json',\n }\n\n const token = localStorage.getItem('token')\n\n if (additionalHeaders){\n for (let i = 0; i < additionalHeaders.length; i++){\n switch (additionalHeaders[i]){\n case MULTIPART_FORM_DATA:\n Object.assign(ret, {'Content-Type': 'multipart/form-data'})\n break;\n case DISABLED_SWITCH:\n break;\n case APPLICATION_PDF:\n Object.assign(ret, {'ACCEPT': 'application/pdf'})\n break;\n default:\n Object.assign(ret, JSON.parse(additionalHeaders[i]))\n break;\n }\n }\n }\n\n if (localStorage.getItem('impersonated') && !ret.hasOwnProperty(SWITCH_USER) && !additionalHeaders?.includes(DISABLED_SWITCH)){\n let impersonated: User = JSON.parse(localStorage.getItem('impersonated')!)\n Object.assign(ret, {'x-switch-user': impersonated.email})\n }\n\n if (token){\n Object.assign(ret, {'Authorization': 'Bearer ' + token})\n }\n\n return ret;\n}\n\nexport interface Options {\n headers?: string[]\n responseType?: ResponseType,\n timeout?: number,\n signal?: AbortSignal\n}\n\nconst instance = (options?: Options) => {\n return Axios.create({\n baseURL: API_PROD_URl,\n headers : headers(options?.headers),\n responseType: options?.responseType,\n timeout: options?.timeout,\n transformResponse: [function (data) {\n if (isJson(data))\n return JSON.parse(data);\n return data\n }],\n })\n}\n\nfunction isJson(str: string) {\n try {\n JSON.parse(str);\n } catch (e) {\n return false;\n }\n return true;\n}\n\nexport function get(url: string, options?:Options){\n\n const api = instance(options);\n return api.get(url, {\n signal: options?.signal,\n });\n}\n\nexport function post(url: string, requestData:object, options?:Options){\n\n const api = instance(options);\n return api.post(url, requestData, {\n signal: options?.signal\n });\n}","import {post, get, DISABLED_SWITCH} from \"../xhr\";\nimport * as models from \"../../models/auth\";\n\nexport function login(requestData: models.userLogin){\n return post('login_check', requestData);\n}\n\nexport function register(requestData: models.AdminRegister){\n return post('auth/register', requestData);\n}\n\nexport function confirm(token: string){\n return get('auth/confirmation/' + token);\n}\n\nexport function tokenExist(token: string){\n return get('auth/confirmation/token/' + token);\n}\n\nexport function password(requestData: {password: string, repeatPassword: string, previousPassword: string}){\n return post('auth/password', requestData);\n}\n\nexport function passwordReset(requestData: {password: string, repeatPassword: string, code: string, email: string}){\n return post('auth/password/reset', requestData);\n}\n\nexport function requestPassword(requestData: {email: string}){\n return post('auth/password/request', requestData);\n}\n\nexport function requestPasswordValidation(requestData: {code: string, email: string}){\n return post('auth/password/request/validation', requestData);\n}\n\nexport function confirmPassword(requestData: {repeatPassword: string, password: string}, token: string){\n return post(`auth/confirm/password/${token}`, requestData);\n}\n\nexport function accounts(){\n return get('auth/accounts');\n}\n\nexport function selectAccount(id: number){\n return get('auth/select_account/' + id);\n}\n\nexport function refreshAuth(){\n return get('auth/refresh', {headers: [DISABLED_SWITCH]});\n}\n\n\n","export const LOGIN = 'LOGIN';\nexport const LOGIN_SUCCESS = 'LOGIN_SUCCESS';\nexport const LOGIN_FAILURE = 'LOGIN_FAILURE';\n\nexport const REGISTER = 'REGISTER';\nexport const REGISTER_SUCCESS = 'REGISTER_SUCCESS';\nexport const REGISTER_FAILURE = 'REGISTER_FAILURE';\n\nexport const CONFIRM = 'CONFIRM';\nexport const CONFIRM_SUCCESS = 'CONFIRM_SUCCESS';\nexport const CONFIRM_FAILURE = 'CONFIRM_FAILURE';\nexport const CONFIRM_TOKEN_EXIST = 'CONFIRM_TOKEN_EXIST';\n\nexport const EDIT_PASSWORD = 'EDIT_PASSWORD';\nexport const EDIT_PASSWORD_SUCCESS = 'EDIT_PASSWORD_SUCCESS';\nexport const EDIT_PASSWORD_FAILURE = 'EDIT_PASSWORD_FAILURE';\n\nexport const LOGOUT = 'LOGOUT';\n\nexport const ADD_USER_INFORMATION = 'ADD_USER_INFORMATION';\nexport const ADD_USER_INFORMATION_SUCCESS = 'ADD_USER_INFORMATION_SUCCESS';\nexport const ADD_USER_INFORMATION_FAILURE = 'ADD_USER_INFORMATION_FAILURE';\n\nexport const EDIT_USER_INFORMATION = 'EDIT_USER_INFORMATION';\nexport const EDIT_USER_INFORMATION_SUCCESS = 'EDIT_USER_INFORMATION_SUCCESS';\nexport const EDIT_USER_INFORMATION_FAILURE = 'EDIT_USER_INFORMATION_FAILURE';\n\nexport const SELECT_ACCOUNT = 'SELECT_ACCOUNT';\nexport const UNSELECT_ACCOUNT = 'UNSELECT_ACCOUNT';\nexport const FETCH_ACCOUNTS = 'FETCH_ACCOUNTS';\nexport const FETCH_ACCOUNTS_SUCCESS = 'FETCH_ACCOUNTS_SUCCESS';\nexport const FETCH_ACCOUNTS_FAILURE = 'FETCH_ACCOUNTS_FAILURE';\n\nexport const EDIT_USER_COMPANY_GROUP = 'EDIT_USER_COMPANY_GROUP';\nexport const EDIT_USER_COMPANY_GROUP_SUCCESS = 'EDIT_USER_COMPANY_GROUP_SUCCESS';\nexport const EDIT_USER_COMPANY_GROUP_FAILURE = 'EDIT_USER_COMPANY_GROUP_FAILURE';\n\nexport const EDIT_USER_CALENDAR_SETTING_SUCCESS = \"EDIT_USER_CALENDAR_SETTING_SUCCESS\";\n\nexport const EDIT_SELF_SALARY = \"EDIT_SELF_SALARY\";\n\nexport const IMPERSONATE_USER = \"IMPERSONATE_USER\";\nexport const EXIT_IMPERSONATE_USER = \"EXIT_IMPERSONATE_USER\";\nexport const ADD_AUTH_COMPANY = \"ADD_AUTH_COMPANY\";\n\nexport const REFRESH_AUTH_SUCCESS = \"REFRESH_AUTH_SUCCESS\";\nexport const REFRESH_USER_SUCCESS = \"REFRESH_USER_SUCCESS\";\n\n","import * as types from \"../../constants/auth\";\nimport * as models from \"../../models/auth\"\nimport {CompanyGroup} from \"../../models/companyGroup\";\nimport {Salaries, Salary} from \"../../models/salary\";\nimport {User} from \"../../models/auth\";\nimport {Company} from \"../../models/companies\";\n\nexport const login = () => {\n return {\n type: types.LOGIN,\n }\n}\n\nexport const loginSuccess = (data :models.authResponse) => {\n return {\n type: types.LOGIN_SUCCESS,\n data\n }\n}\n\nexport const refreshAuthSuccess = (data :models.authResponse) => {\n return {\n type: types.REFRESH_AUTH_SUCCESS,\n data: data\n }\n}\n\nexport const refreshUserSuccess = (data :models.User) => {\n return {\n type: types.REFRESH_USER_SUCCESS,\n user: data\n }\n}\n\nexport const register = () => {\n return {\n type: types.REGISTER,\n }\n}\n\nexport const registerSuccess = (data :models.authResponse) => {\n return {\n type: types.REGISTER_SUCCESS,\n data: data\n }\n}\n\nexport const registerFailure = (data :string) => {\n return {\n type: types.REGISTER_FAILURE,\n data\n }\n}\n\nexport const loginFailure = (data :string) => {\n return {\n type: types.LOGIN_FAILURE,\n message: data\n }\n}\n\nexport const confirm = () => {\n return {\n type: types.CONFIRM,\n }\n}\n\nexport const confirmTokenExist = () => {\n return {\n type: types.CONFIRM_TOKEN_EXIST,\n }\n}\n\nexport const confirmSuccess = (data :models.authResponse) => {\n return {\n type: types.CONFIRM_SUCCESS,\n data: data\n }\n}\nexport const editSelfSalary = (salary :Salary) => {\n return {\n type: types.EDIT_SELF_SALARY,\n salary: salary\n }\n}\n\nexport const confirmFailure = (message: string) => {\n return {\n type: types.CONFIRM_FAILURE,\n message: message\n }\n}\n\nexport const editPassword = () => {\n return {\n type: types.EDIT_PASSWORD,\n }\n}\n\nexport const editPasswordSuccess = () => {\n return {\n type: types.EDIT_PASSWORD_SUCCESS,\n }\n}\n\nexport const editPasswordFailure = (message: string) => {\n return {\n type: types.EDIT_PASSWORD_FAILURE,\n message: message\n }\n}\n\nexport const logout = () => {\n return {\n type: types.LOGOUT,\n }\n}\n\nexport const fetchAccounts = () => {\n return {\n type: types.FETCH_ACCOUNTS,\n }\n}\n\nexport const fetchAccountsSuccess = (salaries: Salaries) => {\n return {\n type: types.FETCH_ACCOUNTS_SUCCESS,\n accounts: salaries\n }\n}\n\nexport const selectAccount = (salary: Salary) => {\n return {\n type: types.SELECT_ACCOUNT,\n account: salary\n }\n}\n\nexport const unselectAccount = () => {\n return {\n type: types.UNSELECT_ACCOUNT,\n }\n}\n\nexport const editUserCompanyGroupSuccess = (companyGroup: CompanyGroup) => {\n return {\n type: types.EDIT_USER_COMPANY_GROUP_SUCCESS,\n companyGroup: companyGroup\n }\n}\n\nexport const editUserCalendarSettingSuccess = (calendarSettings: models.UserCalendarSettings) => {\n return {\n type: types.EDIT_USER_CALENDAR_SETTING_SUCCESS,\n calendarSettings: calendarSettings\n }\n}\n\nexport const impersonateUser = (user: models.User) => {\n return {\n type: types.IMPERSONATE_USER,\n impersonated: user\n }\n}\n\nexport const exitImpersonateUser = () => {\n return {\n type: types.EXIT_IMPERSONATE_USER,\n }\n}\n\nexport const addAuthCompany = (c: Company) => {\n return {\n type: types.ADD_AUTH_COMPANY,\n company: c\n }\n}\n\n","import React from \"react\";\nimport {FormikErrors, FormikTouched, getIn} from \"formik\";\n\nconst FormError = (props: {errors: FormikErrors, touched: FormikTouched, field: string}) => {\n const {errors, touched, field} = props;\n\n let touched_bool = getIn(touched, field)\n let error_str = getIn(errors, field)\n\n return touched_bool && error_str ? <>\n
\n \n \n {error_str}\n : <>\n}\n\nexport default FormError;","import * as React from \"react\";\nimport {login} from \"../../../adapters/auth\";\nimport { useFormik } from 'formik';\nimport * as Yup from 'yup';\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/auth\"\nimport {Link} from \"react-router-dom\";\nimport FormError from \"../../../utils/formError\";\nimport {useState} from \"react\";\n\ndeclare global {\n interface Window { ReactNativeWebView: any; ReactNativeWebview: any; }\n}\n\nconst LoginForm : React.FC = () => {\n\n const dispatch = useDispatch();\n const [error, setError] = useState(sessionStorage.getItem('session_expired'));\n\n const SignupSchema = Yup.object().shape({\n password: Yup.string()\n .required('Mot de passe requis'),\n username: Yup.string().email('Email non valide').required('Required'),\n });\n\n const formik = useFormik({\n initialValues: {\n username: '',\n password: '',\n },\n validationSchema: SignupSchema,\n onSubmit: (values, formikHelpers) => {\n login(values).then((data) => {\n if (window.ReactNativeWebView){\n window.ReactNativeWebView.postMessage(JSON.stringify({token: data.data.token, action: \"login\"}))\n } \n dispatch(actions.loginSuccess(data.data))\n }).catch((error) => {\n if (error.response){\n setError(error.response.data.message)\n }\n\n formikHelpers.setSubmitting(false);\n })\n },\n });\n\n return (
\n <>\n \"\"/\n {error &&
\n {error}\n
}\n
\n
\n \n \n \n
\n
\n \n \n \n
\n \n
\n \n Mot de passe oublié\n \n \n
);\n}\n\nexport default LoginForm;","import * as React from \"react\";\n\nimport LoginForm from \"../../../components/auth/login\";\n\nconst LoginPage : React.FC = () => {\n return (\n
\n \n
\n );\n}\n\nexport default LoginPage;","import { get, post } from \"../xhr\";\n\nexport function list(requestData: { query: string, offset: number }) {\n return post('sellsy/contact/list', requestData);\n}\n\nexport function getContactById(requestData: { sellsyId: number }) {\n return post('sellsy/contact/data', requestData);\n}\n\nexport function listContactCompanies(requestData: { contactId: number }) {\n return post('sellsy/contact/companies/list', requestData);\n}\n\nexport function getModelsList() {\n return get('sellsy/models/list');\n}","import './loader.css'\nimport React from \"react\";\n\n\nexport const Loader: React.FC<{type?: \"border\"|\"grow\"}> = (props) => {\n\n const {type} = props;\n\n return (\n
\n
\n
\n Loading...\n
\n
\n
\n )\n}\n\nexport default Loader;","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../../adapters/sellsy\"\nimport Loader from \"../../../../utils/loader\";\n\nconst SellsyContactListModal = ({email, setContact}: {email: string, setContact: (contact: {\n id: number,\n email: string,\n first_name: string,\n last_name: string\n }) => void}) => {\n\n const [payload, setPayload] = useState<{\n \"pagination\": {\n \"limit\": number,\n \"total\": number,\n \"count\": number,\n \"offset\": number\n },\n data: {\n id: number,\n email: string,\n first_name: string,\n last_name: string\n }[]\n }>({data: [], pagination: {count: 0, total: 0, offset: 0, limit: 0}});\n\n const [fetchParams, setFetchParams] = useState<{query: string, offset: number}>({query: email, offset: 0});\n const [loading, setLoading] = useState(true)\n\n useEffect(() => {\n setLoading(true)\n api.list(fetchParams)\n .then(r => setPayload(r.data))\n .then(() => setLoading(false))\n }, [fetchParams])\n\n\n let timer: any;\n function handleQueryChange(e: React.ChangeEvent) {\n clearTimeout(timer);\n timer = setTimeout(() => setFetchParams({query: e.target.value, offset: 0}), 1500)\n }\n\n return
\n
\n
\n
\n

Contacts sellsy

\n \n
\n
\n
    \n
  • \n
    \n
    \n \n
    \n \n
    \n
  • \n {loading &&
    \n \n
    }\n {payload.data.map(contact =>
  • \n
    \n setContact(contact)} className=\"form-check-input\" type=\"radio\" id={contact.email} />\n \n
    \n
  • )}\n
\n {payload.pagination.total > 25 && }\n
\n
\n
\n
\n\n}\n\nexport default SellsyContactListModal;","export const setPageTitle = (pageTitle: string, pageUnderTitle?: string) => {\n return {\n type: 'SET_PAGE_TITLE',\n pageTitle: pageTitle,\n pageUnderTitle: pageUnderTitle\n }\n};\n\nexport const setHelpProductSheetIds = (productSheetIds: number[]) => {\n return {\n type: 'SET_HELP_PRODUCT_SHEET_IDS',\n helpProductSheetIds: productSheetIds\n }\n};","import {post, get} from \"../xhr\";\nimport * as models from \"../../models/companies\";\n\nexport interface requestPayload {\n query?: string,\n offset?: number,\n ids?: number[];\n salaries?: (number|undefined)[];\n}\n\nexport function list(requestData?: requestPayload){\n return post('company/list', requestData || {});\n}\n\nexport function listBilling(){\n return get('company/list-billing');\n}\n\nexport function edit(requestData: any, id: number){\n return post('company/edit/' + id, requestData);\n}\n\nexport function create(requestData: any){\n return post('company/create', requestData);\n}\n\nexport function show(id: number){\n return get('company/show/' + id);\n}\n\nexport function generateTimeClockToken(id: number){\n return get('company/token/' + id);\n}\nexport function updateTimezone(requestData: {timezone: string}, id: number){\n return post('company/timezone/' + id, requestData);\n}\n\nexport function activate(id: number){\n return get('company/activate/' + id);\n}\n\nexport function deactivate(id: number){\n return get('company/deactivate/' + id);\n}","import {post, get, MULTIPART_FORM_DATA, Options} from \"../xhr\";\nimport * as models from \"../../models/salary\";\n\nexport interface requestPayload {\n query?: string,\n offset?: number,\n accessRight?: string,\n salaries?: (number|undefined)[],\n companies?: number[],\n activated?: boolean,\n jobs?: number[],\n}\n\nexport function list(requestData?: requestPayload, optionalHeader?: Options){\n return post('salary/list', requestData || {}, optionalHeader);\n}\n\nexport function choiceList(requestData?: requestPayload, optionalHeader?: Options){\n return post('salary/choice_list', requestData || {}, optionalHeader);\n}\n\nexport function available(requestData: {beginAt: string, endAt: string, query?: string, options?: {companies?: number[], jobs?: number[]}}){\n return post('salary/available', requestData);\n}\n\nexport function edit(requestData: {\n firstname: string,\n lastname: string,\n tel: string,\n email: string,\n birthdate: Date,\n companies: number[],\n address: {\n address: string,\n city: string,\n zip: number\n },\n}, id: number){\n return post('salary/edit/' + id, requestData);\n}\nexport function updateAccess(id: number, accessRightId: number){\n return get('salary/edit/' + id + '/access/' + accessRightId);\n}\n\nexport function checkEmailAvailable(requestData: { email: string }){\n return post('salary/check-email-available', requestData);\n}\n\nexport function create(requestData: models.Salary){\n return post('salary/create', requestData);\n}\n\nexport function show(id: number){\n return get('salary/show/' + id);\n}\nexport function qr(id: number){\n return get('salary/'+ id +'/qr');\n}\n\nexport function feed(requestData: {start: string, end: string}, signal : AbortSignal){\n return post('salary/feed', requestData, {signal: signal});\n}\n\nexport function _export(){\n return get('salary/export', {responseType: \"blob\"});\n}\n\nexport function _import(requestData: FormData){\n return post('salary/import', requestData, {headers: [MULTIPART_FORM_DATA], responseType: \"json\"});\n}\nexport function importFile(){\n return get('salary/import/file', {responseType: \"blob\"});\n}\n\nexport function confirm(id: number){\n return get('salary/confirm/' + id);\n}\n\nexport function validateToken(id: number, token: number){\n return get(`salary/${id}/validate-token/${token}`);\n}\n\nexport function setToken(id: number, token: number){\n return get(`salary/${id}/update-token/${token}`);\n}","import * as groupModels from \"../../models/companyGroup\";\nimport {get, post} from \"../xhr\";\nimport * as models from \"../../models/job\";\nimport * as xhr from \"../xhr\";\n\ninterface listPayload {\n offset?: number,\n query?: string,\n\n type?: number,\n status?: number,\n}\n\nexport function list(requestData?: listPayload){\n return post('job/list', requestData || {});\n}\n\nexport function edit(requestData: models.Job, id: number){\n return post('job/edit/' + id, requestData);\n}\n\nexport function create(requestData: models.Job){\n return post('job/create', requestData);\n}\n\nexport function show(id: string){\n return get('job/show/' + id);\n}\n\nexport function order(requestData: {id: number, position: number}[]){\n return xhr.post('job/order', requestData);\n}\n\nexport function activate(id: number){\n return xhr.get(`job/${id}/activate`);\n}\n\nexport function deactivate(id: number){\n return xhr.get(`job/${id}/deactivate`);\n}\n","import {post, get} from \"../xhr\";\nimport * as models from \"../../models/taskGroup\";\n\ninterface listPayload {\n offset?: number,\n query?: string\n}\nexport function list(requestData?: listPayload){\n return post('task/group/list', requestData || {});\n}\n\nexport function edit(requestData: models.TaskGroup, id: number){\n return post('task/group/edit/' + id, requestData);\n}\n\nexport function create(requestData: models.TaskGroup){\n return post('task/group/create', requestData);\n}\n\nexport function show(id: string){\n return get('task/group/show/' + id);\n}\nexport function deactivate(id: number){\n return get('task/group/deactivate/' + id);\n}","import * as xhr from \"../xhr\";\nimport * as models from \"../../models/accessLevel\";\n\ninterface listPayload {\n offset?: number,\n query?: string\n}\n\nexport function select(requestData?: listPayload){\n return xhr.post('access_level/list', requestData || {});\n}\n\nexport function patch(requestData: any, id: number){\n return xhr.post('access_level/edit/' + id, requestData);\n}\n\nexport function put(requestData: any){\n return xhr.post('access_level/create', requestData);\n}\n\nexport function accessRight(requestData: {underscoreCase: string}, id: number){\n return xhr.post(`access_level/${id}/access_right`, requestData);\n}\n\nexport function get(id: string){\n return xhr.get('access_level/show/' + id);\n}","import * as xhr from \"../xhr\";\nimport * as models from \"../../models/localisation\";\n\nexport interface requestPayload {\n query?: string,\n offset?: number,\n activated?: boolean,\n companies?: number[],\n}\n\nexport function select(requestData?: requestPayload){\n return xhr.post('localisation/list', requestData || {});\n}\n\nexport function patch(requestData: models.Localisation, id: number){\n return xhr.post('localisation/edit/' + id, requestData);\n}\n\nexport function put(requestData: models.Localisation){\n return xhr.post('localisation/create', requestData);\n}\n\nexport function get(id: string){\n return xhr.get('localisation/show/' + id);\n}\n\nexport function order(requestData: {id: number, position: number}[]){\n return xhr.post('localisation/order', requestData);\n}\n\nexport function activate(id: number){\n return xhr.get(`localisation/${id}/activate`);\n}\nexport function deactivate(id: number){\n return xhr.get(`localisation/${id}/deactivate`);\n}","import * as xhr from \"../xhr\";\nimport * as models from \"../../models/activity\";\n\nexport interface requestPayload {\n query?: string,\n offset?: number,\n companies?: number[],\n}\n\nexport function select(requestData?: requestPayload){\n return xhr.post('activity/list', requestData || {});\n}\n\nexport function patch(requestData: models.Activity, id: number){\n return xhr.post('activity/edit/' + id, requestData);\n}\n\nexport function put(requestData: any){\n return xhr.post('activity/create', requestData);\n}\n\nexport function order(requestData: {id: number, position: number}[]){\n return xhr.post('activity/order', requestData);\n}\n\nexport function get(id: string){\n return xhr.get('activity/show/' + id);\n}\n\nexport function activate(id: number){\n return xhr.get(`activity/${id}/activate`);\n}\nexport function deactivate(id: number){\n return xhr.get(`activity/${id}/deactivate`);\n}\n","import * as xhr from \"../xhr\";\n\ninterface ListPayload {\n offset? : number,\n query? : string,\n}\n\nexport function list(requestData: ListPayload, signal?: AbortSignal){\n return xhr.post('team/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: any, id: number){\n return xhr.post('team/edit/' + id, requestData);\n}\n\nexport function show(id: number){\n return xhr.get('team/show/' + id);\n}\n\nexport function create(requestData: any, options?:xhr.Options){\n return xhr.post('team/create', requestData, options);\n}\n\nexport function setSalaries(requestData: { salaries: string[] }, id: number){\n return xhr.post(`team/${id}/salaries`, requestData);\n}\n\nexport function removeSalary(id: number, salaryId: number){\n return xhr.get(`team/${id}/salaries/remove/${salaryId}`);\n}\n\nexport function get(id: string){\n return xhr.get('team/show/' + id);\n}\n\nexport function remove(id: number){\n return xhr.get('team/delete/' + id);\n}\n","import {get, post} from \"../xhr\";\n\nexport function list(id: number){\n return get(`timetable/list/${id}`);\n}\n\nexport function show(id: number){\n return get(`timetable/${id}/show`);\n}\n\nexport function copy(id: number, target: number){\n return get(`timetable/${id}/copy/${target}`);\n}\n\nexport function copyEvents(id: number, week: number, targets: number[]){\n return post(`timetable/${id}/copy_events/${week}`, {targets: targets});\n}\n\nexport function clean(id: number, week: number){\n return get(`timetable/${id}/clean_events/${week}`);\n}\n\nexport function deactivate( id: number){\n return get(`timetable/${id}/deactivate`);\n}\n\nexport function create(requestData: {title: string, start: Date, end?: Date, salary: number}){\n return post(`timetable/create`, requestData);\n}\n\nexport function duplicate(requestData: {title: string, start: Date, end?: Date, salary: number}, id: number){\n return post(`timetable/${id}/duplicate`, requestData);\n}\n\nexport function edit(requestData: {title: string}, id: number){\n return post(`timetable/${id}/edit`, requestData);\n}\n\nexport function workingTime(id: number, week: number){\n return get(`timetable/${id}/working_time/${week}`);\n}","import {get, post} from \"../../xhr\";\n\nexport function list(id: number){\n return get(`salary/template/list/${id}`);\n}\n\nexport function show(id: number){\n return get(`salary/template/${id}/show`);\n}\n\nexport function copy(id: number, target: number){\n return get(`salary/template/${id}/copy/${target}`);\n}\n\nexport function copyEvents(id: number, week: number, targets: number[]){\n return post(`salary/template/${id}/copy_events/${week}`, {targets: targets});\n}\n\nexport function clean(id: number, week: number){\n return get(`salary/template/${id}/clean_events/${week}`);\n}\n\nexport function deactivate( id: number){\n return get(`salary/template/${id}/deactivate`);\n}\n\nexport function create(requestData: {title: string, start: Date, end?: Date, salary: number}){\n return post(`salary/template/create`, requestData);\n}\n\nexport function duplicate(requestData: {title: string, start: Date, end?: Date, salary: number}, id: number){\n return post(`salary/template/${id}/duplicate`, requestData);\n}\n\nexport function edit(requestData: {title: string}, id: number){\n return post(`salary/template/${id}/edit`, requestData);\n}\n\nexport function workingTime(id: number, week: number){\n return get(`salary/template/${id}/working_time/${week}`);\n}","import React, {forwardRef, useEffect, useRef, useState} from \"react\";\nimport * as companyApi from \"../../adapters/company\";\nimport * as salaryApi from \"../../adapters/salary\";\nimport * as jobApi from \"../../adapters/job\";\nimport * as taskGroupApi from \"../../adapters/taskGroup\";\nimport * as accessLevelApi from \"../../adapters/accessLevel\";\nimport * as localisationApi from \"../../adapters/localisation\";\nimport * as activityApi from \"../../adapters/activity\";\nimport * as teamApi from \"../../adapters/team\";\nimport * as timetableApi from \"../../adapters/timetable\";\nimport * as templateApi from \"../../adapters/salary/template\";\nimport {Companies} from \"../../models/companies\";\nimport {Salaries} from \"../../models/salary\";\nimport {Jobs} from \"../../models/job\";\nimport {Localisation, Localisations} from \"../../models/localisation\";\nimport {Activities, Activity} from \"../../models/activity\";\nimport {PAGINATION} from \"../../constants/global\";\n\ninterface Choice {\n label: string,\n value: string|number,\n icon?: string\n}\nexport type Choices = Choice[];\n\ninterface BootstrapSelectInterface {\n label?: string;\n onTouch?: (touched: boolean) => void;\n placeholder?: string;\n name?: string;\n labelIcon?: string;\n className?:string;\n id?:string;\n required?: boolean;\n disabled?: boolean;\n enableReinitialize?: boolean;\n notFloating?: true,\n displayValue?: boolean,\n onChangeObject?: (val: any|null) => void;\n initialObjectsValues?: any[];\n}\n\ntype FetchParamsType = any\n// type FetchParamsType = salaryApi.requestPayload & companyApi.requestPayload & localisationApi.requestPayload\n\ntype BootstrapSelectOptions = | {\n options: Choices|undefined;\n fetchEntity?: never;\n fetchParams?: never;\n} | {\n options?: never;\n fetchEntity: \"salary\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"timetable\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"template\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"company\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"billingCompany\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"localisation\"|\"activity\";\n fetchParams?: FetchParamsType;\n} | {\n options?: never;\n fetchEntity: \"job\"|\"accessLevel\"|\"team\"|\"taskGroup\";\n fetchParams?: undefined\n}\n\ntype BootstrapSelectProps = BootstrapSelectInterface & BootstrapSelectOptions & (\n | {\n isMultiple?: false;\n values?: never;\n value?: Choice;\n onChange: (val: Choice|any|null) => void;\n onChangeMultiple?: never;\n }\n | {\n isMultiple: true;\n values?: Choices;\n value?: never;\n onChangeMultiple: (val: Choices) => void;\n onChange?: never;\n })\n\nconst BootstrapSelect:React.FC = (props) => {\n\n const {options, displayValue, onTouch, placeholder, value, values, notFloating, id, enableReinitialize, disabled, label, labelIcon, onChange, onChangeObject, onChangeMultiple, className, name, isMultiple, required, fetchEntity, fetchParams, initialObjectsValues} = props;\n\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n const [initialOptions, setInitialOptions] = useState([...options || []] );\n const [initialObjects, setInitialObjects] = useState(initialObjectsValues || [] );\n const [filteredOptions, setFilteredOptions] = useState([...options || []] );\n const [query, setQuery] = useState('');\n const [offset, setOffset] = useState(0);\n const [isLast, setIsLast] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const [scrollBottom, setScrollBottom] = useState(false);\n const menuRef = useRef(null);\n const [_values, setValues] = useState(values);\n const [_value, setValue] = useState(value);\n const [offsetTop, setOffsetTop] = useState(0);\n const [hasFetchedOnce, setHasFetchedOnce] = useState(false);\n\n useEffect(() => {\n if (isMenuOpen){\n if (query){\n setQuery('')\n }\n\n document.addEventListener('click', handleBodyClick)\n\n let container = menuRef.current;\n if (container && fetchEntity){\n container.addEventListener('scroll', onScrollBottom);\n }\n\n return () => {\n document.removeEventListener('click', handleBodyClick)\n if (container && fetchEntity){\n container.removeEventListener('scroll', onScrollBottom)\n }\n }\n }\n }, [isMenuOpen, menuRef.current])\n\n useEffect(() => {\n if (isMenuOpen && menuRef.current){\n let dimensions = menuRef.current.getBoundingClientRect();\n if (((dimensions.top + (offsetTop ? Math.abs(offsetTop) : 15)) + dimensions.height) > window.innerHeight){\n setOffsetTop( 0 - dimensions.height - 15)\n }else{\n setOffsetTop( 0)\n }\n }\n }, [filteredOptions, isMenuOpen])\n\n useEffect(() => {\n if (fetchEntity && isMenuOpen){\n let timeout = setTimeout(() => {\n if (isMenuOpen && offset){\n fetch(0, false)\n }\n }, 750);\n\n return () => clearTimeout(timeout);\n }else{\n setFilteredOptions([...initialOptions.filter((item ) => item.label.toLowerCase().includes(query.toLowerCase()))])\n }\n }, [query])\n\n useEffect(() => {\n if (fetchEntity && isMenuOpen){\n fetch(0,false)\n }\n }, [fetchEntity, fetchParams, isMenuOpen])\n\n useEffect(() => {\n if (options){\n setInitialOptions([...options]);\n\n if (query){\n setFilteredOptions([...options.filter((item ) => item.label.toLowerCase().includes(query.toLowerCase()))])\n }else{\n setFilteredOptions([...options])\n }\n }\n }, [options])\n\n useEffect(() => {\n let controller = new AbortController();\n if (scrollBottom && !isLast){\n fetch(offset, true, controller)\n }\n return () => controller.abort()\n }, [scrollBottom])\n\n useEffect(() => {\n if (enableReinitialize && !fetchEntity){\n if (isMultiple){\n setValues(values ? [...values] : undefined)\n }else{\n let validOption = initialOptions.find(option => option.value === _value?.value);\n\n if (validOption){\n setValue(validOption)\n }else{\n setValue(value ? {...value} : undefined)\n }\n }\n }else if(enableReinitialize && fetchEntity && _value && hasFetchedOnce){\n if (!initialOptions.find(choice => choice.value === _value.value)){\n setValue(undefined);\n }\n }\n }, [initialOptions])\n\n const fetchSuccess = (data: Companies|Salaries|Jobs|Localisations|Activities, _offset: number, merge?: boolean) => {\n\n let payload: Choices = merge ? [...initialOptions, ...data.map((item: any) => ({label: item.title, value: item.id!}))] : [...data.map((item: any) => ({label: item.title, value: item.id!}))];\n\n setInitialOptions([...payload])\n setInitialObjects([...data])\n\n setFilteredOptions([...payload\n .filter((item ) => item.label.toLowerCase().includes(query.toLowerCase()))])\n\n setIsLast(data.length < PAGINATION)\n setOffset(_offset + 1);\n setIsLoading(false);\n if (scrollBottom) setScrollBottom(false);\n }\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLUListElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n const fetch = (_offset: number, scrollBottom: boolean, controller?: AbortController) => {\n setIsLoading(true);\n switch (fetchEntity){\n case 'company':\n companyApi.list({query: query, offset: _offset, ids: fetchParams?.ids, salaries: fetchParams?.salaries}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'billingCompany':\n companyApi.listBilling().then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'salary':\n salaryApi.list({query: query, offset: _offset, salaries: fetchParams?.salaries, companies: fetchParams?.companies, jobs: fetchParams?.jobs}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'job':\n jobApi.list({query: query, offset: _offset}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'accessLevel':\n accessLevelApi.select({query: query, offset: _offset}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'localisation':\n localisationApi.select({query: query, offset: _offset, companies: fetchParams?.companies}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'activity':\n activityApi.select({query: query, offset: _offset, companies: fetchParams?.companies}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'team':\n teamApi.list({query: query, offset: _offset}, controller?.signal).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'taskGroup':\n taskGroupApi.list({query: query, offset: _offset}).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'timetable':\n timetableApi.list(fetchParams.salary).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n case 'template':\n templateApi.list(fetchParams.salary).then((data) => {\n fetchSuccess(data.data, _offset, scrollBottom);\n })\n break;\n }\n setHasFetchedOnce(true)\n }\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let popup = menuRef.current\n\n if (popup && isMenuOpen){\n let dimensions = popup.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n setIsMenuOpen(false)\n }\n }\n }\n\n const removeValue = (val: Choice) => {\n\n if (isMultiple){\n let __values = [..._values!]\n let index = __values.findIndex(v => v.value === val.value)\n if (index !== -1){\n __values.splice(index, 1);\n }\n onChangeMultiple!([...__values])\n setValues([...__values])\n }else{\n onChange!(null)\n setValue(undefined)\n }\n }\n\n const clickItem = (choice: Choice) => {\n if (isMultiple){\n if (_values){\n if (_values.find(v => v.value === choice.value)){\n // REMOVE\n removeValue(choice)\n }else{\n // ADD\n setValues([..._values, choice])\n onChangeMultiple!([..._values, choice])\n }\n }else{\n setValues([choice])\n onChangeMultiple!([choice])\n }\n }else{\n setValue(choice)\n onChange!(choice);\n setIsMenuOpen(false);\n if (onChangeObject){\n onChangeObject(initialObjects.find((obj: any) => obj.id === choice.value))\n }\n }\n }\n\n return <>\n
\n
\n {[<>\n {!isMenuOpen &&
{\n e.stopPropagation()\n if (!disabled) {\n setIsMenuOpen(true)\n if (onTouch){\n onTouch(true)\n }\n }\n }}>\n {\n isMultiple ? (_values?.length ? _values.map(choice =>\n {e.stopPropagation()}} className={'me-2'}>{choice.label}\n removeValue(choice)} className={'bg-light'}>\n \n \n ) :\n (placeholder !== undefined ? placeholder : 'Séléctionnez des options')) :\n (_value && displayValue !== false ? {e.stopPropagation()}} className={'me-2'}>\n {_value.label}\n {!required && removeValue(_value)} className={'bg-light'}>\n \n }\n : (placeholder !== undefined ? placeholder : 'Séléctionnez une option'))\n }\n
}\n {isMenuOpen && {\n e.stopPropagation()\n if (isMultiple && isMenuOpen && !!_values?.length){\n setIsMenuOpen(false);\n }\n }}\n onChange={(e) => setQuery(e.currentTarget.value)}\n defaultValue={query}\n type=\"text\"\n placeholder={'Recherchez une option'}\n className={`form-select ${className} search-input ${isLoading && 'is-loading'}`}\n />}\n , <>\n \n ].sort((e, i) => {\n return notFloating ? 1 : 0;\n })}\n
\n
    \n {filteredOptions.length ? filteredOptions.map((option, index) =>
  • clickItem(option)} className={'list-group-item px-1 list-group-item-action'}>\n {(_values?.find(v => v.value === option.value) || _value === option) && displayValue !== false && }\n {option.label}\n
  • ) : (
  • {isLoading ? \"Chargement des options\" : \"Aucune option disponible\"}
  • )}\n {filteredOptions.length > 0 && isLoading &&
  • \n
    \n Chargement ...\n
    \n
    \n
  • }\n
\n
\n \n}\n\nexport default BootstrapSelect;","import React from \"react\";\nimport {FormikErrors, FormikTouched, getIn} from \"formik\";\n\nexport default function validationClass(errors: FormikErrors, touched: FormikTouched, field: string) {\n\n let touched_bool = getIn(touched, field)\n let error_str = getIn(errors, field)\n\n return touched_bool ? (error_str ? ' is-invalid ' : ' is-valid ') : ''\n}","import {forwardRef} from \"react\";\nimport * as React from \"react\";\n\ninterface OtherProps {\n icon?: string,\n label?: string,\n}\n\ntype InputProps = JSX.IntrinsicElements[\"input\"] & OtherProps;\n\nconst DateCustomInput = forwardRef((props, ref) => {\n\n\n\n return <>\n
\n \n \n
\n \n})\n\nexport default DateCustomInput;","import { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useFormik } from 'formik';\nimport * as Yup from 'yup';\n\nimport DatePicker from \"react-datepicker\";\nimport SellsyContactListModal from \"./sellsy\";\n\nimport { register } from \"../../../adapters/auth\";\nimport { setPageTitle } from \"../../../actions/header\";\n\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport validationClass from \"../../../utils/validationClass\";\nimport FormError from \"../../../utils/formError\";\nimport DateCustomInput from \"../../../utils/customInput\";\n\nconst RegisterForm = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state);\n\n const [error, setError] = useState()\n const [email, setEmail] = useState()\n const [title, setTitle] = useState()\n const [isRegistered, setIsRegistered] = useState(false)\n const [contact, setContact] = useState<{\n id: number,\n email: string,\n first_name: string,\n last_name: string\n }>()\n\n const [initialValues, setInitialValues] = useState({\n firstname: '',\n lastname: '',\n companyGroup: '',\n billingVersion: 2,\n billingRate: 1,\n sellsyId: null,\n type: 1,\n birthdate: new Date(),\n tel: '',\n email: '',\n password: '',\n repeatPassword: '',\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n firstname: Yup.string().required('Prénom obligatoire'),\n lastname: Yup.string().required('Nom obligatoire'),\n companyGroup: Yup.string().required('Nom obligatoire'),\n billingVersion: Yup.number().required('Type de facturation requis.'),\n billingRate: Yup.number().required('Taux de facturation requis.'),\n sellsyId: Yup.number().required('Contact sellsy requis.'),\n type: Yup.number().required('Champs requis !'),\n birthdate: Yup.date().required('Champs requis !'),\n tel: Yup.string().required('Champs requis !'),\n email: Yup.string().email('Email non valide').required('Email obligatoire'),\n password: Yup.string().required('Mot de passe obligatoire'),\n repeatPassword: Yup.string().required('Confirmez le mot de passe'),\n }))\n\n function handleBillingVersionChange(version: number){\n let _values = {...formik.values}\n let _schema = {...validationSchema.fields}\n\n _values.billingVersion = version;\n\n if (version === 1){\n delete _values.sellsyId;\n delete _schema.sellsyId\n }else if(version === 2){\n _values.sellsyId = null;\n _schema.sellsyId = Yup.number().required('Contact sellsy requis.');\n }\n\n setInitialValues(_values)\n setValidationSchema(Yup.object().shape(_schema))\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n register(values)\n .then(data => {\n setIsRegistered(true)\n setEmail(data.data.email)\n setTitle(data.data.title)\n })\n .catch(error => {\n setError(error.response.data.message)\n formikHelpers.setSubmitting(false);\n })\n }\n })\n\n useEffect(() => {\n if (contact){\n formik.setFieldValue(\"sellsyId\", contact.id)\n }\n }, [contact])\n\n useEffect(() => {\n dispatch(setPageTitle('Ajouter un utilisateur'))\n }, [])\n\n if (isRegistered) {\n return (\n
\n
\n
\n \n Félicitation.\n \n Le compte Sivan de {title} à bien été créé\n \n

\n Un email a été envoyé à l'adresse email : {email}\n \n Veuillez suivre les instructions préciser dans ce mail pour activer le compte.\n

\n \n
\n
\n
\n )\n }\n\n return (\n
\n
\n
\n {error &&\n
\n {error}\n
\n }\n\n
\n
\n handleBillingVersionChange(Number(c!.value))}\n />\n
\n
\n formik.setFieldValue(\"billingRate\", choice?.value)}\n />\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n }\n className={\"form-control mb-3\"}\n onChange={(date: Date) => {\n formik.setFieldValue('birthdate', date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={formik.values.birthdate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n endDate={new Date()}\n />\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n\n {formik.values.billingVersion === 2 &&\n
\n {contact &&

}\n \n
\n }\n\n
\n
\n
\n \n \n \n
\n
\n
\n formik.setFieldValue(\"type\", choice?.value)}\n />\n \n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n\n \n
\n
\n\n setContact(c)} email={formik.values.email} />\n
\n )\n}\n\nexport default RegisterForm;","import * as React from \"react\";\n\nimport RegisterForm from \"../../../components/auth/register\";\n\nconst RegisterPage : React.FC = () => {\n return (\n \n )\n\n}\n\nexport default RegisterPage;","export const ADD_COMPANY = 'ADD_COMPANY';\nexport const ADD_COMPANY_SUCCESS = 'ADD_COMPANY_SUCCESS';\n\nexport const EDIT_COMPANY = 'EDIT_COMPANY';\nexport const EDIT_COMPANY_SUCCESS = 'EDIT_COMPANY_SUCCESS';\n\nexport const SHOW_COMPANY = 'SHOW_COMPANY';\nexport const SHOW_COMPANY_SUCCESS = 'SHOW_COMPANY_SUCCESS';\n\nexport const FETCH_COMPANIES = 'FETCH_COMPANIES';\nexport const FETCH_COMPANIES_SUCCESS = 'FETCH_COMPANIES_SUCCESS';\nexport const FETCH_COMPANIES_FAILURE = 'FETCH_COMPANIES_FAILURE';\n\nexport const MODELS = [\n {\n 'min': 1,\n 'max': 2,\n 'monthly': {\n 'amount': 0.0,\n 'tax_rate': 20,\n 'model_id': 46165012\n },\n 'annual': {\n 'amount': 0.0,\n 'tax_rate': 20,\n 'model_id': 46165012\n }\n },\n {\n 'min': 1,\n 'max': 8,\n 'monthly': {\n 'amount': 49.90,\n 'tax_rate': 20,\n 'model_id': 46009113\n },\n 'annual': {\n 'amount': 499.0,\n 'tax_rate': 20,\n 'model_id': 46009660\n },\n },\n {\n 'min': 9,\n 'max': 16,\n 'monthly': {\n 'amount': 69.99,\n 'tax_rate': 20,\n 'model_id': 46009190\n },\n 'annual': {\n 'amount': 699.90,\n 'tax_rate': 20,\n 'model_id': 46009710\n },\n },\n {\n 'min': 17,\n 'max': 24,\n 'monthly': {\n 'amount': 89.99,\n 'tax_rate': 20,\n 'model_id': 46009244\n },\n 'annual': {\n 'amount': 899.90,\n 'tax_rate': 20,\n 'model_id': 46009793\n },\n },\n {\n 'min': 25,\n 'max': 32,\n 'monthly': {\n 'amount': 109.99,\n 'tax_rate': 20,\n 'model_id': 46009313\n },\n 'annual': {\n 'amount': 1099.90,\n 'tax_rate': 20,\n 'model_id': 46009832\n },\n },\n {\n 'min': 33,\n 'max': 40,\n 'monthly': {\n 'amount': 129.99,\n 'tax_rate': 20,\n 'model_id': 46009339\n },\n 'annual': {\n 'amount': 1299.90,\n 'tax_rate': 20,\n 'model_id': 46009872\n },\n },\n {\n 'min': 41,\n 'max': 48,\n 'monthly': {\n 'amount': 149.99,\n 'tax_rate': 20,\n 'model_id': 46009381\n },\n 'annual': {\n 'amount': 1499.90,\n 'tax_rate': 20,\n 'model_id': 46009924\n },\n },\n]","import * as types from \"../../constants/companies\";\nimport * as models from \"../../models/companies\";\n\nexport const addCompany = () => {\n return {\n type: types.ADD_COMPANY,\n }\n}\n\nexport const addCompanySuccess = (company: models.Company) => {\n return {\n type: types.ADD_COMPANY_SUCCESS,\n company,\n }\n}\n\nexport const editCompany = (company: models.Company) => {\n return {\n type: types.EDIT_COMPANY,\n company: company\n }\n}\n\nexport const editCompanySuccess = (company: models.Company) => {\n return {\n type: types.EDIT_COMPANY_SUCCESS,\n company: company\n }\n}\n\nexport const showCompany = () => {\n return {\n type: types.SHOW_COMPANY,\n }\n}\n\nexport const showCompanySuccess = (company: models.Company) => {\n return {\n type: types.SHOW_COMPANY_SUCCESS,\n company: company\n }\n}\n\nexport const fetchCompaniesSuccess = (companies: models.Companies) => {\n return {\n type: types.FETCH_COMPANIES_SUCCESS,\n company: null,\n companies: companies\n }\n}\n\nexport const fetchCompanies = () => {\n return {\n type: types.FETCH_COMPANIES,\n }\n}\n\nexport const fetchCompaniesFailure = (error: string) => {\n return {\n type: types.FETCH_COMPANIES_FAILURE,\n company: null,\n companies : null,\n error: error\n }\n}\n","export const OPEN_SIDEBAR = 'OPEN_SIDEBAR';\nexport const SET_SIDEBAR_ITEM = 'SET_SIDEBAR_ITEM';\nexport const SUBMIT_SIDEBAR = 'SUBMIT_SIDEBAR';\nexport const CLOSE_SIDEBAR = 'CLOSE_SIDEBAR';\nexport const VALIDATE_SIDEBAR = 'VALIDATE_SIDEBAR';\nexport const VALIDATE_SIDEBAR_FAILURE = 'VALIDATE_SIDEBAR_FAILURE';\n\nexport const FORM_NEW_JOB = 'FORM_NEW_JOB';\nexport const FORM_EDIT_JOB = 'FORM_EDIT_JOB';\n\nexport const FORM_NEW_COMPANY = 'FORM_NEW_COMPANY';\nexport const FORM_EDIT_COMPANY = 'FORM_EDIT_COMPANY';\n\nexport const FORM_NEW_ACCESS_LEVEL = 'FORM_NEW_ACCESS_LEVEL';\nexport const FORM_EDIT_ACCESS_LEVEL = 'FORM_EDIT_ACCESS_LEVEL';\n\nexport const FORM_NEW_ABSENCE = 'FORM_NEW_ABSENCE';\nexport const FORM_NEW_ABSENCE_FILE = 'FORM_NEW_ABSENCE_FILE';\nexport const FORM_EDIT_ABSENCE = 'FORM_EDIT_ABSENCE';\n\nexport const FORM_NEW_LOCALISATION = 'FORM_NEW_LOCALISATION';\nexport const FORM_EDIT_LOCALISATION = 'FORM_EDIT_LOCALISATION';\nexport const FORM_LOCALISATION_SALARIES = 'FORM_LOCALISATION_SALARIES';\n\nexport const FORM_NEW_ACTIVITY = 'FORM_NEW_ACTIVITY';\nexport const FORM_EDIT_ACTIVITY = 'FORM_EDIT_ACTIVITY';\nexport const FORM_ACTIVITY_SALARIES = 'FORM_ACTIVITY_SALARIES';\n\nexport const FORM_NEW_SALARY = 'FORM_NEW_SALARY';\nexport const FORM_EDIT_SALARY = 'FORM_EDIT_SALARY';\n\nexport const FORM_NEW_SALARY_INFORMATION = 'FORM_NEW_SALARY_INFORMATION';\nexport const FORM_EDIT_SALARY_INFORMATION = 'FORM_EDIT_SALARY_INFORMATION';\n\nexport const FORM_NEW_SALARY_STOCKED_DOCUMENT = 'FORM_NEW_SALARY_STOCKED_DOCUMENT';\n\nexport const LIST_DEFAULT_BOOKING = 'LIST_DEFAULT_BOOKING';\nexport const FORM_NEW_DEFAULT_BOOKING = 'FORM_NEW_DEFAULT_BOOKING';\nexport const FORM_EDIT_DEFAULT_BOOKING = 'FORM_EDIT_DEFAULT_BOOKING';\n\nexport const BOOKING_HISTORY = 'BOOKING_HISTORY';\nexport const FORM_NEW_BOOKING = 'FORM_NEW_BOOKING';\nexport const BOOKING_CANCEL = 'BOOKING_CANCEL';\nexport const FORM_NEW_BOOKING_GROUP = 'FORM_NEW_BOOKING_GROUP';\nexport const FORM_NEW_BOOKING_GROUP_FROM_BOOKING = 'FORM_NEW_BOOKING_GROUP_FROM_BOOKING';\nexport const FORM_EDIT_BOOKING_GROUP = 'FORM_EDIT_BOOKING_GROUP';\nexport const FORM_EDIT_BOOKING_GROUP_RELOAD = 'FORM_EDIT_BOOKING_GROUP_RELOAD';\nexport const LIST_BOOKING_GROUP = 'LIST_BOOKING_GROUP';\nexport const LIST_SALARY_TEMPLATE = 'LIST_SALARY_TEMPLATE';\nexport const COPY_SALARY_TEMPLATE = 'COPY_SALARY_TEMPLATE';\nexport const DUPLICATE_SALARY_TEMPLATE = 'DUPLICATE_SALARY_TEMPLATE';\nexport const SHOW_SALARY_TEMPLATE = 'SHOW_SALARY_TEMPLATE';\nexport const FORM_EDIT_BOOKING = 'FORM_EDIT_BOOKING';\nexport const FORM_EDIT_BOOKING_RECURRENCE = 'FORM_EDIT_BOOKING_RECURRENCE';\nexport const FORM_EDIT_BOOKING_EXCEPTION = 'FORM_EDIT_BOOKING_EXCEPTION';\nexport const FORM_EDIT_BOOKING_SUBSTITUTE = 'FORM_EDIT_BOOKING_SUBSTITUTE';\n\nexport const FORM_EVENT_ADD = \"FORM_EVENT_ADD\";\nexport const FORM_EVENT_EXCEPTION_EDIT = \"FORM_EVENT_EXCEPTION_EDIT\";\nexport const FORM_EVENT_EXCEPTION_ADD = \"FORM_EVENT_EXCEPTION_ADD\";\nexport const FORM_EVENT_CANCEL = \"FORM_EVENT_CANCEL\";\n\nexport const FORM_NEW_TASK_GROUP = 'FORM_NEW_TASK_GROUP';\nexport const FORM_EDIT_TASK_GROUP = 'FORM_EDIT_TASK_GROUP';\n\nexport const FORM_NEW_TASK = 'FORM_NEW_TASK';\nexport const FORM_EDIT_TASK = 'FORM_EDIT_TASK';\nexport const FORM_EDIT_TASK_EXCEPTION = 'FORM_EDIT_TASK_EXCEPTION';\n\nexport const FORM_NEW_TASK_GROUP_CUSTOM_FIELD = 'FORM_NEW_TASK_GROUP_CUSTOM_FIELD';\nexport const FORM_EDIT_TASK_GROUP_CUSTOM_FIELD = 'FORM_EDIT_TASK_GROUP_CUSTOM_FIELD';\n\nexport const FORM_NEW_TEMPLATE = 'FORM_NEW_TEMPLATE';\nexport const FORM_NEW_TEMPLATE_FROM_CALENDAR = 'FORM_NEW_TEMPLATE_FROM_CALENDAR';\nexport const FORM_EDIT_TEMPLATE = 'FORM_EDIT_TEMPLATE';\nexport const TEMPLATE_LIST = 'TEMPLATE_LIST';\n\nexport const FORM_NEW_TEMPLATE_RESOURCE = 'FORM_NEW_TEMPLATE_RESOURCE';\nexport const FORM_EDIT_TEMPLATE_RESOURCE = 'FORM_EDIT_TEMPLATE_RESOURCE';\n\nexport const FORM_NEW_TEMPLATE_BOOKING = 'FORM_NEW_TEMPLATE_BOOKING';\nexport const FORM_EDIT_TEMPLATE_BOOKING = 'FORM_EDIT_TEMPLATE_BOOKING';\nexport const FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION = 'FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION';\nexport const FORM_EDIT_TEMPLATE_APPLIED_BOOKING_EXCEPTION = 'FORM_EDIT_TEMPLATE_APPLIED_BOOKING_EXCEPTION';\n\nexport const FORM_NEW_USER_INFORMATION = 'FORM_NEW_USER_INFORMATION';\nexport const FORM_EDIT_USER_INFORMATION = 'FORM_EDIT_USER_INFORMATION';\n\nexport const FORM_NEW_CHANNEL = 'FORM_NEW_CHANNEL';\nexport const FORM_EDIT_CHANNEL = 'FORM_EDIT_CHANNEL';\n\nexport const FORM_COMPANY_SELECTOR = 'FORM_COMPANY_SELECTOR';\nexport const FORM_CALENDAR_DOWNLOAD = 'FORM_CALENDAR_DOWNLOAD';\nexport const FORM_CALENDAR_RESOURCE_ORDER = 'FORM_CALENDAR_RESOURCE_ORDER';\n\nexport const FORM_FILE_ADD = 'FORM_FILE_ADD';\n\nexport const FORM_CALENDAR_SETTINGS = 'FORM_CALENDAR_SETTINGS';\nexport const FORM_CALENDAR_FILTERS = 'FORM_CALENDAR_FILTERS';\n\nexport const LIST_TEMPLATES_APPLY = 'LIST_TEMPLATES_APPLY';\n\nexport const TEMPLATES_APPLY_EDIT = 'TEMPLATES_APPLY_EDIT';\n\nexport const TIME_CLOCK_LIST = 'TIME_CLOCK_LIST';\nexport const TIME_CLOCK_SHOW = 'TIME_CLOCK_SHOW';\n\nexport const PENDING_ABSENCE_LIST = 'PENDING_ABSENCE_LIST';\n\nexport const TIME_CLOCK_BOOKING_ADD = 'TIME_CLOCK_BOOKING_ADD';\nexport const TIME_CLOCK_BOOKING_EDIT = 'TIME_CLOCK_BOOKING_EDIT';\n\nexport const FORM_COUNTER_EDIT = 'FORM_COUNTER_EDIT';\nexport const FORM_COUNTER_SHOW = 'FORM_COUNTER_SHOW';\n\nexport const FEED_LIST = 'FEED_LIST';\n\nexport const NEED_LIST = 'NEED_LIST';\n\nexport const FORM_KEEP_NOTE_LIST = 'FORM_KEEP_NOTE_LIST';\nexport const FORM_KEEP_NOTE_ADD = 'FORM_KEEP_NOTE_ADD';\nexport const FORM_KEEP_NOTE_EDIT = 'FORM_KEEP_NOTE_EDIT';\n\nexport const LOCALISATION_NEED_ADD = \"LOCALISATION_NEED_ADD\";\nexport const ACTIVITY_NEED_ADD = \"ACTIVITY_NEED_ADD\";\n\nexport const PLANNER_FORM = \"PLANNER_FORM\";\n\nexport const COUNTER_SETTINGS = \"COUNTER_SETTINGS\";\n\nexport const ABSENCE_SETTINGS = \"ABSENCE_SETTINGS\";\nexport const ACCOUNTING_SETTINGS = \"ACCOUNTING_SETTINGS\";\nexport const EMAIL_SETTINGS = \"EMAIL_SETTINGS\";\nexport const GENERAL_SETTINGS = \"GENERAL_SETTINGS\";\nexport const MODULE_SETTINGS = \"MODULE_SETTINGS\";\nexport const TIME_CLOCK_SETTINGS = \"TIME_CLOCK_SETTINGS\";\n\nexport const SALARY_IMPORT = \"SALARY_IMPORT\";\n\nexport const REPORTING_SHOW_WEEK = \"REPORTING_SHOW_WEEK\";\nexport const REPORTING_SHOW_WEEK_LOAD = \"REPORTING_SHOW_WEEK_LOAD\";\nexport const FORM_EXPORT_REPORTING = \"FORM_EXPORT_REPORTING\";\n\nexport const EDIT_PASSWORD_FORM = \"EDIT_PASSWORD_FORM\";\n\nexport const FORM_NEW_TEAM = \"FORM_NEW_TEAM\";\nexport const FORM_EDIT_TEAM = \"FORM_EDIT_TEAM\";\nexport const FORM_TEAM_SALARY = \"FORM_TEAM_SALARY\";\nexport const FORM_TEAM_ADD_MANAGER = \"FORM_TEAM_ADD_MANAGER\";\nexport const FORM_TEAM_EDIT_MANAGER = \"FORM_TEAM_EDIT_MANAGER\";\n\nexport const FORM_NEW_BOOKING_OFFER = \"FORM_NEW_BOOKING_OFFER\";\nexport const FORM_EDIT_BOOKING_OFFER = \"FORM_EDIT_BOOKING_OFFER\";\nexport const LIST_BOOKING_OFFER = \"LIST_BOOKING_OFFER\";\nexport const SHOW_BOOKING_OFFER = \"SHOW_BOOKING_OFFER\";\nexport const LIST_BOOKING_OFFER_APPLICANTS = \"LIST_BOOKING_OFFER_APPLICANTS\";\n\nexport const FORM_NEW_EVENT_OFFER = \"FORM_NEW_EVENT_OFFER\";\nexport const FORM_EDIT_EVENT_OFFER = \"FORM_EDIT_EVENT_OFFER\";\nexport const LIST_EVENT_OFFER = \"LIST_EVENT_OFFER\";\nexport const SHOW_EVENT_OFFER = \"SHOW_EVENT_OFFER\";\nexport const LIST_EVENT_OFFER_APPLICANTS = \"LIST_EVENT_OFFER_APPLICANTS\";\n\nexport const COUNTER_SIDEBAR = \"COUNTER_SIDEBAR\";\nexport const FORM_COUNTER_WITHDRAWN_ADD = \"FORM_COUNTER_WITHDRAWN_ADD\";\nexport const FORM_COUNTER_WITHDRAWN_EDIT = \"FORM_COUNTER_WITHDRAWN_EDIT\";\n\nexport const SALARY_DEFAULT_LABEL_SELECTOR = \"SALARY_DEFAULT_LABEL_SELECTOR\";\n\nexport const FORM_NEW_SLOT_EXCHANGE = \"FORM_NEW_SLOT_EXCHANGE\";\nexport const FORM_NEW_SLOT_EXCHANGE_VALIDATE = \"FORM_NEW_SLOT_EXCHANGE_VALIDATE\";\n\nexport const FORM_NEW_EVENT_EXCHANGE = \"FORM_NEW_EVENT_EXCHANGE\";\nexport const FORM_NEW_EVENT_EXCHANGE_VALIDATE = \"FORM_NEW_EVENT_EXCHANGE_VALIDATE\";\n\nexport const FORM_NEW_SALARY_TEMPLATE = 'FORM_NEW_SALARY_TEMPLATE';\nexport const FORM_NEW_SALARY_TEMPLATE_EVENT = 'FORM_NEW_SALARY_TEMPLATE_EVENT';\nexport const FORM_EDIT_SALARY_TEMPLATE_EVENT = 'FORM_EDIT_SALARY_TEMPLATE_EVENT';\n\nexport const LIST_SALARY_TEMPLATE_RECURRENCE = 'LIST_SALARY_TEMPLATE_RECURRENCE';\nexport const FORM_NEW_SALARY_TEMPLATE_RECURRENCE = 'FORM_NEW_SALARY_TEMPLATE_RECURRENCE';\nexport const FORM_EDIT_SALARY_TEMPLATE_RECURRENCE = 'FORM_EDIT_SALARY_TEMPLATE_RECURRENCE';\n\nexport const FORM_EXPENSE_ADD = 'FORM_EXPENSE_ADD';\nexport const FORM_EXPENSE_EDIT = 'FORM_EXPENSE_EDIT';\nexport const FORM_NEW_EXPENSE_FILE = 'FORM_NEW_EXPENSE_FILE';\n\n\nexport const FORM_MANAGER_ADD = 'FORM_MANAGER_ADD';\nexport const FORM_MANAGER_EDIT = 'FORM_MANAGER_EDIT';\n\n\n","import React from \"react\";\nimport * as types from \"../../constants/rightSidebar\";\n\n\nexport const openSidebar = (item:string, data?: any, props?: any) => {\n return {\n type: types.OPEN_SIDEBAR,\n item: item,\n data: data,\n props: props\n }\n};\n\nexport const setSidebarItem = (item:string, data?: any, props?: any) => {\n return {\n type: types.SET_SIDEBAR_ITEM,\n item: item,\n data: data,\n props: props\n }\n};\n\nexport const submitSidebar = () => {\n return {\n type: types.SUBMIT_SIDEBAR,\n }\n};\n\nexport const closeSidebar = (force?: boolean) => {\n return {\n type: types.CLOSE_SIDEBAR,\n force: force\n }\n};","export const AXIOS_ERROR = 'AXIOS_ERROR';","import {AXIOS_ERROR} from \"../../constants/axios\";\nimport {AxiosError} from \"axios\";\n\nexport const axiosError = (error: AxiosError) => {\n return {\n type: AXIOS_ERROR,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as models from \"../../../models/companies\";\nimport {list} from \"../../../adapters/company\";\nimport * as actions from \"../../../actions/companies\";\nimport '../../../utils/table/index.scss'\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_COMPANY} from \"../../../constants/rightSidebar\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {PAGINATION} from \"../../../constants/global\";\nimport {Granted} from \"../../../security/granted\";\n\nconst CompaniesList : React.FC = () => {\n const state = useSelector((state: RootStateOrAny) => state.companies);\n const [isLoading, setIsLoading] = useState(false);\n const [isFiltering, setIsFiltering] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [offset, setOffset] = useState(0);\n const [query, setQuery] = useState();\n const [scrollBottom, setScrollBottom] = useState(false);\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n\n useEffect(() => {\n\n dispatch(setPageTitle('Points de ventes'))\n dispatch(actions.fetchCompanies())\n\n setIsLoading(true);\n\n list({query: query, offset: 0}).then(data => { \n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchCompaniesSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n\n }, [])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setIsFiltering(true);\n setOffset(0)\n list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchCompaniesSuccess(data.data))\n setIsFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n if(scrollBottom && offset > 0 && !isLast){\n setIsLoading(true)\n list({query: query, offset: offset}).then(data => {\n if (data.data.length < 50){\n setIsLast(true);\n }else{\n setIsLast(false);\n }\n dispatch(actions.fetchCompaniesSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setScrollBottom(false);\n setOffset(prevState => prevState + 1)\n }).catch(error => dispatch(axiosError(error)))\n }\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n return () => container.removeEventListener(\"scroll\", onScrollBottom)\n\n }, [scrollBottom])\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n return
\n
\n {Granted(accessRights.EDIT_COMPANY) &&
\n \n
}\n
\n
\n \n {isFiltering ?
\n Loading...\n
: }\n
\n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
\n
\n
\n {state.payload.length ? state.payload.map((company: models.Company, index: number) => ([\n \n {company.title}\n \n ]))\n :\n !isLoading && \n }\n\n {isLoading && }\n
\n}\n\nexport default CompaniesList;","import { format } from 'date-fns'\nimport fr from 'date-fns/locale/fr'\n\nconst locales = {fr}\n\n// by providing a default string of 'PP' or any of its variants for `formatStr`\n// it will format dates in whichever way is appropriate to the locale\nexport default function (date: Date, formatStr = \"E dd MMMM uuuu\") {\n return format(date, formatStr, {\n locale: locales[\"fr\"] // or global.__localeId__\n })\n}\n","import {ModuleSettings} from \"../../models/companyGroup\";\n\nconst HasModule = (module: \"timeClock\"|\"task\"|\"accounting\"|\"payroll\"|\"slotExchange\"|\"team\"|\"label\"|\"bookingOffer\"|\"document\"|\"expense\"|\"smsNotifications\"|string) => {\n let user = localStorage.getItem('user')\n\n if (user){\n let data = JSON.parse(user)\n \n if (!data.currentSalary){\n return false;\n }\n\n const modules: ModuleSettings = data.currentSalary.companyGroup.modules;\n \n switch (module){\n case \"timeClock\":\n return modules.timeClock;\n case \"task\":\n return modules.task;\n case \"accounting\":\n return modules.accounting;\n case \"payroll\":\n return modules.payroll;\n case \"slotExchange\":\n return modules.slotExchange;\n case \"team\":\n return modules.team;\n case \"label\":\n return modules.label;\n case \"bookingOffer\":\n return modules.bookingOffer;\n case \"document\":\n return modules.document;\n case \"expense\":\n return modules.expense;\n case \"smsNotifications\":\n return modules.smsNotifications;\n default:\n return false;\n }\n }\n\n return false;\n}\n\nexport default HasModule;","import React, {useState} from \"react\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {FORM_EDIT_COMPANY} from \"../../../../constants/rightSidebar\";\nimport format from \"../../../../utils/locale\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport Loader from \"../../../../utils/loader\";\nimport HasModule from \"../../../../security/hasModule\";\nimport {Company} from \"../../../../models/companies\";\nimport * as api from \"../../../../adapters/company\";\nimport * as actions from \"../../../../actions/companies\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {Granted, GrantedAny} from \"../../../../security/granted\";\nimport {AxiosError} from \"axios\";\n\nconst CompanyInformation:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state.companies)\n const company: Company = useSelector((state: RootStateOrAny) => state.companies.single)\n const [isGeneratingToken, setIsGeneratingToken] = useState(false)\n const dispatch = useDispatch();\n\n if (state.isLoading){\n return \n }\n\n const generateToken = () => {\n setIsGeneratingToken(true)\n api.generateTimeClockToken(company.id!)\n .then(data => {\n setIsGeneratingToken(false)\n dispatch(actions.editCompanySuccess(data.data))\n })\n }\n\n const updateTimezone = (t: string) => {\n api.updateTimezone({timezone: t}, company.id!).then(data => dispatch(actions.editCompanySuccess(data.data)))\n }\n\n return <>\n
\n
\n
\n

\n Informations\n

\n
\n {GrantedAny([accessRights.EDIT_COMPANY, accessRights.DELETE_COMPANY]) &&
\n {Granted(accessRights.EDIT_COMPANY) && }\n {company.activated && Granted(accessRights.DELETE_COMPANY) && }\n {!company.activated && Granted(accessRights.DELETE_COMPANY) && }\n
}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {HasModule(\"timeClock\") && <>\n \n \n \n \n \n \n \n }\n \n
\n Nom de l'entreprise\n \n {company.title}\n
\n Tél\n \n {company.tel}\n
\n Email\n \n {company.email}\n
\n Ville\n \n {company.address.city}\n
\n Code postal\n \n {company.address.zip}\n
\n Adresse\n \n {company.address.address}\n
\n Ouverture\n \n {format(new Date(company.timesheet.openAt), 'HH:mm')}\n
\n Fermeture\n \n {format(new Date(company.timesheet.closeAt), 'HH:mm')}\n
\n Pause\n \n {company.timesheet.breakStart && company.timesheet.breakFinish ? format(new Date(company.timesheet.breakStart), 'HH:mm') + \" - \" + format(new Date(company.timesheet.breakFinish), 'HH:mm') : \"Non renseigné\"}\n
\n Récurrence des semaines\n \n {company.timesheet.recurrence}\n
\n Semaine en cours\n \n {company.timesheet.currentWeek}\n
\n Lien badgeuse\n \n {company.timeClockToken ? <>\n \n https://timeclock.sivan.io/{company.timeClockToken.substring(0,7)}...\n \n generateToken()}\n disabled={isGeneratingToken} className={'btn btn-sm btn-light'}>\n \n \n : <>\n generateToken()}\n disabled={isGeneratingToken} className={'btn btn-light'}>\n Générer un lien\n \n }\n
\n Timezone\n \n updateTimezone(String(c!.value))}\n options={[\n {label: 'Europe/Paris', value: 'Europe/Paris'},\n {label: 'America/Martinique', value: 'America/Martinique'},\n {label: 'America/Cayenne', value: 'America/Cayenne'},\n {label: 'Europe/London', value: 'Europe/London'},\n {label: 'Europe/Berlin', value: 'Europe/Berlin'},\n {label: 'Europe/Zurich', value: 'Europe/Zurich'},\n {label: 'Europe/Madrid', value: 'Europe/Madrid'},\n {label: 'Asia/Jerusalem', value: 'Asia/Jerusalem'},\n {label: 'Africa/Abidjan', value: 'Africa/Abidjan'},\n {label: 'Africa/Tunis', value: 'Africa/Tunis'},\n {label: 'Indian/Reunion', value: 'Indian/Reunion'},\n ]}\n />\n
\n
\n \n}\n\nexport default CompanyInformation;","import React from \"react\";\nimport Loader from \"../../loader\";\n\ninterface BgProps {\n showLoader?: boolean,\n hasId?: boolean,\n}\n\nconst BgSingle:React.FC = (props) => {\n const {showLoader, hasId} = props\n\n return
\n \"logo\n {showLoader && }\n
\n}\n\nexport default BgSingle;","import React, {useEffect, useState} from \"react\";\nimport {useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/companies\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as api from \"../../../adapters/company\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Company} from \"../../../models/companies\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as types from \"../../../constants/companyGroup\";\nimport {Link} from \"react-router-dom\";\nimport CompanyInformation from \"./information\";\nimport CompanyFlow from \"./flow\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BgSingle from \"../../../utils/background/single\";\nimport {Granted} from \"../../../security/granted\";\n\nconst CompanyShow: React.FC = () => {\n\n let params: {id: string} = useParams()\n const dispatch = useDispatch();\n const [currentTab, setCurrentTab] = useState(\"info\")\n const company: Company = useSelector((state: RootStateOrAny) => state.companies.payload.find((a: Company) => a.id!.toString() == params.id))\n const state = useSelector((state: RootStateOrAny) => state.companies)\n const auth = useSelector((state: RootStateOrAny) => state.auth)\n \n useEffect(() => {\n dispatch(actions.showCompany());\n if (company && params.id){\n dispatch(actions.showCompanySuccess(company));\n dispatch(setPageTitle('Entreprises', company.title))\n }else if(!company && params.id){\n api.show(parseInt(params.id)).then(data => {\n dispatch(actions.showCompanySuccess(data.data))\n dispatch(setPageTitle('Entreprises', data.data.title))\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [params.id])\n\n if (!state.single) {\n return \n }\n\n const NavMenu = () => {\n return
\n
    \n
  • \n \n
  • \n {Granted(accessRights.LIST_CUSTOMER_FLOW) && false &&
  • \n \n
  • }\n
\n \n Retour\n \n
\n }\n\n return
\n \n
\n {currentTab === 'info' && }\n {/*{currentTab === 'flow' && Granted(accessRights.LIST_CUSTOMER_FLOW) && auth.user.currentSalary.companyGroup.type === types.TYPE_PHARMACY && }*/}\n
\n
\n}\n\nexport default CompanyShow;","import * as React from \"react\";\n\nimport CompaniesList from \"../../components/companies/list\";\nimport CompanyShow from \"../../components/companies/show\";\n\nconst CompaniesPage : React.FC = () => {\n return (\n
\n \n \n
\n );\n}\n\nexport default CompaniesPage;","import React, {useEffect} from \"react\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {useDispatch} from \"react-redux\";\n\nconst Error404 : React.FC = () => {\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle(\"Erreur 404\"))\n }, [])\n\n return (\n
\n
\n \n
\n

\n 404, cette page n'existe pas !\n

\n
\n );\n}\n\nexport default Error404;","import React, {useEffect, useState} from \"react\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/auth\"\nimport * as api from \"../../../adapters/auth\";\n\nconst Confirmation: React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state.auth);\n const params: {token: string, redirect?: string} = useParams();\n const [isConfirm, setIsConfirm] = useState(false);\n\n useEffect(() => {\n dispatch(actions.confirm());\n api.confirm(params.token).then((data) => {\n\n if (params.redirect){\n localStorage.setItem('next_route', '/password')\n }\n\n dispatch(actions.confirmSuccess(data.data))\n setIsConfirm(true);\n }).catch((error) => {\n dispatch(actions.confirmFailure(error.response.data.message))\n })\n }, [])\n\n if (state.error){\n return <>\n
\n
\n
\n
\n {state.error}\n
\n
\n
\n
\n \n }\n\n if (state.isLoading){\n return <>\n
\n
\n
\n
\n
\n Loading...\n
Verification du token en cours\n
\n
\n
\n
\n \n }\n\n if (isConfirm){\n return <>\n
\n
\n
\n
\n Votre compte est activé !\n
\n
\n
\n
\n \n }\n\n return <>\n}\n\nexport default Confirmation;","import * as React from \"react\";\n\nimport Confirmation from \"../../../components/auth/confirmation\";\n\nconst ConfirmationPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default ConfirmationPage;","import React, {useEffect, useState} from \"react\";\nimport {useParams} from \"react-router-dom\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/auth\"\nimport * as api from \"../../../adapters/auth\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\n\nconst PasswordConfirmation: React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state.auth);\n const params: {token: string} = useParams();\n const [email, setEmail] = useState('');\n\n useEffect(() => {\n dispatch(actions.confirm());\n api.tokenExist(params.token).then((data) => {\n setEmail(data.data.email);\n dispatch(actions.confirmTokenExist());\n }).catch((error) => {\n dispatch(actions.confirmFailure(error.response.data.message))\n })\n }, [])\n\n const formik = useFormik({\n initialValues: {\n password: '',\n repeatPassword: ''\n },\n validationSchema: Yup.object().shape({\n password: Yup.string().required(),\n repeatPassword: Yup.string().required(),\n }),\n onSubmit: (values, formikHelpers) => {\n api.confirmPassword(values, params.token).then(data => {\n dispatch(actions.confirmSuccess(data.data));\n }).catch(error => {\n dispatch(actions.confirmFailure(error.response.data.message))\n formikHelpers.setSubmitting(false);\n })\n }\n })\n\n if (state.isLoading){\n return <>\n
\n
\n
\n
\n
\n Loading...\n
Récupération des informations\n
\n
\n
\n
\n \n }\n\n return <>\n
\n
\n
\n {state.error &&
\n {state.error}\n
}\n {email && <>\n

\n Choisissez votre mot de passe pour confirmer votre compte\n

\n
\n
\n \n \n
\n
\n \n \n
\n\n \n
\n }\n
\n
\n
\n \n}\n\nexport default PasswordConfirmation;","import * as React from \"react\";\n\nimport PasswordConfirmation from \"../../../components/auth/passwordConfirmation\";\n\nconst PasswordConfirmationPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default PasswordConfirmationPage;","export const ADD_ACCESS_LEVEL = 'ADD_ACCESS_LEVEL';\nexport const ADD_ACCESS_LEVEL_SUCCESS = 'ADD_ACCESS_LEVEL_SUCCESS';\nexport const ADD_ACCESS_LEVEL_FAILURE = 'ADD_ACCESS_LEVEL_FAILURE';\n\nexport const EDIT_ACCESS_LEVEL = 'EDIT_ACCESS_LEVEL';\nexport const EDIT_ACCESS_LEVEL_SUCCESS = 'EDIT_ACCESS_LEVEL_SUCCESS';\nexport const EDIT_ACCESS_LEVEL_FAILURE = 'EDIT_ACCESS_LEVEL_FAILURE';\n\nexport const FETCH_ACCESS_LEVELS = 'FETCH_ACCESS_LEVELS';\nexport const FETCH_ACCESS_LEVELS_SUCCESS = 'FETCH_ACCESS_LEVELS_SUCCESS';\nexport const FETCH_ACCESS_LEVELS_FAILURE = 'FETCH_ACCESS_LEVELS_FAILURE';\n\nexport const SHOW_ACCESS_LEVEL = 'SHOW_ACCESS_LEVEL';\nexport const SHOW_ACCESS_LEVEL_SUCCESS = 'SHOW_ACCESS_LEVEL_SUCCESS';\nexport const SHOW_ACCESS_LEVEL_FAILURE = 'SHOW_ACCESS_LEVEL_FAILURE';\n","import * as types from \"../../constants/accessLevel\";\nimport * as models from \"../../models/accessLevel\";\nimport {AccessLevel} from \"../../models/accessLevel\";\n\nexport const addAccessLevel = () => {\n return {\n type: types.ADD_ACCESS_LEVEL,\n }\n}\n\nexport const addAccessLevelSuccess = (accessLevel: models.AccessLevel) => {\n return {\n type: types.ADD_ACCESS_LEVEL_SUCCESS,\n accessLevel: accessLevel,\n }\n}\n\nexport const addAccessLevelFailure = (error: string) => {\n return {\n type: types.ADD_ACCESS_LEVEL_FAILURE,\n accessLevel: null,\n accessLevels: null,\n error: error\n }\n}\n\nexport const editAccessLevel = () => {\n return {\n type: types.EDIT_ACCESS_LEVEL,\n }\n}\n\nexport const editAccessLevelSuccess = (accessLevel: models.AccessLevel) => {\n return {\n type: types.EDIT_ACCESS_LEVEL_SUCCESS,\n accessLevel: accessLevel\n }\n}\n\nexport const editAccessLevelFailure = (error: string) => {\n return {\n type: types.EDIT_ACCESS_LEVEL_FAILURE,\n accessLevel: error\n }\n}\n\nexport const fetchAccessLevels = () => {\n return {\n type: types.FETCH_ACCESS_LEVELS,\n }\n}\n\nexport const fetchAccessLevelsFailure = (error: string) => {\n return {\n type: types.FETCH_ACCESS_LEVELS_FAILURE,\n accessLevel: null,\n accessLevels: [],\n error\n }\n}\n\nexport const fetchAccessLevelsSuccess = (accessLevels: models.AccessLevels) => {\n return {\n type: types.FETCH_ACCESS_LEVELS_SUCCESS,\n accessLevel: null,\n accessLevels: accessLevels\n }\n}\n\n\nexport const showAccessLevel = () => {\n return {\n type: types.SHOW_ACCESS_LEVEL,\n }\n}\nexport const showAccessLevelSuccess = (accessLevel: models.AccessLevel) => {\n return {\n type: types.SHOW_ACCESS_LEVEL_SUCCESS,\n accessLevel: accessLevel\n }\n}\nexport const showAccessLevelFailure = (error: string) => {\n return {\n type: types.SHOW_ACCESS_LEVEL_FAILURE,\n accessLevel: null,\n accessLevels: null,\n error: error\n }\n}","import React, { useEffect } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport * as models from \"../../../models/accessLevel\";\n\nimport { FORM_NEW_ACCESS_LEVEL } from \"../../../constants/rightSidebar\";\n\nimport * as api from \"../../../adapters/accessLevel\";\nimport * as actions from \"../../../actions/accessLevel\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nconst AccessLevelList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.accessLevel);\n\n useEffect(() => {\n dispatch(setPageTitle('Droits d\\'accès'))\n dispatch(setHelpProductSheetIds([10]))\n\n dispatch(actions.fetchAccessLevels())\n api.select().then(data => {\n dispatch(actions.fetchAccessLevelsSuccess(data.data))\n }).catch(error => dispatch(axiosError(error)))\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n\n return (\n
\n
\n \n
\n\n {state.payload.length ? state.payload.map((accessLevel: models.AccessLevel) => ([\n \n {accessLevel.title}\n \n ]))\n :\n \n }\n
\n )\n}\n\nexport default AccessLevelList;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/accessLevel\";\nimport * as api from \"../../../adapters/accessLevel\";\nimport '../../../utils/checkboxAndRadios/index.scss'\nimport {setPageTitle} from \"../../../actions/header\";\nimport {AccessLevel} from \"../../../models/accessLevel\";\nimport * as accessRightsConstants from \"../../../constants/accessRight\";\nimport {Granted} from \"../../../security/granted\";\nimport {Link} from \"react-router-dom\";\nimport {editAccessLevelSuccess} from \"../../../actions/accessLevel\";\nimport BgSingle from \"../../../utils/background/single\";\nimport HasModule from \"../../../security/hasModule\";\n\nexport const AccessLevelShow: React.FC = (props) => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const state = useSelector((state: RootStateOrAny) => state.accessLevel)\n const accessLevel: AccessLevel = useSelector((state: RootStateOrAny) => state.accessLevel.payload.find((a: AccessLevel) => a.id!.toString() === params.id))\n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n setIsLoading(!!params.id)\n if (accessLevel){\n dispatch((actions.showAccessLevelSuccess(accessLevel)))\n dispatch(setPageTitle('Droits d\\'accès', accessLevel.title))\n setIsLoading(false)\n }else if(params.id){\n api.get(params.id).then(data => {\n actions.showAccessLevelSuccess(data.data)\n dispatch(setPageTitle('Droits d\\'accès', data.data.title))\n setIsLoading(false)\n })\n }\n }, [params.id])\n\n\n const addOrRemove = (underscoreCase: string) => {\n setIsLoading(true);\n api.accessRight({underscoreCase: underscoreCase}, accessLevel.id).then(data => {\n dispatch(editAccessLevelSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n if (!accessLevel || !params.id){\n return \n }\n\n return
\n
\n
\n \n Retour\n \n
\n
\n
\n {Object.entries(accessRightsConstants.availableAccessRight).map(([key, obj], index) => {\n\n if (obj.module !== \"\"){\n if (!HasModule(obj.module)){\n return <>\n }\n }\n\n return <>\n \n {obj.title}\n \n \n })}\n
\n
\n {Object.entries(accessRightsConstants.availableAccessRight).map(([key, obj], index) => {\n\n if (obj.module !== \"\"){\n if (!HasModule(obj.module)){\n return <>\n }\n }\n\n return <>\n
\n
    \n {obj.items.map((item, key) => <>\n
  • \n
    \n
    \n \n
    \n
    \n
    \n {\n e.stopPropagation();\n addOrRemove(item.underscoreCase)\n }}\n className=\"form-check-input\"\n type=\"checkbox\"\n id={`accessRight${key}`}\n />\n
    \n
    \n
    \n
  • \n )}\n
\n
\n \n })}\n
\n
\n
\n
\n}\n\nexport default AccessLevelShow;","import * as React from \"react\";\n\nimport AccessLevelList from \"../../components/accessLevel/list\";\nimport AccessLevelShow from \"../../components/accessLevel/show\";\n\nconst AccessLevelPage : React.FC = () => {\n return (\n
\n \n \n
\n )\n}\n\nexport default AccessLevelPage;","export const ADD_ABSENCE = 'ADD_ABSENCE';\nexport const ADD_ABSENCE_SUCCESS = 'ADD_ABSENCE_SUCCESS';\nexport const ADD_ABSENCE_FAILURE = 'ADD_ABSENCE_FAILURE';\n\nexport const EDIT_ABSENCE = 'EDIT_ABSENCE';\nexport const EDIT_ABSENCE_SUCCESS = 'EDIT_ABSENCE_SUCCESS';\nexport const EDIT_ABSENCE_FAILURE = 'EDIT_ABSENCE_FAILURE';\n\nexport const FETCH_ABSENCES = 'FETCH_ABSENCES';\nexport const FETCH_ABSENCES_SUCCESS = 'FETCH_ABSENCES_SUCCESS';\nexport const FETCH_ABSENCES_FAILURE = 'FETCH_ABSENCES_FAILURE';\n\nexport const SHOW_ABSENCE = 'SHOW_ABSENCE';\nexport const SHOW_ABSENCE_SUCCESS = 'SHOW_ABSENCE_SUCCESS';\nexport const SHOW_ABSENCE_FAILURE = 'SHOW_ABSENCE_FAILURE';\n\nexport const CANCEL_ABSENCE_SUCCESS = 'CANCEL_ABSENCE_SUCCESS';\n\nexport const TYPE_CP = 1;\nexport const TYPE_RTT = 2;\nexport const TYPE_CSS = 3;\nexport const TYPE_REPOS = 4;\nexport const TYPE_MALADIE = 5;\nexport const TYPE_EVENT = 6;\nexport const TYPE_CT = 7;\nexport const TYPE_FORM = 8;\nexport const TYPE_MAT = 9;\nexport const TYPE_PAT = 10;\nexport const TYPE_PAR = 11;\nexport const TYPE_CHILD_DISEASE = 12;\nexport const TYPE_WORK_ACCIDENT = 13;\nexport const TYPE_UNJUSTIFIED = 14;\nexport const TYPE_PROTECTIVE_LAYOFF = 15;\nexport const TYPE_DISCIPLINARY_DISMISSAL = 16;\nexport const TYPE_TRAVEL_ACCIDENT = 17;\n\nexport const TYPE_NAMES = {\n 1: 'Congé payé',\n 2: 'RTT',\n 3: 'Congé sans solde',\n 4: 'Repos',\n 5: 'Arrêt maladie',\n 6: 'Évènement exceptionnel',\n 8: 'Formation',\n 9: 'Congé maternité',\n 10: 'Congé paternité',\n 11: 'Congé parental',\n 12: 'Enfant malade',\n 13: 'Accident de travail',\n 14: 'Absence non justifiée',\n 15: 'Mise à pied conservatoire',\n 16: 'Mise à pied disciplinaire',\n 17: 'Accident de trajet'\n};\n\nexport const COMPLEMENT_ALL_DAY = 1;\nexport const COMPLEMENT_MORNING = 2;\nexport const COMPLEMENT_AFTERNOON = 3;\n\nexport const COMPLEMENT_NAMES = {\n 1: 'Toute la journée',\n 2: 'Matin',\n 3: 'Après midi',\n}\n\nexport const EVENT_TYPE_WEDDING = 1;\nexport const EVENT_TYPE_BIRTH = 2;\nexport const EVENT_TYPE_DEATH = 3;\nexport const EVENT_TYPE_ELSE = 4;\n\nexport const EVENT_TYPE_NAMES = {\n 1: 'Mariage/Pacs',\n 2: 'Naissance/Adoption',\n 3: 'Décés',\n 4: 'Autre',\n}\n\nexport const STATUS_PENDING = 1;\nexport const STATUS_ACCEPTED = 2;\nexport const STATUS_REFUSED = 3;\n\nexport const STATUS_NAMES = {\n 1: 'En attente',\n 2: 'Accepté',\n 3: 'Refusé',\n}\n\nexport const EVENT_TYPE_PRECISION_WEDDING_WEDDING_SALARY = 1;\nexport const EVENT_TYPE_PRECISION_WEDDING_PACS_SALARY = 2;\nexport const EVENT_TYPE_PRECISION_WEDDING_WEDDING_CHILD = 3;\nexport const EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING = 4;\nexport const EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING_IN_LAW = 5;\nexport const EVENT_TYPE_PRECISION_WEDDING_ASCENDANT = 6;\nexport const EVENT_TYPE_PRECISION_WEDDING_GRANDCHILD = 7;\n\nlet eventPrecisionWedding: number[] = [\n EVENT_TYPE_PRECISION_WEDDING_WEDDING_SALARY,\n EVENT_TYPE_PRECISION_WEDDING_PACS_SALARY,\n EVENT_TYPE_PRECISION_WEDDING_WEDDING_CHILD,\n EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING,\n EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING_IN_LAW,\n EVENT_TYPE_PRECISION_WEDDING_ASCENDANT,\n EVENT_TYPE_PRECISION_WEDDING_GRANDCHILD\n];\n\nlet eventPrecisionWeddingName: string[] = [];\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_WEDDING_SALARY] = \"Mariage du salarié\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_PACS_SALARY] = \"Pacs du salarié\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_WEDDING_CHILD] = \"Mariage d'un enfant\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING] = \"Mariage d'un frère ou d'une soeur\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_WEDDING_SIBLING_IN_LAW] = \"Marage d'un beau frère ou d'une belle soeur\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_ASCENDANT] = \"Mariage d'un ascendant\";\neventPrecisionWeddingName[EVENT_TYPE_PRECISION_WEDDING_GRANDCHILD] = \"Mariage d'un petit-enfant\";\n\nexport const getEventPrecisionChoices = (eventType: number) => {\n switch (eventType){\n case EVENT_TYPE_WEDDING:\n return [...eventPrecisionWedding.map((val => {return {value: val, label: eventPrecisionWeddingName[val]}}))]\n case EVENT_TYPE_BIRTH:\n return [...eventPrecisionBirth.map((val => {return {value: val, label: eventPrecisionBirthName[val]}}))]\n case EVENT_TYPE_DEATH:\n return [...eventPrecisionDeath.map((val => {return {value: val, label: eventPrecisionDeathName[val]}}))]\n case EVENT_TYPE_ELSE:\n return [...eventPrecisionElse.map((val => {return {value: val, label: eventPrecisionElseName[val]}}))]\n default:\n return [\n {label: \"Aucune option\", value: 0}\n ]\n }\n}\n\nexport const getTypeChoices = () => {\n return [\n {value: TYPE_CP, label: TYPE_NAMES[TYPE_CP]},\n {value: TYPE_RTT, label: TYPE_NAMES[TYPE_RTT]},\n {value: TYPE_CSS, label: TYPE_NAMES[TYPE_CSS]},\n {value: TYPE_REPOS, label: TYPE_NAMES[TYPE_REPOS]},\n {value: TYPE_MALADIE, label: TYPE_NAMES[TYPE_MALADIE]},\n {value: TYPE_EVENT, label: TYPE_NAMES[TYPE_EVENT]},\n {value: TYPE_FORM, label: TYPE_NAMES[TYPE_FORM]},\n {value: TYPE_MAT, label: TYPE_NAMES[TYPE_MAT]},\n {value: TYPE_PAT, label: TYPE_NAMES[TYPE_PAT]},\n {value: TYPE_PAR, label: TYPE_NAMES[TYPE_PAR]},\n {value: TYPE_CHILD_DISEASE, label: TYPE_NAMES[TYPE_CHILD_DISEASE]},\n {value: TYPE_WORK_ACCIDENT, label: TYPE_NAMES[TYPE_WORK_ACCIDENT]},\n {value: TYPE_UNJUSTIFIED, label: TYPE_NAMES[TYPE_UNJUSTIFIED]},\n {value: TYPE_PROTECTIVE_LAYOFF, label: TYPE_NAMES[TYPE_PROTECTIVE_LAYOFF]},\n {value: TYPE_DISCIPLINARY_DISMISSAL, label: TYPE_NAMES[TYPE_DISCIPLINARY_DISMISSAL]},\n {value: TYPE_TRAVEL_ACCIDENT, label: TYPE_NAMES[TYPE_TRAVEL_ACCIDENT]}\n ]\n}\n\nexport const getTypeChoice = (choice: number) => {\n return getTypeChoices().find(c => c.value === choice)!\n}\n\nexport const getComplementChoices = () => {\n return [\n {value: COMPLEMENT_ALL_DAY, label: COMPLEMENT_NAMES[COMPLEMENT_ALL_DAY]},\n {value: COMPLEMENT_MORNING, label: COMPLEMENT_NAMES[COMPLEMENT_MORNING]},\n {value: COMPLEMENT_AFTERNOON, label: COMPLEMENT_NAMES[COMPLEMENT_AFTERNOON]},\n ];\n}\n\nexport const getEventTypeChoices = () => {\n return [\n {value: EVENT_TYPE_WEDDING, label: EVENT_TYPE_NAMES[EVENT_TYPE_WEDDING]},\n {value: EVENT_TYPE_BIRTH, label: EVENT_TYPE_NAMES[EVENT_TYPE_BIRTH]},\n {value: EVENT_TYPE_DEATH, label: EVENT_TYPE_NAMES[EVENT_TYPE_DEATH]},\n {value: EVENT_TYPE_ELSE, label: EVENT_TYPE_NAMES[EVENT_TYPE_ELSE]},\n ];\n}\n\nexport const getStatusChoices = () => {\n return [\n {value: STATUS_PENDING, label: STATUS_NAMES[STATUS_PENDING]},\n {value: STATUS_ACCEPTED, label: STATUS_NAMES[STATUS_ACCEPTED]},\n {value: STATUS_REFUSED, label: STATUS_NAMES[STATUS_REFUSED]},\n ];\n}\n\nexport const EVENT_TYPE_PRECISION_BIRTH_BIRTH = 1;\nexport const EVENT_TYPE_PRECISION_BIRTH_ADOPTION = 2;\n\nlet eventPrecisionBirth: number[] = [\n EVENT_TYPE_PRECISION_BIRTH_BIRTH,\n EVENT_TYPE_PRECISION_BIRTH_ADOPTION\n]\n\nlet eventPrecisionBirthName: string[] = [];\neventPrecisionBirthName[EVENT_TYPE_PRECISION_BIRTH_BIRTH] = \"Naissance\";\neventPrecisionBirthName[EVENT_TYPE_PRECISION_BIRTH_ADOPTION] = \"Adoption\";\n\n\nexport const EVENT_TYPE_PRECISION_DEATH_PARENT_IN_LAW = 1;\nexport const EVENT_TYPE_PRECISION_DEATH_PARTNER = 2;\nexport const EVENT_TYPE_PRECISION_DEATH_CHILD = 3;\nexport const EVENT_TYPE_PRECISION_DEATH_SIBLING = 4;\nexport const EVENT_TYPE_PRECISION_DEATH_GRAND_PARENTS = 5;\nexport const EVENT_TYPE_PRECISION_DEATH_PARENTS = 6;\nexport const EVENT_TYPE_PRECISION_DEATH_SIBLING_IN_LAW = 7;\nexport const EVENT_TYPE_PRECISION_DEATH_CHILD_IN_LAW = 8;\nexport const EVENT_TYPE_PRECISION_DEATH_GRANDCHILD = 9;\n\nlet eventPrecisionDeath: number[] = [\n EVENT_TYPE_PRECISION_DEATH_PARENT_IN_LAW,\n EVENT_TYPE_PRECISION_DEATH_PARTNER,\n EVENT_TYPE_PRECISION_DEATH_CHILD,\n EVENT_TYPE_PRECISION_DEATH_SIBLING,\n EVENT_TYPE_PRECISION_DEATH_GRAND_PARENTS,\n EVENT_TYPE_PRECISION_DEATH_PARENTS,\n EVENT_TYPE_PRECISION_DEATH_SIBLING_IN_LAW,\n EVENT_TYPE_PRECISION_DEATH_CHILD_IN_LAW,\n EVENT_TYPE_PRECISION_DEATH_GRANDCHILD\n]\n\nlet eventPrecisionDeathName: string[] = [];\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_PARENT_IN_LAW] = \"Décès du beau père ou de la belle mère\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_PARTNER] = \"Décès du conjoint, concubin ou du partenaire lié par un PACS\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_CHILD] = \"Décès d’un enfant\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_SIBLING] = \"Décès d’un frère ou d’une sœur\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_GRAND_PARENTS] = \"Décès d'un grand-parent\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_PARENTS] = \"Décès du père ou de la mère\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_SIBLING_IN_LAW] = \"Décès d'un beau-frère ou d'une belle-soeur\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_CHILD_IN_LAW] = \"Décès d'un gendre ou d'une belle-fille\";\neventPrecisionDeathName[EVENT_TYPE_PRECISION_DEATH_GRANDCHILD] = \"Décès d'un petit-enfant\";\n\nexport const EVENT_TYPE_PRECISION_ELSE_CHILD_HANDICAP = 1;\nexport const EVENT_TYPE_PRECISION_ELSE_MOVE = 2;\nexport const EVENT_TYPE_PRECISION_ELSE_CALL_OF_DUTY = 3;\nexport const EVENT_TYPE_PRECISION_ELSE_PARTNER_DISEASE = 4;\nexport const EVENT_TYPE_PRECISION_ELSE_PROFESSIONAL_EXAM = 5;\nexport const EVENT_TYPE_PRECISION_ELSE_CHILD_CEREMONY = 6;\n\nlet eventPrecisionElse: number[] = [\n EVENT_TYPE_PRECISION_ELSE_CHILD_HANDICAP,\n EVENT_TYPE_PRECISION_ELSE_MOVE,\n EVENT_TYPE_PRECISION_ELSE_CALL_OF_DUTY,\n EVENT_TYPE_PRECISION_ELSE_PARTNER_DISEASE,\n EVENT_TYPE_PRECISION_ELSE_PROFESSIONAL_EXAM,\n EVENT_TYPE_PRECISION_ELSE_CHILD_CEREMONY,\n]\n\nlet eventPrecisionElseName: string[] = [];\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_CHILD_HANDICAP] = \"Handicap survenant chez un enfant\";\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_MOVE] = \"Déménagement\";\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_CALL_OF_DUTY] = \"Appel de préparation à la défense\";\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_PARTNER_DISEASE] = \"Conjoint malade ou hospitalisé\";\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_PROFESSIONAL_EXAM] = \"Examen professionnel consécutif à une période de formation continue\";\neventPrecisionElseName[EVENT_TYPE_PRECISION_ELSE_CHILD_CEREMONY] = \"Cérémonie d'un enfant (communion solennelle...)\";\n\n","import * as types from \"../../constants/absence\";\nimport * as models from \"../../models/absence\";\n\nexport const addAbsence = () => {\n return {\n type: types.ADD_ABSENCE,\n }\n}\n\nexport const addAbsenceSuccess = (absence: models.Absence) => {\n return {\n type: types.ADD_ABSENCE_SUCCESS,\n absence: absence,\n }\n}\n\nexport const addAbsenceFailure = (error: string) => {\n return {\n type: types.ADD_ABSENCE_FAILURE,\n absence: null,\n absences: null,\n error: error\n }\n}\n\nexport const editAbsence = () => {\n return {\n type: types.EDIT_ABSENCE,\n }\n}\n\nexport const cancelAbsenceSuccess = (absence: models.Absence) => {\n return {\n type: types.CANCEL_ABSENCE_SUCCESS,\n absence: absence\n }\n}\n\nexport const editAbsenceSuccess = (absence: models.Absence) => {\n return {\n type: types.EDIT_ABSENCE_SUCCESS,\n absence: absence\n }\n}\n\nexport const editAbsenceFailure = (error: string) => {\n return {\n type: types.EDIT_ABSENCE_FAILURE,\n absence: null,\n absences: null,\n error: error\n }\n}\n\nexport const fetchAbsences = () => {\n return {\n type: types.FETCH_ABSENCES,\n }\n}\n\nexport const fetchAbsencesFailure = (error: string) => {\n return {\n type: types.FETCH_ABSENCES_FAILURE,\n absence: null,\n absences: [],\n error: error\n }\n}\n\nexport const fetchAbsencesSuccess = (absences: models.Absences) => {\n return {\n type: types.FETCH_ABSENCES_SUCCESS,\n absence: null,\n absences: absences\n }\n}\n\n\nexport const showAbsence = () => {\n return {\n type: types.SHOW_ABSENCE,\n }\n}\nexport const showAbsenceSuccess = (absence: models.Absence) => {\n return {\n type: types.SHOW_ABSENCE_SUCCESS,\n absence: absence\n }\n}\nexport const showAbsenceFailure = (error: string) => {\n return {\n type: types.SHOW_ABSENCE_FAILURE,\n absence: null,\n absences: null,\n error: error\n }\n}","import * as xhr from \"../xhr\";\n\ninterface listPayload {\n offset? : number,\n status? : string[],\n types? : string[],\n dates? : [string|null, string|null],\n salaries?: number[],\n companies?: number[],\n}\n\nexport function list(requestData: listPayload, signal: AbortSignal){\n return xhr.post('absence/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: any, id: number){\n return xhr.post('absence/edit/' + id.toString(), requestData);\n}\n\nexport function editStatus(requestData: { status: 1|2|3 }, id: number){\n return xhr.post(`absence/edit/${id}/status`, requestData);\n}\n\nexport function create(requestData: any, options?:xhr.Options){\n return xhr.post('absence/create', requestData, options);\n}\n\nexport function get(id: string){\n return xhr.get('absence/show/' + id);\n}\n\nexport function listForSalary(id: number, filters: { offset: number, limit: number }){\n return xhr.post('absence/list_salary/' + id, filters);\n}\n\nexport function counter(id: string){\n return xhr.get('absence/counter/' + id);\n}\n\nexport function balance(absence: {start: string, end: string}, salary: number, signal: AbortSignal){\n return xhr.post('absence/balance/' + salary, absence, {signal: signal});\n}\n\nexport function cancel(id: number){\n return xhr.get('absence/delete/' + id);\n}\n\nexport function downloadFile(id: string, options?:xhr.Options){\n return xhr.get('absence/justification/'+ id +'/download', options);\n}\n\nexport function days(id: string){\n return xhr.get('absence/days/'+ id);\n}","import moment from \"moment\";\n\nexport const FETCH_EVENTS = 'FETCH_EVENTS';\nexport const FETCH_EVENTS_SUCCESS = 'FETCH_EVENTS_SUCCESS';\nexport const FETCH_ALL_EVENTS_SUCCESS = 'FETCH_ALL_EVENTS_SUCCESS';\nexport const FETCH_EVENTS_FAILURE = 'FETCH_EVENTS_FAILURE';\n\nexport const FETCH_PRESENCE_EVENTS_SUCCESS = 'FETCH_PRESENCE_EVENTS_SUCCESS';\n\nexport const FETCH_NEED_EVENTS_SUCCESS = 'FETCH_NEED_EVENTS_SUCCESS';\n\nexport const FETCH_TASKS_SUCCESS = 'FETCH_TASKS_SUCCESS';\n\nexport const FETCH_RESOURCES = 'FETCH_RESOURCES';\nexport const FETCH_RESOURCES_SUCCESS = 'FETCH_RESOURCES_SUCCESS';\nexport const FETCH_RESOURCES_FAILURE = 'FETCH_RESOURCES_FAILURE';\n\nexport const FETCH_WORKING_TIMES = 'FETCH_WORKING_TIMES';\nexport const FETCH_WORKING_TIMES_SUCCESS = 'FETCH_WORKING_TIMES_SUCCESS';\nexport const FETCH_WORKING_TIMES_FAILURE = 'FETCH_WORKING_TIMES_FAILURE';\n\nexport const FETCH_TITLE_SUCCESS = 'FETCH_TITLE_SUCCESS';\nexport const FETCH_PAYROLL_SUCCESS = 'FETCH_TITLE_SUCCESS';\n\nexport const SET_EVENT_CLICK_ARG = 'SET_EVENT_CLICK_ARG';\n\nexport const SHOW_EVENT_POP = 'SHOW_EVENT_POP';\nexport const HIDE_EVENT_POP = 'HIDE_EVENT_POP';\n\nexport const SHOW_EVENT_POPUP = 'SHOW_EVENT_POPUP';\nexport const HIDE_EVENT_POPUP = 'HIDE_EVENT_POPUP';\n\nexport const SHOW_TEMPLATE_EVENT_POP = 'SHOW_TEMPLATE_EVENT_POP';\nexport const HIDE_TEMPLATE_EVENT_POP = 'HIDE_TEMPLATE_EVENT_POP';\n\nexport const SHOW_RESOURCE_ACTIONS = 'SHOW_RESOURCE_ACTIONS';\nexport const HIDE_RESOURCE_ACTIONS = 'HIDE_RESOURCE_ACTIONS';\n\nexport const CANCEL_EVENT = 'CANCEL_EVENT';\nexport const CANCEL_EVENTS = 'CANCEL_EVENTS';\n\nexport const REFRESH = 'REFRESH';\nexport const SET_COMPANIES = 'SET_COMPANIES';\nexport const SET_TEAMS = 'SET_TEAMS';\nexport const SET_JOB = 'SET_JOB';\nexport const SET_GROUP_BY = 'SET_GROUP_BY';\nexport const SET_VIEW = 'SET_VIEW';\n\nexport const SET_GENERATED = \"SET_GENERATED\";\n\nexport const CANCEL_BOOKING_OFFER = 'CANCEL_BOOKING_OFFER';\nexport const ADD_BOOKING_OFFER = 'ADD_BOOKING_OFFER';\nexport const FETCH_BOOKING_OFFERS_EVENT = 'FETCH_BOOKING_OFFERS_EVENT';\nexport const FETCH_BOOKING_OFFERS_EVENT_SUCCESS = 'FETCH_BOOKING_OFFERS_EVENT_SUCCESS';\nexport const FETCH_BOOKING_OFFERS_EVENT_FAILURE = 'FETCH_BOOKING_OFFERS_EVENT_FAILURE';\n\nexport const REFRESH_RESOURCE = 'REFRESH_RESOURCE';\nexport const REFRESH_RESOURCE_SUCCESS = 'REFRESH_RESOURCE_SUCCESS';\nexport const REFRESH_RESOURCE_FAILURE = 'REFRESH_RESOURCE_FAILURE';\n\nexport const EVENT_EDIT = 'EVENT_EDIT';\nexport const EVENT_EDIT_ABORT = 'EVENT_EDIT_ABORT';\nexport const EVENT_EDIT_VALIDATE = 'EVENT_EDIT_VALIDATE';\n\nexport const CALENDAR_EVENTS_GLOBAL = \"CALENDAR_EVENTS_GLOBAL\";\nexport const CALENDAR_EVENTS_SINGLE = \"CALENDAR_EVENTS_SINGLE\";\nexport const CALENDAR_SIGNED_GLOBAL = \"CALENDAR_SIGNED_GLOBAL\";\nexport const CALENDAR_SIGNED_REPORTING = \"CALENDAR_SIGNED_REPORTING\";\nexport const CALENDAR_SIGNED_SINGLE = \"CALENDAR_SIGNED_SINGLE\";\nexport const CALENDAR_ABSENCE = \"CALENDAR_ABSENCE\";\nexport const CALENDAR_TASK = \"CALENDAR_TASK\";\nexport const CALENDAR_TIME_SHEET = \"CALENDAR_TIME_SHEET\";\nexport const CALENDAR_REPORT_TIME_SHEET = \"CALENDAR_TIME_SHEET\";\n\nexport const RESOURCE_TIMELINE_DAY_VIEW = \"resourceTimelineDay\";\nexport const RESOURCE_TIMELINE_VIEW = \"resourceTimeline\";\nexport const RESOURCE_TIMELINE_WEEK_VIEW = \"resourceTimelineWeek\";\nexport const RESOURCE_TIMELINE_MONTH_VIEW = \"resourceTimelineMonth\";\n\nexport const LIST_DAY_VIEW = \"listDay\";\nexport const LIST_WEEK_VIEW = \"listWeek\";\nexport const LIST_MONTH_VIEW = \"listMonth\";\n\nexport const TIME_GRID_DAY_VIEW = \"timeGridDay\";\nexport const TIME_GRID_WEEK_VIEW = \"timeGridWeek\";\nexport const DAY_GRID_MONTH_VIEW = \"dayGridMonth\";\n\nexport const RESOURCE_TYPE_EVENT = 'TYPE_EVENT';\nexport const RESOURCE_TYPE_SIGNED = 'TYPE_SIGNED';\nexport const RESOURCE_TYPE_KEEP_NOTE = 'TYPE_KEEP_NOTE';\nexport const RESOURCE_TYPE_TASK = 'TYPE_TASK';\nexport const RESOURCE_TYPE_TEMPLATE = 'TYPE_TEMPLATE';\nexport const RESOURCE_TYPE_TEMPLATE_APPLIED = 'TYPE_TEMPLATE_APPLIED';\n\nexport const RESOURCE_HIERARCHY_GROUP = 'group';\nexport const RESOURCE_HIERARCHY_PARENT = 'parent';\nexport const RESOURCE_HIERARCHY_CHILD = 'child';\nexport const RESOURCE_HIERARCHY_GRAND_CHILD = 'grandChild';\n\nexport const EVENT_TYPE_EVENT = 'event';\nexport const EVENT_TYPE_EVENT_EXCEPTION = 'eventException';\nexport const EVENT_TYPE_BACKGROUND = 'eventBackground';\nexport const EVENT_TYPE_OUTER = 'outerEvent';\n\nexport const EVENT_TYPE_TIME_CLOCK = 'timeClock';\nexport const EVENT_TYPE_TIME_CLOCK_EXCEPTION = 'timeClockException';\n\nexport const EVENT_TYPE_TIME_CLOCK_MISSING = 'timeClockMissing';\nexport const EVENT_TYPE_ABSENCE = 'absence';\n\nexport const EVENT_TYPE_BOOKING = 'booking';\nexport const EVENT_TYPE_BOOKING_OUTER = 'bookingOuter';\nexport const EVENT_TYPE_BOOKING_EXCEPTION = 'bookingException';\n\nexport const EVENT_TYPE_TEMPLATE_EVENT = 'templateEvent';\nexport const EVENT_TYPE_TEMPLATE_EVENT_EXCEPTION = 'templateEventException';\nexport const EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION = 'templateAppliedEventException';\n\nexport const EVENT_TYPE_TEMPLATE_APPLIED_EVENT = 'templateAppliedEvent';\nexport const EVENT_TYPE_TEMPLATE_EVENT_APPLIED_EXCEPTION = 'templateAppliedEventException';\nexport const EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION = 'templateAppliedEventAppliedException';\n\nexport const EVENT_TYPE_OFFER_PENDING = 'eventOfferPending';\nexport const EVENT_TYPE_OFFER_VALIDATED = 'eventOfferValidated';\n\nexport const EVENT_TYPE_PRESENCE = 'presence';\nexport const EVENT_TYPE_PRESENCE_GLOBAL = 1;\nexport const EVENT_TYPE_PRESENCE_BY_JOB = 2;\n\nexport const EVENT_TYPE_KEEP_NOTE = 'keepNote';\n\nexport const EVENT_TYPE_TASK = 'task';\nexport const EVENT_TYPE_TASK_EXCEPTION = 'taskException';\n\n\nexport const SORT_BY_JOB = 1;\nexport const SORT_BY_LOCALISATION = 2;\nexport const SORT_BY_ACTIVITY = 3;\nexport const SORT_TASK_BY_GROUP = 2;\n\nexport const PRECISION_FIFTEEN_MINUTES = '{\"minutes\": 15}';\nexport const PRECISION_THIRTY_MINUTES = '{\"minutes\": 30}';\nexport const PRECISION_ONE_HOUR = '{\"hour\": 1}';\nexport const PRECISION_THREE_HOUR = '{\"hour\": 3}';\nexport const PRECISION_ONE_DAY = '{\"day\": 1}';\n\nexport const getCalendarTypesChoices = () => [\n {label: 'Planifié', value: CALENDAR_EVENTS_GLOBAL},\n {label: 'Taches', value: CALENDAR_TASK},\n]\n\nexport const getCalendarTypesChoice = (calendar: string) => getCalendarTypesChoices().find(c => c.value === calendar) || {label: 'Planifié', value: CALENDAR_EVENTS_GLOBAL}\n\nexport const getSortByTypeChoices = () => [\n {label: 'Collaborateurs', value: SORT_BY_JOB},\n {label: 'Emplacements', value: SORT_BY_LOCALISATION},\n {label: 'Activités', value: SORT_BY_ACTIVITY},\n]\nexport const getSortByTypeChoice = (choice: number) => getSortByTypeChoices().find(c => c.value === choice)!\n\n// This permit to find the date of specifics labour days\nfunction getEasterDate(year: number) {\n const f = Math.floor;\n const G = year % 19;\n const C = f(year / 100);\n const H = (C - f(C / 4) - f((8 * C + 13) / 25) + 19 * G + 15) % 30;\n const I = H - f(H / 28) * (1 - f(29 / (H + 1)) * f((21 - G) / 11));\n const J = (year + f(year / 4) + I + 2 - C + f(C / 4)) % 7;\n const L = I - J;\n const month = 3 + f((L + 40) / 44);\n const day = L + 28 - 31 * f(month / 4);\n return new Date(year, month - 1, day);\n}\n\nfunction getMovableHolidays(year: number) {\n const easter = getEasterDate(year);\n const lundiPaques = new Date(easter);\n lundiPaques.setDate(easter.getDate() + 1);\n \n const ascension = new Date(easter);\n ascension.setDate(easter.getDate() + 39);\n\n const pentecote = new Date(easter);\n pentecote.setDate(easter.getDate() + 49);\n\n return [\n moment(lundiPaques).format('MM-DD'),\n moment(ascension).format('MM-DD'),\n moment(pentecote).format('MM-DD')\n ];\n}\n\nexport const getLabourDaysDatesTab = (year: number) => {\n return [\n '01-01',\n '05-01',\n '05-08',\n '07-14',\n '08-15',\n '11-01',\n '11-11',\n '12-25',\n ...getMovableHolidays(year)\n ]\n}","import * as types from \"../../constants/calendar\";\nimport * as models from \"../../models/calendar\";\nimport {EventClickArg, EventDropArg} from \"@fullcalendar/react\";\nimport {NeedEvents, ResourceLabelContentArg, WorkingTimes} from \"../../models/calendar\";\nimport React from \"react\";\nimport {Companies} from \"../../models/companies\";\nimport {Salary} from \"../../models/salary\";\nimport {Teams} from \"../../models/team\";\nimport {BookingOffer, BookingOffers} from \"../../models/booking/offer\";\nimport {Tasks} from \"../../models/task\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\n\nexport const fetchEvents = () => {\n return {\n type: types.FETCH_EVENTS,\n }\n}\n\nexport const fetchEventsSuccess = (events: any[], workingTimes: models.WorkingTimes) => {\n return {\n type: types.FETCH_EVENTS_SUCCESS,\n events: events,\n workingTimes: workingTimes\n }\n}\n\nexport const fetchAllEventsSuccess = (events: any[], presenceEvents: models.PresenceEvents, needEvents: models.NeedEvents, workingTimes: models.WorkingTimes, tasks: Tasks, bookingOffers: BookingOffers) => {\n return {\n type: types.FETCH_ALL_EVENTS_SUCCESS,\n events: events,\n presenceEvents: presenceEvents,\n needEvents: needEvents,\n workingTimes: workingTimes,\n tasks: tasks,\n bookingOffers: bookingOffers,\n }\n}\n\nexport const fetchPresenceEventsSuccess = (events: any[]) => {\n return {\n type: types.FETCH_PRESENCE_EVENTS_SUCCESS,\n presenceEvents: events,\n }\n}\n\nexport const fetchNeedEventsSuccess = (needEvents: NeedEvents) => {\n return {\n type: types.FETCH_NEED_EVENTS_SUCCESS,\n needEvents: needEvents,\n }\n}\n\nexport const fetchEventTasksSuccess = (tasks: any[]) => {\n return {\n type: types.FETCH_TASKS_SUCCESS,\n tasks: tasks,\n }\n}\n\nexport const fetchResources = () => {\n return {\n type: types.FETCH_RESOURCES,\n }\n}\n\nexport const fetchResourcesSuccess = (resources: any[]) => {\n return {\n type: types.FETCH_RESOURCES_SUCCESS,\n resources: resources\n }\n}\nexport const fetchBookingOffersSuccess = (bookingOffers: any[]) => {\n return {\n type: types.FETCH_BOOKING_OFFERS_EVENT_SUCCESS,\n bookingOffers: bookingOffers\n }\n}\n\nexport const fetchTitleSuccess = (title: string, start: Date, end: Date) => {\n return {\n type: types.FETCH_TITLE_SUCCESS,\n title: title,\n start: start,\n end: end,\n }\n}\n\nexport const showEventPop = (eventClickArg: EventClickArg, resourceId?: string, parentId?: string) => {\n return {\n type: types.SHOW_EVENT_POP,\n eventClickArg: eventClickArg,\n resourceId: resourceId,\n parentId: parentId\n }\n}\n\nexport const showEventPopup = (eventClickArg: EventClickArg, resourceId?: string, parentId?: string) => {\n return {\n type: types.SHOW_EVENT_POPUP,\n eventClickArg: eventClickArg,\n resourceId: resourceId,\n parentId: parentId\n }\n}\n\nexport const hideEventPop = () => {\n return {\n type: types.HIDE_EVENT_POP,\n }\n}\n\nexport const hideEventPopup = () => {\n return {\n type: types.HIDE_EVENT_POPUP,\n }\n}\n\nexport const showTemplateEventPop = (eventClickArg: EventClickArg, resourceId?: string, parentId?: string) => {\n return {\n type: types.SHOW_TEMPLATE_EVENT_POP,\n eventClickArg: eventClickArg,\n resourceId: resourceId,\n parentId: parentId\n }\n}\n\nexport const hideTemplateEventPop = () => {\n return {\n type: types.HIDE_TEMPLATE_EVENT_POP,\n }\n}\n\nexport const showResourceActions = (resourceLabelContentArg: ResourceLabelContentArg, e: React.MouseEvent) => {\n return {\n type: types.SHOW_RESOURCE_ACTIONS,\n resourceLabelContentArg: resourceLabelContentArg,\n resourceActionsButton: e\n }\n}\n\nexport const hideResourceActions = () => {\n return {\n type: types.HIDE_RESOURCE_ACTIONS,\n }\n}\n\nexport const cancelEvent = (e: EventClickArg) => {\n return {\n type: types.CANCEL_EVENT,\n cancelEvent: e\n }\n}\nexport const cancelBookingOffer = (offer: BookingOffer) => {\n return {\n type: types.CANCEL_BOOKING_OFFER,\n bookingOffer: offer\n }\n}\nexport const addBookingOffer = (offer: BookingOffer) => {\n return {\n type: types.ADD_BOOKING_OFFER,\n bookingOffer: offer\n }\n}\n\nexport const cancelEvents = (e: EventClickArg) => {\n return {\n type: types.CANCEL_EVENTS,\n cancelEvent: e\n }\n}\n\nexport const refresh = () => {\n return {\n type: types.REFRESH\n }\n}\n\nexport const setCompanies = (companies: Companies) => {\n return {\n type: types.SET_COMPANIES,\n companies: companies\n }\n}\n\nexport const setTeams = (teams: Teams) => {\n return {\n type: types.SET_TEAMS,\n teams: teams\n }\n}\n\nexport const setJob = (job: number) => {\n return {\n type: types.SET_JOB,\n job: job\n }\n}\n\nexport const setGroupBy = (groupBy: number) => {\n return {\n type: types.SET_GROUP_BY,\n groupBy: groupBy\n }\n}\n\nexport const setView = (view: string) => {\n return {\n type: types.SET_VIEW,\n view: view\n }\n}\n\nexport const setGenerated = (generated: boolean) => {\n return {\n type: types.SET_GENERATED,\n isGenerated: generated\n }\n}\n\nexport const editEvent = (event: EventResizeDoneArg|EventDropArg) => {\n return {\n type: types.EVENT_EDIT,\n pendingEvent: event\n }\n}\n\nexport const editEventValidate = () => {\n return {\n type: types.EVENT_EDIT_VALIDATE,\n }\n}\n\nexport const editEventAbort = () => {\n return {\n type: types.EVENT_EDIT_ABORT,\n }\n}\n\nexport const refreshResource = (resourceId: string, parentId: string, salary: Salary) => {\n return {\n type: types.REFRESH_RESOURCE,\n resourceId: resourceId,\n parentId: parentId,\n salary: salary,\n }\n}\n\nexport const refreshResourceSuccess = (events: any[], presenceEvents: any[], workingTimes: WorkingTimes) => {\n return {\n type: types.REFRESH_RESOURCE_SUCCESS,\n events: events,\n presenceEvents: presenceEvents,\n workingTimes: workingTimes,\n }\n}\n","import React, {forwardRef, useEffect, useRef, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport resourceTimeline from \"@fullcalendar/resource-timeline\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport {Absence, Absences} from \"../../../models/absence\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EDIT_ABSENCE, FORM_NEW_ABSENCE} from \"../../../constants/rightSidebar\";\nimport * as actions from \"../../../actions/absence\";\nimport * as absenceAPI from \"../../../adapters/absence\";\nimport {showAlertDanger} from \"../../../actions/alert\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport Loader from \"../../../utils/loader\";\nimport {fetchTitleSuccess, refresh} from \"../../../actions/calendar\";\nimport DatePicker from \"react-datepicker\";\nimport format from \"../../../utils/locale\";\nimport {Link} from \"react-router-dom\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Granted} from \"../../../security/granted\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport BootstrapSelect, {Choices} from \"../../../utils/bootstrapSelect\";\nimport {Company} from \"../../../models/companies\";\n\nconst AbsenceCalendar: React.FC = () => {\n\n const absences = useSelector((state: RootStateOrAny) => state.absence.payload);\n const state = useSelector((state: RootStateOrAny) => state);\n const refreshAbsences: number = useSelector((state: RootStateOrAny) => state.calendar.refresh);\n const [title, setTitle] = useState('');\n const [pickerDate, setPickerDate] = useState(new Date());\n const [companies, setCompanies] = useState([]);\n const calendarRef = React.createRef();\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n\n dispatch(setPageTitle('Absences', 'Planning'))\n\n }, [])\n\n useEffect(() => {\n let controller = new AbortController();\n dispatch(actions.fetchAbsences())\n let API = calendarRef.current?.getApi();\n if (API){\n setTitle(API.view.title)\n absenceAPI.list({dates: [format(API.view.currentStart, 'uuuu-MM-dd'), format(API.view.currentEnd, 'uuuu-MM-dd')], companies: companies}, controller.signal).then(data => {\n dispatch(actions.fetchAbsencesSuccess(data.data))\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }\n\n return () => controller.abort();\n }, [refreshAbsences, companies])\n\n\n const calendarApiNavActions = (action: string) => {\n\n let API = calendarRef.current?.getApi()\n if (API){\n switch (action) {\n case 'prev':\n API.prev();\n break;\n case 'next':\n API.next();\n break;\n }\n\n setTitle(API.view.title)\n dispatch(refresh())\n }\n }\n\n type ButtonProps = JSX.IntrinsicElements[\"button\"];\n const ViewTitleContainer = forwardRef((props, ref) => {\n const {onClick} = props;\n return
\n \n \n \n
\n });\n\n const CalendarTitle = () => {\n return {\n if (date instanceof Date){\n setPickerDate(date)\n let API = calendarRef.current?.getApi()\n if (API){\n API.gotoDate(date)\n setTitle(API.view.title)\n dispatch(refresh())\n }\n }\n }}\n customInput={}\n />\n }\n\n return
\n
\n
\n \n Liste\n \n
\n
\n \n
\n
\n
\n setCompanies(choices?.map(choice => Number(choice.value)) || [])}\n options={state.auth.user.currentSalary.companies.map((c: Company) => ({label: c.title, value: c.id}))}\n />\n \n \n
\n
\n
\n
\n (calendarRef.current?.getApi().updateSize())}\n editable={Granted(accessRights.EDIT_ABSENCE)}\n ref={calendarRef}\n schedulerLicenseKey={'GPL-My-Project-Is-Open-Source'}\n resourceOrder={'orderBy1, orderBy2'}\n height={'parent'}\n resourceAreaWidth={\"20%\"}\n plugins={[ resourceTimeline, interactionPlugin ]}\n initialView={\"resourceTimelineMonth\"}\n resourceAreaHeaderContent={() => <>{absences.length} absences}\n resourceLabelContent={(e) => {\n let count = 0;\n absences.filter((absence: Absence) => absence.salary.id === parseInt(e.resource.id)).map((absence: Absence) => count += absence.nbDays!);\n return <>\n \n \n \n
\n
\n
\n \n {e.resource.title}\n \n {count} jour(s)\n \n \n dispatch(openSidebar(FORM_NEW_ABSENCE, {salary: e.resource.extendedProps.salary}))} className={'btn btn-light text-primary'}>\n \n \n \n
\n \n }}\n eventClick={(e) => {\n if (Granted(accessRights.EDIT_ABSENCE, e.event.extendedProps.item.salary.id)){\n dispatch(openSidebar(FORM_EDIT_ABSENCE, e.event.extendedProps.item))\n }\n }}\n locales={allLocales}\n locale={'fr'}\n stickyHeaderDates={true}\n stickyFooterScrollbar={true}\n displayEventTime={false}\n headerToolbar={false}\n slotDuration={{day: 1}}\n resources={absences.map((absence: Absence) => {\n return {\n id: absence.salary!.lastname!,\n title: absence.salary.title,\n salary: absence.salary,\n jobColor: absence.salary.information?.job.color,\n orderBy1: absence.salary.information?.job.id,\n orderBy2: absence.salary.lastname\n }\n })}\n events={absences.map((absence: Absence) => {\n\n let end = new Date(absence.end);\n end.setDate(end.getDate() + 1);\n\n return {\n id: absence.id,\n title: absence.typeName + ' - ' + absence.nbDays + ' jour(s)',\n start: absence.start,\n end: format(end, 'uuuu-MM-dd'),\n resourceId: absence.salary?.lastname,\n item: absence,\n backgroundColor: absence.color,\n borderColor: absence.color,\n classNames: ['fc-timeline-event', 'shadow']\n }\n })}\n handleWindowResize={true}\n progressiveEventRendering={true}\n />\n
\n
\n}\n\nexport default AbsenceCalendar;","import * as React from \"react\";\n\nimport AbsenceCalendar from \"../../../components/absence/calendar\";\n\nconst AbsenceCalendarPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default AbsenceCalendarPage;","export const ADD_LOCALISATION = 'ADD_LOCALISATION';\nexport const ADD_LOCALISATION_SUCCESS = 'ADD_LOCALISATION_SUCCESS';\nexport const ADD_LOCALISATION_FAILURE = 'ADD_LOCALISATION_FAILURE';\n\nexport const EDIT_LOCALISATION = 'EDIT_LOCALISATION';\nexport const EDIT_LOCALISATION_SUCCESS = 'EDIT_LOCALISATION_SUCCESS';\nexport const EDIT_LOCALISATION_FAILURE = 'EDIT_LOCALISATION_FAILURE';\n\nexport const FETCH_LOCALISATIONS = 'FETCH_LOCALISATIONS';\nexport const FETCH_LOCALISATIONS_SUCCESS = 'FETCH_LOCALISATIONS_SUCCESS';\nexport const FETCH_LOCALISATIONS_FAILURE = 'FETCH_LOCALISATIONS_FAILURE';\n\nexport const SHOW_LOCALISATION = 'SHOW_LOCALISATION';\nexport const SHOW_LOCALISATION_SUCCESS = 'SHOW_LOCALISATION_SUCCESS';\nexport const SHOW_LOCALISATION_FAILURE = 'SHOW_LOCALISATION_FAILURE';\n","import * as types from \"../../constants/localisation\";\nimport * as models from \"../../models/localisation\";\n\nexport const addLocalisation = () => {\n return {\n type: types.ADD_LOCALISATION,\n }\n}\n\nexport const addLocalisationSuccess = (localisation: models.Localisation) => {\n return {\n type: types.ADD_LOCALISATION_SUCCESS,\n localisation: localisation,\n }\n}\n\nexport const addLocalisationFailure = (error: string) => {\n return {\n type: types.ADD_LOCALISATION_FAILURE,\n localisation: null,\n localisations: null,\n error: error\n }\n}\n\nexport const editLocalisation = () => {\n return {\n type: types.EDIT_LOCALISATION,\n }\n}\nexport const editLocalisationSuccess = (localisation: models.Localisation) => {\n return {\n type: types.EDIT_LOCALISATION_SUCCESS,\n localisation: localisation\n }\n}\nexport const editLocalisationFailure = (error: string) => {\n return {\n type: types.EDIT_LOCALISATION,\n localisation: null,\n localisations: null,\n error: error\n }\n}\n\nexport const fetchLocalisations = () => {\n return {\n type: types.FETCH_LOCALISATIONS,\n }\n}\n\nexport const fetchLocalisationsFailure = (error: string) => {\n return {\n type: types.FETCH_LOCALISATIONS_FAILURE,\n localisation: null,\n localisations: [],\n error: error\n }\n}\n\nexport const fetchLocalisationsSuccess = (localisations: models.Localisations) => {\n return {\n type: types.FETCH_LOCALISATIONS_SUCCESS,\n localisation: null,\n localisations: localisations\n }\n}\n\n\nexport const showLocalisation = () => {\n return {\n type: types.SHOW_LOCALISATION,\n }\n}\nexport const showLocalisationSuccess = (localisation: models.Localisation) => {\n return {\n type: types.SHOW_LOCALISATION_SUCCESS,\n localisation: localisation\n }\n}\nexport const showLocalisationFailure = (error: string) => {\n return {\n type: types.SHOW_LOCALISATION_FAILURE,\n localisation: null,\n localisations: null,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/localisation\";\nimport * as actions from \"../../../actions/localisation\";\nimport * as models from \"../../../models/localisation\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_LOCALISATION} from \"../../../constants/rightSidebar\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Granted} from \"../../../security/granted\";\n\nconst LocalisationList: React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state.localisation);\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const [query, setQuery] = useState();\n const [activated, setActivated] = useState(true);\n\n useEffect(() => {\n\n dispatch(setPageTitle('Emplacements'))\n\n api.select({activated: activated}).then(data => {\n dispatch(actions.fetchLocalisationsSuccess(data.data))\n }).catch(error => dispatch(axiosError(error)))\n }, [activated])\n\n return <>
\n
\n
\n
\n
\n \n \n \n {\n setQuery(e.target.value)\n }} className=\"form-control bg-white border-0\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
\n
\n
\n {Granted(accessRights.EDIT_LOCALISATION) &&
\n
\n
\n \n
\n
\n \n
\n
\n
}\n
\n {state.payload.length ? state.payload.filter((localisation: models.Localisation) => !query || localisation.title.toLowerCase().includes(query.toLowerCase())).map((localisation: models.Localisation, index: number) => ([\n \n
\n
\n {localisation.title}\n
\n
\n {localisation.company.title}\n
\n
\n
\n
\n
\n {localisation.icon ? : ''}\n
\n
\n
\n
\n
\n
\n \n ]))\n :\n \n }\n
\n\n
\n
\n
\n
\n
Filtrer
\n \n
\n
\n
\n

\n Statut\n

\n
\n setActivated(e.target.checked)} type=\"radio\" name=\"status\" id=\"statusActivated\" />\n \n
\n
\n setActivated(!e.target.checked)} type=\"radio\" name=\"status\" id=\"statusDeactivated\" />\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n \n}\n\nexport default LocalisationList;","import {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Localisation, LocalisationNeed, LocalisationNeeds} from \"../../../../models/localisation\";\nimport * as api from \"../../../../adapters/localisation/needs\";\nimport React, {BaseSyntheticEvent, useEffect, useState} from \"react\";\nimport Loader from \"../../../../utils/loader\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {editLocalisationSuccess} from \"../../../../actions/localisation\";\nimport {Job} from \"../../../../models/job\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {LOCALISATION_NEED_ADD} from \"../../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {Granted} from \"../../../../security/granted\";\n\nconst LocalisationNeedTable = () => {\n\n const dispatch = useDispatch();\n let localisation: Localisation = useSelector((state: RootStateOrAny) => state.localisation.single)\n const [needs, setNeeds] = useState([...localisation.needs!]);\n const [timer, setTimer] = useState();\n\n const [newNeeds, setNewNeeds] = useState<{day: number, time: string, val: number, job?: number}[]>([]);\n const [dateRange, setDateRange] = useState<[Date|null, Date|null]>([null, null])\n const [start, end] = dateRange;\n\n const [isLoading, setIsLoading] = useState(false);\n const [disabled, setDisabled] = useState(false);\n\n useEffect(() => {\n let _start = new Date(localisation.company.timesheet.openAt)\n let _end = new Date(localisation.company.timesheet.closeAt)\n setDateRange([_start, _end])\n setNeeds([...localisation.needs!])\n\n return () => {\n setDateRange([null,null]);\n }\n }, [localisation])\n\n const getTimeOccurrences = (includeLastSlot?: boolean) => {\n let times = [];\n\n if (start && end){\n let _start = new Date(),\n _end = new Date();\n\n _start.setTime(start.getTime())\n _end.setTime(end.getTime())\n\n do {\n times.push(_start.getHours().toLocaleString('fr', {minimumIntegerDigits:2}) + ':' + _start.getMinutes().toLocaleString('fr', {minimumIntegerDigits:2}))\n _start.setTime(_start.getTime() + (30*60000));\n } while (includeLastSlot ? _start <= _end : _start < _end)\n\n }\n\n return times;\n }\n\n function arraySearch(arr: LocalisationNeeds, day: number, time: string, job?: Job) {\n for (let i=0; i {\n\n setDisabled(true)\n\n let key = arraySearch(needs, day, time, job)\n if (key !== false){\n needs[key].val = val\n }else{\n needs.push({day: day, time: time, val: val, job: job})\n }\n\n setNeeds([...needs]);\n\n api.posts(localisation.id!, {day: day, job: job?.id, val: val, time: time})\n .then(() => setDisabled(false))\n }\n\n const handleTypeChange = (e: BaseSyntheticEvent) => {\n setIsLoading(true)\n api.type(localisation.id!, e.target.value).then(data => {\n dispatch(editLocalisationSuccess(data.data))\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)));\n }\n\n if (!start || !end){\n return \n }\n\n return (\n <>\n
\n
\n {Granted(accessRights.EDIT_LOCALISATION) &&
\n
\n \n \n
\n
\n \n \n
\n
}\n {Granted(accessRights.EDIT_LOCALISATION) &&
\n \n
}\n {Granted(accessRights.EDIT_LOCALISATION) && localisation.needType === 2 &&
\n {\n setIsLoading(true)\n api.jobs(localisation.id!, choices).then(data => {\n dispatch(editLocalisationSuccess(data.data))\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n }}\n values={localisation.needJobs ?\n localisation.needJobs.map(job => ({label: job.title, value: job.id!}))\n : []}\n />\n
}\n
\n
\n {isLoading ? :\n
\n \n \n \n \n {localisation.needType === 2 && }\n \n \n \n \n \n \n \n \n \n \n\n {getTimeOccurrences().map((time: string) => {\n\n switch (localisation.needType){\n case 1:\n return (\n \n \n {[1,2,3,4,5,6,7].map((day: number) => {\n\n let item = needs.find((need: LocalisationNeed) => (need.day === day && need.time === time && !need.job))\n let val = item?.val;\n\n return (\n \n )\n })}\n \n )\n case 2:\n return (\n \n \n \n\n {[1,2,3,4,5,6,7].map((day: number) => {\n\n let items = needs.filter((need: LocalisationNeed) => (need.day === day && need.time === time))\n\n return (\n )}\n )}\n \n )\n }\n\n return <> \n })}\n \n
HeureMétiersLun.Mar.Mer.Jeu.Ven.Sam.Dim.
\n \n {time}\n \n \n
\n {Granted(accessRights.EDIT_LOCALISATION) && addOrEdit(day, time, (val || 0) - 1)}\n className={'d-none d-md-block btn' + (val && val > 0 ? \" text-danger\" : ' text-light')}>\n \n }\n \n {val ? val : }\n \n {Granted(accessRights.EDIT_LOCALISATION) && addOrEdit(day, time, (val || 0) + 1)}\n className={'d-none d-md-block btn text-success'}>\n \n }\n
\n
\n \n {time}\n \n \n \n \n {localisation.needJobs?.map(job => \n \n )}\n \n\n
\n {job.title}\n
\n
\n \n \n {localisation.needJobs?.map(job => {\n\n let val = items.find(item => item.job?.id === job.id!)?.val || 0\n\n return <>\n \n {\n if (!disabled){\n addOrEdit(day, time, (val || 0) - 1, job)\n }\n }}\n className={'d-none d-md-block ' + (val && val > 0 ? \" text-danger\" : ' text-light')}>\n \n \n \n {\n if (!disabled){\n addOrEdit(day, time, (val || 0) + 1, job)\n }\n }}\n className={'d-none d-md-block text-success'}>\n \n \n \n \n })}\n \n
\n {val ? val : }\n
\n
}\n \n )\n}\n\nexport default LocalisationNeedTable;","import * as xhr from \"../../xhr\";\nimport {Choices} from \"../../../utils/bootstrapSelect\";\n\nexport function posts(id: number, requestData: {day: number, time: string, val: number, job?: number}){\n return xhr.post('localisation/'+ id +'/need', requestData);\n}\n\nexport function postsMany(id: number, requestData: {days: number[], start: string, end: string, val: number, job?: number}){\n return xhr.post('localisation/'+ id +'/many_needs', requestData);\n}\n\nexport function jobs(id: number, requestData: Choices){\n return xhr.post('localisation/'+ id +'/need_jobs', requestData);\n}\n\nexport function type(id: number, type: number){\n return xhr.get('localisation/'+ id +'/need_type/' + type);\n}\n\n","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/localisation\";\nimport * as api from \"../../../adapters/localisation\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EDIT_LOCALISATION} from \"../../../constants/rightSidebar\";\nimport LocalisationNeedTable from \"./need\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {Localisation} from \"../../../models/localisation\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BgSingle from \"../../../utils/background/single\";\nimport {Granted} from \"../../../security/granted\";\n\nexport const LocalisationShow: React.FC = () => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const state = useSelector((state: RootStateOrAny) => state.localisation)\n\n useEffect(() => {\n dispatch(actions.showLocalisation())\n if (state.payload.find((l: Localisation) => l.id === Number(params.id)) && params.id){\n dispatch(actions.showLocalisationSuccess(state.payload.find((l: Localisation) => l.id === Number(params.id))))\n dispatch(setPageTitle('Emplacements', state.payload.find((l: Localisation) => l.id === Number(params.id)).title))\n }else if(params.id){\n api.get(params.id).then(data => {\n dispatch((actions.showLocalisationSuccess(data.data)))\n dispatch(setPageTitle('Emplacements', data.data.title))\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [params.id])\n\n function activate(){\n api.activate(Number(params.id)).then(resp => dispatch((actions.showLocalisationSuccess(resp.data))))\n }\n function deactivate(){\n api.deactivate(Number(params.id)).then(resp => dispatch((actions.showLocalisationSuccess(resp.data))))\n }\n\n if (!state.single || !params.id){\n return \n }\n\n return
\n
\n
\n
\n
\n
\n \n {state.single.company.title}\n \n
\n \n {state.single.description}\n \n
\n {Granted(accessRights.EDIT_LOCALISATION) &&
\n \n
}\n {Granted(accessRights.DELETE_LOCALISATION) &&
\n {state.single.activated ? :\n }\n
}\n
\n
\n
\n \n
\n
\n}\n\nexport default LocalisationShow;","import * as React from \"react\";\n\nimport LocalisationList from \"../../components/localisation/list\";\nimport LocalisationShow from \"../../components/localisation/show\";\n\nconst LocalisationPage : React.FC = () => {\n return (\n
\n \n \n
\n );\n}\n\nexport default LocalisationPage;","import {post} from \"../xhr\";\nimport * as xhr from \"../xhr\";\n\ninterface FetchData {\n start: string,\n end: string,\n options?: {\n view?: string,\n explodeRecurrence?: boolean,\n isSingle?: boolean,\n resources?: boolean,\n workingTime?: boolean,\n isGenerated?: boolean,\n companies?: number[],\n sortBy?: number,\n jobs?: number[],\n job?: number,\n presence?: boolean,\n salaries?: number[],\n teams?: number[],\n isBookingOffer?: boolean,\n }\n}\n\ninterface FetchCalendarData {\n start: string,\n end: string,\n calendar: string,\n options?: {\n view?: string,\n timePrecision?: string,\n explodeRecurrence?: boolean,\n isSingle?: boolean,\n resources?: boolean,\n workingTime?: boolean,\n isGenerated?: boolean,\n companies?: number[],\n sortBy?: number,\n jobs?: number[],\n job?: number,\n presence?: boolean,\n salaries?: number[],\n salary?: number,\n year?: number,\n month?: number,\n teams?: number[],\n outerEvents?: boolean,\n isBookingOffer?: boolean,\n isNightTime?: boolean,\n disableDemarcation?: boolean\n }\n}\n\nexport function fetchCalendar(requestData: FetchData, signal?: AbortSignal){\n return post('calendar/fetch', requestData, {signal: signal});\n}\n\nexport function test(requestData: FetchCalendarData, signal?: AbortSignal){\n return post(`calendar/test`, requestData, {signal: signal});\n}\n\nexport function downloadTest(requestData: any, options?:xhr.Options){\n return post(`calendar/download_test`, requestData, options);\n}\n\nexport function publish(requestData: any){\n return post(`calendar/publish`, requestData);\n}\n\nexport function fetch(requestData: FetchData, signal?: AbortSignal){\n return post('calendar/events', requestData, {signal: signal});\n}\n\ninterface downloadPayload {\n type: number,\n year: number,\n week?: number,\n month?: number,\n company: number,\n format: number,\n job: number|string,\n jobs?: number[]\n}\nexport function download(requestData: downloadPayload, options?:xhr.Options){\n return post('calendar/download', requestData, options);\n}\n\nexport function setting(requestData: { setting: string, value: any }){\n return post('calendar/setting', requestData);\n}\n\nexport function send(requestData: {start: string, end: string}, salaryId: number){\n return post(`calendar/send/${salaryId}`, requestData);\n}","export const FETCH_EVENTS = 'TASK_FETCH_EVENTS';\nexport const FETCH_EVENTS_SUCCESS = 'TASK_FETCH_EVENTS_SUCCESS';\nexport const FETCH_EVENTS_FAILURE = 'TASK_FETCH_EVENTS_FAILURE';\n\nexport const FETCH_RESOURCES = 'TASK_FETCH_RESOURCES';\nexport const FETCH_RESOURCES_SUCCESS = 'TASK_FETCH_RESOURCES_SUCCESS';\nexport const FETCH_RESOURCES_FAILURE = 'TASK_FETCH_RESOURCES_FAILURE';\n\nexport const FETCH_WORKING_TIMES = 'TASK_FETCH_WORKING_TIMES';\nexport const FETCH_WORKING_TIMES_SUCCESS = 'TASK_FETCH_WORKING_TIMES_SUCCESS';\nexport const FETCH_WORKING_TIMES_FAILURE = 'TASK_FETCH_WORKING_TIMES_FAILURE';\n\nexport const FETCH_TITLE_SUCCESS = 'TASK_FETCH_TITLE_SUCCESS';\nexport const FETCH_PAYROLL_SUCCESS = 'TASK_FETCH_TITLE_SUCCESS';\n\nexport const SET_EVENT_CLICK_ARG = 'TASK_SET_EVENT_CLICK_ARG';\n\nexport const SHOW_EVENT_POP = 'TASK_SHOW_EVENT_POP';\nexport const HIDE_EVENT_POP = 'TASK_HIDE_EVENT_POP';\n\nexport const SHOW_RESOURCE_ACTIONS = 'TASK_SHOW_RESOURCE_ACTIONS';\nexport const HIDE_RESOURCE_ACTIONS = 'TASK_HIDE_RESOURCE_ACTIONS';\n\nexport const CANCEL_EVENT = 'TASK_CANCEL_EVENT';\nexport const CANCEL_EVENTS = 'TASK_CANCEL_EVENTS';\n\nexport const REFRESH = 'TASK_REFRESH';\n\n","import * as types from \"../../../constants/task/calendar\";\nimport * as models from \"../../../models/task/calendar\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {ResourceLabelContentArg} from \"../../../models/task/calendar\";\nimport React from \"react\";\n\nexport const fetchEvents = () => {\n return {\n type: types.FETCH_EVENTS,\n }\n}\n\nexport const fetchEventsSuccess = (events: any[]) => {\n return {\n type: types.FETCH_EVENTS_SUCCESS,\n events: events,\n }\n}\n\nexport const fetchResources = () => {\n return {\n type: types.FETCH_RESOURCES,\n }\n}\n\nexport const fetchResourcesSuccess = (resources: any[]) => {\n return {\n type: types.FETCH_RESOURCES_SUCCESS,\n resources: resources\n }\n}\n\nexport const fetchTitleSuccess = (title: string) => {\n return {\n type: types.FETCH_TITLE_SUCCESS,\n title: title\n }\n}\n\nexport const showEventPop = (eventClickArg: EventClickArg) => {\n return {\n type: types.SHOW_EVENT_POP,\n eventClickArg: eventClickArg\n }\n}\n\nexport const hideEventPop = () => {\n return {\n type: types.HIDE_EVENT_POP,\n }\n}\n\nexport const showResourceActions = (resourceLabelContentArg: ResourceLabelContentArg, e: React.MouseEvent) => {\n return {\n type: types.SHOW_RESOURCE_ACTIONS,\n resourceLabelContentArg: resourceLabelContentArg,\n resourceActionsButton: e\n\n }\n}\n\nexport const hideResourceActions = () => {\n return {\n type: types.HIDE_RESOURCE_ACTIONS,\n }\n}\n\nexport const cancelEvent = (e: EventClickArg) => {\n return {\n type: types.CANCEL_EVENT,\n cancelEvent: e\n }\n}\n\nexport const cancelEvents = (e: EventClickArg) => {\n return {\n type: types.CANCEL_EVENTS,\n cancelEvent: e\n }\n}\n\nexport const refresh = () => {\n return {\n type: types.REFRESH\n }\n}\n\nexport const updateEventStatus = () => {\n return {\n type: types.REFRESH\n }\n}\n","import {post, get} from \"../xhr\";\nimport * as models from \"../../models/booking\";\n\nexport function list(requestData: {start: string, end: string}){\n return post('booking/list', requestData);\n}\n\nexport function resourcesList(requestData: {start: string, end: string}){\n return post('booking/resources/list', requestData);\n}\n\nexport function edit(requestData: models.Booking, id: number){\n return post('booking/edit/' + id, requestData);\n}\n\nexport function editDay(requestData: models.Booking, id: number){\n return post('booking/edit_day/' + id, requestData);\n}\n\nexport function create(requestData: models.Booking){\n return post('booking/create', requestData);\n}\n\nexport function show(id: string){\n return get('booking/show/' + id);\n}\n\nexport function showInstance(id: string, token: string){\n return get('booking/show/instance/' + id);\n}\n\nexport interface BookingExceptionPayload {\n beginAt: Date,\n endAt: Date,\n accountingType: number,\n company: number,\n localisation: number,\n activity: number,\n salary?: number,\n substitute?: number,\n description?: string,\n labourDayWorked?: boolean,\n comment?: string,\n}\n\nexport function createException(requestData: BookingExceptionPayload, bookingId: number, instanceToken:string){\n return post(`booking/exception/create/${bookingId}/${instanceToken}`, requestData);\n}\n\nexport function editException(requestData: BookingExceptionPayload, bookingExceptionId: number){\n return post(`booking/exception/edit/${bookingExceptionId}`, requestData);\n}\n\nexport function split(requestData: BookingExceptionPayload, bookingId: number){\n return post(`booking/split/${bookingId}`, requestData);\n}\n\nexport function splitDay(requestData: BookingExceptionPayload, bookingId: number){\n return post(`booking/split_day/${bookingId}`, requestData);\n}\n\nexport function splitBetween(requestData: BookingExceptionPayload, bookingId: number, start: string, end: string){\n return post(`booking/split_between/${bookingId}/${start}/${end}`, requestData);\n}\n\nexport function substituteException(instanceId: number, substituteId: number){\n return get(`booking/exception/substitution/${instanceId}/${substituteId}`)\n}\n\nexport function cancel(instanceId: number){\n return get(`booking/cancel/${instanceId}`)\n}\n\nexport function cancelAfter(instanceId: number, day: string){\n return post(`booking/cancel_after/${instanceId}`, {day: day})\n}\n\nexport function cancelOnce(instanceId: number, instanceToken: string){\n return get(`booking/exception/cancel/${instanceId}/${instanceToken}`)\n}\n","import {get, post} from \"../../xhr\";\n\nexport function list(requestData: {offset: number}){\n return post(`booking/exception/list`, requestData)\n}\n\nexport function cancel_sub(exceptionId: number){\n return get(`booking/exception/cancel_substitution/${exceptionId}`)\n}","export const ADD_BOOKING = 'ADD_BOOKING';\nexport const ADD_BOOKING_SUCCESS = 'ADD_BOOKING_SUCCESS';\nexport const ADD_BOOKING_FAILURE = 'ADD_BOOKING_FAILURE';\n\nexport const EDIT_BOOKING = 'EDIT_BOOKING';\nexport const EDIT_BOOKING_SUCCESS = 'EDIT_BOOKING_SUCCESS';\nexport const EDIT_BOOKING_FAILURE = 'EDIT_BOOKING_FAILURE';\n\nexport const FETCH_BOOKINGS = 'FETCH_BOOKINGS';\nexport const FETCH_BOOKINGS_SUCCESS = 'FETCH_BOOKINGS_SUCCESS';\nexport const FETCH_BOOKINGS_FAILURE = 'FETCH_BOOKINGS_FAILURE';\n\nexport const SHOW_BOOKING = 'SHOW_BOOKING';\nexport const SHOW_BOOKING_SUCCESS = 'SHOW_BOOKING_SUCCESS';\nexport const SHOW_BOOKING_FAILURE = 'SHOW_BOOKING_FAILURE';\n\nexport const ACCOUNTING_TYPE_WORK_ACCOUNTED = 1;\nexport const ACCOUNTING_TYPE_WORK_UNACCOUNTED = 2;\nexport const ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED = 3;\nexport const ACCOUNTING_TYPE_ABSENCE_ACCOUNTED = 4;\n\nexport const AccountingTypes = [\n {label: 'Temps de travail comptabilisé', value: ACCOUNTING_TYPE_WORK_ACCOUNTED},\n {label: 'Temps de travail non comptabilisé', value: ACCOUNTING_TYPE_WORK_UNACCOUNTED},\n {label: 'Absence non comptabilisée (retiré du temps de travail)', value: ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED},\n {label: 'Absence comptabilisée (conservé dans le temps de travail)', value: ACCOUNTING_TYPE_ABSENCE_ACCOUNTED},\n];\n\nexport const getAccountingTypeChoice = (value: number) => {\n return AccountingTypes.find((accountingType => accountingType.value === value))!;\n}\n\nexport const getAccountingTypeChoiceClassName = (value: number) => {\n switch (value){\n case ACCOUNTING_TYPE_ABSENCE_ACCOUNTED:\n case ACCOUNTING_TYPE_WORK_ACCOUNTED:\n return 'text-success'\n case ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED:\n case ACCOUNTING_TYPE_WORK_UNACCOUNTED:\n return 'text-danger'\n }\n}","import React from \"react\";\n\n\nexport const SmallLoader: React.FC = () => {\n return (\n \n Loading...\n \n )\n}\n\nexport default SmallLoader;","import React, {useEffect, useRef, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {openSidebar} from \"../../actions/rightSidebar\";\nimport {\n BOOKING_CANCEL,\n FORM_EDIT_ABSENCE,\n FORM_EDIT_BOOKING, FORM_EDIT_BOOKING_GROUP, FORM_EDIT_BOOKING_GROUP_RELOAD,\n FORM_EDIT_BOOKING_SUBSTITUTE, FORM_NEW_SLOT_EXCHANGE\n} from \"../../constants/rightSidebar\";\nimport format from \"../locale\";\nimport {hideEventPop, refresh, refreshResource} from \"../../actions/calendar\";\nimport * as api from \"../../adapters/booking\";\nimport * as exceptionApi from \"../../adapters/booking/exception\";\nimport * as slotExchangeApi from \"../../adapters/slotExchange\";\nimport {BookingExceptionPayload} from \"../../adapters/booking\";\nimport {getAccountingTypeChoice} from \"../../constants/booking\";\nimport {calendarInitialStateInterface} from \"../../models/calendar\";\nimport {Tooltip} from \"bootstrap\";\nimport SmallLoader from \"../loader/small\";\n\nconst EventPop:React.FC = () => {\n\n const e:EventClickArg = useSelector((state: RootStateOrAny) => state.calendar.eventClickArg)\n const calendar: calendarInitialStateInterface = useSelector((state: RootStateOrAny) => state.calendar)\n const displayEventPop:boolean = useSelector((state: RootStateOrAny) => state.calendar.displayEventPop)\n const eventPopRef = useRef(null)\n const [cancelType, setCancelType] = useState<1|2|3>(1);\n const [cancelSub, setCancelSub] = useState(false);\n const [isLoading, setIsLoading] = useState(false)\n const [labourDayLoading, setLabourDayLoading] = useState(false)\n const [positionsLoaded, setPositionsLoaded] = useState(false)\n const [positions, setPositions] = useState()\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (positions){\n eventPopPosition();\n }\n }, [positions, cancelType])\n\n // useEffect(() => {\n // let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n // tooltipTriggerList.map(function (tooltipTriggerEl) {\n // return new Tooltip(tooltipTriggerEl)\n // })\n //\n // return () => {\n // tooltipTriggerList.map(t => Tooltip.getInstance(t).hide())\n // }\n // }, [positionsLoaded])\n\n useEffect(() => {\n document.addEventListener('click', handleBodyClick)\n\n if (e){\n setPositions(e?.el.getBoundingClientRect())\n }\n\n return () => {\n document.removeEventListener('click', handleBodyClick)\n }\n }, [e])\n\n\n const setLabourDayWorked = (e: EventClickArg, worked: boolean) => {\n setLabourDayLoading(true);\n let values: BookingExceptionPayload = {\n labourDayWorked: worked,\n accountingType: e.event.extendedProps.accountingType,\n salary: e.event.extendedProps.salary.id,\n company: e.event.extendedProps.company.id,\n activity: e.event.extendedProps.activity?.id,\n localisation: e.event.extendedProps.localisation?.id,\n endAt: e.event.end!,\n beginAt: e.event.start!,\n description: e.event.extendedProps.description,\n substitute: e.event.extendedProps.substitute?.id\n }\n\n if (e.event.extendedProps.isException){\n api.editException(values, e.event.extendedProps.exceptionInstanceId).then((data) => {\n dispatch(refresh())\n setLabourDayLoading(false);\n })\n }else{\n api.createException(values, e.event.extendedProps.bookingInstanceId, e.event.extendedProps.instanceToken).then((data) => {\n dispatch(refresh())\n setLabourDayLoading(false);\n })\n }\n }\n\n const cancelSubstitution = () => {\n setCancelSub(true)\n exceptionApi.cancel_sub(e.event.extendedProps.exceptionInstanceId).then(() => {\n setCancelSub(false);\n dispatch(refresh())\n dispatch(hideEventPop())\n })\n }\n\n const eventPopPosition = () => {\n setPositionsLoaded(false)\n let popup = eventPopRef.current\n if (displayEventPop && popup && e && positions){\n if ((popup.clientHeight/2) + (positions.top + (positions.height/2)) > window.innerHeight){\n let diff = (popup.clientHeight/2) + (positions.top + (positions.height/2)) - window.innerHeight;\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) - diff - 15 + 'px';\n }else if ((popup.clientHeight/2) > positions.top + (positions.height/2)){\n let diff = (popup.clientHeight/2) - (positions.top + (positions.height/2));\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + diff + 15 + 'px';\n }else{\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + 'px';\n }\n\n if (positions.left > (320 + 5) || (window.innerWidth - positions.left - positions.width) > (320 + 5)){\n if (positions.left > (window.innerWidth - positions.left - positions.width)){\n // LEFT\n popup.style.left = (positions.left - 320 - 5) + 'px'\n }else{\n //RIGHT\n popup.style.left = (positions.left + positions.width + 5) + 'px'\n }\n }else{\n popup.style.left = (window.innerWidth - 320) / 2 + 'px';\n }\n }\n setPositionsLoaded(true)\n }\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let popup = eventPopRef.current\n\n if (popup && displayEventPop){\n let dimensions = popup.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n console.table(dimensions)\n dispatch(hideEventPop())\n }else{\n console.table( dimensions)\n }\n }\n }\n\n const EventPopContent = () => {\n if (displayEventPop){\n return <>\n
\n \n \n {!e.event.extendedProps.isSlotExchange && }\n \n
\n {e.event.extendedProps.labourDay && <>\n

\n {e.event.extendedProps.labourDay.title}\n

\n
\n setLabourDayWorked(e, ev.target.checked)}\n defaultChecked={e.event.extendedProps.labourDayWorked}\n className=\"form-check-input\" type=\"checkbox\" id=\"labourDay\" />\n \n
\n
\n }\n {e.event.extendedProps.isSlotExchange && <>\n
\n
\n
\n
\n

\n Échange de créneau\n

\n
\n
\n \n
\n
\n

\n {e.event.extendedProps.slotExchange.description}\n \n Le {format(new Date(e.event.extendedProps.slotExchangeDecodedInstance.beginAt), 'dd/MM HH:mm')} {format(new Date(e.event.extendedProps.slotExchangeDecodedInstance.endAt), 'HH:mm')}\n

\n
\n }\n
\n {e.event.extendedProps.bookingGroupId &&
\n

\n Emploi du temps\n

\n
\n
\n {e.event.extendedProps.bookingGroupTitle}\n
\n
\n \n
\n
\n\n
}\n
\n
\n
\n

\n Collaborateur\n

\n
\n {e.event.extendedProps.salary.firstname} {e.event.extendedProps.salary.lastname}\n
\n
\n
\n {e.event.extendedProps.salary.information.job.title}\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n {e.event.extendedProps.salary.tel}\n
\n
\n {e.event.extendedProps.substitute && !e.event.extendedProps.substitution && <>\n
\n
\n
\n
\n

\n Remplacant\n

\n
\n
\n \n
\n
\n\n
\n {e.event.extendedProps.substitute.firstname} {e.event.extendedProps.substitute.lastname}\n
\n
\n
\n {e.event.extendedProps.substitute.information.job.title}\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n {e.event.extendedProps.substitute.tel}\n
\n
\n }\n
\n
\n

\n Lieu et activité\n

\n {e.event.extendedProps.company.title}\n
\n \n {e.event.extendedProps.localisation?.title || ''}\n
\n \n {e.event.extendedProps.activity?.title || ''}\n
\n {e.event.extendedProps.description && \n {e.event.extendedProps.description}\n }\n
\n
\n
\n

\n Horaire\n

\n \n {e.event.extendedProps.beginAt} - {e.event.extendedProps.endAt} - {e.event.extendedProps.timeCaption}\n \n
\n {e.event.extendedProps.accountingType && {getAccountingTypeChoice(e.event.extendedProps.accountingType)?.label}}\n \n {e.event.extendedProps.recurrence.description}\n
\n {e.event.extendedProps.absence && <>\n
\n
\n

\n Absence\n

\n
\n
{e.event.extendedProps.absence.typeName}
\n
\n \n
\n
\n
\n

\n Du {format(new Date(e.event.extendedProps.absence.start)) + ' au ' + format(new Date(e.event.extendedProps.absence.end))}\n

\n
}\n \n }else{\n return <>\n }\n }\n\n if (!e) return <>\n\n return
\n {isLoading ?\n
\n
\n Loading...\n
\n
\n : }\n
\n}\n\nexport default EventPop;","import {post, get} from \"../xhr\";\n\nexport function match(requestData: {isSameDuration: boolean, start: string, end: string, startDate: string, endDate: string, jobs: number[], salaries: number[] }, salary: number){\n return post(`slot_exchange/match/${salary}`, requestData || {});\n}\n\nexport function create(requestData: {\n exchange: number,\n exchangeInstanceToken: string,\n exchanged: number,\n exchangedInstanceToken: string,\n accountingType: number,\n}){\n return post(`slot_exchange/create`, requestData);\n}\nexport function cancel(id: number){\n return get(`slot_exchange/cancel/${id}`);\n}","const getVersion = () => {\n let user = localStorage.getItem('user')\n\n if (user){\n let data = JSON.parse(user)\n\n if (!data.currentSalary){\n return false;\n }\n\n return data.currentSalary.companyGroup.version;\n }\n\n return 0;\n}\n\nexport default getVersion;","import React, {useEffect, useRef} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {ResourceLabelContentArg} from \"../../models/calendar\";\nimport {openSidebar} from \"../../actions/rightSidebar\";\nimport {\n FORM_EVENT_ADD,\n FORM_NEW_ABSENCE,\n FORM_NEW_BOOKING,\n FORM_NEW_TASK,\n LIST_BOOKING_GROUP,\n LIST_DEFAULT_BOOKING, LIST_SALARY_TEMPLATE\n} from \"../../constants/rightSidebar\";\nimport {hideResourceActions} from \"../../actions/calendar\";\nimport getVersion from \"../../security/getVersion\";\n\nconst ResourceActions:React.FC = () => {\n\n const dispatch = useDispatch();\n const e:ResourceLabelContentArg = useSelector((state:RootStateOrAny) => state.calendar.resourceLabelContentArg)\n const displayResourceActions:boolean = useSelector((state:RootStateOrAny) => state.calendar.displayResourceActions)\n const resourceActionButton:React.MouseEvent = useSelector((state:RootStateOrAny) => state.calendar.resourceActionsButton)\n const resourceActionRef = useRef(null)\n\n useEffect(() => {\n document.addEventListener('click', handleBodyClick)\n\n if (displayResourceActions && resourceActionButton){\n let dropdown = resourceActionRef.current!\n let button = resourceActionButton.target as HTMLButtonElement\n let positions = button.getBoundingClientRect();\n\n if (dropdown.clientHeight + (positions.top - positions.height) > window.innerHeight){\n let diff = dropdown.clientHeight + (positions.top - positions.height) - window.innerHeight;\n dropdown.style.top = (positions.top - positions.height - diff - 15) + 'px';\n }else{\n dropdown.style.top = (positions.top - positions.height) + 'px';\n }\n dropdown.style.left = (positions.left + positions.width + 5) + 'px'\n }\n\n return () => document.removeEventListener('click', handleBodyClick)\n }, [displayResourceActions, e])\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let dropdown = resourceActionRef.current\n if (displayResourceActions && dropdown){\n let dimensions = dropdown.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n dispatch(hideResourceActions())\n }\n }\n }\n\n const ActionsDropdown = () => {\n return <>\n
    \n {getVersion() !== 1 && }\n {getVersion() === 1 && }\n \n {getVersion() !== 1 && }\n {getVersion() === 1 && }\n \n \n
\n \n }\n\n\n return
\n \n
\n\n}\n\nexport default ResourceActions;","export const SHOW_ALERT_SUCCESS = 'SHOW_ALERT_SUCCESS';\nexport const SHOW_ALERT_INFO = 'SHOW_ALERT_INFO';\nexport const SHOW_ALERT_WARNING = 'SHOW_ALERT_WARNING';\nexport const SHOW_ALERT_DANGER = 'SHOW_ALERT_DANGER';\nexport const HIDE_ALERT = 'HIDE_ALERT';\n\nexport const ALERT_SUCCESS = 'ALERT_SUCCESS';\nexport const ALERT_INFO = 'ALERT_INFO';\nexport const ALERT_WARNING = 'ALERT_WARNING';\nexport const ALERT_DANGER = 'ALERT_DANGER';","import React from \"react\";\nimport * as types from \"../../constants/alert\";\n\nexport const showAlertSuccess = ( value: string) => {\n return {\n type: types.SHOW_ALERT_SUCCESS,\n value\n }\n};\nexport const showAlertInfo = (value: string) => {\n return {\n type: types.SHOW_ALERT_INFO,\n value\n }\n};\nexport const showAlertWarning = (value: string) => {\n return {\n type: types.SHOW_ALERT_WARNING,\n value\n }\n};\nexport const showAlertDanger = (value: string = \"Une erreur s’est produite\") => {\n return {\n type: types.SHOW_ALERT_DANGER,\n value\n }\n};\n\nexport const hideAlert = () => {\n return {\n type: types.HIDE_ALERT\n }\n};","import {post, get} from \"../xhr\";\nimport * as models from \"../../models/task\";\n\ninterface listPayload {\n query?: string,\n offset?: number\n}\nexport function list(requestData: listPayload, taskGroupId: string){\n return post('task/list/' + taskGroupId, requestData || {});\n}\n\nexport function edit(requestData: models.Task, id: number){\n return post('task/edit/' + id, requestData);\n}\n\nexport function create(requestData: models.PostTask){\n return post('task/create', requestData);\n}\n\nexport function createException(requestData: models.PostTask, taskId: number){\n return post(`task/exception/create/${taskId}`, requestData);\n}\n\nexport function editException(requestData: models.PostTask, taskId: number){\n return post(`task/exception/edit/${taskId}`, requestData);\n}\n\nexport function show(id: string){\n return get('task/show/' + id);\n}\n\nexport function cancel(id: string){\n return get('task/cancel/' + id);\n}\n\nexport function cancelOnce(id: string, exDate: string){\n return post( `task/exception/cancel_once/${id}`, {exDate: exDate});\n}\n","import React, {useEffect, useRef, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {openSidebar} from \"../../actions/rightSidebar\";\nimport {\n FORM_EDIT_TASK\n} from \"../../constants/rightSidebar\";\nimport format from \"../locale\";\nimport {hideEventPop, refresh} from \"../../actions/task/calendar\";\nimport {showAlertSuccess} from \"../../actions/alert\";\nimport * as API from \"../../adapters/task\";\nimport {Salary} from \"../../models/salary\";\nimport * as statusApi from \"../../adapters/task/status\";\n\nconst TaskEventPop:React.FC = () => {\n\n const e:EventClickArg = useSelector((state: RootStateOrAny) => state.taskCalendar.eventClickArg)\n const displayEventPop:boolean = useSelector((state: RootStateOrAny) => state.taskCalendar.displayEventPop)\n const eventPopRef = useRef(null)\n const [displayCancelConfirmation, setDisplayCancelConfirmation] = useState(false);\n const [cancelType, setCancelType] = useState<1|2>(1);\n const [isLoading, setIsLoading] = useState(false)\n const [statusUpdating, setStatusUpdating] = useState(false)\n const [positions, setPositions] = useState()\n const dispatch = useDispatch()\n\n\n useEffect(() => {\n\n document.addEventListener('click', handleBodyClick)\n setCancelType(1)\n\n if (e){\n setPositions(e.el.getBoundingClientRect())\n }\n\n return () => {\n document.removeEventListener('click', handleBodyClick)\n setPositions(undefined)\n }\n\n }, [e])\n\n useEffect(() => {\n if (positions){\n eventPopPosition();\n }\n }, [positions, displayCancelConfirmation])\n\n useEffect(() => {\n setDisplayCancelConfirmation(false)\n }, [e, displayEventPop])\n\n const eventPopPosition = () => {\n let popup = eventPopRef.current\n if (displayEventPop && popup && e && positions){\n if ((popup.clientHeight/2) + (positions.top + (positions.height/2)) > window.innerHeight){\n let diff = (popup.clientHeight/2) + (positions.top + (positions.height/2)) - window.innerHeight;\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) - diff - 15 + 'px';\n }else if ((popup.clientHeight/2) > positions.top + (positions.height/2)){\n let diff = (popup.clientHeight/2) - (positions.top + (positions.height/2));\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + diff + 15 + 'px';\n }else{\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + 'px';\n }\n\n if (positions.left > (320 + 5) || (window.innerWidth - positions.left - positions.width) > (320 + 5)){\n if (positions.left > (window.innerWidth - positions.left - positions.width)){\n // LEFT\n popup.style.left = (positions.left - 320 - 5) + 'px'\n }else{\n //RIGHT\n popup.style.left = (positions.left + positions.width + 5) + 'px'\n }\n }else{\n popup.style.left = (window.innerWidth - 320) / 2 + 'px';\n }\n }\n }\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let popup = eventPopRef.current!\n\n if (popup && displayEventPop){\n let dimensions = popup.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n dispatch(hideEventPop())\n }\n }\n }\n\n const updateStatus = (status: number) => {\n setStatusUpdating(true)\n // statusApi.edit({exDate: e.event.extendedProps.initialStart, status: status}, e.event.extendedProps.task.id).then((data) => {\n // setStatusUpdating(false)\n // })\n }\n\n const EventPopContent = () => {\n if (displayEventPop){\n return <>\n
\n \n \n
\n
\n
\n
\n \n {e.event.title}\n \n
\n
\n
\n \n
    \n {e.event.extendedProps.status?.val && e.event.extendedProps.status.val !== 1 &&
  • \n \n
  • }\n {e.event.extendedProps.status?.val !== 2 &&
  • \n \n
  • }\n {e.event.extendedProps.status?.val !== 3 &&
  • \n \n
  • }\n
\n
\n
\n
\n
\n
\n {e.event.allDay && \"Toute la journée - \" + format(e.event.start!)}\n {!e.event.allDay && format(e.event.start!, 'dd MMM uuuu HH:mm') + ' - ' + format(e.event.end!, 'HH:mm')}\n \n {e.event.extendedProps.task.recurrence.description}\n
\n
\n {e.event.extendedProps.salaries &&
    \n {e.event.extendedProps.salaries.map((salary: Salary) =>
  • {salary.firstname} {salary.lastname}
  • )}\n
}\n
\n \n }else{\n return <>\n }\n }\n\n const cancelBooking = () => {\n\n setIsLoading(true);\n\n if (e.event.extendedProps.task.recurrence.type === 1){\n API.cancel(e.event.extendedProps.task.id).then(() => cancelValidation())\n }else{\n switch (cancelType){\n case 1:\n API.cancelOnce(e.event.extendedProps.task.id, e.event.extendedProps.initialStart).then(() => cancelValidation())\n break;\n case 2:\n API.cancel(e.event.extendedProps.task.id).then(() => cancelValidation())\n break;\n }\n }\n }\n\n const cancelValidation = () => {\n dispatch(hideEventPop())\n dispatch(refresh());\n dispatch(showAlertSuccess('Tâche supprimé'))\n setIsLoading(false);\n }\n\n const CancelConfirmation = () => {\n return <>\n
\n
\n Êtes vous sûr de vouloir supprimer la tâche suivante ?\n
\n
\n
\n {e.event.title}\n
\n {e.event.allDay && \"Toute la journée - \" + format(e.event.start!)}\n {!e.event.allDay && format(e.event.start!, 'dd MMM uuuu HH:mm') + ' ' + format(e.event.end!, 'dd MMM uuuu HH:mm')}\n
\n
\n {e.event.extendedProps.task.recurrence.type > 1 && <>\n
\n

\n \n Tâche récurrente\n \n {e.event.extendedProps.task.recurrence.description}\n

\n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n }\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n }\n\n if (!e) return <>\n\n return
\n {isLoading ?\n
\n
\n Loading...\n
\n
\n : (displayCancelConfirmation ? : )}\n
\n}\n\nexport default TaskEventPop;","export const ADD_TEMPLATE_APPLIED = 'ADD_TEMPLATE_APPLIED';\nexport const ADD_TEMPLATE_APPLIED_SUCCESS = 'ADD_TEMPLATE_APPLIED_SUCCESS';\nexport const ADD_TEMPLATE_APPLIED_FAILURE = 'ADD_TEMPLATE_APPLIED_FAILURE';\n\nexport const ADD_TEMPLATE_APPLIED_INFORMATION = 'ADD_TEMPLATE_APPLIED_INFORMATION';\nexport const ADD_TEMPLATE_APPLIED_INFORMATION_SUCCESS = 'ADD_TEMPLATE_APPLIED_INFORMATION_SUCCESS';\nexport const ADD_TEMPLATE_APPLIED_INFORMATION_FAILURE = 'ADD_TEMPLATE_APPLIED_INFORMATION_FAILURE';\n\nexport const EDIT_TEMPLATE_APPLIED = 'EDIT_TEMPLATE_APPLIED';\nexport const EDIT_TEMPLATE_APPLIED_SUCCESS = 'EDIT_TEMPLATE_APPLIED_SUCCESS';\nexport const EDIT_TEMPLATE_APPLIED_FAILURE = 'EDIT_TEMPLATE_APPLIED_FAILURE';\n\nexport const FETCH_TEMPLATE_APPLIES = 'FETCH_TEMPLATE_APPLIES';\nexport const FETCH_TEMPLATE_APPLIES_SUCCESS = 'FETCH_TEMPLATE_APPLIES_SUCCESS';\nexport const FETCH_TEMPLATE_APPLIES_FAILURE = 'FETCH_TEMPLATE_APPLIES_FAILURE';\n\nexport const SHOW_TEMPLATE_APPLIED = 'SHOW_TEMPLATE_APPLIED';\nexport const SHOW_TEMPLATE_APPLIED_SUCCESS = 'SHOW_TEMPLATE_APPLIED_SUCCESS';\nexport const SHOW_TEMPLATE_APPLIED_FAILURE = 'SHOW_TEMPLATE_APPLIED_FAILURE';\n","import * as types from \"../../../constants/template/applied\";\nimport * as models from \"../../../models/template/applied\";\n\nexport const addTemplateApplied = () => {\n return {\n type: types.ADD_TEMPLATE_APPLIED,\n }\n}\n\nexport const addTemplateAppliedSuccess = (template: models.TemplateApplied) => {\n return {\n type: types.ADD_TEMPLATE_APPLIED_SUCCESS,\n template: template,\n }\n}\n\nexport const addTemplateAppliedFailure = (error: string) => {\n return {\n type: types.ADD_TEMPLATE_APPLIED_FAILURE,\n template: null,\n templates: null,\n error: error\n }\n}\n\nexport const editTemplateApplied = () => {\n return {\n type: types.EDIT_TEMPLATE_APPLIED,\n }\n}\n\nexport const editTemplateAppliedSuccess = (template: models.TemplateApplied) => {\n return {\n type: types.EDIT_TEMPLATE_APPLIED_SUCCESS,\n template: template,\n }\n}\n\nexport const fetchTemplatesApplies = () => {\n return {\n type: types.FETCH_TEMPLATE_APPLIES,\n }\n}\n\nexport const fetchTemplatesAppliesFailure = (error: string) => {\n return {\n type: types.FETCH_TEMPLATE_APPLIES_FAILURE,\n template: null,\n templates: [],\n error: error\n }\n}\n\nexport const fetchTemplatesAppliesSuccess = (templates: models.TemplateApplies) => {\n return {\n type: types.FETCH_TEMPLATE_APPLIES_SUCCESS,\n template: null,\n templates: templates\n }\n}\n\n\nexport const showTemplateApplied = () => {\n return {\n type: types.SHOW_TEMPLATE_APPLIED,\n }\n}\nexport const showTemplateAppliedSuccess = (template: models.TemplateApplied) => {\n return {\n type: types.SHOW_TEMPLATE_APPLIED_SUCCESS,\n template: template\n }\n}\nexport const showTemplateAppliedFailure = (error: string) => {\n return {\n type: types.SHOW_TEMPLATE_APPLIED_FAILURE,\n template: null,\n templates: null,\n error: error\n }\n}","export const TYPE_EVENT = 'event';\nexport const TYPE_EVENT_EXCEPTION = 'eventException';\n\nexport const TYPE_EVENT_RECURRING = 1;\nexport const TYPE_EVENT_WEEKLY = 2;\n\n","import React from \"react\";\nimport {EventClickArg, EventContentArg} from \"@fullcalendar/react\";\nimport format from \"../locale\";\nimport {ResourceApi} from \"@fullcalendar/resource-common\";\nimport {\n ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED,\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n ACCOUNTING_TYPE_WORK_UNACCOUNTED,\n getAccountingTypeChoice\n} from \"../../constants/booking\";\nimport {PresenceEvent} from \"../../models/calendar\";\nimport {TYPE_EVENT_EXCEPTION, TYPE_EVENT_RECURRING} from \"../../constants/event\";\n\n\nexport function renderEvent(arg: EventContentArg) {\n switch (arg.event.extendedProps.eventType) {\n case 'timeClockBookingMissing':\n return <>\n {arg.event.extendedProps.accountingType === ACCOUNTING_TYPE_WORK_ACCOUNTED && }\n {arg.event.extendedProps.accountingType === ACCOUNTING_TYPE_WORK_UNACCOUNTED && }\n {arg.event.extendedProps.accountingType === ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED && }\n {arg.event.extendedProps.accountingType === ACCOUNTING_TYPE_ABSENCE_ACCOUNTED && }\n {arg.timeText} - {arg.event.start && arg.event.end && format(new Date(arg.event.end.getTime() - arg.event.start.getTime() - (3600 * 1000)), 'HH:mm')}\n
\n \n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n \n \n case 'timeClockBookingAbsent':\n return <>\n {arg.timeText} - {arg.event.extendedProps.absence.typeShortName}\n \n case 'timeClockBooking':\n case 'timeClockBookingException':\n return <>\n \n {arg.event.extendedProps.eventType === 'timeClockBookingException' && }\n {arg.event.extendedProps.isAnomaly && } {arg.timeText} | {arg.event.start && arg.event.end && format(new Date(arg.event.end.getTime() - arg.event.start.getTime() - (3600 * 1000)), 'HH:mm')}\n \n {arg.event.extendedProps.planned && <>\n
\n {format(new Date(arg.event.extendedProps.planned.start), 'HH:mm')} - {format(new Date(arg.event.extendedProps.planned.end), 'HH:mm')} | {arg.event.extendedProps.planned.timeCaption}\n }\n
\n {['timeGridWeek', 'timeGridDay'].includes(arg.view.type) && arg.event.extendedProps.description && \n {arg.event.extendedProps.description}\n }\n \n case 'presence':\n\n let counter = Number(arg.event.extendedProps.children.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let need = Number(arg.event.extendedProps.need || 0);\n let className = need && need > counter ? 'text-danger' : (need && need < counter ? 'text-primary' : 'text-success')\n\n return \n \n {counter}\n {!!need && <>/{need}}\n \n \n case 'templateBookingApplied':\n case 'templateBookingAppliedException':\n case 'bookingException':\n case 'booking':\n switch (arg.view.type){\n case 'resourceTimelineDay':\n return (\n \n
\n
\n {arg.event.title}\n
\n
\n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.absence && {arg.event.extendedProps.absence.typeShortName} }\n
\n
\n
\n {['templateBookingApplied', 'templateBookingAppliedException'].includes(arg.event.extendedProps.eventType) && }\n {arg.event.extendedProps.eventType === 'templateBookingAppliedException' && }\n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.isException && }\n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.recurrence.type !== 1 && !arg.event.extendedProps.isException && }\n {arg.timeText} - {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
\n )\n case 'resourceTimelineWeek':\n return (\n \n
\n
\n {arg.event.title}\n
\n
\n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.absence && {arg.event.extendedProps.absence.typeShortName} }\n
\n
\n
\n
\n {['templateBookingApplied', 'templateBookingAppliedException'].includes(arg.event.extendedProps.eventType) && }\n {arg.event.extendedProps.eventType === 'templateBookingAppliedException' && }\n {arg.event.extendedProps.eventType === 'bookingException' && }\n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.recurrence.type !== 1 && !arg.event.extendedProps.isException && }\n {arg.timeText}\n
\n {arg.event.extendedProps.localisation &&
\n \n
}\n {arg.event.extendedProps.activity &&
\n \n
}\n
\n
\n )\n case 'resourceTimelineMonth':\n return (\n <>\n {['templateBooking','templateBookingException'].includes(arg.event.extendedProps.eventType) && }\n {arg.event.extendedProps.timeCaption}\n \n )\n case 'timeGridWeek':\n case 'timeGridDay':\n return <>\n \n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {!arg.event.extendedProps.isException && arg.event.extendedProps.recurrence?.type > 1 && }\n {arg.timeText}\n \n {arg.event.start && arg.event.end && <>{format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}}\n \n
\n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
\n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
\n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
\n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
\n }\n \n case 'listDay':\n case 'listWeek':\n return <>\n
\n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.isSlotExchange && }\n \n {arg.event.extendedProps.salary.title}\n \n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n }\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
\n
\n {arg.event.extendedProps?.company?.title}\n
\n
\n
\n {arg.event.extendedProps.salary.information.job.title}\n
\n
\n \n }\n break;\n case 'event':\n case 'eventException':\n switch (arg.view.type){\n case 'resourceTimelineDay':\n return (\n \n
\n
\n {arg.event.title}\n
\n
\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.absence && {arg.event.extendedProps.absence.typeShortName} }\n
\n
\n
\n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.type === TYPE_EVENT_RECURRING && }\n {arg.timeText} - {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
\n )\n case 'resourceTimelineWeek':\n return (\n \n
\n
\n {arg.event.title}\n
\n
\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.absence && {arg.event.extendedProps.absence.typeShortName} }\n
\n
\n
\n
\n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.type === TYPE_EVENT_RECURRING && }\n {arg.timeText}\n
\n {arg.event.extendedProps.localisation &&
\n \n
}\n {arg.event.extendedProps.activity &&
\n \n
}\n
\n
\n )\n case 'resourceTimelineMonth':\n return (\n <>\n {arg.event.extendedProps.timeCaption}\n \n )\n case 'timeGridWeek':\n case 'timeGridDay':\n return <>\n \n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.type === TYPE_EVENT_RECURRING && }\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.timeText}\n \n {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n \n {arg.event.extendedProps.exchanged && <>{{arg.event.title}}}\n
\n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
\n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
\n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
\n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
\n }\n {arg.event.extendedProps.accountingType !== ACCOUNTING_TYPE_WORK_ACCOUNTED && <>\n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n }\n \n case 'listDay':\n case 'listWeek':\n return <>\n
\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.exchange && }\n \n {arg.event.extendedProps.salary.title}\n \n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n }\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
\n
\n {arg.event.extendedProps?.company?.title}\n
\n
\n
\n {arg.event.extendedProps.salary.information.job.title}\n
\n {arg.event.extendedProps.accountingType !== ACCOUNTING_TYPE_WORK_ACCOUNTED && <>\n
\n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n
\n }\n
\n \n }\n break;\n case 'task':\n switch (arg.view.type){\n case 'resourceTimelineDay':\n case 'resourceTimelineWeek':\n return
{arg.timeText} {arg.event.title}
\n case 'resourceTimelineMonth':\n return
\n }\n break;\n case 'eventOffer':\n case 'bookingOffer':\n switch (arg.view.type){\n case 'timeGridWeek':\n case 'timeGridDay':\n return <>\n \n {arg.timeText}\n \n {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n \n {arg.event.extendedProps.applicantCount} participants\n \n
\n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
\n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
\n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
\n }\n \n case 'resourceTimelineDay':\n case 'resourceTimelineWeek':\n return <>\n
\n
\n {arg.event.title}\n
\n
\n
\n
\n {arg.timeText}\n
\n {arg.event.extendedProps.localisation &&
\n \n
}\n {arg.event.extendedProps.activity &&
\n \n
}\n
\n \n case 'resourceTimelineMonth':\n return
\n }\n break;\n case 'templateBookingException':\n case 'templateBooking':\n switch (arg.view.type){\n case 'resourceTimelineDay':\n return <>\n
\n
\n {arg.event.extendedProps.resource.job.title}\n
\n
\n
\n
\n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.recurrence.type > 1 && !arg.event.extendedProps.isException && }\n {arg.timeText} - {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n
\n {arg.event.extendedProps.localisation &&
\n {\n \n }\n {arg.event.extendedProps.localisation?.title || ''}\n
}\n {arg.event.extendedProps.activity &&
\n {\n \n }\n {arg.event.extendedProps.activity.title || ''}\n
}\n
\n \n case 'resourceTimelineWeek':\n return (\n <>\n
\n
\n {arg.event.extendedProps.resource.job.title}\n
\n
\n
\n
\n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.recurrence.type > 1 && !arg.event.extendedProps.isException && }\n {arg.timeText}\n
\n {arg.event.extendedProps.localisation &&
\n \n
}\n {arg.event.extendedProps.activity &&
\n \n
}\n
\n \n )\n }\n break;\n }\n}\n\nexport function resourceLaneContent(e: { resource: ResourceApi }){\n if (e.resource.extendedProps.isTopLevel && e.resource.extendedProps.backgroundColor){\n let lane = document.querySelector(`.fc-timeline-lane.fc-resource[data-resource-id=\"${e.resource.id}\"]`) as HTMLTableColElement;\n if (lane){\n lane.style.backgroundColor = e.resource.extendedProps.backgroundColor;\n }\n }\n}","export const ADD_KEEP_NOTE = 'ADD_KEEP_NOTE';\nexport const ADD_KEEP_NOTE_SUCCESS = 'ADD_KEEP_NOTE_SUCCESS';\nexport const ADD_KEEP_NOTE_FAILURE = 'ADD_KEEP_NOTE_FAILURE';\n\nexport const REMOVE_KEEP_NOTE = 'REMOVE_KEEP_NOTE';\nexport const REMOVE_KEEP_NOTE_SUCCESS = 'REMOVE_KEEP_NOTE_SUCCESS';\nexport const REMOVE_KEEP_NOTE_FAILURE = 'REMOVE_KEEP_NOTE_FAILURE';\n\nexport const EDIT_KEEP_NOTE = 'EDIT_KEEP_NOTE';\nexport const EDIT_KEEP_NOTE_SUCCESS = 'EDIT_KEEP_NOTE_SUCCESS';\nexport const EDIT_KEEP_NOTE_FAILURE = 'EDIT_KEEP_NOTE_FAILURE';\n\nexport const FETCH_KEEP_NOTES = 'FETCH_KEEP_NOTES';\nexport const FETCH_KEEP_NOTES_SUCCESS = 'FETCH_KEEP_NOTES_SUCCESS';\nexport const FETCH_KEEP_NOTES_FAILURE = 'FETCH_KEEP_NOTES_FAILURE';\n\nexport const SHOW_KEEP_NOTE = 'SHOW_KEEP_NOTE';\nexport const SHOW_KEEP_NOTE_SUCCESS = 'SHOW_KEEP_NOTE_SUCCESS';\nexport const SHOW_KEEP_NOTE_FAILURE = 'SHOW_KEEP_NOTE_FAILURE';\n","import * as types from \"../../constants/keepNote\";\nimport * as models from \"../../models/keepNote\";\n\nexport const addKeepNote = () => {\n return {\n type: types.ADD_KEEP_NOTE,\n }\n}\n\nexport const addKeepNoteSuccess = (keepNote: models.KeepNote) => {\n return {\n type: types.ADD_KEEP_NOTE_SUCCESS,\n keepNote: keepNote,\n }\n}\n\nexport const addKeepNoteFailure = (error: string) => {\n return {\n type: types.ADD_KEEP_NOTE_FAILURE,\n keepNote: null,\n keepNotes: null,\n error: error\n }\n}\n\nexport const removeKeepNote = () => {\n return {\n type: types.REMOVE_KEEP_NOTE,\n }\n}\n\nexport const removeKeepNoteSuccess = (keepNote: models.KeepNote) => {\n return {\n type: types.REMOVE_KEEP_NOTE_SUCCESS,\n keepNote: keepNote,\n }\n}\n\nexport const removeKeepNoteFailure = (error: string) => {\n return {\n type: types.REMOVE_KEEP_NOTE_FAILURE,\n keepNote: null,\n keepNotes: null,\n error: error\n }\n}\n\nexport const editKeepNote = (keepNote: models.KeepNote) => {\n return {\n type: types.EDIT_KEEP_NOTE,\n keepNote: keepNote\n }\n}\n\n\n\nexport const editKeepNoteSuccess = (KeepNote: models.KeepNote) => {\n return {\n type: types.EDIT_KEEP_NOTE_SUCCESS,\n keepNote: KeepNote,\n }\n}\n\nexport const fetchKeepNotes = () => {\n return {\n type: types.FETCH_KEEP_NOTES,\n }\n}\n\nexport const fetchKeepNotesFailure = (error: string) => {\n return {\n type: types.FETCH_KEEP_NOTES_FAILURE,\n keepNote: null,\n keepNotes: [],\n error: error\n }\n}\n\nexport const fetchKeepNotesSuccess = (keepNotes: models.KeepNotes) => {\n return {\n type: types.FETCH_KEEP_NOTES_SUCCESS,\n keepNote: null,\n keepNotes: keepNotes\n }\n}\n\n\nexport const showKeepNote = () => {\n return {\n type: types.SHOW_KEEP_NOTE,\n }\n}\nexport const showKeepNoteSuccess = (keepNote: models.KeepNote) => {\n return {\n type: types.SHOW_KEEP_NOTE_SUCCESS,\n keepNote: keepNote\n }\n}\nexport const showKeepNoteFailure = (error: string) => {\n return {\n type: types.SHOW_KEEP_NOTE_FAILURE,\n keepNote: null,\n keepNotes: null,\n error: error\n }\n}","import React, {useEffect, useRef, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {openSidebar} from \"../../actions/rightSidebar\";\nimport {\n FORM_EDIT_ABSENCE,\n FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION\n} from \"../../constants/rightSidebar\";\nimport format from \"../locale\";\nimport {hideEventPop, hideTemplateEventPop, refresh} from \"../../actions/calendar\";\nimport {showAlertSuccess} from \"../../actions/alert\";\nimport * as api from \"../../adapters/template/applied/exception\";\nimport {getAccountingTypeChoice} from \"../../constants/booking\";\nimport {calendarInitialStateInterface} from \"../../models/calendar\";\n\nconst EventAppliedPop:React.FC = () => {\n\n const e:EventClickArg = useSelector((state: RootStateOrAny) => state.calendar.eventClickArg)\n const displayEventPop:boolean = useSelector((state: RootStateOrAny) => state.calendar.displayTemplateEventPop)\n const eventPopRef = useRef(null)\n const calendar: calendarInitialStateInterface = useSelector((state: RootStateOrAny) => state.calendar)\n const [displayCancelConfirmation, setDisplayCancelConfirmation] = useState(false);\n const [cancelType, setCancelType] = useState<1|2>(1);\n const [isLoading, setIsLoading] = useState(false)\n const [labourDayLoading, setLabourDayLoading] = useState(false)\n const [positionsLoaded, setPositionsLoaded] = useState(false)\n const [positions, setPositions] = useState()\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (positions){\n eventPopPosition();\n }\n }, [positions])\n\n useEffect(() => {\n\n setCancelType(1);\n document.addEventListener('click', handleBodyClick)\n\n if (e){\n setPositions(e?.el.getBoundingClientRect())\n }\n\n return () => {\n document.removeEventListener('click', handleBodyClick)\n }\n }, [e, displayCancelConfirmation])\n\n useEffect(() => {\n setDisplayCancelConfirmation(false)\n }, [e, displayEventPop])\n\n const setLabourDayWorked = (e: EventClickArg, worked: boolean) => {\n setLabourDayLoading(true);\n // api.labourDay(e.event.extendedProps.templateAppliedId, e.event.extendedProps.bookingInstanceId, e.event.extendedProps.exceptionInstanceId, worked).then(() => {\n // dispatch(refresh());\n // dispatch(showAlertSuccess('Créneau mis à jour'))\n // })\n }\n\n const eventPopPosition = () => {\n setPositionsLoaded(false)\n let popup = eventPopRef.current\n if (displayEventPop && popup && e && positions){\n if ((popup.clientHeight/2) + (positions.top + (positions.height/2)) > window.innerHeight){\n let diff = (popup.clientHeight/2) + (positions.top + (positions.height/2)) - window.innerHeight;\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) - diff - 15 + 'px';\n }else if ((popup.clientHeight/2) > positions.top + (positions.height/2)){\n let diff = (popup.clientHeight/2) - (positions.top + (positions.height/2));\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + diff + 15 + 'px';\n }else{\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + 'px';\n }\n\n if (positions.left > (320 + 5) || (window.innerWidth - positions.left - positions.width) > (320 + 5)){\n if (positions.left > (window.innerWidth - positions.left - positions.width)){\n // LEFT\n popup.style.left = (positions.left - 320 - 5) + 'px'\n }else{\n //RIGHT\n popup.style.left = (positions.left + positions.width + 5) + 'px'\n }\n }else{\n popup.style.left = (window.innerWidth - 320) / 2 + 'px';\n }\n }\n setPositionsLoaded(true)\n }\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let popup = eventPopRef.current\n\n if (popup && displayEventPop){\n let dimensions = popup.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n dispatch(hideEventPop())\n }\n }\n }\n\n const EventPopContent = () => {\n if (displayEventPop){\n return <>\n {e.event.extendedProps.absence &&
\n {e.event.extendedProps.absence.typeName}\n \n \n \n
\n

\n Du {format(new Date(e.event.extendedProps.absence.start)) + ' au ' + format(new Date(e.event.extendedProps.absence.end))}\n

\n
}\n
\n \n \n
\n {e.event.extendedProps.labourDay && <>\n

\n {e.event.extendedProps.labourDay.title}\n

\n
\n setLabourDayWorked(e, ev.target.checked)}\n defaultChecked={e.event.extendedProps.labourDayWorked}\n className=\"form-check-input\" type=\"checkbox\" id=\"labourDay\" />\n \n
\n }\n
\n
\n
\n {e.event.extendedProps.salary.title} | {e.event.extendedProps.salary.information.job.title}\n
\n {e.event.extendedProps.templateTitle}\n {/**/}\n
\n {e.event.extendedProps.description && \n {e.event.extendedProps.description}\n }\n
\n {e.event.extendedProps.salary.tel}\n
\n {e.event.extendedProps.company.title}\n
\n \n {e.event.extendedProps.localisation?.title || ''}\n
\n \n {e.event.extendedProps.activity?.title || ''}\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n \n {e.event.extendedProps.beginAt} - {e.event.extendedProps.endAt} - {e.event.extendedProps.timeCaption}\n \n
\n {e.event.extendedProps.accountingType && {getAccountingTypeChoice(e.event.extendedProps.accountingType)?.label}}\n \n {e.event.extendedProps.groupTitle && \n {e.event.extendedProps.groupTitle}\n }\n
\n \n }else{\n return <>\n }\n }\n\n const cancelBooking = () => {\n setIsLoading(true);\n // api.cancel(e.event.extendedProps.templateAppliedId, e.event.extendedProps.bookingInstanceId, e.event.extendedProps.exceptionInstanceId)\n // .then(() => {\n // dispatch(hideTemplateEventPop())\n // dispatch(refresh());\n // dispatch(showAlertSuccess('Créneau supprimé'))\n // setIsLoading(false);\n // })\n }\n\n const CancelConfirmation = () => {\n return <>\n
\n
\n Êtes vous sûr de vouloir supprimer le créneau suivant ?\n
\n
\n
\n {e.event.extendedProps.salary.title}\n
\n {e.event.extendedProps.beginAt} - {e.event.extendedProps.endAt} - {e.event.extendedProps.timeCaption}\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n }\n\n if (!e) return <>\n\n return
\n {isLoading ?\n
\n
\n Loading...\n
\n
\n : (displayCancelConfirmation ? : )}\n
\n}\n\nexport default EventAppliedPop;","import * as xhr from \"../../xhr\";\n\nexport function create(requestData: any, event: number){\n return xhr.post(`event/exception/create/${event}`, requestData);\n}\n\nexport function edit(requestData: any, exception: number){\n return xhr.post(`event/exception/edit/${exception}`, requestData);\n}\n\nexport function cancel(exception: number){\n return xhr.get(`event/exception/cancel/${exception}`);\n}\n\nexport function removeSub(exception: number){\n return xhr.get(`event/exception/remove_sub/${exception}`);\n}","import {post, get} from \"../xhr\";\n\nexport function match(requestData: {isSameDuration: boolean, start: string, end: string, startDate: string, endDate: string, jobs: number[], salaries: number[] }, salary: number){\n return post(`event_exchange/match/${salary}`, requestData || {});\n}\nexport function list(requestData: {\n isSameDuration: boolean,\n start: string,\n end: string,\n jobs: number[],\n event: {\n start: string,\n end: string,\n company: number,\n salary: number\n }}){\n return post(`event_exchange/list`, requestData);\n}\n\nexport function create(requestData: {\n event: number,\n exDate: string,\n target: number,\n targetExDate: string,\n}){\n return post(`event_exchange/create`, requestData);\n}\nexport function cancel(id: number){\n return get(`event_exchange/cancel/${id}`);\n}","import React, {useEffect, useRef, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {\n FORM_EDIT_ABSENCE,\n FORM_EDIT_BOOKING_SUBSTITUTE, FORM_EVENT_CANCEL, FORM_EVENT_EXCEPTION_ADD,\n FORM_EVENT_EXCEPTION_EDIT, FORM_NEW_EVENT_EXCHANGE,\n SHOW_SALARY_TEMPLATE\n} from \"../../../constants/rightSidebar\";\nimport format from \"../../locale\";\nimport {hideEventPopup, refresh, refreshResource} from \"../../../actions/calendar\";\nimport * as api from \"../../../adapters/booking\";\nimport * as exceptionApi from \"../../../adapters/event/exception\";\nimport * as eventExchangeApi from \"../../../adapters/eventExchange\";\nimport {BookingExceptionPayload} from \"../../../adapters/booking\";\nimport {getAccountingTypeChoice} from \"../../../constants/booking\";\nimport {calendarInitialStateInterface} from \"../../../models/calendar\";\nimport {Tooltip} from \"bootstrap\";\nimport {TYPE_EVENT, TYPE_EVENT_EXCEPTION} from \"../../../constants/event\";\nimport SmallLoader from \"../../loader/small\";\n\nconst EventPopup:React.FC = () => {\n\n const e:EventClickArg = useSelector((state: RootStateOrAny) => state.calendar.eventClickArg)\n const calendar: calendarInitialStateInterface = useSelector((state: RootStateOrAny) => state.calendar)\n const show:boolean = useSelector((state: RootStateOrAny) => state.calendar.showEventPopup)\n const eventPopRef = useRef(null)\n const [cancelType, setCancelType] = useState<1|2|3>(1);\n const [isLoading, setIsLoading] = useState(false)\n const [labourDayLoading, setLabourDayLoading] = useState(false)\n const [positionsLoaded, setPositionsLoaded] = useState(false)\n const [positions, setPositions] = useState()\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (positions){\n eventPopPosition();\n }\n }, [positions, cancelType])\n\n // useEffect(() => {\n // let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n // tooltipTriggerList.map(function (tooltipTriggerEl) {\n // return new Tooltip(tooltipTriggerEl)\n // })\n //\n // return () => {\n // tooltipTriggerList.map(t => Tooltip.getInstance(t).hide())\n // }\n // }, [show, positionsLoaded])\n\n useEffect(() => {\n document.addEventListener('click', handleBodyClick)\n\n if (e){\n setPositions(e?.el.getBoundingClientRect())\n }\n\n return () => {\n document.removeEventListener('click', handleBodyClick)\n }\n }, [e])\n\n\n const setLabourDayWorked = (e: EventClickArg, worked: boolean) => {\n setLabourDayLoading(true);\n let values: BookingExceptionPayload = {\n labourDayWorked: worked,\n accountingType: e.event.extendedProps.accountingType,\n salary: e.event.extendedProps.salary.id,\n company: e.event.extendedProps.company.id,\n activity: e.event.extendedProps.activity?.id,\n localisation: e.event.extendedProps.localisation?.id,\n endAt: e.event.end!,\n beginAt: e.event.start!,\n description: e.event.extendedProps.description,\n substitute: e.event.extendedProps.substitute?.id,\n comment: e.event.extendedProps.comment,\n }\n\n if (e.event.extendedProps.isException){\n api.editException(values, e.event.extendedProps.exceptionInstanceId).then((data) => {\n dispatch(refresh())\n setLabourDayLoading(false);\n })\n }else{\n api.createException(values, e.event.extendedProps.bookingInstanceId, e.event.extendedProps.instanceToken).then((data) => {\n dispatch(refresh())\n setLabourDayLoading(false);\n })\n }\n }\n\n\n\n const eventPopPosition = () => {\n setPositionsLoaded(false)\n let popup = eventPopRef.current\n if (show && popup && e && positions){\n if ((popup.clientHeight/2) + (positions.top + (positions.height/2)) > window.innerHeight){\n let diff = (popup.clientHeight/2) + (positions.top + (positions.height/2)) - window.innerHeight;\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) - diff - 15 + 'px';\n }else if ((popup.clientHeight/2) > positions.top + (positions.height/2)){\n let diff = (popup.clientHeight/2) - (positions.top + (positions.height/2));\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + diff + 15 + 'px';\n }else{\n popup.style.top = (positions.top + (positions.height/2) - (popup.clientHeight/2)) + 'px';\n }\n\n if (positions.left > (320 + 5) || (window.innerWidth - positions.left - positions.width) > (320 + 5)){\n if (positions.left > (window.innerWidth - positions.left - positions.width)){\n // LEFT\n popup.style.left = (positions.left - 320 - 5) + 'px'\n }else{\n //RIGHT\n popup.style.left = (positions.left + positions.width + 5) + 'px'\n }\n }else{\n popup.style.left = (window.innerWidth - 320) / 2 + 'px';\n }\n }\n setPositionsLoaded(true)\n }\n\n const handleBodyClick = (evt: MouseEvent) => {\n\n let popup = eventPopRef.current\n\n if (popup && show){\n let dimensions = popup.getBoundingClientRect();\n\n let [xStart, xEnd] = [dimensions.left, dimensions.left + dimensions.width];\n let [yStart, yEnd] = [dimensions.top, dimensions.top + dimensions.height];\n\n let clickOutsideX = !(xStart <= evt.clientX && xEnd >= evt.clientX);\n let clickOutsideY = !(yStart <= evt.clientY && yEnd >= evt.clientY);\n\n if (clickOutsideX || clickOutsideY){\n dispatch(hideEventPopup())\n }\n }\n }\n\n const [removingSub, setRemovingSub] = useState(false);\n const removeSub = () => {\n setRemovingSub(true)\n exceptionApi.removeSub(e.event.extendedProps.exceptionId).then(() => {\n setRemovingSub(false);\n dispatch(refresh());\n dispatch(hideEventPopup())\n })\n }\n\n const EventPopContent = () => {\n if (show){\n return <>\n
\n \n \n {!e.event.extendedProps.exchange && !e.event.extendedProps.exchanged && }\n \n
\n {e.event.extendedProps.labourDay && <>\n

\n {e.event.extendedProps.labourDay.title}\n

\n
\n setLabourDayWorked(e, ev.target.checked)}\n defaultChecked={e.event.extendedProps.labourDayWorked}\n className=\"form-check-input\" type=\"checkbox\" id=\"labourDay\" />\n \n
\n
\n }\n {e.event.extendedProps.isSlotExchange && <>\n
\n
\n
\n
\n

\n Échange de créneau\n

\n
\n
\n \n
\n
\n
\n }\n
\n {e.event.extendedProps.templateId &&
\n

\n Emploi du temps : {e.event.extendedProps.templateTitle}\n

\n
\n
\n {format(new Date(e.event.extendedProps.templateStart), \"dd/MM/uuuu\")} {e.event.extendedProps.templateEnd ? format(new Date(e.event.extendedProps.templateEnd), \"dd/MM/uuuu\") : <>Non renseigné}\n
\n
\n \n
\n
\n
}\n
\n
\n
\n

\n Collaborateur\n

\n
\n {e.event.extendedProps.salary.firstname} {e.event.extendedProps.salary.lastname}\n
\n
\n
\n {e.event.extendedProps.salary.information.job.title}\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n {e.event.extendedProps.salary.tel}\n
\n
\n {e.event.extendedProps.substitute && !e.event.extendedProps.substitution && <>\n
\n
\n
\n
\n

\n Remplacant\n

\n
\n
\n \n
\n
\n
\n {e.event.extendedProps.substitute.firstname} {e.event.extendedProps.substitute.lastname}\n
\n
\n
\n {e.event.extendedProps.substitute.information.job.title}\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n {e.event.extendedProps.substitute.tel}\n
\n
\n }\n
\n
\n

\n Lieu et activité\n

\n {e.event.extendedProps.company.title}\n
\n \n {e.event.extendedProps.localisation?.title || ''}\n
\n \n {e.event.extendedProps.activity?.title || ''}\n
\n {e.event.extendedProps.description && \n {e.event.extendedProps.description}\n }\n
\n
\n
\n

\n Horaire\n

\n \n {format(e.event.start!, \"HH:mm\")} - {format(e.event.end!, \"HH:mm\")} - {e.event.extendedProps.timeCaption}\n \n
\n {e.event.extendedProps.accountingType && {getAccountingTypeChoice(e.event.extendedProps.accountingType)?.label}}\n \n {e.event.extendedProps.description}\n
\n {e.event.extendedProps.absence && <>\n
\n
\n

\n Absence\n

\n
\n
{e.event.extendedProps.absence.typeName}
\n
\n \n
\n
\n
\n

\n Du {format(new Date(e.event.extendedProps.absence.start)) + ' au ' + format(new Date(e.event.extendedProps.absence.end))}\n

\n
}\n \n }else{\n return <>\n }\n }\n\n if (!e) return <>\n\n return
\n {isLoading ?\n
\n
\n Loading...\n
\n
\n : }\n
\n}\n\nexport default EventPopup;","import React, {forwardRef, useEffect, useState} from \"react\";\nimport FullCalendar, {\n CalendarApi,\n DateSelectArg,\n EventClickArg,\n EventDropArg, SlotLabelContentArg, ViewMountArg,\n VUIEvent\n} from \"@fullcalendar/react\";\nimport {Link} from \"react-router-dom\";\nimport resourceTimelinePlugin from \"@fullcalendar/resource-timeline\";\nimport listPlugin from \"@fullcalendar/list\";\nimport interactionPlugin, {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport * as action from \"../../actions/calendar\";\nimport * as api from \"../../adapters/calendar\";\nimport * as teamApi from \"../../adapters/team\";\nimport * as taskCalendarActions from \"../../actions/task/calendar\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {\n BOOKING_HISTORY,\n FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION,\n FORM_CALENDAR_DOWNLOAD,\n FORM_CALENDAR_RESOURCE_ORDER,\n FORM_CALENDAR_SETTINGS,\n FORM_EDIT_ACTIVITY,\n FORM_EDIT_BOOKING,\n FORM_EDIT_JOB,\n FORM_EDIT_LOCALISATION,\n FORM_KEEP_NOTE_ADD,\n FORM_KEEP_NOTE_LIST,\n FORM_NEW_ABSENCE,\n FORM_NEW_BOOKING,\n FORM_NEW_BOOKING_OFFER,\n FORM_NEW_LOCALISATION,\n FORM_NEW_SALARY,\n FORM_NEW_TASK,\n FORM_NEW_TEMPLATE_FROM_CALENDAR,\n LIST_TEMPLATES_APPLY,\n NEED_LIST,\n SHOW_BOOKING_OFFER,\n TEMPLATES_APPLY_EDIT,\n FORM_EVENT_ADD,\n FORM_EVENT_EXCEPTION_EDIT,\n FORM_EVENT_EXCEPTION_ADD,\n SHOW_EVENT_OFFER,\n FORM_NEW_EVENT_OFFER\n} from \"../../constants/rightSidebar\";\nimport {openSidebar} from \"../../actions/rightSidebar\";\nimport format from \"../../utils/locale/index\";\nimport DatePicker from \"react-datepicker\";\nimport {setPageTitle, setHelpProductSheetIds} from \"../../actions/header\";\nimport {\n fetchAllEventsSuccess,\n fetchResourcesSuccess,\n fetchTitleSuccess,\n refresh, refreshResourceSuccess, setCompanies,\n showEventPop, showEventPopup,\n showResourceActions, showTemplateEventPop\n} from \"../../actions/calendar\";\nimport {NeedEvent, PresenceEvent, ResourceLabelContentArg, WorkingTime} from \"../../models/calendar\";\nimport EventPop from \"../../utils/eventPop\";\nimport ResourceActions from \"../../utils/resourceActions\";\nimport TaskEventPop from \"../../utils/taskEventPop\";\nimport Loader from \"../../utils/loader\";\nimport {Tooltip} from \"bootstrap\";\nimport {TemplateApplied, TemplateApplies} from \"../../models/template\";\nimport {fetchTemplatesAppliesSuccess} from \"../../actions/template/applied\";\nimport {renderEvent, resourceLaneContent} from \"../../utils/calendar\";\nimport {fetchKeepNotesSuccess} from \"../../actions/keepNote\";\nimport {KeepNote} from \"../../models/keepNote\";\nimport {Granted, GrantedAny, GrantedMany} from \"../../security/granted\";\nimport * as accessRights from \"../../constants/accessRight\";\nimport {axiosError} from \"../../actions/axios\";\nimport HasModule from \"../../security/hasModule\";\nimport {Companies, Company} from \"../../models/companies\";\nimport {LIST_TIME_CLOCK} from \"../../constants/accessRight\";\nimport {Team, Teams} from \"../../models/team\";\nimport EventAppliedPop from \"../../utils/eventAppliedPop\";\nimport rrulePlugin from \"@fullcalendar/rrule\";\nimport {TYPE_EVENT, TYPE_EVENT_EXCEPTION} from \"../../constants/event\";\nimport EventPopup from \"../../utils/event/popup\";\nimport getVersion from \"../../security/getVersion\";\n\nconst CalendarShow :React.FC = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state)\n\n const defaultView = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.defaultView)\n const isPresence = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.isPresence)\n const defaultGroupBy = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.defaultGroupBy)\n const timePrecision = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.timePrecision)\n const timezone = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.timezone)\n const daysOfWeek = useSelector((state: RootStateOrAny) => state.auth.user.calendarSettings.daysOfWeek)\n\n const isRefresh = useSelector((state: RootStateOrAny) => state.calendar.refresh)\n const needEvents = useSelector((state: RootStateOrAny) => state.calendar.needEvents)\n const events = useSelector((state: RootStateOrAny) => state.calendar.events)\n const workingTimes = useSelector((state: RootStateOrAny) => state.calendar.workingTimes)\n const resources = useSelector((state: RootStateOrAny) => state.calendar.resources)\n const companies: Companies = useSelector((state: RootStateOrAny) => state.calendar.companies)\n const view = useSelector((state: RootStateOrAny) => state.calendar.view)\n const tasks = useSelector((state: RootStateOrAny) => state.calendar.tasks)\n const bookingOffers = useSelector((state: RootStateOrAny) => state.calendar.bookingOffers)\n const presenceEvents = useSelector((state: RootStateOrAny) => state.calendar.presenceEvents)\n const refreshResource = useSelector((state: RootStateOrAny) => state.calendar.refreshResource)\n const resourceSalary = useSelector((state: RootStateOrAny) => state.calendar.salary)\n const title = useSelector((state: RootStateOrAny) => state.calendar.title)\n const calendarRef = React.createRef();\n const [timeRange, setTimeRange] = useState({\n minTime: '09:00:00',\n maxTime: '21:00:00',\n });\n\n const [isOuter, setIsOuter] = useState(true);\n const [isAbsence, setIsAbsence] = useState(true);\n const [isAbsent, setIsAbsent] = useState(true);\n const [isBookingOffer, setIsBookingOffer] = useState(true);\n const [Wn, setWn] = useState(format(new Date(), 'I'));\n const [viewType, setViewType] = useState('list');\n const [labourDays, setLabourDays] = useState<{date: string; title: string}[]>([])\n const [groupBy, setGroupBy] = useState(state.auth.user.calendarSettings.defaultGroupBy)\n\n const [pickerDate, setPickerDate] = useState(new Date());\n\n const [isLoading, setIsLoading] = useState(true);\n const templates:TemplateApplies = useSelector((state: RootStateOrAny) => state.templateApplied.payload)\n\n const [isSm, setIsSm] = useState(window.innerWidth < 768);\n const [nightView, setNightView] = useState(false);\n const userCompanies:Companies = state.auth.user.currentSalary.companies;\n const [selectingCompanies, setSelectingCompanies] = useState([state.auth.user.currentSalary.companies[0]])\n const [teams, setTeams] = useState([])\n const [job, setJob] = useState<0|1|2>(0)\n const [selectedTeams, setSelectedTeams] = useState([])\n const [companyQuery, setCompanyQuery] = useState('')\n const [teamQuery, setTeamQuery] = useState('')\n\n const onValidateBsDropdown = () => {\n if (companies.filter((selected: Company) => !!selectingCompanies.find(selecting => selecting.id === selected.id)).length !== selectingCompanies.length){\n dispatch(setCompanies([...selectingCompanies]))\n }\n }\n\n useEffect(() => {\n let controller = new AbortController();\n if (Granted(accessRights.LIST_TEAM) && HasModule('team')){\n teamApi.list({}, controller.signal).then(data => setTeams(data.data))\n }\n return () => controller.abort();\n }, [])\n\n useEffect(() => {\n\n let _companies = !!companies.length ? [...companies] : [userCompanies[0]]\n\n if (!!_companies.length){\n let min:Date = _companies.map((company: Company) => new Date(company.timesheet.openAt)).sort((a: Date, b: Date) => a.getTime() - b.getTime())[0];\n let max:Date = _companies.map((company: Company) => new Date(company.timesheet.closeAt)).sort((a: Date, b: Date) => b.getTime() - a.getTime())[0];\n\n if (min < max){\n if (nightView){\n let max_hours = pad(24 + min.getHours(), 2);\n let max_minutes = pad(min.getMinutes(), 2);\n\n let min_hours = pad(max.getHours(), 2);\n let min_minutes = pad(max.getMinutes(), 2);\n\n setTimeRange({\n minTime: `${min_hours}:${min_minutes}`,\n maxTime: `${max_hours}:${max_minutes}`,\n });\n\n }else{\n setTimeRange(\n {\n minTime: format(min, 'HH:mm'),\n maxTime: format(max, 'HH:mm')\n }\n );\n }\n }\n }\n }, [companies, nightView, timezone])\n\n const pad = (num: number, size: number) => {\n let ret = num.toString();\n while (ret.length < size) ret = \"0\" + ret;\n return ret;\n }\n\n useEffect(() => {\n renderDaySeparator();\n }, [timeRange])\n\n useEffect(() => {\n window.addEventListener(\"resize\", handleResize)\n\n let API = calendarRef.current?.getApi();\n\n if (API){\n if (isSm){\n calendarApiNavActions(viewType === 'list' ? 'listDay' : 'resourceTimelineDay')\n }else{\n calendarApiNavActions(view || defaultView)\n }\n }\n\n return () => window.removeEventListener(\"resize\", handleResize)\n }, [isSm, viewType])\n\n const handleResize = () => {\n if (window.innerWidth >= 768 && isSm){\n setIsSm(false);\n }else if(window.innerWidth < 768 && !isSm){\n setIsSm(true);\n }\n }\n\n // ONLOAD\n useEffect(() => {\n dispatch(setPageTitle('Planning'))\n dispatch(setHelpProductSheetIds([3, 8, 9, 11, 12, 14]))\n\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n\n return () => {\n tooltipTriggerList.map(t => Tooltip.getInstance(t).hide())\n dispatch(setHelpProductSheetIds([]))\n }\n }, [])\n\n useEffect(() => {\n let controller = new AbortController();\n let API = calendarRef.current?.getApi();\n if (API){\n refreshCalendar(controller.signal);\n }\n\n return () => {\n controller.abort()\n };\n }, [\n isRefresh,\n job,\n groupBy\n ])\n\n useEffect(() => {\n let controller = new AbortController();\n let API = calendarRef.current?.getApi();\n if (API && refreshResource)\n {\n api.fetchCalendar({\n start: format(API.view.currentStart, 'uuuu-MM-dd'),\n end: format(API.view.currentEnd, 'uuuu-MM-dd'),\n options: {\n companies: companies.length ? companies.map((c: Company) => c.id!) : [],\n view: API.view.type,\n workingTime: true,\n presence: isPresence,\n resources: true,\n sortBy: groupBy || defaultGroupBy,\n salaries: [resourceSalary.id]\n }\n }).then((data) => {\n dispatch(refreshResourceSuccess(data.data.events, data.data.presenceEvents, data.data.workingTimes))\n })\n }\n\n return () => controller.abort();\n }, [refreshResource])\n\n const ViewDidMount = (e: ViewMountArg) => {\n renderDaySeparator();\n e.view.calendar.updateSize();\n }\n\n const renderDaySeparator = () => {\n const leadingZero = (num: number) => `0${num}`.slice(-2);\n const formatTime = (date: Date) =>\n [date.getHours(), date.getMinutes(), date.getSeconds()]\n .map(leadingZero)\n .join(':');\n\n let lanes = Array.from(document.querySelectorAll('td.fc-timeline-slot-lane') as NodeListOf);\n let dates = lanes.filter((lane) => !!lane.dataset?.date).map((lane) => new Date(lane.dataset.date!).getTime())\n const maxDate = new Date(Math.max.apply(null, dates));\n const maxTime = formatTime(maxDate)\n for (let i in lanes){\n if(typeof lanes[i] === 'object'){\n if (lanes[i].hasAttribute('data-date')){\n if(lanes[i].getAttribute('data-date')?.split('T')[1] === maxTime){\n lanes[i].style.cssText = 'border-right: solid #4723D9 2px !important;'\n }else{\n lanes[i].style.cssText = ''\n }\n }\n }\n }\n }\n\n useEffect(() => {\n let API = calendarRef.current?.getApi();\n if (API && API.getOption(\"filterResourcesWithEvents\") !== !isAbsent){\n API.setOption(\"filterResourcesWithEvents\", !isAbsent)\n }\n }, [isAbsent])\n\n const eventClick = (e: EventClickArg) => {\n e.jsEvent.stopPropagation();\n\n if(!Granted(accessRights.EDIT_BOOKING)){\n return false;\n }\n\n if (['booking', 'bookingException'].includes(e.event.extendedProps.eventType)){\n dispatch(showEventPop(e, e.event.extendedProps.longResourceId, e.event.extendedProps.resourceParentId))\n }\n\n if ([TYPE_EVENT, TYPE_EVENT_EXCEPTION].includes(e.event.extendedProps.eventType)){\n dispatch(showEventPopup(e, e.event.extendedProps.longResourceId, e.event.extendedProps.resourceParentId))\n }\n\n if (['templateBookingApplied', 'templateBookingAppliedException'].includes(e.event.extendedProps.eventType)){\n dispatch(showTemplateEventPop(e, e.event.extendedProps.longResourceId, e.event.extendedProps.resourceParentId))\n }\n\n if (e.event.extendedProps.eventType === 'task'){\n dispatch(taskCalendarActions.showEventPop(e))\n }\n\n if (e.event.extendedProps.eventType === 'bookingOffer'){\n dispatch(openSidebar(SHOW_BOOKING_OFFER, {\n offer: e.event.extendedProps.offer\n }))\n }\n\n if (e.event.extendedProps.eventType === 'eventOffer'){\n dispatch(openSidebar(SHOW_EVENT_OFFER, {\n offer: e.event.extendedProps.offer\n }))\n }\n }\n\n const calendarApiNavActions = (e: string) => {\n\n let API = calendarRef.current?.getApi()\n if (API){\n switch (e) {\n case 'prev':\n API.prev();\n break;\n case 'next':\n API.next();\n break;\n case 'listDay':\n case 'resourceTimelineMonth':\n case 'resourceTimelineDay':\n case 'resourceTimelineWeek':\n API.changeView(e)\n dispatch(action.setView(e));\n break;\n }\n\n dispatch(fetchTitleSuccess(API.view.title, API.view.currentStart, API.view.currentEnd))\n dispatch(refresh())\n }\n }\n\n // FETCH FUNCTIONS\n const refreshCalendar = (signal: AbortSignal) => {\n let API = calendarRef.current?.getApi()\n if (API){\n dispatch(action.fetchTitleSuccess(API.view.title, API.view.currentStart, API.view.currentEnd));\n setWn(format(API.getDate(), 'I'));\n return Promise.all([\n fetchCalendar(API, signal),\n ]).then(() => renderDaySeparator())\n }else {\n return false;\n }\n }\n\n const fetchCalendar = (API: CalendarApi, signal: AbortSignal) => {\n dispatch(action.fetchEvents())\n setIsLoading(true)\n return api.fetchCalendar({\n start: format(API.view.currentStart,'uuuu-MM-dd'),\n end: format(API.view.currentEnd,'uuuu-MM-dd'),\n options: {\n companies: companies.map((c: Company) => c.id!),\n sortBy: groupBy || defaultGroupBy,\n presence: isPresence,\n view: (API.view.type || defaultView),\n workingTime: true,\n resources: true,\n isBookingOffer: isBookingOffer,\n job: job,\n teams: selectedTeams.map(t => t.id),\n }}, signal).then(data => {\n setIsLoading(false);\n setLabourDays(data.data.labourDays);\n dispatch(fetchTemplatesAppliesSuccess(data.data.templates))\n dispatch(fetchKeepNotesSuccess(data.data.keepNotes))\n dispatch(fetchResourcesSuccess(data.data.resources))\n dispatch(fetchAllEventsSuccess(data.data.events, data.data.presenceEvents, data.data.needEvents, data.data.workingTimes, data.data.tasks, data.data.bookingOffers))\n setTimeout(() => API.updateSize(), 500)\n }).then(() => {\n return true\n })\n .catch(error => dispatch(axiosError(error)))\n }\n\n const renderResource = (arg: ResourceLabelContentArg) => {\n if (arg.resource.extendedProps.hierarchy !== 'child'){\n switch (arg.resource.extendedProps.resourceType)\n {\n case \"task\":\n return <>\n Tâches\n \n case \"activity\":\n case \"localisation\":\n case \"job\":\n return \n \n {arg.resource.title}\n \n \n
{\n\n if (arg.resource.extendedProps.preventDefault){\n return false;\n }\n\n if(Granted(accessRights.EDIT_BOOKING)){\n switch (groupBy) {\n case 1:\n dispatch(openSidebar(FORM_EDIT_JOB, arg.resource.extendedProps.job))\n break;\n case 2:\n let _localisation = arg.resource.extendedProps.localisation;\n _localisation.company = arg.resource.extendedProps.company\n dispatch(openSidebar(FORM_EDIT_LOCALISATION, _localisation))\n break;\n case 3:\n let _activity = arg.resource.extendedProps.activity;\n _activity.company = arg.resource.extendedProps.company\n dispatch(openSidebar(FORM_EDIT_ACTIVITY, _activity))\n break;\n }\n }\n }}\n >\n
\n {arg.resource.extendedProps.icon && }\n
\n
\n
\n
\n case \"unclassified\":\n return <>Créneaux non classé\n default:\n return <>{arg.resource.title}\n }\n }\n\n if (!arg.resource.extendedProps.grouped){\n let workingTime = workingTimes?.find((workingTime: WorkingTime) => workingTime.salary.id === arg.resource.extendedProps.salary.id);\n\n return \n
\n \n \n {Granted(accessRights.LIST_SALARY) ? {arg.resource.title} : <>{arg.resource.title}}\n \n \n {Granted(accessRights.EDIT_BOOKING) && \n \n \n \n {workingTime?.time || (isLoading ?
: '00:00')}\n
\n {arg.view.type === 'resourceTimelineWeek' && (!!workingTime?.diffTimestamp ?\n \n {workingTime.diffTimestamp > 0 ? :\n } {workingTime.diffInterval}\n : )}\n
\n
}\n
\n {Granted(accessRights.EDIT_BOOKING) && arg.resource.extendedProps.showSalaryDropdown && \n \n }\n
\n
\n }\n\n return <>\n }\n\n const renderResourceGroup = (arg: any) => {\n let array = arg.groupValue.split(':')\n return Sem.{array[array.length - 1]} {array[array.length - 3]} \n }\n\n const eventResize = (e: EventResizeDoneArg) => {\n dispatch(action.editEvent(e));\n if (Granted(accessRights.EDIT_BOOKING)){\n switch (e.event.extendedProps.eventType){\n case TYPE_EVENT:\n dispatch(openSidebar(FORM_EVENT_EXCEPTION_ADD, {\n eventId: e.event.extendedProps.eventId,\n salary: e.event.extendedProps.salary,\n start: e.event.start,\n initialStart: e.oldEvent.start,\n end: e.event.end,\n company: e.event.extendedProps.company,\n localisation: e.event.extendedProps.localisation,\n activity: e.event.extendedProps.activity,\n accountingType: e.event.extendedProps.accountingType,\n resourceId: e.event.extendedProps.longResourceId,\n parentId: e.event.extendedProps.resourceParentId,\n }))\n break;\n case TYPE_EVENT_EXCEPTION:\n dispatch(openSidebar(FORM_EVENT_EXCEPTION_EDIT, {\n eventId: e.event.extendedProps.eventId,\n exceptionId: e.event.extendedProps.exceptionId,\n salary: e.event.extendedProps.salary,\n start: e.event.start,\n initialStart: e.oldEvent.start,\n end: e.event.end,\n daysOfWeek: e.event.extendedProps.weekDays,\n company: e.event.extendedProps.company,\n localisation: e.event.extendedProps.localisation,\n activity: e.event.extendedProps.activity,\n resourceId: e.event.extendedProps.longResourceId,\n parentId: e.event.extendedProps.resourceParentId\n }))\n break;\n case 'templateBookingAppliedException':\n case 'templateBookingApplied':\n dispatch(openSidebar(FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION, {\n start: e.event.start,\n end: e.event.end,\n accountingType: e.event.extendedProps.accountingType,\n company: e.event.extendedProps.company,\n activity: e.event.extendedProps.activity,\n localisation: e.event.extendedProps.localisation,\n salary: e.event.extendedProps.salary,\n instanceToken: e.event.extendedProps.instanceToken,\n instanceId: e.event.extendedProps.instanceId,\n isAppliedException: e.event.extendedProps.isAppliedException,\n bookingInstanceId: e.event.extendedProps.bookingInstanceId,\n exceptionInstanceId: e.event.extendedProps.exceptionInstanceId,\n description: e.event.extendedProps.description,\n templateApplied: e.event.extendedProps.templateApplied,\n }))\n break;\n default:\n dispatch(openSidebar(FORM_EDIT_BOOKING, {\n start: e.event.start,\n end: e.event.end,\n company: e.event.extendedProps.company,\n activity: e.event.extendedProps.activity,\n localisation: e.event.extendedProps.localisation,\n accountingType: e.event.extendedProps.accountingType,\n salary: e.event.extendedProps.salary,\n instanceToken: e.event.extendedProps.instanceToken,\n instanceId: e.event.extendedProps.instanceId,\n isException: e.event.extendedProps.isException,\n exceptionInstanceId: e.event.extendedProps.exceptionInstanceId,\n bookingInstanceId: e.event.extendedProps.bookingInstanceId,\n bookingGroupId: e.event.extendedProps.bookingGroupId,\n bookingGroupTitle: e.event.extendedProps.bookingGroupTitle,\n description: e.event.extendedProps.description,\n recurrence: e.event.extendedProps.recurrence,\n resourceId: e.event.extendedProps.longResourceId,\n parentId: e.event.extendedProps.resourceParentId\n }))\n break;\n }\n }\n }\n\n const eventDrop = (e: EventDropArg) => {\n if (Granted(accessRights.EDIT_BOOKING)) {\n\n let target = e.newResource || e.event.getResources()[0];\n\n switch (e.event.extendedProps.eventType){\n case TYPE_EVENT:\n case TYPE_EVENT_EXCEPTION:\n dispatch(action.editEvent(e))\n dispatch(openSidebar(FORM_EVENT_ADD, {\n salary: target?.extendedProps.salary,\n start: e.event.start,\n end: e.event.end,\n daysOfWeek: e.event.extendedProps.weekDays,\n company: e.event.extendedProps.company,\n activity: e.event.extendedProps.activity,\n localisation: e.event.extendedProps.localisation,\n accountingType: e.event.extendedProps.accountingType,\n resourceId: target?.id,\n parentId: target?._resource.parentId\n }))\n break;\n case 'templateBookingAppliedException':\n case 'templateBookingApplied':\n dispatch(action.editEvent(e))\n dispatch(openSidebar(FORM_NEW_TEMPLATE_APPLIED_BOOKING_EXCEPTION, {\n start: e.event.start,\n end: e.event.end,\n accountingType: e.event.extendedProps.accountingType,\n company: e.event.extendedProps.company,\n activity: e.event.extendedProps.activity,\n localisation: e.event.extendedProps.localisation,\n salary: e.event.extendedProps.salary,\n instanceToken: e.event.extendedProps.instanceToken,\n instanceId: e.event.extendedProps.instanceId,\n isAppliedException: e.event.extendedProps.isAppliedException,\n bookingInstanceId: e.event.extendedProps.bookingInstanceId,\n exceptionInstanceId: e.event.extendedProps.exceptionInstanceId,\n description: e.event.extendedProps.description,\n templateApplied: e.event.extendedProps.templateApplied,\n resourceId: e.event.getResources()[0].id,\n parentId: e.event.getResources()[0]._resource.parentId\n }))\n break;\n case 'booking':\n case 'bookingException':\n dispatch(openSidebar(FORM_NEW_BOOKING, {\n beginAt: e.event.start,\n endAt: e.event.end,\n company: e.event.extendedProps.company,\n activity: e.event.extendedProps.activity,\n localisation: e.event.extendedProps.localisation,\n accountingType: e.event.extendedProps.accountingType,\n salary: e.newResource ? e.newResource?.extendedProps.salary : e.event.extendedProps.salary,\n instanceToken: e.event.extendedProps.instanceToken,\n instanceId: e.event.extendedProps.instanceId,\n isException: e.event.extendedProps.isException,\n exceptionInstanceId: e.event.extendedProps.exceptionInstanceId,\n bookingInstanceId: e.event.extendedProps.bookingInstanceId,\n description: e.event.extendedProps.description,\n recurrence: e.event.extendedProps.recurrence,\n resourceId: e.event.extendedProps.longResourceId,\n parentId: e.event.extendedProps.resourceParentId\n }))\n e.revert();\n break;\n default:\n e.revert();\n }\n }\n }\n\n const getMaxEnd = (e: DateSelectArg) => {\n if (e.resource){\n let resourceEvents = e.resource.getEvents().filter(ev => e.start?.getDay() === ev.end?.getDay());\n if (resourceEvents?.length && e.end){\n let maxEnd = Math.max.apply(null, [...resourceEvents.map(e => e.end!.getTime())]);\n if (maxEnd){\n return new Date(maxEnd);\n }\n }\n }\n\n return null;\n }\n\n const onSelect = (e: DateSelectArg) => {\n\n let _start: Date = e.start;\n let _end: Date = e.end;\n if (Granted(accessRights.EDIT_BOOKING) && e.resource?._resource.parentId){\n switch (e.view.type){\n case 'resourceTimelineMonth':\n let maxEnd = getMaxEnd(e);\n\n if (maxEnd){\n _start = new Date(maxEnd);\n _end = new Date(maxEnd.getTime() + (60 * 60 * 1000))\n }else{\n _start = new Date(e.start.getTime() + (9*60*60*1000))\n _end = new Date(e.start.getTime() + (10*60*60*1000))\n }\n\n break;\n case 'resourceTimelineWeek':\n if (timePrecision.replace(' ', '') === JSON.stringify({day: 1}).replace(' ', '')) {\n let maxEnd = getMaxEnd(e);\n\n if (maxEnd){\n _start = new Date(maxEnd);\n _end = new Date(maxEnd.getTime() + (60 * 60 * 1000))\n }else{\n _start = new Date(e.start.getTime() + (9*60*60*1000))\n _end = new Date(e.start.getTime() + (10*60*60*1000))\n }\n }\n break;\n }\n\n switch (getVersion()) {\n case 1:\n dispatch(openSidebar(FORM_EVENT_ADD, {\n salary: e.resource?.extendedProps.salary,\n start: _start,\n end: _end,\n company: e.resource?.extendedProps.company,\n localisation: e.resource?.extendedProps.localisation,\n activity: e.resource?.extendedProps.activity,\n resourceId: e.resource?.id,\n parentId: e.resource?._resource.parentId,\n }))\n break;\n default:\n dispatch(openSidebar(FORM_NEW_BOOKING, {\n salary: e.resource?.extendedProps.salary,\n beginAt: _start,\n endAt: _end,\n company: e.resource?.extendedProps.company,\n localisation: e.resource?.extendedProps.localisation,\n activity: e.resource?.extendedProps.activity,\n resourceId: e.resource?.id,\n parentId: e.resource?._resource.parentId,\n }))\n break;\n }\n }\n }\n\n type ButtonProps = JSX.IntrinsicElements[\"button\"];\n const ViewTitleContainer = forwardRef((props, ref) => {\n const {onClick} = props;\n return \n });\n\n const CalendarTitle = () => {\n return {\n if (date instanceof Date){\n setPickerDate(date)\n let API = calendarRef.current?.getApi()\n if (API){\n API.gotoDate(date)\n dispatch(fetchTitleSuccess(API.view.title, API.view.currentStart, API.view.currentEnd))\n dispatch(refresh())\n }\n }\n }}\n customInput={}\n />\n }\n\n const RenderResourceAreaHeader:React.FC = (props) => {\n\n return (\n
\n \n \n
    \n {groupBy === 1 &&
  • setIsOuter(prevState => !prevState)}>\n Afficher\n les créneaux sur un autre point de vente\n
  • }\n {groupBy === 1 &&
  • setIsAbsent(prevState => !prevState)}>\n Afficher\n les ETP sans créneau\n
  • }\n
  • setIsAbsence(prevState => !prevState)}>\n Afficher les créneaux absent\n
  • \n {HasModule('bookingOffer') &&
  • setIsBookingOffer(prevState => !prevState)}>\n Afficher\n les propositions de créneaux\n
  • }\n
\n
\n \n
\n )\n }\n\n const NavLinkDayClick = (date: Date, e: VUIEvent) => {\n let API = calendarRef.current?.getApi()\n if (API){\n switch (API.view.title) {\n case 'resourceTimelineMonth':\n API.changeView('resourceTimelineWeek', date)\n dispatch(action.setView('resourceTimelineWeek'));\n break;\n case 'resourceTimelineWeek':\n API.changeView('resourceTimelineDay', date)\n dispatch(action.setView('resourceTimelineDay'));\n break;\n }\n if (['resourceTimelineMonth','resourceTimelineWeek'].includes(API.view.title)){\n dispatch(fetchTitleSuccess(API.view.title, API.view.currentStart, API.view.currentEnd));\n dispatch(refresh());\n }\n }\n }\n\n const slotLabelContent = (e: SlotLabelContentArg) => {\n\n let labourDay = labourDays.find(ld => ld.date === format(e.date, 'uuuu-MM-dd'))\n\n if (e.level === 0 && e.view.type === 'resourceTimelineDay'){\n return {format(new Date(e.date.getTime()), 'HH:mm')}\n }\n if (e.level === 0 && e.view.type === 'resourceTimelineWeek'){\n return
\n \n {format(e.date, 'EEEE dd')}\n \n
\n {labourDay && <>\n \n \n {labourDay.title}\n \n }\n
\n {state.keepNote.payload.filter((keepNote: KeepNote) => format(new Date(keepNote.dueDate)) === format(e.date)).length > 0 && {\n ev.stopPropagation();\n dispatch(openSidebar(FORM_KEEP_NOTE_LIST, {dueDate: e.date}))\n }}>\n \n {state.keepNote.payload.filter((keepNote: KeepNote) => format(new Date(keepNote.dueDate)) === format(e.date)).length}\n \n }\n {\n ev.stopPropagation();\n dispatch(openSidebar(FORM_KEEP_NOTE_ADD, {dueDate: e.date}))\n }}>\n \n \n
\n
\n }\n if (e.level === 0 && e.view.type === 'resourceTimelineMonth'){\n if (format(e.date, 'uuuu-MM-dd') === format(new Date(), 'uuuu-MM-dd')){\n return {e.text}\n }else{\n return {e.text}\n }\n }\n if (e.level === 1 && e.view.type === 'resourceTimelineWeek'){\n return {format(new Date(e.date.getTime()), 'HH:mm')}\n }\n return {e.text}\n }\n\n const handleCompanyChange = (company: Company) => {\n let _selectingCompanies = [...selectingCompanies]\n let index = selectingCompanies.findIndex(c => c.id === company.id);\n if (index !== -1){\n _selectingCompanies.splice(index, 1)\n setSelectingCompanies([..._selectingCompanies])\n }else{\n setSelectingCompanies([..._selectingCompanies, company]);\n }\n }\n\n return (\n <>\n
\n
\n
\n
\n \n
    \n
  • \n
    \n \n \n \n setCompanyQuery(e.target.value)} type=\"search\" className=\"form-control br-0\"/>\n
    \n
  • \n {userCompanies.filter(c => {\n return !companyQuery || c.title.toLowerCase().includes(companyQuery.toLowerCase())\n }).map((c, i) =>
  • \n
    \n handleCompanyChange(c)}\n type=\"checkbox\"\n defaultChecked={selectingCompanies.includes(c)}\n id=\"flexSwitchCheckDefault\" />\n \n
    \n
  • )}\n
  • \n \n
  • \n
\n
\n
\n {Granted(accessRights.LIST_TEAM) && HasModule('team') &&
\n
\n \n
    \n
  • \n Équipes\n
  • \n
  • \n
    \n \n \n \n setTeamQuery(e.target.value)} type=\"search\"\n className=\"form-control br-0\"/>\n
    \n
  • \n {teams.filter(t => {\n return !teamQuery || t.title.toLowerCase().includes(teamQuery.toLowerCase())\n }).map(t =>
  • {\n let index = selectedTeams.findIndex(_t => _t.id === t.id)\n if (index !== -1){\n let _selectedTeams = [...selectedTeams]\n _selectedTeams.splice(index, 1);\n setSelectedTeams([..._selectedTeams])\n }else{\n setSelectedTeams([...selectedTeams, t])\n }\n }}>\n {t.title} {selectedTeams?.map(_t => _t.id).includes(t.id) && }\n
  • )}\n
  • \n \n
  • \n
\n
\n
}\n {Granted(accessRights.LIST_JOB) &&
\n
\n \n
    \n
  • setJob(0)}>\n {job === 0 && } Tous les métiers\n
  • \n
  • setJob(1)}>\n {job === 1 && } Front office\n
  • \n
  • setJob(2)}>\n {job === 2 && } Back office\n
  • \n
\n
\n
}\n
\n
\n \n \n
\n
\n {['resourceTimelineDay', 'resourceTimelineWeek', 'listWeek'].includes((view || defaultView)) &&
\n \n
}\n
\n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n
\n
\n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n \n
\n setNightView(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckDefault\"/>\n
\n \n
\n
\n
\n {HasModule(\"timeClock\") && Granted(LIST_TIME_CLOCK) && <>\n \n \n \n }\n {Granted(accessRights.EDIT_BOOKING) && <>\n \n {[2, 3].includes(groupBy) &&\n }\n }\n {GrantedAny([accessRights.EDIT_TEMPLATE, accessRights.LIST_TEMPLATE]) && \n \n \n {templates.length > 0 && \n {templates.length}\n }\n \n
    \n {GrantedMany([accessRights.EDIT_BOOKING, accessRights.LIST_TEMPLATE]) &&
  • \n \n
  • }\n {Granted(accessRights.EDIT_TEMPLATE) &&
  • \n \n
  • }\n

  • \n {Granted(accessRights.LIST_TEMPLATE) && templates.length ? templates.map((templateApplied: TemplateApplied) => dispatch(openSidebar(TEMPLATES_APPLY_EDIT, templateApplied))}\n className={'dropdown-item'}>\n \n {templateApplied.template.title}\n
    \n {format(new Date(templateApplied.start), 'dd/MM/uuuu')}\n \n {format(new Date(templateApplied.end), 'dd/MM/uuuu')}\n ) :
  • Aucun template appliqué
  • }\n
\n }\n \n\n {GrantedAny([accessRights.EDIT_BOOKING, accessRights.EDIT_TASK_GROUP, accessRights.EDIT_ABSENCE, accessRights.EDIT_LOCALISATION, accessRights.EDIT_ACTIVITY]) && \n \n \n \n
    \n {Granted(accessRights.EDIT_BOOKING) &&
  • \n {getVersion() !== 1 ? : }\n
  • }\n {Granted(accessRights.EDIT_TASK_GROUP) &&
  • \n \n
  • }\n {Granted(accessRights.EDIT_ABSENCE) &&
  • \n \n
  • }\n {Granted(accessRights.EDIT_LOCALISATION) &&
  • \n \n
  • }\n {Granted(accessRights.EDIT_ACTIVITY) &&
  • \n \n
  • }\n {Granted(accessRights.EDIT_SALARY) &&
  • \n \n
  • }\n {HasModule('bookingOffer') && Granted(accessRights.EDIT_BOOKING_OFFER) && <> {\n getVersion() !== 1 ?
  • \n \n
  • :
  • \n \n
  • } }\n
\n
}\n \n
\n
\n
\n
\n
\n = 768 ? (view.length ? view : defaultView) : (viewType === 'list' ? 'listDay' : 'resourceTimelineDay')}\n resourceAreaWidth={\"20%\"}\n height={'100%'}\n eventMouseEnter={(e) => {\n let API = calendarRef.current?.getApi();\n if (API) {\n switch (e.event.extendedProps.eventType) {\n case 'presence':\n let event: any = e.event.extendedProps;\n event.children.map((c: any) => {\n let el = document.getElementById(c.instanceToken) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n })\n break;\n case 'booking':\n case 'bookingException':\n case 'templateBooking':\n case 'templateBookingException':\n case 'templateBookingAppliedException':\n case 'event':\n case 'eventException':\n let el = e.el.querySelector(`[id=\"title${e.event.id}\"]`) as HTMLSpanElement;\n if (el) {\n el.textContent = e.event.extendedProps.alternativeTitle\n }\n break;\n }\n }\n }}\n eventMouseLeave={(e) => {\n let API = calendarRef.current?.getApi();\n if (API) {\n switch (e.event.extendedProps.eventType) {\n case 'presence':\n let event: any = e.event.extendedProps;\n event.children.map((c: any) => {\n let el = document.getElementById(c.instanceToken) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n })\n break;\n case 'booking':\n case 'bookingException':\n case 'templateBooking':\n case 'templateBookingException':\n case 'templateBookingAppliedException':\n case 'event':\n case 'eventException':\n let el = e.el.querySelector(`[id=\"title${e.event.id}\"]`) as HTMLSpanElement;\n if (el) {\n el.textContent = e.event.title\n }\n break;\n }\n }\n }}\n editable={Granted(accessRights.EDIT_BOOKING)}\n select={onSelect}\n\n resourceOrder={'order1,order2,order3,order4'}\n eventOverlap={false}\n lazyFetching={false}\n resourceGroupLabelContent={renderResourceGroup}\n headerToolbar={false}\n views={{\n resourceTimelineDay: {\n slotDuration: {minutes: 30}\n },\n resourceTimelineWeek: {\n slotDuration: JSON.parse(timePrecision),\n },\n resourceTimelineMonth: {\n slotDuration: {day: 1}\n }\n }}\n hiddenDays={daysOfWeek}\n slotMinTime={timeRange.minTime}\n slotMaxTime={timeRange.maxTime}\n selectable={Granted(accessRights.EDIT_BOOKING)}\n eventClick={eventClick}\n eventResize={eventResize}\n eventDrop={eventDrop}\n locales={allLocales}\n locale={'fr'}\n stickyHeaderDates={true}\n displayEventTime={true}\n schedulerLicenseKey={'GPL-My-Project-Is-Open-Source'}\n stickyFooterScrollbar={true}\n expandRows={false}\n resourceAreaHeaderContent={() => }\n resourceLabelContent={renderResource}\n resourceLaneContent={resourceLaneContent}\n resourceLabelClassNames={(arg: ResourceLabelContentArg) => arg.resource.extendedProps.classNames}\n resourceGroupField={\"groupId\"}\n eventResourceEditable={true}\n eventSources={[tasks, isBookingOffer ? bookingOffers : [], presenceEvents, events.filter((e: any) => (isOuter || !e.isOuterEvent) && (isAbsence || !e.absence))]}\n resources={resources}\n eventContent={renderEvent}\n slotLabelContent={slotLabelContent}\n handleWindowResize={true}\n navLinks={true}\n navLinkDayClick={NavLinkDayClick}\n viewDidMount={ViewDidMount}\n slotEventOverlap={false}\n refetchResourcesOnNavigate={true}\n />\n
\n \n \n \n \n \n {isLoading && }\n \n )\n}\n\nexport default CalendarShow;\n","import * as React from \"react\";\n\nimport CalendarShow from \"../../../components/calendar/index\";\n\nconst CalendarPage : React.FC = () => {\n return (\n
\n \n
\n );\n}\n\nexport default CalendarPage;","import React, { useEffect } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport { Salary } from \"../../../models/salary\";\n\nimport { EDIT_PASSWORD_FORM } from \"../../../constants/rightSidebar\";\n\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { setPageTitle } from \"../../../actions/header\";\nimport * as actions from \"../../../actions/auth\";\n\nimport * as api from \"../../../adapters/auth\";\n\nconst ProfileShow:React.FC = () => {\n const state = useSelector((state: RootStateOrAny) => state.auth)\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle('Mon compte'))\n }, [])\n\n return (\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n Nom d'utilisateur\n \n {state.user.email}\n
\n Mot de passe\n \n \n
\n Prénom\n \n {state.user.information?.firstname}\n
\n Nom\n \n {state.user.information?.lastname}\n
\n Tél\n \n {state.user.information?.tel}\n
\n
\n
\n
\n
\n

\n Entreprise\n

\n
\n

\n {state.user.currentSalary.companyGroup.title}\n

\n {\n localStorage.removeItem('defaultCompanies')\n dispatch(actions.unselectAccount())\n }}\n >\n Quitter\n \n
\n {state.user.salaries.length > 1 && <>\n
\n {state.user.salaries.map((salary: Salary) =>
\n

\n {salary.companyGroup?.title}\n

\n \n
)}\n
\n }\n
\n
\n
\n
\n
\n )\n}\n\nexport default ProfileShow;","import * as React from \"react\";\n\nimport ProfileShow from \"../../../../components/profile/show/index\";\n\nconst ProfileShowPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default ProfileShowPage;","export const ADD_CHANNEL = 'ADD_CHANNEL';\nexport const ADD_CHANNEL_SUCCESS = 'ADD_CHANNEL_SUCCESS';\nexport const ADD_CHANNEL_FAILURE = 'ADD_CHANNEL_FAILURE';\n\nexport const ADD_CHANNEL_INFORMATION = 'ADD_CHANNEL_INFORMATION';\nexport const ADD_CHANNEL_INFORMATION_SUCCESS = 'ADD_CHANNEL_INFORMATION_SUCCESS';\nexport const ADD_CHANNEL_INFORMATION_FAILURE = 'ADD_CHANNEL_INFORMATION_FAILURE';\n\nexport const EDIT_CHANNEL = 'EDIT_CHANNEL';\nexport const EDIT_CHANNEL_SUCCESS = 'EDIT_CHANNEL_SUCCESS';\nexport const EDIT_CHANNEL_FAILURE = 'EDIT_CHANNEL_FAILURE';\n\nexport const FETCH_CHANNELS = 'FETCH_CHANNELS';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const SHOW_CHANNEL = 'SHOW_CHANNEL';\nexport const SHOW_CHANNEL_SUCCESS = 'SHOW_CHANNEL_SUCCESS';\nexport const SHOW_CHANNEL_FAILURE = 'SHOW_CHANNEL_FAILURE';\n","import React, { useEffect } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport * as models from \"../../../models/channel\";\n\nimport { FORM_NEW_CHANNEL } from \"../../../constants/rightSidebar\";\n\nimport * as api from \"../../../adapters/channel\"\nimport * as actions from \"../../../actions/channel\"\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport format from \"../../../utils/locale\";\n\nexport const ChannelList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.channel)\n\n useEffect(() => {\n dispatch(setPageTitle('Messagerie'))\n dispatch(setHelpProductSheetIds([17]))\n \n dispatch(actions.fetchChannels());\n api.list()\n .then(data => dispatch(actions.fetchChannelsSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n \n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n return (\n
\n
\n
\n
\n \n \n \n \n
\n
\n\n
\n \n
\n\n {state.payload.length ? state.payload.map((channel: models.Channel) => ([\n \n {channel.title}\n \n {channel.lastMessage &&\n \n {format(new Date(channel.lastMessage.createdAt), 'dd/MM HH:mm')} | {channel.lastMessage.body}\n }\n \n ]))\n :\n \n }\n
\n
\n )\n}\n\nexport default ChannelList;","import * as types from \"../../constants/channel\";\nimport * as models from \"../../models/channel\";\n\nexport const addChannel = () => {\n return {\n type: types.ADD_CHANNEL,\n }\n}\n\nexport const addChannelInformation = () => {\n return {\n type: types.ADD_CHANNEL,\n }\n}\n\nexport const addChannelSuccess = (channel: models.Channel) => {\n return {\n type: types.ADD_CHANNEL_SUCCESS,\n channel: channel,\n }\n}\n\nexport const addChannelInformationSuccess = (channel: models.Channel) => {\n return {\n type: types.ADD_CHANNEL_INFORMATION_SUCCESS,\n channel: channel,\n }\n}\n\nexport const addChannelFailure = (error: string) => {\n return {\n type: types.ADD_CHANNEL_FAILURE,\n channel: null,\n channels: null,\n error: error\n }\n}\n\nexport const addChannelInformationFailure = (error: string) => {\n return {\n type: types.ADD_CHANNEL_INFORMATION_FAILURE,\n channel: null,\n channels: null,\n error: error\n }\n}\n\nexport const editChannel = () => {\n return {\n type: types.EDIT_CHANNEL,\n }\n}\n\nexport const editChannelSuccess = (channel: models.Channel) => {\n return {\n type: types.EDIT_CHANNEL_SUCCESS,\n channel: channel,\n }\n}\n\nexport const fetchChannels = () => {\n return {\n type: types.FETCH_CHANNELS,\n }\n}\n\nexport const fetchChannelsFailure = (error: string) => {\n return {\n type: types.FETCH_CHANNELS_FAILURE,\n channel: null,\n channels: [],\n error: error\n }\n}\n\nexport const fetchChannelsSuccess = (channels: models.Channels) => {\n return {\n type: types.FETCH_CHANNELS_SUCCESS,\n channel: null,\n channels: channels\n }\n}\n\n\nexport const showChannel = () => {\n return {\n type: types.SHOW_CHANNEL,\n }\n}\nexport const showChannelSuccess = (channel: models.Channel) => {\n return {\n type: types.SHOW_CHANNEL_SUCCESS,\n channel: channel\n }\n}\nexport const showChannelFailure = (error: string) => {\n return {\n type: types.SHOW_CHANNEL_FAILURE,\n channel: null,\n channels: null,\n error: error\n }\n}","import {post, get} from \"../xhr\";\nimport {Salaries} from \"../../models/salary\";\n\ninterface PostChannel {\n title: string,\n description: string|null,\n salaries: Salaries\n}\n\nexport function list(){\n return get('channel/list');\n}\n\nexport function edit(requestData: PostChannel, id: number){\n return post('channel/edit/' + id, requestData);\n}\n\nexport function create(requestData: PostChannel){\n return post('channel/create', requestData);\n}\n\nexport function show(id: string){\n return get('channel/show/' + id);\n}","import {post, get} from \"../../xhr\";\n\ninterface PostMessage {\n body: string,\n attachments?: string[]|null,\n}\n\nexport function list(channelId: string, offset?: number){\n return post('channel/'+ channelId +'/message/list', {offset: offset});\n}\n\nexport function create(requestData: PostMessage, channelId: string){\n return post('channel/'+ channelId +'/message/create', requestData);\n}\n\nexport function remove(channelId: string, messageId: number){\n return get('channel/'+ channelId +'/message/remove/' + messageId);\n}","import React, {useEffect, useState} from \"react\";\nimport {useParams} from \"react-router-dom\";\nimport Loader from \"../../../utils/loader\";\nimport * as messageApi from \"../../../adapters/channel/message\"\nimport * as api from \"../../../adapters/channel\"\nimport * as reactionApi from \"../../../adapters/channel/message/reaction\"\nimport {Channel, Message, MessageReaction, Messages} from \"../../../models/channel\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport './index.scss';\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport format from \"../../../utils/locale/index\";\nimport {Link} from \"react-router-dom\";\nimport {Tooltip} from \"bootstrap\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {CHANNEL_SUBSCRIBER, MERCURE_PUBLIC_URL, PAGINATION} from \"../../../constants/global\";\nimport {axiosError} from \"../../../actions/axios\";\n\nexport const ChannelShow:React.FC = () => {\n\n const param: {id: string} = useParams();\n const state = useSelector((state:RootStateOrAny) => state)\n const [isLoading, setIsLoading] = useState(false);\n const [offset, setOffset] = useState(0);\n const [scrollTop, setScrollTop] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [sent, setSent] = useState([]);\n const [sentError, setSentError] = useState([]);\n const [isLoadingMessages, setIsLoadingMessages] = useState(false);\n const [messages, setMessages] = useState([])\n const [channel, setChannel] = useState()\n const dispatch = useDispatch();\n\n const formik = useFormik({\n initialValues: {\n body: ''\n },\n validationSchema: Yup.object().shape({\n body: Yup.string().required(),\n attachments: Yup.array().of(Yup.mixed().test(\"fileSize\", \"The file is too large\", (value) => {\n if (!value.length) return true // attachment is optional\n return value[0].size <= 2000000\n })).nullable().max(5)\n }),\n onSubmit: (values, formikHelpers) => {\n\n let input = document.getElementById('body') as HTMLTextAreaElement;\n input.value = '';\n\n let pendingId = Date.now();\n setMessages([{\n owner: state.auth.user.currentSalary,\n body: values.body,\n attachments: [],\n createdAt: new Date().toDateString(),\n messageReactions: [],\n pending: true,\n pendingId: pendingId,\n error: false\n }, ...messages]);\n\n messageApi.create(values, param.id).then(data => {\n setSent([...sent, pendingId])\n }).catch((error) => {\n dispatch(axiosError(error))\n setSentError([...sentError, pendingId])\n });\n formikHelpers.resetForm(\n {}\n )\n },\n });\n\n useEffect(() => {\n scrollMessageContainer()\n }, [messages])\n\n useEffect(() => {\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n }, [messages])\n\n useEffect(() => {\n if (param.id){\n let _channel = state.channel.payload.find((channel: Channel) => channel.id === Number(param.id))\n let url = new URL(MERCURE_PUBLIC_URL)\n if (_channel){\n setChannel({..._channel});\n dispatch(setPageTitle('Messagerie', _channel.title))\n url.searchParams.append('topic', CHANNEL_SUBSCRIBER + _channel.token)\n let _eventSource = new EventSource(String(url))\n _eventSource.onmessage = (e) => newMessage(e)\n }else{\n api.show(param.id).then(data => {\n setChannel(data.data);\n dispatch(setPageTitle('Messagerie', data.data.title))\n url.searchParams.append('topic', CHANNEL_SUBSCRIBER + data.data.token)\n let _eventSource = new EventSource(String(url))\n _eventSource.onmessage = (e) => newMessage(e)\n }).catch(error => dispatch(axiosError(error)))\n }\n }\n }, [param.id])\n\n useEffect(() => {\n if (param.id){\n setIsLoading(true);\n messageApi.list(param.id).then(data => {\n\n setIsLast(data.data.length < PAGINATION);\n\n setMessages(data.data);\n setOffset((prevState => prevState + 1))\n })\n .then(() => {\n setIsLoading(false);\n }).then(() => {\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n }).catch(error => dispatch(axiosError(error)))\n }\n\n\n }, [param.id]);\n\n useEffect(() => {\n if (scrollTop){\n setIsLoading(true)\n messageApi.list(param.id).then(data => {\n setIsLoading(false);\n setMessages(data.data);\n setOffset((prevState => prevState + 1))\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [scrollTop]);\n\n const handleReactionClick = (type: number, message: Message) => {\n\n if (!message.id) return false;\n\n let _messages = [...messages]\n\n let messageIndex = _messages.findIndex(x => x.id === message.id);\n\n let exist = _messages[messageIndex].messageReactions.find((e) => e.owner.id === state.auth.user.currentSalary.id)\n\n let pendingId = Date.now();\n let item:MessageReaction = {\n type: type,\n owner: state.auth.user.currentSalary,\n pendingId: pendingId\n };\n\n if (exist){\n let reactionIndex = _messages[messageIndex].messageReactions.findIndex(x => x.id === exist!.id)\n _messages[messageIndex].messageReactions[reactionIndex] = item;\n\n setMessages([..._messages])\n\n reactionApi.edit({type}, message.id, exist.id!).then(data => {\n _messages[messageIndex].messageReactions[reactionIndex] = data.data;\n setMessages([..._messages])\n }).catch(error => dispatch(axiosError(error)))\n }else{\n _messages[messageIndex].messageReactions.push(item)\n\n setMessages([..._messages])\n\n reactionApi.create({type}, message.id).then(data => {\n let reactionIndex = _messages[messageIndex].messageReactions.findIndex(x => x.pendingId === pendingId);\n _messages[messageIndex].messageReactions[reactionIndex] = data.data\n setMessages([..._messages])\n }).catch(error => dispatch(axiosError(error)))\n }\n }\n\n interface reactionCounterProps {\n message: Message\n }\n\n const ReactionCounters = (props: reactionCounterProps) => {\n\n const {message} = props;\n\n if (!message.messageReactions.length) return ( );\n\n let reactionsTab:number[] = [];\n let reactionsTabCount:number[] = [];\n let reactionsTabTooltip:string[] = [];\n\n message.messageReactions.forEach((reaction) => {\n if (!reactionsTab.includes(reaction.type)){\n reactionsTab.push(reaction.type)\n reactionsTabCount[reaction.type] = 1;\n }else{\n reactionsTabCount[reaction.type]++;\n }\n\n if (reactionsTabTooltip[reaction.type] !== undefined ){\n reactionsTabTooltip[reaction.type] += reaction.owner.firstname + ' ' + reaction.owner.lastname + '
'\n }else{\n reactionsTabTooltip[reaction.type] = reaction.owner.firstname + ' ' + reaction.owner.lastname + '
'\n }\n })\n\n return (\n <>\n {reactionsTab.includes(1) && ' + reactionsTabTooltip[1]}> }\n {reactionsTab.includes(2) && ' + reactionsTabTooltip[2]}> }\n {reactionsTab.includes(3) && ' + reactionsTabTooltip[3]}> }\n {reactionsTab.includes(4) && ' + reactionsTabTooltip[4]}> }\n {reactionsTab.includes(5) && ' + reactionsTabTooltip[5]}> }\n \n );\n }\n\n const [newEvent, setNewEvent] = useState()\n useEffect(() => {\n if (newEvent){\n let item = newEvent.item;\n let type = newEvent.type;\n let message:number|undefined;\n\n if (item.owner.id !== state.auth.user.currentSalary.id){\n switch (type){\n case 'new_message':\n setMessages([{...item}, ...messages])\n break;\n case 'new_reaction':\n message = messages.findIndex((message) => message.id === item.message.id)\n if (message) messages[message].messageReactions.push(item)\n setMessages([...messages])\n break;\n case 'edit_reaction':\n message = messages.findIndex((message) => message.id === item.message.id)\n if (message){\n let reactionIndex = messages[message].messageReactions.findIndex((reaction) => reaction.id === item.id)\n messages[message].messageReactions[reactionIndex] = item;\n setMessages([...messages])\n }\n break;\n }\n }\n }\n }, [newEvent])\n\n const newMessage = (event: MessageEvent) => {\n let data = JSON.parse(event.data)\n setNewEvent(data)\n }\n\n\n\n const scrollMessageContainer = () => {\n let element = document.getElementById(\"messageContainer\");\n if (element){\n element.scrollTop = element.scrollHeight;\n }\n }\n\n if (!channel)\n {\n return
\n {isLoading && }\n
\n }\n\n return <>\n
\n
\n
\n \n {channel.salaries.length}\n \n \n {channel?.description}\n \n \n Retour\n \n
\n
\n {isLoadingMessages &&
\n \n
}\n {messages.slice(0).reverse().map((message: Message) => {\n\n let reverse = message.owner.id !== state.auth.user.currentSalary.id;\n let pending = message.pendingId && !sent.includes(message.pendingId);\n let error = message.pendingId && sentError.includes(message.pendingId);\n let reaction = message.messageReactions.find((reaction) => reaction.owner.id === state.auth.user.currentSalary.id)\n\n return (\n <>\n
\n
\n
\n
\n {message.id && \n \n
    \n handleReactionClick(1, message)}>\n \n \n handleReactionClick(2, message)}>\n \n \n handleReactionClick(3, message)}>\n \n \n handleReactionClick(4, message)}>\n \n \n handleReactionClick(5, message)}>\n \n \n
\n
}\n
\n
\n
\n
\n
\n {message.owner.id !== state.auth.user.currentSalary.id &&
\n {message.owner.firstname} {message.owner.lastname} | {format(new Date(message.createdAt), 'HH:mm')}\n
}\n
\n {message.body}\n \n {pending && Envoi en cours...}\n {error && Message non distribué}\n
\n
\n
\n {message.messageReactions.length ?
\n \n
: ''}\n
\n
\n
\n \n )\n })}\n
\n
\n
\n {/**/}\n {/* */}\n {/**/}\n \n \n
\n
\n
\n
\n \n}\n\nexport default ChannelShow;","import {post, get} from \"../../../xhr\";\n\ninterface PostReaction {\n type: number\n}\n\nexport function create(requestData: PostReaction, messageId: number){\n return post('channel/message/'+ messageId +'/reaction/create', requestData);\n}\n\nexport function edit(requestData: PostReaction, messageId: number, reactionId: number){\n return post('channel/message/'+ messageId +'/reaction/edit/' + reactionId, requestData);\n}\n\nexport function remove(messageId: number, reactionId: number){\n return get('channel/message/'+ messageId +'/reaction/remove/' + reactionId);\n}","import * as React from \"react\";\n\nimport ChannelList from \"../../components/channel/list\";\nimport ChannelShow from \"../../components/channel/show\";\n\nconst ChannelPage : React.FC = () => {\n return (\n
\n \n \n
\n );\n}\n\nexport default ChannelPage;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/auth\";\nimport * as actions from \"../../../actions/auth\";\nimport Loader from \"../../../utils/loader\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Salary} from \"../../../models/salary\";\n\nconst AccountList : React.FC = () => {\n const state = useSelector((state: RootStateOrAny) => state);\n const [hasLoaded, setHasLoaded] = useState(false);\n const [selecting, setSelecting] = useState(null);\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(actions.fetchAccounts())\n api.accounts().then(data => {\n dispatch(actions.fetchAccountsSuccess(data.data))\n if (data.data.length === 1){\n // dispatch(actions.selectAccount(data.data[Object.keys(data.data)[0]]))\n }else if(state.auth.user.currentSalary){\n let current_account = data.data.find((b :Salary) => state.auth.user.currentSalary.id == b.id)\n if (current_account.length){\n dispatch(actions.selectAccount(current_account))\n }\n }\n setHasLoaded(true);\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }, [])\n\n if (!hasLoaded)\n return (\n \n )\n\n return (
\n {!state.auth.user.salaries.length ?\n
Aucun compte trouvé
\n :\n
\n

Séléctionnez un compte

\n {state.auth.user.salaries.map((salary: Salary) => (\n
\n
\n

\n {salary.companyGroup!.title}\n

\n {!salary.companyGroup?.activated &&
\n Compte désactivé\n
}\n \n
\n
\n ))}\n
}\n
);\n}\n\nexport default AccountList;","import * as React from \"react\";\n\nimport AccountList from \"../../../components/auth/account\";\n\nconst AccountListPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default AccountListPage;","import React, {forwardRef, useEffect, useState} from \"react\";\nimport FullCalendar, {EventClickArg, EventContentArg, VUIEvent} from \"@fullcalendar/react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport resourceTimeline from \"@fullcalendar/resource-timeline\";\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport * as api from \"../../../adapters/task/calendar\";\nimport format from \"../../../utils/locale\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {\n FORM_NEW_TASK, FORM_NEW_TASK_GROUP, FORM_NEW_TASK_GROUP_CUSTOM_FIELD\n} from \"../../../constants/rightSidebar\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as actions from \"../../../actions/task/calendar\";\nimport {fetchTitleSuccess, refresh} from \"../../../actions/task/calendar\";\nimport * as type from \"../../../models/task/calendar\";\nimport DatePicker from \"react-datepicker\";\nimport {Link} from \"react-router-dom\";\nimport TaskEventPop from \"../../../utils/taskEventPop\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\n\n\nconst TaskGroupCalendar:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state)\n const calendar: type.initialStateInterface = useSelector((state: RootStateOrAny) => state.taskCalendar)\n const calendarRef = React.createRef();\n const [filteredResources, setFilteredResources] = useState([])\n const [resourcesQuery, setResourcesQuery] = useState('')\n const [isLoading, setIsLoading] = useState(false);\n const dispatch = useDispatch();\n const [view, setView] = useState('resourceTimelineWeek')\n const [pickerDate, setPickerDate] = useState(new Date());\n const [groups, setGroups] = useState([]);\n\n useEffect(() => {\n dispatch(setPageTitle('Tâches', 'Planning'))\n }, []);\n\n useEffect(() => {\n let controller = new AbortController();\n let API = calendarRef.current?.getApi();\n if (API){\n refreshCalendar(controller.signal);\n dispatch(fetchTitleSuccess(API.view.title))\n }\n // return () => controller.abort();\n }, [calendar.refresh, groups])\n\n // Filter resources\n useEffect(() => {\n if (!resourcesQuery){\n setFilteredResources([...calendar.resources])\n }else{\n let filtered = calendar.resources.filter((data: any) => {\n return data.title.toLowerCase().includes(resourcesQuery.toLowerCase()) ||\n data.groupTitle.toLowerCase().includes(resourcesQuery.toLowerCase())\n });\n setFilteredResources([...filtered])\n }\n }, [resourcesQuery])\n\n const eventClick = (e: EventClickArg) => {\n e.jsEvent.stopPropagation()\n dispatch(actions.showEventPop(e))\n }\n\n const calendarApiNavActions = (action: string) => {\n\n let API = calendarRef.current?.getApi()\n if (API){\n switch (action) {\n case 'prev':\n API.prev();\n break;\n case 'next':\n API.next();\n break;\n case 'resourceTimelineDay':\n API.changeView('resourceTimelineDay')\n break;\n case 'resourceTimelineWeek':\n API.changeView('resourceTimelineWeek')\n break;\n case 'resourceTimelineMonth':\n API.changeView('resourceTimelineMonth')\n break;\n }\n\n setView(API.view.type)\n dispatch(fetchTitleSuccess(API.view.title))\n dispatch(refresh());\n }\n }\n\n // FETCH FUNCTIONS\n const refreshCalendar = (signal: AbortSignal) => {\n if (isLoading) return false;\n\n let API = calendarRef.current?.getApi()\n if (API){\n let start = API.view.currentStart;\n let end = API.view.currentEnd;\n setIsLoading(true);\n Promise.all([\n fetchEvents(start, end, signal),\n fetchResources(start, end, signal)\n ]).then(() => setIsLoading(false))\n }\n\n }\n\n const fetchResources = (start: Date, end: Date, signal: AbortSignal) => {\n return api.fetchResources({start: format(start,'uuuu-MM-dd'), end: format(end,'uuuu-MM-dd'), options: {\n taskGroups: groups,\n }}).then(data => {\n dispatch(actions.fetchResourcesSuccess(data.data))\n setFilteredResources(data.data);\n }).then(() => true).catch(error => {\n dispatch(axiosError(error))\n return false;\n })\n }\n\n const fetchEvents = (start: Date, end: Date, signal: AbortSignal) => {\n return api.fetchEvents({start: format(start,'uuuu-MM-dd'), end: format(end,'uuuu-MM-dd'), options: {\n taskGroups: groups,\n }}, signal).then(data => {\n dispatch(actions.fetchEventsSuccess(data.data))\n }).then(() => true)\n .catch(error => {\n dispatch(axiosError(error))\n return false;\n })\n }\n\n const ViewTitle = () => {\n return \n {calendar.title}\n \n }\n\n const renderResourceGroup = (arg: any) => {\n let title = arg.groupValue.substring(arg.groupValue.indexOf('title:') + 6);\n return {\n html: ''+ title +''\n }\n }\n\n const renderEvent = (e: EventContentArg) => {\n return {e.timeText}\n }\n\n type ButtonProps = JSX.IntrinsicElements[\"button\"];\n const ViewTitleContainer = forwardRef((props, ref) => {\n const {onClick} = props;\n return \n });\n\n const CalendarTitle = () => {\n return {\n if (date instanceof Date){\n setPickerDate(date)\n let API = calendarRef.current?.getApi()\n if (API){\n API.gotoDate(date)\n dispatch(fetchTitleSuccess(API.view.title))\n dispatch(refresh());\n }\n }\n }}\n customInput={}\n />\n }\n\n const renderResourceAreaHeader = (arg: any) => {\n\n arg.el.innerHTML = '
\\n' +\n ' \\n' +\n ' \\n' +\n ' \\n' +\n '
'\n\n let resourceSearch = document.createElement('input') as HTMLInputElement;\n resourceSearch.type = 'text'\n resourceSearch.className = 'form-control'\n resourceSearch.placeholder = 'Rechercher un groupe, une tâche';\n resourceSearch.onkeyup = (e) => {\n let el = e.target as HTMLInputElement;\n let query = el.value;\n setResourcesQuery(query);\n }\n\n arg.el.getElementsByClassName('input-group')[0].append(resourceSearch);\n }\n\n const NavLinkDayClick = (date: Date, e: VUIEvent) => {\n let API = calendarRef.current?.getApi()\n if (API){\n switch (view) {\n case 'resourceTimelineMonth':\n API.changeView('resourceTimelineWeek', date)\n setView('resourceTimelineWeek')\n break;\n case 'resourceTimelineWeek':\n API.changeView('resourceTimelineDay', date)\n setView('resourceTimelineDay')\n break;\n }\n dispatch(fetchTitleSuccess(API.view.title))\n dispatch(refresh());\n }\n }\n\n return (\n
\n
\n
\n
\n \n Liste\n \n
\n
\n setGroups(choices.map(c => Number(c.value)))}\n />\n
\n
\n
\n \n
    \n
  • \n calendarApiNavActions('resourceTimelineDay')}>\n Jour\n \n
  • \n
  • \n calendarApiNavActions('resourceTimelineWeek')}>\n Semaine\n \n
  • \n
  • \n calendarApiNavActions('resourceTimelineMonth')}>\n Mois\n \n
  • \n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
\n \n
\n
\n
\n \n
\n
\n
\n Loading...\n
\n
\n
\n \n
\n )\n}\n\nexport default TaskGroupCalendar;","import {post} from \"../../xhr\";\n\ninterface FetchData {\n start: string,\n end: string,\n options?: {\n salaries?: number[],\n taskGroups?: number[],\n }\n}\n\nexport function fetchResources(requestData: FetchData){\n return post('task/calendar/resources', requestData);\n}\n\nexport function fetchEvents(requestData: FetchData, signal: AbortSignal){\n return post('task/calendar/events', requestData, {signal: signal});\n}","import * as React from \"react\";\n\nimport TaskGroupCalendar from \"../../../components/taskGroup/calendar\";\n\nconst TaskGroupCalendarPage : React.FC = () => {\n return (\n
\n \n
\n );\n}\n\nexport default TaskGroupCalendarPage;","import React from 'react';\nimport {useDropzone, DropzoneRootProps} from 'react-dropzone';\nimport styled from 'styled-components';\n\nconst getColor = (props: DropzoneRootProps) => {\n if (props.isDragAccept) {\n return '#00e676';\n }\n if (props.isDragReject) {\n return '#ff1744';\n }\n if (props.isDragActive) {\n return '#2196f3';\n }\n return '#eeeeee';\n}\n\nconst Container = styled.div`\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 20px;\n border-width: 2px;\n border-radius: 2px;\n border-color: ${props => getColor(props)};\n border-style: dashed;\n background-color: #fafafa;\n color: #bdbdbd;\n outline: none;\n transition: border .24s ease-in-out;\n height: 100px;\n cursor: pointer;\n`;\n\n\nfunction StyledDropzone(props: DropzoneRootProps) {\n\n const {handleUploadedFile, acceptedFilesProps, multiple} = props\n\n const {\n getRootProps,\n getInputProps,\n isDragActive,\n isDragAccept,\n isDragReject,\n acceptedFiles\n } = useDropzone({\n accept: acceptedFilesProps || ['image/*', 'application/pdf'],\n multiple: multiple || false,\n maxSize: 1000000000,\n onDrop: acceptedFile => {\n if (handleUploadedFile){\n handleUploadedFile(acceptedFile);\n }\n }\n });\n\n const FileNames = () => {\n return <>\n {acceptedFiles.map(file => (\n

\n {file.name}\n

\n ))}\n \n }\n\n return (\n
\n \n \n {acceptedFiles.length ? :

Déposez votre fichier ici ou cliquez pour séléctionner

}\n
\n
\n );\n}\n\nexport default StyledDropzone;","import React, {useEffect, useState} from \"react\";\n\ninterface colorPickerProps {\n onChange: (choice: string) => void,\n selected: string,\n colors?: string[]\n}\n\nconst ColorPicker:React.FC = (props) => {\n const {onChange, selected, colors} = props;\n\n const [items, setItems] = useState([])\n\n useEffect(() => {\n if (!colors){\n setItems(['#4D4D4D', '#999999', '#F44E3B', '#FE9200', '#FCDC00', '#DBDF00', '#A4DD00', '#68CCCA', '#73D8FF',\n '#AEA1FF', '#FDA1FF', '#333333', '#808080', '#cccccc', '#D33115',\n '#E27300',\n '#FCC400',\n '#B0BC00',\n '#68BC00',\n '#16A5A5',\n '#009CE0',\n '#7B64FF',\n '#FA28FF',\n '#000000', '#666666', '#B3B3B3', '#9F0500', '#C45100', '#FB9E00', '#808900', '#194D33', '#0C797D', '#0062B1', '#653294', '#AB149E']);\n }else{\n setItems([...colors])\n }\n }, [])\n\n return (
\n
\n {items.map((color, index) => {\n return
\n
onChange(color)}\n className={'m-1' + (color === selected ? ' shadow' : '')} style={{width: 28, height: 28, borderRadius: '50%', backgroundColor: color, color: \"white\", opacity: 0.8}}>\n {color === selected ? : ''}\n
\n
\n })}\n
\n
\n )\n}\n\nexport default ColorPicker;","export default function arrayEquals(a?: any[], b?: any[]) {\n if (Array.isArray(a) &&\n Array.isArray(b)){\n return a.length === b.length &&\n a.every((val, index) => val === b[index]);\n }\n\n return a === b;\n}","import React, {useCallback, useEffect, useRef, useState} from 'react';\nimport './index.scss';\n\nconst Scrollbar = ({\n children,\n className,\n ...props\n }: React.ComponentPropsWithoutRef<'div'> & {triggerResize: number, scrollBottom: (e: React.UIEvent) => void;}) => {\n\n const contentRef = useRef(null);\n const scrollTrackRef = useRef(null);\n const scrollThumbRef = useRef(null);\n const observer = useRef(null);\n const [thumbHeight, setThumbHeight] = useState(20);\n const [scrollStartPosition, setScrollStartPosition] = useState(\n null\n );\n const [initialScrollTop, setInitialScrollTop] = useState(0);\n const [isDragging, setIsDragging] = useState(false);\n\n function handleResize(ref: HTMLDivElement, trackSize: number) {\n const { clientHeight, scrollHeight } = ref;\n setThumbHeight(Math.max((clientHeight / scrollHeight) * trackSize, 20));\n }\n\n function handleScrollButton(direction: 'up' | 'down') {\n const { current } = contentRef;\n if (current) {\n const scrollAmount = direction === 'down' ? 200 : -200;\n current.scrollBy({ top: scrollAmount, behavior: 'smooth' });\n }\n }\n\n const handleTrackClick = useCallback(\n (e) => {\n e.preventDefault();\n e.stopPropagation();\n const { current: trackCurrent } = scrollTrackRef;\n const { current: contentCurrent } = contentRef;\n if (trackCurrent && contentCurrent) {\n const { clientY } = e;\n const target = e.target as HTMLDivElement;\n const rect = target.getBoundingClientRect();\n const trackTop = rect.top;\n const thumbOffset = -(thumbHeight / 2);\n const clickRatio =\n (clientY - trackTop + thumbOffset) / trackCurrent.clientHeight;\n const scrollAmount = Math.floor(\n clickRatio * contentCurrent.scrollHeight\n );\n contentCurrent.scrollTo({\n top: scrollAmount,\n behavior: 'smooth',\n });\n }\n },\n [thumbHeight]\n );\n\n const handleThumbPosition = useCallback((e) => {\n\n props.scrollBottom(e)\n\n if (\n !contentRef.current ||\n !scrollTrackRef.current ||\n !scrollThumbRef.current\n ) {\n return;\n }\n const { scrollTop: contentTop, scrollHeight: contentHeight } =\n contentRef.current;\n const { clientHeight: trackHeight } = scrollTrackRef.current;\n let newTop = (+contentTop / +contentHeight) * trackHeight;\n newTop = Math.min(newTop, trackHeight - thumbHeight);\n const thumb = scrollThumbRef.current;\n thumb.style.top = `${newTop}px`;\n }, []);\n\n const handleThumbMousedown = useCallback((e) => {\n e.preventDefault();\n e.stopPropagation();\n setScrollStartPosition(e.clientY);\n if (contentRef.current) setInitialScrollTop(contentRef.current.scrollTop);\n setIsDragging(true);\n }, []);\n\n const handleThumbMouseup = useCallback(\n (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (isDragging) {\n setIsDragging(false);\n }\n },\n [isDragging]\n );\n\n const handleThumbMousemove = useCallback(\n (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (isDragging && contentRef.current) {\n const {\n scrollHeight: contentScrollHeight,\n offsetHeight: contentOffsetHeight,\n } = contentRef.current;\n\n if (scrollStartPosition){\n const deltaY =\n (e.clientY - scrollStartPosition) *\n (contentOffsetHeight / thumbHeight);\n\n contentRef.current.scrollTop = Math.min(\n initialScrollTop + deltaY,\n contentScrollHeight - contentOffsetHeight\n );\n }\n }\n },\n [isDragging, scrollStartPosition, thumbHeight]\n );\n\n // If the content and the scrollbar track exist, use a ResizeObserver to adjust height of thumb and listen for scroll event to move the thumb\n useEffect(() => {\n if (contentRef.current && scrollTrackRef.current) {\n const ref = contentRef.current;\n const { clientHeight: trackSize } = scrollTrackRef.current;\n observer.current = new ResizeObserver(() => {\n handleResize(ref, trackSize);\n });\n observer.current.observe(ref);\n ref.addEventListener('scroll', handleThumbPosition);\n return () => {\n observer.current?.unobserve(ref);\n ref.removeEventListener('scroll', handleThumbPosition);\n };\n }\n }, [props.triggerResize]);\n\n // Listen for mouse events to handle scrolling by dragging the thumb\n useEffect(() => {\n document.addEventListener('mousemove', handleThumbMousemove);\n document.addEventListener('mouseup', handleThumbMouseup);\n document.addEventListener('mouseleave', handleThumbMouseup);\n return () => {\n document.removeEventListener('mousemove', handleThumbMousemove);\n document.removeEventListener('mouseup', handleThumbMouseup);\n document.removeEventListener('mouseleave', handleThumbMouseup);\n };\n }, [handleThumbMousemove, handleThumbMouseup]);\n\n return (\n
\n
\n {children}\n
\n
\n {\n e.preventDefault();\n handleScrollButton('up')\n }}\n >\n \n \n
\n {\n e.preventDefault()\n handleTrackClick(e)\n }}\n style={{ cursor: isDragging ? 'grabbing' : \"auto\" }}\n >
\n {\n e.preventDefault()\n handleThumbMousedown(e)\n }}\n style={{\n height: `${thumbHeight}px`,\n cursor: isDragging ? 'grabbing' : 'grab',\n }}\n >
\n
\n {\n e.preventDefault();\n handleScrollButton('down')\n }}\n >\n \n \n \n \n );\n};\n\nexport default Scrollbar;\n","import React, {LegacyRef, useEffect, useRef, useState} from \"react\";\nimport {Salaries, Salary} from \"../../../models/salary\";\nimport * as api from \"../../../adapters/salary\";\nimport * as teamApi from \"../../../adapters/team\";\nimport SmallLoader from \"../../../utils/loader/small\";\nimport {PAGINATION} from \"../../../constants/global\";\nimport format from \"../../../utils/locale\";\nimport {Team, Teams} from \"../../../models/team\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport arrayEquals from \"../../../utils/arrayEqual\";\nimport getUser from \"../../../security/getUser\";\nimport {Company} from \"../../../models/companies\";\nimport {Granted} from \"../../../security/granted\";\nimport Scrollbar from \"../../../utils/scrollbar\";\n\ninterface Interface {\n disabled?: boolean,\n required?: boolean,\n initiallyOpen?: boolean,\n multiple?: boolean,\n label?: string,\n enableReinitialize?: boolean,\n placeholder?: string\n className?: string\n}\n\ninterface WithOptions {\n fetchOptions?: false,\n options: Salaries,\n}\n\ninterface WithoutOptions {\n fetchOptions: true,\n available?: false,\n companies?: number[],\n jobs?: number[],\n accessRight?: string,\n}\n\ninterface Available {\n fetchOptions: true,\n available: true,\n beginAt: Date,\n endAt: Date\n companies?: number[],\n jobs?: number[]\n}\n\ninterface Multiple {\n multiple: true,\n onChange: (salaries: Salaries) => any,\n values?: Salaries,\n teams?: boolean,\n onBlur?: (e: any, salaries: Salaries) => any;\n}\n\ninterface SingleRequired {\n multiple?: false,\n required: true\n onChange: (salary: Salary) => any,\n value?: Salary,\n onBlur?: (e: any, salary?: Salary) => any;\n}\n\ninterface SingleNotRequired {\n multiple?: false,\n required?: false\n onChange: (salary?: Salary) => any,\n value?: Salary,\n onBlur?: (e: any, salary?: Salary) => any;\n}\n\nconst SalarySelector: React.FC = (props) => {\n\n const [options, setOptions] = useState([]);\n const [loading, setLoading] = useState(true);\n const [teamLoading, setTeamLoading] = useState(false);\n const [isOpen, setIsOpen] = useState(props.initiallyOpen || false);\n const [displayFilter, setDisplayFilter] = useState(false);\n const [values, setValues] = useState(props.multiple ? (props.values ? props.values : []) : [])\n const [value, setValue] = useState(props.multiple ? undefined : props.value)\n\n const [query, setQuery] = useState();\n const [offset, setOffset] = useState(0);\n const [timer, setTimer] = useState();\n const [isLast, setIsLast] = useState(false)\n const [teams, setTeams] = useState([])\n const [selectedTeams, setSelectedTeams] = useState([])\n const [displayAllValues, setDisplayAllValues] = useState(false);\n\n const formRef = React.createRef();\n const bodyRef = useRef(null);\n const headerRef = useRef(null);\n const inputRef = useRef(null);\n\n const [extraCompany, setExtraCompany] = useState()\n let _companies = props.fetchOptions ? props.companies : null;\n let beginAt = props.fetchOptions && props.available ? props.beginAt : null;\n let endAt = props.fetchOptions && props.available ? props.endAt : null;\n let _jobs = props.fetchOptions ? props.jobs : null;\n let _options = !props.fetchOptions ? props.options : null;\n let _initialValue = props.multiple ? props.values : props.value;\n\n const [offsetTop, setOffsetTop] = useState(0);\n\n useEffect(() => {\n if (isOpen && bodyRef.current && headerRef.current){\n let bodyDimension = bodyRef.current.getBoundingClientRect();\n let headerDimension = headerRef.current.getBoundingClientRect();\n\n let oversize = headerDimension.height + headerDimension.top + bodyDimension.height > window.innerHeight;\n\n if (oversize){\n setOffsetTop(0 - bodyDimension.height)\n }else{\n setOffsetTop(headerDimension.height)\n }\n }\n }, [isOpen, options])\n\n useEffect(() => {\n if (isOpen && !displayFilter && inputRef.current){\n inputRef.current.focus()\n }\n }, [isOpen, displayFilter])\n\n useEffect(() => {\n if (props.fetchOptions && !loading){\n fetch({offset: 0, query: query})\n }\n }, [_companies, _jobs, beginAt, endAt])\n\n useEffect(() => {\n if (props.enableReinitialize){\n if (props.multiple){\n setValues(props.values || [])\n }else{\n setValue(props.value)\n }\n }\n }, [_initialValue])\n\n useEffect(() => {\n if (!loading){\n fetch({offset: 0, query: query})\n }\n }, [extraCompany])\n\n useEffect(() => {\n if (props.fetchOptions){\n fetch({offset: 0, query: \"\"})\n if (props.multiple){\n if (props.teams && Granted(accessRights.LIST_TEAM)){\n setTeamLoading(true)\n teamApi.list({})\n .then(resp => setTeams(resp.data))\n .then(() => setTeamLoading(false))\n }\n }\n }else{\n setLoading(false)\n setOptions(props.options.filter(s => !query || s.title.toLowerCase().includes(query!.toLowerCase())))\n }\n }, [_options])\n\n function getRoute(params: {query?: string, offset: number})\n {\n if (props.fetchOptions){\n\n let __companies = [...(props.companies || [])]\n\n if (extraCompany){\n __companies.push(extraCompany.id!)\n }\n\n if (props.available){\n return api.available({beginAt: format(props.beginAt, 'uuuu-MM-dd HH:mm:ss'), endAt: format(props.endAt, 'uuuu-MM-dd HH:mm:ss'), options: {companies: __companies, jobs: props?.jobs}, query: params.query})\n }\n\n return api.list({companies: __companies, query: params.query, offset: params.offset, accessRight: props.accessRight})\n }\n }\n\n function fetch(params: {query: string|undefined, offset: number}){\n if (props.fetchOptions){\n setLoading(true);\n getRoute(params)!\n .then(resp => {\n if (params.offset === 0){\n setOptions(resp.data)\n }else{\n setOptions(prev => [...prev, ...resp.data])\n }\n\n setIsLast(resp.data.length < PAGINATION)\n })\n .then(() => setOffset(params.offset + 1))\n .then(() => setIsScrollBottom(false))\n .then(() => setLoading(false))\n }\n }\n\n const handleChangeQuery = (_query: string) => {\n if (timer){\n clearTimeout(timer)\n }\n\n setTimer(setTimeout(() => {\n setQuery(_query)\n fetch({query: _query, offset: 0})\n },1000))\n }\n\n const [isScrollBottom, setIsScrollBottom] = useState(false)\n useEffect(() => {\n if (isScrollBottom && !isLast){\n fetch({query: query || \"\", offset: offset})\n }\n\n }, [isScrollBottom])\n\n const scrollBottom = (e: React.UIEvent) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight && !isScrollBottom && !isLast) {\n setIsScrollBottom(true)\n }\n }\n\n const [hasLoaded, setHasLoaded] = useState(false);\n useEffect(() => {\n if (props.multiple && hasLoaded){\n props.onChange([...values])\n }else if (!props.multiple && hasLoaded){\n if (props.required && value){\n props.onChange(value)\n }else if(!props.required){\n props.onChange(value)\n }\n }else{\n setHasLoaded(true);\n }\n }, [values, value])\n\n const handleChange = (salary: Salary) => {\n if (props.multiple){\n if (values.find(s => s.id === salary.id)){\n removeValue(salary)\n }else{\n addValue(salary)\n }\n }else{\n setValue(salary)\n setIsOpen(false)\n }\n\n clearQuery();\n }\n\n function clearQuery(){\n if (query){\n setQuery('')\n formRef.current?.reset();\n fetch({offset: 0, query: \"\"})\n }\n }\n\n const Label = () => \n\n function handleTeamClick(team: Team){\n let selected = !!(selectedTeams.find(st => st.id === team.id))\n\n if (selected){\n setSelectedTeams(prev => [...prev.filter(pt => pt.id !== team.id)]);\n setValues(prev => [...prev.filter(ps => !(team.salaries.find(ts => ts.id === ps.id)))]);\n }else{\n setSelectedTeams(prev => [...prev, team]);\n let toAdd = team.salaries.filter(ts => !(values.find(vs => vs.id === ts.id)));\n setValues(prev => [...prev, ...toAdd]);\n }\n }\n\n const handleExtraCompanyChange = (c: Company) => {\n\n if (extraCompany?.id === c.id){\n setExtraCompany(undefined);\n }else{\n setExtraCompany(c);\n }\n\n setDisplayFilter(false)\n }\n\n const Filters = () => <>\n
    \n {getUser().currentSalary.companies.map((c: Company) => {\n e.preventDefault();\n handleExtraCompanyChange(c)\n }}\n >\n
    \n
    \n

    \n {c.title}\n

    \n
    \n
    \n )}\n
\n \n\n return
\n
\n
setIsOpen(true)}\n >\n
\n {props.multiple && props.teams &&
\n {teamLoading && Chargement des équipes}\n {!teamLoading && <>\n {teams.length ? teams.map(t => handleTeamClick(t)} className={\"me-1 badge cursor-pointer \" + (selectedTeams.findIndex(st => st.id === t.id) !== -1 ? \" bg-primary \" : \" bg-light border border-1 text-dark \")}>{t.title}) : Aucune équipe trouvé }\n }\n
}\n
\n
\n
\n
\n
\n
\n {props.fetchOptions && !_companies && <>\n {\n e.preventDefault()\n setDisplayFilter(prev => !prev)\n }}>\n {displayFilter ? <>

Filtrer par établissement

: <>}\n
\n\n }\n {!displayFilter && <>\n setIsOpen(false)}\n onChange={(e) => handleChangeQuery(e.target.value)}\n />\n }\n {\n e.preventDefault();\n setIsOpen(false)\n }}>\n \n \n
\n
\n
\n
\n {!displayFilter && \n
    \n {loading &&
  • Chargement...
  • }\n {options.map((salary) => {\n e.preventDefault();\n handleChange(salary)\n }}\n >\n
    \n
    \n

    \n {salary.title}\n

    \n \n {salary.information?.job.title}\n \n
    \n
    \n {props.multiple &&
    \n v.id === salary.id))}/>\n
    }\n
    \n
    \n )}\n
\n {isScrollBottom && props.fetchOptions && !isLast &&
  • Chargement de plus de résultats
  • }\n
    }\n {displayFilter && !_companies && }\n
    \n
    \n\n function addValue(salary: Salary)\n {\n setValues(prev => [...prev, salary])\n }\n\n function removeValue(salary: Salary)\n {\n setValues(prev => [...prev.filter(s => s.id !== salary.id)])\n }\n}\n\nfunction areEqual(prevProps: Interface & (WithOptions | WithoutOptions | Available) & (Multiple | (SingleRequired | SingleNotRequired)), nextProps: Interface & (WithOptions | WithoutOptions | Available) & (Multiple | (SingleRequired | SingleNotRequired))){\n\n let _companies = prevProps.fetchOptions ? prevProps.companies : undefined;\n let _jobs = prevProps.fetchOptions ? prevProps.jobs : undefined;\n let _options = !prevProps.fetchOptions ? prevProps.options : undefined;\n let _initialValue = prevProps.multiple ? prevProps.values : prevProps.value;\n let _beginAt = prevProps.fetchOptions && prevProps.available ? prevProps.beginAt : undefined;\n let _endAt = prevProps.fetchOptions && prevProps.available ? prevProps.endAt : undefined;\n\n let companies = nextProps.fetchOptions ? nextProps.companies : undefined;\n let jobs = nextProps.fetchOptions ? nextProps.jobs : undefined;\n let options = !nextProps.fetchOptions ? nextProps.options : undefined;\n let initialValue = nextProps.multiple ? nextProps.values : nextProps.value;\n let beginAt = nextProps.fetchOptions && nextProps.available ? nextProps.beginAt : undefined;\n let endAt = nextProps.fetchOptions && nextProps.available ? nextProps.endAt : undefined;\n\n return arrayEquals(_companies, companies) && _jobs === jobs && arrayEquals(_options, options) && isSame(_initialValue, initialValue) && beginAt === _beginAt && endAt === _endAt;\n}\n\nfunction isSame(value1: any, value2: any){\n if (Array.isArray(value1) && Array.isArray(value2)){\n return arrayEquals(value1, value2)\n }\n\n return value1?.id === value2?.id;\n}\n\nexport default React.memo(SalarySelector, areEqual);","import {Task} from \"../../../models/task\";\nimport {TaskGroupCustomField, TaskGroupCustomFieldValues} from \"../../../models/taskGroup/customField\";\nimport DatePicker from \"react-datepicker\";\nimport * as React from \"react\";\nimport {Field, FieldConfig, FieldProps, FormikValues} from \"formik\";\nimport StyledDropzone from \"../../../utils/fileUpload\";\nimport {FormEvent} from \"react\";\nimport ColorPicker from \"../../../utils/colorPicker\";\nimport {Salaries, Salary} from \"../../../models/salary\";\nimport format from \"../../../utils/locale\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport DateCustomInput from \"../../../utils/customInput\";\nimport SalarySelector from \"../../../components/salary/selector\";\nimport * as accessRights from \"../../accessRight\";\n\nexport const ADD_TASK_GROUP_CUSTOM_FIELD = 'ADD_TASK_GROUP_CUSTOM_FIELD';\nexport const ADD_TASK_GROUP_CUSTOM_FIELD_SUCCESS = 'ADD_TASK_GROUP_CUSTOM_FIELD_SUCCESS';\nexport const ADD_TASK_GROUP_CUSTOM_FIELD_FAILURE = 'ADD_TASK_GROUP_CUSTOM_FIELD_FAILURE';\n\nexport const EDIT_TASK_GROUP_CUSTOM_FIELD = 'EDIT_TASK_GROUP_CUSTOM_FIELD';\nexport const EDIT_TASK_GROUP_CUSTOM_FIELD_SUCCESS = 'EDIT_TASK_GROUP_CUSTOM_FIELD_SUCCESS';\nexport const EDIT_TASK_GROUP_CUSTOM_FIELD_FAILURE = 'EDIT_TASK_GROUP_CUSTOM_FIELD_FAILURE';\n\nexport const FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS = 'FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS';\nexport const FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS_SUCCESS = 'FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS_SUCCESS';\nexport const FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS_FAILURE = 'FETCH_TASK_GROUP_CUSTOM_FIELD_CUSTOM_FIELDS_FAILURE';\n\nexport const SHOW_TASK_GROUP_CUSTOM_FIELD = 'SHOW_TASK_GROUP_CUSTOM_FIELD';\nexport const SHOW_TASK_GROUP_CUSTOM_FIELD_SUCCESS = 'SHOW_TASK_GROUP_CUSTOM_FIELD_SUCCESS';\nexport const SHOW_TASK_GROUP_CUSTOM_FIELD_FAILURE = 'SHOW_TASK_GROUP_CUSTOM_FIELD_FAILURE';\n\ninterface CustomFieldValueProps{\n customFieldsValues?: TaskGroupCustomFieldValues,\n customField: TaskGroupCustomField\n}\n\nexport const CustomFieldValue:React.FC = (props) => {\n\n const {customField, customFieldsValues} = props;\n\n if (!customFieldsValues) return ;\n\n let customFieldValue = customFieldsValues.find(customFieldValue => customFieldValue && customFieldValue.field.id === customField.id)\n\n if (!customFieldValue) return ;\n\n switch (customField.type){\n case 1: // COLOR\n return
    \n case 2: // TEXT\n return <>{customFieldValue.value}\n case 3: // NUMBER\n return <>{customFieldValue.value}\n case 4: // DATE\n return <>{format(new Date(customFieldValue.value))}\n case 5: // FILE\n return <>{customFieldValue.value}\n case 6: // SALARIES\n return
      {customFieldValue.value?.map((salary: Salary) =>\n
    • {salary.firstname} {salary.lastname}
    • \n )}
    \n default :\n return Type de champ invalide \n }\n}\n\ninterface CustomInputProps {\n customField: TaskGroupCustomField,\n setFieldValue: any,\n values: FormikValues,\n}\nexport const CustomInput:React.FC = (props) => {\n\n const {customField, setFieldValue, values} = props;\n\n switch (customField.type){\n case 1: // COLOR\n return setFieldValue(`customFields.${customField.id}`, color)}\n selected={values.customFields[customField.id!]}\n />\n case 2: // TEXT\n return setFieldValue(`customFields.${customField.id}` , e.target.value)}\n className={'form-control'}\n defaultValue={values.customFields[customField.id!]||''}\n />\n case 3: // NUMBER\n return <>\n
    \n setFieldValue(`customFields.${customField.id}` , e.target.value)}\n type={'number'}\n className={'form-control'}\n defaultValue={values.customFields[customField.id!]||null}\n />\n \n
    \n \n case 4: // DATE\n return {\n setFieldValue(`customFields.${customField.id}` , date)\n }}\n customInput={}\n selected={values.customFields[customField.id!]||new Date()}\n dateFormat={\"E dd MMM uuuu HH:mm\"}\n className={'form-control'}\n isClearable={true}\n />\n case 5: // FILE\n return {\n setFieldValue(`customFields.${customField.id}`, files[0])\n }}\n defaultValue={values.customFields[customField.id!]||undefined}\n />\n case 6: // SALARIES\n return setFieldValue(`customFields.${customField.id}`, salaries.map(s => s.id))}\n fetchOptions={true}\n values={customField.fieldValues?.map(fv => fv.value)}\n accessRight={accessRights.EDIT_TASK}\n />\n default :\n return <>Une erreur est survenue\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport {Salaries, Salary} from \"../../../../models/salary\";\nimport {FormikHelpers, useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport {\n TaskGroupCustomField,\n TaskGroupCustomFieldValue,\n TaskGroupCustomFieldValues\n} from \"../../../../models/taskGroup/customField\";\nimport {TaskGroup} from \"../../../../models/taskGroup\";\nimport DatePicker from \"react-datepicker\";\nimport {CustomInput} from \"../../../../constants/taskGroup/customField\";\nimport * as api from \"../../../../adapters/task\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {Task} from \"../../../../models/task\";\nimport FormError from \"../../../../utils/formError\";\nimport SalarySelector from \"../../../salary/selector\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\ninterface Interface {\n task: {\n title: string,\n exDate: Date,\n description: string,\n allDay: boolean,\n taskGroup: TaskGroup,\n salaries: Salaries,\n },\n customFieldsValues: TaskGroupCustomFieldValues,\n start: Date,\n end: Date|null,\n id: number,\n isException: boolean,\n handleSubmitSuccess: (ev: any) => any\n}\n\nconst TaskEditForm: React.FC = (props) => {\n\n const {task, start, end, customFieldsValues, isException, id, handleSubmitSuccess} = props;\n const dispatch = useDispatch();\n\n const [initialValues, setInitialValues] = useState({\n task: {\n beginAt: start,\n title: task.title,\n description: task.description,\n allDay: task.allDay,\n salaries: task.salaries.map((salary: Salary) => salary.id),\n },\n customFields: {}\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n task: Yup.object().shape({\n title: Yup.string().required('Champs requis'),\n description: Yup.string().nullable(),\n allDay: Yup.boolean().required(),\n beginAt: Yup.date().required(),\n salaries: Yup.array().of(Yup.number()).nullable(),\n }),\n customFields: Yup.object().shape({})\n }));\n\n useEffect(() => {\n\n let _taskValidationSchema = {...validationSchema.fields.task.fields}\n let _customFieldsValidationSchema: any = {}\n let _initialValues = {...initialValues}\n\n if (!task.allDay){\n _initialValues.task.endAt = new Date(end!)\n _taskValidationSchema.endAt = Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n })\n }\n\n if (task.taskGroup.customFields?.length){\n task.taskGroup.customFields?.map((customField: TaskGroupCustomField) => {\n switch (customField.type){\n case 1:\n _customFieldsValidationSchema[customField.id!] = Yup.string().nullable()\n _initialValues.customFields[customField.id!] = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value || null;\n break;\n case 2:\n _customFieldsValidationSchema[customField.id!] = Yup.string().nullable()\n _initialValues.customFields[customField.id!] = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value || null;\n break;\n case 3:\n _customFieldsValidationSchema[customField.id!] = Yup.number().nullable()\n _initialValues.customFields[customField.id!] = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value || null;\n break;\n case 4:\n _customFieldsValidationSchema[customField.id!] = Yup.date().nullable()\n let dateValue = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value;\n _initialValues.customFields[customField.id!] = dateValue ? new Date(dateValue) : null;\n break;\n case 5:\n _customFieldsValidationSchema[customField.id!] = Yup.string().nullable()\n _initialValues.customFields[customField.id!] = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value || null;\n break;\n case 6:\n _customFieldsValidationSchema[customField.id!] = Yup.array().of(Yup.number()).nullable()\n _initialValues.customFields[customField.id!] = customFieldsValues.find((customFieldValue: TaskGroupCustomFieldValue) => customFieldValue.field.id === customField.id)?.value || [];\n break;\n }\n })\n }\n\n setInitialValues(_initialValues);\n formik.setFieldValue('task', initialValues.task)\n formik.setFieldValue('customFields', initialValues.customFields)\n setValidationSchema(Yup.object().shape({\n task: Yup.object().shape({..._taskValidationSchema}),\n customFields: Yup.object().shape({..._customFieldsValidationSchema})\n }));\n }, [])\n\n const handleAllDayChange = (allDay: boolean) => {\n let _taskValidationSchema = {...validationSchema.fields.task.fields}\n let _customFieldsValidationSchema = {...validationSchema.fields.customFields.fields}\n let _values = {...formik.values};\n\n _values.task.allDay = allDay;\n\n if (allDay){\n delete _taskValidationSchema.endAt\n delete _values.task.endAt;\n }else{\n _values.task.endAt = new Date(_values.task.beginAt)\n _taskValidationSchema.endAt = Yup.date().required();\n }\n\n setInitialValues({..._values})\n setValidationSchema(Yup.object().shape({\n task: Yup.object().shape({..._taskValidationSchema}),\n customFields: Yup.object().shape({..._customFieldsValidationSchema})\n }))\n }\n\n const handleSubmit = (data: Task, helpers: FormikHelpers) => {\n Promise.all([\n handleSubmitSuccess(data),\n ]).then(() => dispatch(showAlertSuccess('Tâche modifiée')))\n .then(() => helpers.setSubmitting(false))\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, helpers) => {\n if (isException){ \n api.editException(values, id).then((resp) => {\n handleSubmit(resp.data, helpers)\n })\n }else{\n values.task.exDate = task.exDate;\n api.createException(values, id).then((resp) => {\n handleSubmit(resp.data, helpers)\n })\n }\n }\n });\n\n return <>\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n {\n handleAllDayChange(e.target.checked)\n }} defaultChecked={task.allDay} className=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"allDay\" />\n \n
    \n
    \n
    \n {formik.values.task.allDay ? <>\n }\n className={'form-control'}\n onChange={(date) => formik.setFieldValue('task.beginAt', date)}\n selected={formik.values.task.beginAt}\n dateFormat={'E dd MMM uuuu'}\n />\n \n : <>\n
    \n formik.setFieldValue('task.beginAt', date)}\n dateFormat={'E dd MMM uuuu HH:mm'}\n customInput={}\n />\n \n \n \n formik.setFieldValue('task.endAt', date)}\n dateFormat={'E dd MMM uuuu HH:mm'}\n customInput={}\n />\n
    \n \n \n }\n
    \n
    \n formik.setFieldValue('task.salaries', v.map(s => s.id))}\n teams={true}\n values={task.salaries}\n available={false}\n accessRight={accessRights.EDIT_TASK}\n />\n \n
    \n {task.taskGroup.customFields?.map((customField) => <>\n
    \n \n \n
    \n )}\n \n
    \n
    \n
    \n \n}\n\nexport default TaskEditForm;","import React, {useEffect} from \"react\";\nimport TaskEditForm from \"../../../task/edit/form\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport format from \"../../../../utils/locale\";\nimport {EventClickArg} from \"@fullcalendar/react\";\n\nconst TaskEdit:React.FC<{close: () => any, arg: EventClickArg, handleSubmitSuccess: (ev: any[]) => any}> = (props) => {\n\n const {handleSubmitSuccess, arg, close} = props;\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Modifier une tâche
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default TaskEdit;","export const ADD_TASK = 'ADD_TASK';\nexport const ADD_TASK_SUCCESS = 'ADD_TASK_SUCCESS';\nexport const ADD_TASK_FAILURE = 'ADD_TASK_FAILURE';\n\nexport const EDIT_TASK = 'EDIT_TASK';\nexport const EDIT_TASK_SUCCESS = 'EDIT_TASK_SUCCESS';\nexport const EDIT_TASK_FAILURE = 'EDIT_TASK_FAILURE';\nexport const FETCH_TASKS = 'FETCH_TASKS';\n\nexport const FETCH_TASKS_SUCCESS = 'FETCH_TASKS_SUCCESS';\nexport const FETCH_TASKS_FAILURE = 'FETCH_TASKS_FAILURE';\nexport const SHOW_TASK = 'SHOW_TASK';\n\nexport const SHOW_TASK_SUCCESS = 'SHOW_TASK_SUCCESS';\nexport const SHOW_TASK_FAILURE = 'SHOW_TASK_FAILURE';\nexport const EDIT_TASK_STATUS_SUCCESS = 'EDIT_TASK_STATUS_SUCCESS';\n\nexport const DELETE_TASK_SUCCESS = 'DELETE_TASK_SUCCESS';\n\n\nexport const STATUS_PENDING = 1;\nexport const STATUS_VALIDATED = 2;\nexport const STATUS_STUCK = 3;\n\nexport function getTaskStatusChoices(){\n return [\n {label: \"En attente\", value: STATUS_PENDING, icon: \"bi bi-clock-history text-warning\"},\n {label: \"Validé\", value: STATUS_VALIDATED, icon: \"bi bi-check2-circle text-success\"},\n {label: \"Bloqué\", value: STATUS_STUCK, icon: \"bi bi-exclamation-circle text-danger\"},\n ]\n}\n\nexport function getTaskStatusChoice(value?: number){\n return getTaskStatusChoices().find(s => s.value === value) || getTaskStatusChoices()[0]\n}","import {post} from \"../../xhr\";\n\nexport function edit(requestData: {exDate: string, status: number}, taskId: number, statusId: number){\n return post(`task/${taskId}/status/${statusId}/edit`, requestData);\n}\n\nexport function create(requestData: {exDate: string, status: number}, taskId: number){\n return post(`task/${taskId}/status/create`, requestData);\n}","import React, {useState} from \"react\";\nimport {getTaskStatusChoice, getTaskStatusChoices} from \"../../../constants/task\";\nimport {Task, TaskStatus} from \"../../../models/task\";\nimport * as statusApi from \"../../../adapters/task/status\";\nimport {AxiosResponse} from \"axios\";\n\nexport const StatusSelector:React.FC<{status?: TaskStatus, taskId: number, exDate: string, _handleChangeSuccess: (task: Task) => any, disabled?: boolean}> = (props) => {\n\n const {status, taskId, exDate, _handleChangeSuccess, disabled} = props;\n\n const [_status, _setStatus] = useState(status);\n const [selected, setSelected] = useState(status?.val || 1);\n const [loading, setLoading] = useState(false);\n\n const handleChange = (s: number) => {\n setSelected(s)\n setLoading(true)\n\n if (_status){\n statusApi.edit({\n exDate: exDate,\n status: s,\n }, taskId, _status.id).then(r => handleChangeSuccess(r))\n }else{\n statusApi.create({\n exDate: exDate,\n status: s,\n }, taskId).then(r => handleChangeSuccess(r))\n }\n }\n\n function handleChangeSuccess(r: AxiosResponse){\n setLoading(false)\n _setStatus(r.data.status)\n _handleChangeSuccess(r.data)\n }\n\n return
    \n \n
      \n {getTaskStatusChoices().filter(s => s.value !== selected).map(s =>
    • handleChange(s.value)}>\n {s.label}\n
    • )}\n
    \n
    \n}","import React, {useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\"\nimport * as api from \"../../../../adapters/task\"\nimport {Salary} from \"../../../../models/salary\";\nimport {CustomFieldValue} from \"../../../../constants/taskGroup/customField\";\nimport {CalendarTaskSidebarInterface} from \"../sidebar\";\nimport {StatusSelector} from \"../../../task/utils\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\nconst TaskShow:React.FC<{close: () => any, handleSubmitSuccess: (ev: any) => any, arg: EventClickArg, setCalendarTaskSidebarProps: React.Dispatch}> = (props) => {\n\n const {close, arg, setCalendarTaskSidebarProps, handleSubmitSuccess} = props;\n const [canceling, setCanceling] = useState(false)\n const [statusUpdating, setStatusUpdating] = useState(false)\n\n const remove = () => {\n setCanceling(true)\n api.cancelOnce(arg.event.extendedProps.taskId, arg.event.extendedProps.initialStart).then(r => {\n Promise.all([\n handleSubmitSuccess(r.data)\n ])\n .then(() => setCanceling(false))\n .then(() => close())\n })\n }\n\n return <>\n
    \n
    \n {arg.event.title}\n
    \n \n
    \n
    \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {arg.event.extendedProps.customFieldsValues && arg.event.extendedProps.customFieldsValues?.map((item: any) => \n \n \n )}\n \n
    \n Group\n \n {arg.event.extendedProps.group.title}\n
    \n Statut\n \n {\n setStatusUpdating(true)\n Promise.all([\n handleSubmitSuccess(ret)\n ]).then(() => setStatusUpdating(false))\n }}\n />\n
    \n Description\n \n {arg.event.extendedProps.description}\n
    \n Horaire\n \n {arg.event.allDay ? format(arg.event.start!) + \" toute la journée\" : <>\n\n {format(arg.event.start!, \"E dd MMMM uuuu HH:mm\")} {format(arg.event.end || arg.event.start!, \"E dd MMMM uuuu HH:mm\")}\n }\n
    \n Collaborateurs\n \n
      \n {arg.event.extendedProps.salaries.map((s: Salary) =>
    • {s.title}
    • )}\n
    \n
    \n {item.field.title}\n \n \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n}\n\nexport default TaskShow;","import React, {BaseSyntheticEvent, useEffect, useState} from \"react\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport * as taskGroupApi from \"../../../../adapters/taskGroup\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport * as api from \"../../../../adapters/task\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\nimport {TaskGroup, TaskGroups} from \"../../../../models/taskGroup\";\nimport DatePicker from \"react-datepicker\";\nimport {PostTask, TaskRecurrence} from \"../../../../models/task\";\nimport {TaskGroupCustomField} from \"../../../../models/taskGroup/customField\";\nimport Loader from \"../../../../utils/loader\";\nimport {CustomInput} from \"../../../../constants/taskGroup/customField\";\nimport format from '../../../../utils/locale'\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport FormError from \"../../../../utils/formError\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {Salaries} from \"../../../../models/salary\";\nimport SalarySelector from \"../../../salary/selector\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\nconst validationSchema =\n Yup.object().shape({\n task: Yup.object().shape({\n taskGroup: Yup.number().required('Veuillez choisir un groupe de tâche'),\n title: Yup.string().required('Veuillez préciser un titre'),\n description: Yup.string().nullable(),\n allDay: Yup.boolean().required(\"Champs requis\"),\n beginAt: Yup.date().required(\"Champs requis\"),\n endAt: Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n salaries: Yup.array().of(Yup.number()).min(1, \"Veuillez ajouter au moins un collaborateur'\").required(\"Champs requis\"),\n recurrence: Yup.object().shape({\n type: Yup.number().required('Veuillez choisir un type de récurrence'),\n })\n }),\n customFields: Yup.object().shape({}),\n });\n\ninterface Interface {\n salaries: Salaries,\n start: Date,\n end: Date,\n handleSubmitSuccess: (ev: any) => any\n}\n\nconst TaskAddForm: React.FC = (props) => {\n\n const {salaries, start, end, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [validation, setValidation] = useState(validationSchema);\n const [initialValues, setInitialValues] = useState({\n task: {\n taskGroup: null,\n title: '',\n description: null,\n allDay: false,\n beginAt: start,\n endAt: end,\n salaries: salaries.map(s => s.id!) || [],\n recurrence : {\n type: 1,\n }\n },\n customFields: {}\n })\n\n const [isLoading, setIsLoading] = useState(false);\n const [currentTaskGroup, setCurrentTaskGroup] = useState();\n const [taskGroups, setTaskGroups] = useState([]);\n\n useEffect(() => {\n\n let _initialValues = {...initialValues};\n\n taskGroupApi.list().then((data) => {\n if (data.data.length){\n setTaskGroups(data.data);\n setCurrentTaskGroup(data.data[0])\n _initialValues.task.taskGroup = data.data[0].id;\n setInitialValues({..._initialValues});\n }\n })\n }, [])\n\n useEffect(() => {\n if (currentTaskGroup){\n let _validationSchema = {...validation.fields}\n\n if (_validationSchema.customFields.fields.length){\n for (let i in Object(_validationSchema.customFields.fields).keys()){\n delete _validationSchema.customFields.fields[i]\n }\n for (let j in Object(initialValues.customFields).keys()){\n delete initialValues.customFields[j]\n }\n }\n\n if (currentTaskGroup.customFields!.length){\n currentTaskGroup.customFields!.map((customField: TaskGroupCustomField) => {\n switch (customField.type){\n case 1:\n _validationSchema.customFields.fields[customField.id!] = Yup.string().nullable()\n initialValues.customFields[customField.id!] = '';\n break;\n case 2:\n _validationSchema.customFields.fields[customField.id!] = Yup.string().nullable()\n initialValues.customFields[customField.id!] = '';\n break;\n case 3:\n _validationSchema.customFields.fields[customField.id!] = Yup.number().nullable()\n initialValues.customFields[customField.id!] = null;\n break;\n case 4:\n _validationSchema.customFields.fields[customField.id!] = Yup.date().nullable()\n initialValues.customFields[customField.id!] = new Date();\n break;\n case 5:\n _validationSchema.customFields.fields[customField.id!] = Yup.string().nullable()\n initialValues.customFields[customField.id!] = '';\n break;\n case 6:\n _validationSchema.customFields.fields[customField.id!] = Yup.array().of(Yup.number()).nullable()\n initialValues.customFields[customField.id!] = [];\n }\n })\n }\n\n setValidation(Yup.object().shape({..._validationSchema}));\n setIsLoading(false);\n }\n }, [currentTaskGroup])\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validation,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(data => { \n Promise.all([\n handleSubmitSuccess(data.data)\n ]).then(() => {\n dispatch(showAlertSuccess(data.data.title + ' à bien été ajouté !'))\n formikHelpers.setSubmitting(false)\n })\n }).catch(error => dispatch(axiosError(error)))\n }\n });\n\n const handleRecurrenceTypeChange = (type: number) => {\n\n let _validationSchema: any = {};\n let _recurrenceValues: TaskRecurrence = {...formik.values.task.recurrence};\n let _values = {...formik.values};\n _recurrenceValues.type = type;\n\n let recurrenceFields:string[] = [];\n switch (Number(type)){\n case 1:\n // ONCE\n recurrenceFields = ['type'];\n _validationSchema.type = Yup.number().required();\n break;\n case 2:\n // EACH WEEK\n recurrenceFields = ['type', 'start', 'end', 'daysOfWeek'];\n _validationSchema.type = Yup.number().required();\n _validationSchema.start = Yup.date().required();\n _validationSchema.end = Yup.date().nullable();\n _validationSchema.daysOfWeek = Yup.array().of(Yup.number()).min(1, 'Veuillez choisir au moins un jour de la semaine');\n break;\n case 3:\n // EACH MONTH\n recurrenceFields = ['type', 'start', 'end', 'dayOfMonth'];\n _validationSchema.type = Yup.number().required();\n _validationSchema.start = Yup.date().required();\n _validationSchema.end = Yup.date().nullable();\n _validationSchema.dayOfMonth = Yup.number().required('Veuillez choisir un jour du mois');\n break;\n case 4:\n // EACH YEAR\n recurrenceFields = ['type', 'start', 'end', 'dayOfMonth', 'monthOfYear'];\n _validationSchema.type = Yup.number().required();\n _validationSchema.start = Yup.date().required();\n _validationSchema.end = Yup.date().nullable();\n _validationSchema.dayOfMonth = Yup.number().required('Veuillez choisir un jour du mois');\n _validationSchema.monthOfYear = Yup.number().required('Veuillez choisir un mois de l\\'année');\n break;\n case 5:\n // CUSTOM\n recurrenceFields = ['type', 'start', 'end', 'daysOfWeek', 'separationCount'];\n _validationSchema.type = Yup.number().required();\n _validationSchema.start = Yup.date().required();\n _validationSchema.end = Yup.date().nullable();\n _validationSchema.daysOfWeek = Yup.array().of(Yup.number()).min(1, 'Veuillez choisir au moins un jour de la semaine');\n _validationSchema.separationCount = Yup.number().required('Veuillez préciser une récurrence')\n break;\n }\n\n // DELETE UNECESSARY VALUES\n for (let key in _recurrenceValues){\n if (!recurrenceFields.includes(key)){\n switch (key){\n case \"start\":\n delete _recurrenceValues.start\n break;\n case \"end\":\n delete _recurrenceValues.end\n break;\n case \"dayOfMonth\":\n delete _recurrenceValues.dayOfMonth\n break;\n case \"daysOfWeek\":\n delete _recurrenceValues.daysOfWeek\n break;\n case \"monthOfYear\":\n delete _recurrenceValues.monthOfYear\n break;\n case \"separationCount\":\n delete _recurrenceValues.separationCount\n break;\n }\n }\n }\n\n // SET DEFAULT VALUES\n recurrenceFields.forEach((field) => {\n if (!_recurrenceValues.hasOwnProperty(field)){\n switch (field) {\n case 'start':\n _recurrenceValues.start = _values.task.beginAt\n break;\n case 'end':\n _recurrenceValues.end = undefined\n break;\n case 'daysOfWeek':\n _recurrenceValues.daysOfWeek = [Number(format(_values.task.beginAt || new Date(), 'i'))];\n break;\n case 'dayOfMonth':\n _recurrenceValues.dayOfMonth = Number(format(_values.task.beginAt || new Date(), 'd'));\n break;\n case 'monthOfYear':\n _recurrenceValues.monthOfYear = Number(format(_values.task.beginAt || new Date(), 'M'));\n break;\n case 'separationCount':\n _recurrenceValues.separationCount = 1;\n break;\n }\n }\n })\n\n // VALIDATION SCHEMA\n\n validation.fields.task.fields.recurrence.fields = _validationSchema\n _values.task.recurrence = _recurrenceValues;\n\n setValidation(validation)\n setInitialValues({..._values})\n }\n\n const getDaysOfMonth = () => {\n let ret = [];\n for(let i = 1; i <= 31; i++){\n ret.push({label: \"Le \" + i, value: i})\n }\n return ret;\n }\n const getMonthsOfYear = () => {\n let months = ['Janvier', 'Fevrier', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aout', 'Septembre', 'Octobre', 'Novembre', 'Décembre'];\n\n let ret = [];\n for (let i = 0; i < 12; i++){\n ret.push({label: months[i], value: i+1})\n }\n\n return ret;\n }\n const handleAllDayChange = (e: BaseSyntheticEvent) => {\n let _values = {...formik.values}\n let _validationSchema: any = {...validationSchema.fields}\n _values.task.allDay = e.target.checked;\n if (e.target.checked){\n delete _values.task.endAt;\n delete _validationSchema.task.fields.endAt;\n }else{\n _values.task.endAt = _values.task.beginAt;\n _validationSchema.task.fields.endAt = Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n })\n }\n setValidation(Yup.object().shape({..._validationSchema}));\n setInitialValues(_values);\n }\n\n if (isLoading){\n return \n }\n\n return
    \n
    \n
    \n formik.setFieldValue(\"task.taskGroup\", choice?.value)}\n value={currentTaskGroup ? {label: currentTaskGroup.title, value: currentTaskGroup.id!} : undefined}\n options={taskGroups.map((taskGroup: TaskGroup) => ({label: taskGroup.title, value: taskGroup.id!}))}\n />\n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n handleAllDayChange(e)}\n defaultChecked={false}\n />\n \n
    \n {!formik.values.task.allDay ?\n
    \n
    \n {\n formik.setFieldValue(`task.beginAt`, date)\n }}\n customInput={}\n selectsStart\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-start\"}\n showPopperArrow={false}\n />\n \n }\n selected={formik.values.task.endAt}\n onChange={(date: Date) => formik.setFieldValue(`task.endAt`, date)}\n selectsEnd\n startDate={formik.values.task.beginAt}\n endDate={formik.values.task.endAt}\n minDate={formik.values.task.beginAt}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de fin\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n :\n <>\n }\n selected={formik.values.task.beginAt}\n onChange={(date: Date) => formik.setFieldValue(`task.beginAt`, date)}\n selectsStart\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n }\n
    \n
    \n formik.setFieldValue('task.salaries', salaries.map(s => s.id))}\n values={salaries}\n teams={true}\n accessRight={accessRights.EDIT_TASK}\n />\n \n
    \n {currentTaskGroup && currentTaskGroup.customFields?.map((customField: TaskGroupCustomField, index) =>\n
    \n \n
    \n )}\n
    \n
    \n handleRecurrenceTypeChange(Number(choice?.value))}\n value={{label: \"Une seule fois\", value: 1}}\n required={true}\n options={[\n {label: \"Une seule fois\", value: 1},\n {label: \"Chaque semaine\", value: 2},\n {label: \"Une fois par mois\", value: 3},\n {label: \"Une fois par an\", value: 4},\n {label: \"Personnalisé\", value: 5},\n ]}\n />\n \n
    \n {Number(Number(formik.values.task.recurrence.type)) !== 1 &&\n
    \n
    \n }\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n className={'form-control'}\n selected={formik.values.task.recurrence.start}\n onChange={(date) => formik.setFieldValue('task.recurrence.start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.task.recurrence.start}\n endDate={formik.values.task.recurrence.end}\n />\n \n \n \n }\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n className={'form-control'}\n selected={formik.values.task.recurrence.end}\n onChange={(date) => formik.setFieldValue('task.recurrence.end', date)}\n selectsEnd\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.task.recurrence.start}\n endDate={formik.values.task.recurrence.end}\n minDate={formik.values.task.recurrence.start}\n isClearable={true}\n />\n
    \n
    }\n\n {[2,5].includes(Number(Number(formik.values.task.recurrence.type))) && <>\n
    \n
    \n \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n }\n\n {[3,4].includes(Number(formik.values.task.recurrence.type)) && <>\n
    \n ({label: opt.label, value: opt.value}))}\n required={true}\n onChange={(choice) => formik.setFieldValue('task.recurrence.dayOfMonth', choice?.value)}\n />\n \n
    \n }\n\n\n {Number(formik.values.task.recurrence.type) === 4 && <>\n
    \n ({label: opt.label, value: opt.value}))}\n required={true}\n onChange={(choice) => formik.setFieldValue('task.recurrence.monthOfYear', choice?.value)}\n />\n \n
    \n }\n {Number(formik.values.task.recurrence.type) === 5 && <>\n
    \n
    \n
    \n \n \n
    \n Semaine(s)\n
    \n \n
    \n }\n
    \n \n
    \n
    \n}\n\nexport default TaskAddForm;","import React, {useEffect, useState} from \"react\";\nimport TaskAddForm from \"../../../task/add/form\";\nimport {Salary} from \"../../../../models/salary\";\nimport {setMinutes} from \"date-fns\";\n\nconst TaskAdd:React.FC<{close: () => any, handleSubmitSuccess: (ev: any[]) => any, salary?: Salary}> = (props) => {\n\n const {handleSubmitSuccess, salary, close} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [salary])\n\n return <>\n
    \n
    Ajouter une tâche
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default TaskAdd;","import React, {useEffect, useState} from \"react\";\nimport TaskAddForm from \"../../../../task/add/form\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\n\nconst TaskSelect:React.FC<{close: () => any, handleSubmitSuccess: (ev: any[]) => any, salary?: Salary, arg: DateSelectArg}> = (props) => {\n\n const {handleSubmitSuccess, salary, close, arg} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [salary])\n\n return <>\n
    \n
    Ajouter une tâche
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default TaskSelect;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg, EventClickArg} from \"@fullcalendar/react\";\nimport CalendarTaskEdit from \"../edit\";\nimport CalendarTaskShow from \"../show\";\nimport CalendarTaskAdd from \"../add\";\nimport CalendarTaskSelect from \"../add/select\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface InterfaceTaskShow {\n sidebarType: 'TASK_SHOW',\n arg: EventClickArg,\n setCalendarTaskSidebarProps: React.Dispatch\n}\n\ninterface InterfaceTaskEdit {\n sidebarType: 'TASK_EDIT',\n arg: EventClickArg,\n}\n\ninterface InterfaceTaskAdd {\n sidebarType: 'TASK_ADD',\n salary?: Salary\n}\n\ninterface InterfaceTaskSelect {\n sidebarType: 'TASK_SELECT',\n arg: DateSelectArg,\n salary?: Salary\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarTaskSidebarInterface = {trigger: number} & (Interface | InterfaceTaskShow | InterfaceTaskEdit | InterfaceTaskAdd | InterfaceTaskSelect)\n\nconst CalendarTaskSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarTask' + (props.referer ? '_' + props.referer : ''))! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarTask' + (props.referer ? '_' + props.referer : ''))!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content:React.FC = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"TASK_ADD\":\n return \n case \"TASK_SELECT\":\n return \n case \"TASK_SHOW\":\n return \n case \"TASK_EDIT\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarTaskSidebarInterface & {handleEventChange: any}, nextProps: CalendarTaskSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarTaskSidebar, areEqual);","import {Tooltip} from \"bootstrap\";\n\nexport default function onMouseEnterTooltip(e: EventTarget & any){\n let tooltip = new Tooltip(e, {trigger: \"hover\", html: true})\n tooltip.show();\n\n e.addEventListener('click', () => tooltip.hide());\n e.addEventListener('mouseleave', () => tooltip.hide());\n}","export const FETCH_COMPANY_GROUP = \"FETCH_COMPANY_GROUP\"\nexport const FETCH_COMPANY_GROUP_SUCCESS = \"FETCH_COMPANY_GROUP_SUCCESS\"\nexport const FETCH_COMPANY_GROUP_FAILURE = \"FETCH_COMPANY_GROUP_FAILURE\"\n\nexport const ADD_COMPANY_GROUP = \"ADD_COMPANY_GROUP\"\nexport const ADD_COMPANY_GROUP_SUCCESS = \"ADD_COMPANY_GROUP_SUCCESS\"\nexport const ADD_COMPANY_GROUP_FAILURE = \"ADD_COMPANY_GROUP_FAILURE\"\n\nexport const EDIT_COMPANY_GROUP = \"EDIT_COMPANY_GROUP\"\nexport const EDIT_COMPANY_GROUP_SUCCESS = \"EDIT_COMPANY_GROUP_SUCCESS\"\nexport const EDIT_COMPANY_GROUP_FAILURE = \"EDIT_COMPANY_GROUP_FAILURE\"\n\nexport const SELECT_COMPANY_GROUP = \"SELECT_COMPANY_GROUP\"\nexport const SELECT_COMPANY_GROUP_SUCCESS = \"SELECT_COMPANY_GROUP_SUCCESS\"\nexport const SELECT_COMPANY_GROUP_FAILURE = \"SELECT_COMPANY_GROUP_FAILURE\"\n\nexport const UNSELECT_COMPANY_GROUP = \"UNSELECT_COMPANY_GROUP\"\n\nexport const TYPE_PHARMACY = 1;\nexport const TYPE_DENTAL_CENTER = 2;\nexport const TYPE_MEDICAL_CENTER = 3;\nexport const TYPE_LABORATORY = 4;\nexport const TYPE_RESTORATION = 5;\nexport const TYPE_SPORTS_HALL = 6;\nexport const TYPE_BAKERY = 7;\nexport const TYPE_HOTEL = 8;\nexport const TYPE_FOOD_DISTRIBUTION = 9;\n\nexport const getVisibleUntilOptions = () => [\n {label: 'Aucune limitation', value: 0},\n {label: '1 semaine', value: 1},\n {label: '2 semaines', value: 2},\n {label: '3 semaines', value: 3},\n {label: '1 mois', value: 4},\n {label: '2 mois', value: 5},\n {label: '3 mois', value: 6},\n {label: '4 mois', value: 7},\n {label: '5 mois', value: 8},\n {label: '6 mois', value: 9},\n]\n\nexport const getVisibleUntilOption = (option?: number) => [\n {label: 'Aucune limitation', value: 0},\n {label: '1 semaine', value: 1},\n {label: '2 semaines', value: 2},\n {label: '3 semaines', value: 3},\n {label: '1 mois', value: 4},\n {label: '2 mois', value: 5},\n {label: '3 mois', value: 6},\n {label: '4 mois', value: 7},\n {label: '5 mois', value: 8},\n {label: '6 mois', value: 9},\n].find(o => o.value === (option || 0))\n\nexport const VISIBLE_UNTIL_NO_LIMITATION = 0;\nexport const VISIBLE_UNTIL_ONE_WEEK = 1;\nexport const VISIBLE_UNTIL_TWO_WEEK = 2;\nexport const VISIBLE_UNTIL_THREE_WEEK = 3;\nexport const VISIBLE_UNTIL_ONE_MONTH = 4;\nexport const VISIBLE_UNTIL_TWO_MONTH = 5;\nexport const VISIBLE_UNTIL_THREE_MONTH = 6;\nexport const VISIBLE_UNTIL_FOUR_MONTH = 7;\nexport const VISIBLE_UNTIL_FIVE_MONTH = 8;\nexport const VISIBLE_UNTIL_SIX_MONTH = 9;\n\nexport const BILLING_RATE_OPTIONS = [\n { label: \"Taux normal\", value: 1 },\n { label: \"Taux réduit\", value: 2 }\n];","import accessRightChecker from \"../accessRightChecker\";\nimport * as accessRights from \"../../constants/accessRight\";\nimport {GeneralSettings} from \"../../models/companyGroup\";\nimport * as types from \"../../constants/companyGroup\";\n\nconst getMaxVisibilityDate = () => {\n\n let user = localStorage.getItem('user')\n\n if (user){\n let data = JSON.parse(user)\n\n if (!data.currentSalary)\n {\n return undefined;\n }\n\n if (accessRightChecker.hasGlobalRight(accessRights.SHOW_ABOVE_MAX_VISIBILITY_DATE)){\n return undefined;\n }\n\n let currentDate = new Date();\n\n const settings:GeneralSettings = data.currentSalary.companyGroup.generalSettings;\n\n if (settings){\n switch (settings.visibleUntil)\n {\n case types.VISIBLE_UNTIL_NO_LIMITATION:\n return undefined;\n case types.VISIBLE_UNTIL_ONE_WEEK:\n return new Date(currentDate.setDate(currentDate.getDate() + 7));\n case types.VISIBLE_UNTIL_TWO_WEEK:\n return new Date(currentDate.setDate(currentDate.getDate() + 7 * 2));\n case types.VISIBLE_UNTIL_THREE_WEEK:\n return new Date(currentDate.setDate(currentDate.getDate() + 7 * 3));\n case types.VISIBLE_UNTIL_ONE_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 1));\n case types.VISIBLE_UNTIL_TWO_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 2));\n case types.VISIBLE_UNTIL_THREE_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 3));\n case types.VISIBLE_UNTIL_FOUR_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 4));\n case types.VISIBLE_UNTIL_FIVE_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 5));\n case types.VISIBLE_UNTIL_SIX_MONTH:\n return new Date(currentDate.setMonth(currentDate.getMonth() + 6));\n }\n }\n\n return undefined;\n }\n}\n\nexport default getMaxVisibilityDate;","import {setSeconds} from \"date-fns\";\n\nexport default function duration (start?: Date|null, end?: Date|null, breakDuration?: number|null){\n\n if (!end || !start) return '';\n\n setSeconds(end, 0)\n setSeconds(start, 0)\n\n let s = setSeconds(end, 0).getTime() - setSeconds(start, 0).getTime();\n let ms = s % 1000;\n s = (s - ms) / 1000;\n let secs = s % 60;\n s = (s - secs - (breakDuration || 0)) / 60;\n let min = s % 60;\n let h = (s - min) / 60;\n\n return String(h).padStart(2, '0') + ':' + String(min).padStart(2, '0');\n}","export default function timeFormat (duration: number, format?: \"hour\"|\"decimal\", addSign?: boolean){ \n if (!format){\n format = 'hour';\n }\n\n if (!duration) return \n\n let addMinus = duration < 0;\n\n duration = Math.abs(duration);\n\n let s = duration * 1000;\n let ms = s % 1000;\n s = (s - ms) / 1000;\n let secs = s % 60;\n s = (s - secs) / 60;\n let min = s % 60;\n let h = (s - min) / 60;\n\n if (format === 'decimal'){\n return Number(h + (min/60)).toFixed(2)\n }\n\n return <>{addMinus && (addSign || addSign === undefined) && <>-}{String(h).padStart(2, '0')}:{String(min).padStart(2, '0')};\n}","import React, {forwardRef, useState} from \"react\";\nimport {ResourceLabelContentArg} from \"../../../models/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Link} from \"react-router-dom\";\nimport {EventContentArg} from \"@fullcalendar/react\";\nimport format from \"../../../utils/locale\";\nimport {ResourceApi} from \"@fullcalendar/resource-common\";\nimport {PresenceEvent} from \"../../../models/calendar\";\nimport {TYPE_EVENT_EXCEPTION, TYPE_EVENT_RECURRING} from \"../../../constants/event\";\nimport DatePicker from \"react-datepicker\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport * as taskTypes from \"../../../constants/task\";\nimport onMouseEnterTooltip from \"../../../utils/mouseOverTooltip\";\nimport {RESOURCE_HIERARCHY_PARENT} from \"../../../constants/calendar\";\nimport SmallLoader from \"../../../utils/loader/small\";\nimport {TemplateResourceSidebarInterface} from \"../../template/resource/sidebar\";\nimport {Granted, GrantedAny} from \"../../../security/granted\";\nimport getVersion from \"../../../security/getVersion\";\nimport getMaxVisibilityDate from \"../../../security/getMaxDate\";\nimport duration from \"../../../utils/duration\";\nimport {setHours} from \"date-fns\";\nimport {Syntheses} from \"../../../models/synthesis\";\nimport timeFormat from \"../../../utils/timeFormat\";\n\nexport const renderResourceGroup = (arg: any) => {\n\n return '';\n\n let array = arg.groupValue.split(':')\n\n if (arg.groupValue === 'Notes')\n {\n return Notes\n }\n\n if (arg.groupValue.substring(0, 11) === 'taskGroupId'){\n return \n {arg.groupValue.substring(arg.groupValue.indexOf(\"title:\") + 6, arg.groupValue.length)}\n \n }\n\n return Sem.{array[array.length - 1]} {array[array.length - 3]} \n}\n\n// export const RenderTimeSheet:React.FC<{timeSheets: any, arg: ResourceLabelContentArg}> = (props) => {\nexport const RenderTimeSheet:React.FC<{timeSheets: Syntheses, arg: ResourceLabelContentArg}> = (props) => {\n const {timeSheets, arg} = props;\n\n // let timeSheet = timeSheets.find((t: any) => t.type === arg.resource.extendedProps.resourceType && t.salary.id === arg.resource.extendedProps.salary.id);\n let timeSheet = timeSheets.find((t: any) => t.id === arg.resource.extendedProps.salary.id);\n\n if (!timeSheet) return <>Not found\n\n return <>\n \n {/* {timeSheet.accountedWorkingTime}*/}\n {/*{arg.view.type === 'resourceTimelineWeek' && */}\n {/* {timeSheet.periodCounterDuration === 0 && }*/}\n {/* {timeSheet.periodCounterDuration !== 0 && <>*/}\n {/* {timeSheet.periodCounterDuration > 0 ? : } {timeSheet.periodCounter}*/}\n {/* }*/}\n {/*}*/}\n {timeFormat(timeSheet.accountedWorkingTime)}\n {arg.view.type === 'resourceTimelineWeek' && timeSheet.counter !== undefined && \n {timeSheet.counter === 0 && }\n {timeSheet.counter !== 0 && <>\n {timeSheet.counter > 0 ? : } {timeFormat(timeSheet.counter)}\n }\n }\n \n \n}\n\nexport const RenderTemplateResource:React.FC<{arg : ResourceLabelContentArg, sortBy: number, timeSheets: any[], removeResource: (resource: {id: number}) => any, setTemplateResourceSidebarProps: React.Dispatch}> = (props) => {\n\n const {arg, timeSheets, sortBy, removeResource, setTemplateResourceSidebarProps} = props;\n\n const [confirm, setConfirm] = useState(false);\n const [removing, setRemoving] = useState(false);\n\n switch (arg.resource.extendedProps.hierarchy)\n {\n case calendarTypes.RESOURCE_HIERARCHY_PARENT:\n return \n \n {arg.resource.title}\n \n \n
    \n
    \n {arg.resource.extendedProps.icon && }\n
    \n
    \n
    \n
    \n case calendarTypes.RESOURCE_HIERARCHY_CHILD:\n let timeSheet = timeSheets.find(t => Number(t.resource.id) === Number(arg.resource.id));\n\n return \n \n \n {arg.resource.title}\n {timeSheet && <>\n \n \n {timeFormat(timeSheet.accountedWorkingTime)}\n {arg.view.type === 'resourceTimelineWeek' && \n {timeSheet.counter === 0 && }\n {timeSheet.counter !== 0 && <>\n {timeSheet.counter > 0 ? : } {timeFormat(timeSheet.counter)}\n }\n }\n \n }\n {/*{timeSheet && <>*/}\n {/* */}\n {/* */}\n {/* {timeSheet.accountedWorkingTime}*/}\n {/* {arg.view.type === 'resourceTimelineWeek' && */}\n {/* {timeSheet.counter === 0 && }*/}\n {/* {timeSheet.counter !== 0 && <>*/}\n {/* {timeSheet.counter > 0 ? : } {timeFormat(timeSheet.counter)}*/}\n {/* }*/}\n {/* }*/}\n {/**/}\n {/*}*/}\n \n \n \n {!confirm && }\n {confirm && }\n \n \n \n \n \n }\n\n return <>{arg.resource.title}\n}\n\n// export const RenderResource:React.FC<{ arg: ResourceLabelContentArg, sortBy: number, timeSheets?: any, setCalendarEventSidebarProps?: React.Dispatch, setCalendarSignedSidebarProps?: React.Dispatch, setCalendarAbsenceSidebarProps?: React.Dispatch, setCalendarTimeTableProps?: React.Dispatch}> = (props) => {\nexport const RenderResource:React.FC<{ arg: ResourceLabelContentArg, sortBy: number, timeSheets?: Syntheses, setCalendarEventSidebarProps: React.Dispatch, setCalendarSignedSidebarProps: React.Dispatch, setCalendarAbsenceSidebarProps: React.Dispatch, setCalendarTimeTableProps: React.Dispatch}> = (props) => {\n\n const {arg, sortBy, timeSheets, setCalendarAbsenceSidebarProps, setCalendarSignedSidebarProps, setCalendarEventSidebarProps, setCalendarTimeTableProps} = props;\n\n if (arg.resource.extendedProps.hierarchy === calendarTypes.RESOURCE_HIERARCHY_GROUP){\n return \n \n {arg.resource.title}\n \n {arg.resource.extendedProps.underTitle && <>\n
    \n \n {arg.resource.extendedProps.underTitle}\n \n }\n
    \n }\n\n switch (arg.resource.extendedProps.resourceType){\n case calendarTypes.RESOURCE_TYPE_EVENT:\n case calendarTypes.RESOURCE_TYPE_SIGNED:\n switch (arg.resource.extendedProps.hierarchy){\n case calendarTypes.RESOURCE_HIERARCHY_GRAND_CHILD:\n return \n {arg.resource.title}\n \n case calendarTypes.RESOURCE_HIERARCHY_CHILD:\n if (arg.resource.extendedProps.grouped) return <>\n return \n \n \n \n {Granted(accessRights.LIST_SALARY, arg.resource.extendedProps.salary.id) ? {arg.resource.title} : <>{arg.resource.title}}\n \n \n {Granted(accessRights.LIST_REPORTING, arg.resource.extendedProps.salary.id) && timeSheets && \n \n }\n \n {GrantedAny([accessRights.EDIT_BOOKING, accessRights.EDIT_TIME_CLOCK, accessRights.EDIT_ABSENCE], arg.resource.extendedProps.salary?.id) && \n \n \n
      \n {setCalendarSignedSidebarProps !== undefined && arg.resource.extendedProps.resourceType === 'TYPE_SIGNED' && Granted(accessRights.EDIT_TIME_CLOCK, arg.resource.extendedProps.salary.id) &&\n
    • setCalendarSignedSidebarProps((prev: any) => ({\n sidebarType: \"SIGNED_ADD\",\n trigger: prev.trigger + 1,\n salary: arg.resource.extendedProps.salary,\n company: arg.resource.extendedProps.company\n }))}\n >\n Ajouter un badgeage\n
    • }\n {setCalendarEventSidebarProps !== undefined && Granted(accessRights.EDIT_BOOKING, arg.resource.extendedProps.salary?.id) && getVersion() === 1 &&
    • setCalendarEventSidebarProps((prev: any) => ({\n sidebarType: \"EVENT_ADD\",\n trigger: prev.trigger + 1,\n dt: setHours(arg.view.calendar.getDate(), (new Date()).getHours()),\n salary: arg.resource.extendedProps.salary,\n company: arg.resource.extendedProps.company,\n localisation: arg.resource.extendedProps.localisation,\n activity: arg.resource.extendedProps.activity\n }))}\n >\n Planifier un créneau\n
    • }\n {setCalendarTimeTableProps !== undefined && Granted(accessRights.EDIT_BOOKING, arg.resource.extendedProps.salary.id) && getVersion() === 1 &&
    • setCalendarTimeTableProps((prev: any) => ({\n salary: arg.resource.extendedProps.salary,\n date: arg.view.calendar.getDate(),\n }))}\n >\n Modifier la structure\n
    • }\n {setCalendarAbsenceSidebarProps !== undefined && Granted(accessRights.EDIT_ABSENCE, arg.resource.extendedProps.salary.id) &&
    • setCalendarAbsenceSidebarProps((prev: any) => ({\n sidebarType: \"ABSENCE_ADD\",\n trigger: prev.trigger + 1,\n salary: arg.resource.extendedProps.salary,\n }))}\n >\n Ajouter une absence\n
    • }\n
    \n
    \n
    }\n
    \n
    \n case calendarTypes.RESOURCE_HIERARCHY_PARENT:\n return \n \n {arg.resource.title}\n \n \n
    \n
    \n {arg.resource.extendedProps.icon && }\n
    \n
    \n
    \n
    \n default:\n return <>{arg.resource.title}\n }\n case calendarTypes.RESOURCE_TYPE_KEEP_NOTE:\n return <>\n case calendarTypes.RESOURCE_TYPE_TASK:\n switch (sortBy){\n case 1:\n switch (arg.resource.extendedProps.hierarchy){\n case 'child':\n return \n
    \n \n \n {Granted(accessRights.LIST_SALARY, arg.resource.extendedProps.salary.id) ? {arg.resource.title} : <>{arg.resource.title}}\n \n \n
    \n
    \n case 'parent':\n return \n \n {arg.resource.title}\n \n \n
    \n
    \n {arg.resource.extendedProps.icon && }\n
    \n
    \n
    \n
    \n }\n return <>{arg.resource.title}\n case 2:\n switch (arg.resource.extendedProps.hierarchy){\n case 'grandChild':\n return {arg.resource.title}\n case 'child':\n return {arg.resource.title}\n case 'parent':\n return {arg.resource.title}\n }\n }\n }\n\n return <>{arg.resource.title}\n}\n\nexport function renderEvent(arg: EventContentArg, displayEventTime?: boolean) { \n switch (arg.event.extendedProps.eventType) {\n case calendarTypes.EVENT_TYPE_TIME_CLOCK:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION:\n return
    \n \n {arg.event.extendedProps.files?.length > 0 && }\n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION && }\n {[calendarTypes.EVENT_TYPE_TIME_CLOCK, calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION].includes(arg.event.extendedProps.eventType) && (arg.event.extendedProps._start || arg.event.extendedProps._end) && }\n {arg.event.title}\n \n
    \n \n {arg.event.extendedProps.isAnomaly && } {arg.timeText} | {duration(arg.event.start, arg.event.end)}\n \n
    \n {['timeGridWeek', 'timeGridDay'].includes(arg.view.type) && arg.event.extendedProps.description && \n {arg.event.extendedProps.description}\n }\n
    \n case calendarTypes.EVENT_TYPE_PRESENCE:\n let className = '';\n switch (arg.event.extendedProps.presenceType){\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n let counter = Number(arg.event.extendedProps.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let need = Number(arg.event.extendedProps.need || 0);\n\n className = (need && need > counter ? ' badge text-danger ' : (need && need < counter ? ' badge text-primary ' : ' badge text-success '));\n\n return
    \n \n {counter}{!!need && <>/{need}}\n \n
    \n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n let v: any[] = arg.event.extendedProps.values\n let n: any[] = arg.event.extendedProps.need\n\n let array = v.filter(_v => _v.id).map(_v => {\n let val = Number(_v.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0))\n\n let need = (n ? (n[_v.id] || 0) : 0)\n\n if(val < need) return 0;\n if(val > need) return 2;\n\n return 1;\n })\n\n className = array.includes(0) ? 'text-danger' : (array.includes(2) ? 'text-primary' : 'text-success')\n let icon = array.includes(0) ? 'bi bi-x-lg text-danger' : (array.includes(2) ? 'bi bi-plus-lg text-primary' : 'bi bi-check-lg text-success')\n\n return _v.id).map(_v => {\n\n let _vv = Number(_v.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let _vn = (n ? (n[_v.id] || 0) : 0);\n\n return _v.title + \" _vn ? 'text-primary' : 'text-success')) +\"'>\" + _vv + \"/\" + (n ? (n[_v.id] || 0) : 0) + \"\"\n }).join('
    ')}\n onMouseEnter={(e) => onMouseEnterTooltip(e.currentTarget)}\n className={'text-center w-100 badge btn-light ' + className}>\n \n \n \n \n }\n break;\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION: \n switch (arg.view.type){ \n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n return \n
    \n
    \n {arg.event.title}\n
    \n
    \n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n {arg.event.extendedProps.comment && }\n
    \n
    \n
    \n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_EVENT && (arg.event.extendedProps.type === TYPE_EVENT_RECURRING ? : )}\n {arg.timeText} | {duration(arg.event.start, arg.event.end)}\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
    \n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n return (\n \n
    \n
    \n
    \n {arg.event.extendedProps.localisation &&
    \n \n
    }\n {arg.event.extendedProps.activity &&
    \n \n
    }\n
    \n
    \n {arg.event.title}\n
    \n
    \n
    \n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n {arg.event.extendedProps.comment && }\n
    \n
    \n
    \n
    \n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_EVENT && (arg.event.extendedProps.type === TYPE_EVENT_RECURRING ? : )}\n {arg.timeText} | {duration(arg.event.start, arg.event.end)}\n
    \n
    \n
    \n )\n case calendarTypes.RESOURCE_TIMELINE_VIEW:\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n return {arg.event.extendedProps.absence ? <> {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} : (displayEventTime ? arg.timeText : duration(arg.event.start, arg.event.end))}\n case calendarTypes.TIME_GRID_DAY_VIEW:\n case calendarTypes.TIME_GRID_WEEK_VIEW:\n return <>\n \n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_EVENT && (arg.event.extendedProps.type === TYPE_EVENT_RECURRING ? : )}\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.timeText}\n \n {(arg.event.end && arg.event.start) ? format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm') : arg.event.extendedProps.exceptionId}\n \n {arg.event.extendedProps.exchanged && <>{{arg.event.title}}}\n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
    \n }\n {arg.event.extendedProps.comment && <>\n {arg.event.extendedProps.comment}\n
    \n }\n \n case calendarTypes.DAY_GRID_MONTH_VIEW:\n return
    \n \n {arg.event.extendedProps.eventType === TYPE_EVENT_EXCEPTION && }\n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_EVENT && (arg.event.extendedProps.type === TYPE_EVENT_RECURRING ? : )}\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.timeText}\n \n {arg.event.extendedProps.exchanged && <>{{arg.event.title}}}\n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
    \n }\n {arg.event.extendedProps.comment && <>\n {arg.event.extendedProps.comment}\n
    \n }\n
    \n case 'listDay':\n case 'listWeek':\n return <>\n
    \n {arg.event.extendedProps.comment && }\n {arg.event.extendedProps.substitution && }\n {arg.event.extendedProps.exchange && }\n \n {arg.event.extendedProps.salary.title}\n \n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n }\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
    \n
    \n {arg.event.extendedProps?.company?.title}\n
    \n
    \n
    \n {arg.event.extendedProps.salary.information.job.title}\n
    \n
    \n \n }\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n case calendarTypes.EVENT_TYPE_BOOKING_OUTER:\n switch (arg.view.type){\n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n return (\n \n
    \n
    \n {arg.event.title}\n
    \n
    \n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n
    \n
    \n
    \n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.isException && }\n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.recurrence.type !== 1 && !arg.event.extendedProps.isException && }\n {arg.timeText} - {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
    \n )\n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n return (\n \n
    \n
    \n {arg.event.title}\n
    \n
    \n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n
    \n
    \n
    \n
    \n {arg.event.extendedProps.eventType === 'bookingException' && }\n {arg.event.extendedProps.eventType === 'booking' && arg.event.extendedProps.recurrence.type !== 1 && !arg.event.extendedProps.isException && }\n {arg.timeText}\n
    \n {arg.event.extendedProps.localisation &&
    \n \n
    }\n {arg.event.extendedProps.activity &&
    \n \n
    }\n
    \n
    \n )\n case calendarTypes.RESOURCE_TIMELINE_VIEW:\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n return (\n <>\n {displayEventTime ? arg.timeText : duration(arg.event.start, arg.event.end)}\n \n )\n case calendarTypes.DAY_GRID_MONTH_VIEW:\n return
    \n \n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {!arg.event.extendedProps.isException && arg.event.extendedProps.recurrence?.type > 1 && }\n {arg.timeText}\n \n {arg.event.extendedProps.exchanged && <>{{arg.event.title}}}\n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
    \n }\n {arg.event.extendedProps.comment && <>\n {arg.event.extendedProps.comment}\n
    \n }\n
    \n case calendarTypes.TIME_GRID_DAY_VIEW:\n case calendarTypes.TIME_GRID_WEEK_VIEW:\n return <>\n \n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.isSlotExchange && }\n {arg.event.extendedProps.substitute && }\n {!arg.event.extendedProps.isException && arg.event.extendedProps.recurrence?.type > 1 && }\n {arg.timeText}\n \n {arg.event.start && arg.event.end && <>{format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}}\n \n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
    \n }\n \n case 'listDay':\n case 'listWeek':\n return <>\n
    \n {arg.event.extendedProps.substitute && }\n {arg.event.extendedProps.isSlotExchange && }\n \n {arg.event.extendedProps.salary.title}\n \n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n }\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
    \n
    \n {arg.event.extendedProps?.company?.title}\n
    \n
    \n
    \n {arg.event.extendedProps.salary.information.job.title}\n
    \n
    \n \n }\n break;\n case calendarTypes.EVENT_TYPE_OFFER_VALIDATED:\n case calendarTypes.EVENT_TYPE_OFFER_PENDING:\n switch (arg.view.type){\n case calendarTypes.TIME_GRID_WEEK_VIEW:\n case calendarTypes.TIME_GRID_DAY_VIEW:\n return <>\n \n {arg.timeText}\n \n {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n \n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n \n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n return <>\n
    \n
    \n
    \n {arg.event.title}\n
    \n
    \n
    \n
    \n
    \n {arg.timeText}\n
    \n {arg.event.extendedProps.localisation &&
    \n \n
    }\n {arg.event.extendedProps.activity &&
    \n \n
    }\n
    \n \n case calendarTypes.RESOURCE_TIMELINE_VIEW:\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n return
    {arg.event.extendedProps.absence && Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) ? arg.event.extendedProps.absence.typeShortName : arg.timeText}
    \n }\n break;\n case 'templateBookingException':\n case 'templateBooking':\n switch (arg.view.type){\n case 'resourceTimelineDay':\n return <>\n
    \n
    \n {arg.event.extendedProps.resource.job.title}\n
    \n
    \n
    \n
    \n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.recurrence.type > 1 && !arg.event.extendedProps.isException && }\n {arg.timeText} - {format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm')}\n
    \n {arg.event.extendedProps.localisation &&
    \n {\n \n }\n {arg.event.extendedProps.localisation?.title || ''}\n
    }\n {arg.event.extendedProps.activity &&
    \n {\n \n }\n {arg.event.extendedProps.activity.title || ''}\n
    }\n
    \n \n case 'resourceTimelineWeek':\n return (\n <>\n
    \n
    \n {arg.event.extendedProps.resource.job.title}\n
    \n
    \n
    \n
    \n {arg.event.extendedProps.isException && }\n {arg.event.extendedProps.recurrence.type > 1 && !arg.event.extendedProps.isException && }\n {arg.timeText}\n
    \n {arg.event.extendedProps.localisation &&
    \n \n
    }\n {arg.event.extendedProps.activity &&
    \n \n
    }\n
    \n \n )\n }\n break;\n case calendarTypes.EVENT_TYPE_ABSENCE:\n return <>\n
    \n
    \n

    \n {arg.event.title}\n

    \n
    \n
    \n {format(new Date(arg.event.extendedProps.absence.start))} {format(new Date(arg.event.extendedProps.absence.end))}\n
    \n
    \n \n case calendarTypes.EVENT_TYPE_KEEP_NOTE:\n return <>\n {arg.event.extendedProps.private && }\n {arg.event.title}\n \n case calendarTypes.EVENT_TYPE_TASK:\n case calendarTypes.EVENT_TYPE_TASK_EXCEPTION:\n // switch (arg.view.type){\n //\n // }\n return <>\n {arg.timeText} {arg.event.title}\n \n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION:\n case calendarTypes.EVENT_TYPE_TEMPLATE_EVENT:\n case calendarTypes.EVENT_TYPE_TEMPLATE_EVENT_EXCEPTION:\n switch (arg.view.type){\n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n return \n
    \n
    \n
    \n {arg.event.extendedProps.localisation &&
    \n \n
    }\n {arg.event.extendedProps.activity &&
    \n \n
    }\n
    \n
    \n {arg.event.title}\n
    \n {arg.event.extendedProps.substitution &&
    }\n
    \n
    \n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n
    \n
    \n
    \n
    \n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION && }\n {arg.timeText} | {duration(arg.event.start, arg.event.end)}\n
    \n
    \n
    \n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n return \n
    \n
    \n {arg.event.title}\n
    \n
    \n {arg.event.extendedProps.absence && {Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence) && arg.event.extendedProps.absence.typeShortName} }\n
    \n {arg.event.extendedProps.substitution &&
    }\n
    \n
    \n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION && }\n {arg.timeText} | {duration(arg.event.start, arg.event.end)}\n {arg.event.extendedProps.localisation && \n {arg.event.extendedProps.localisation.title}\n }\n {arg.event.extendedProps.activity && \n {arg.event.extendedProps.activity.title}\n }\n
    \n case calendarTypes.RESOURCE_TIMELINE_VIEW:\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n return {(arg.event.extendedProps.absence && Granted(accessRights.LIST_ABSENCE, arg.event.extendedProps.absence)) ? arg.event.extendedProps.absence.typeShortName : (displayEventTime ? arg.timeText : duration(arg.event.start, arg.event.end))}\n case calendarTypes.LIST_WEEK_VIEW:\n case calendarTypes.LIST_DAY_VIEW:\n return <>\n case calendarTypes.TIME_GRID_DAY_VIEW:\n case calendarTypes.TIME_GRID_WEEK_VIEW:\n return <>\n \n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION && }\n {arg.event.extendedProps.exchange && }\n {arg.event.extendedProps.substitution && }\n {arg.timeText}\n \n {(arg.event.end && arg.event.start) ? format(new Date(arg.event.end!.getTime() - arg.event.start!.getTime() - (3600 * 1000)), 'HH:mm') : arg.event.extendedProps.exceptionId}\n \n
    \n {arg.event.extendedProps.company && <>\n {arg.event.extendedProps.company.title}\n
    \n }\n {arg.event.extendedProps.localisation && <>\n {arg.event.extendedProps.localisation.title}\n
    \n }\n {arg.event.extendedProps.activity && <>\n {arg.event.extendedProps.activity.title}\n
    \n }\n {arg.event.extendedProps.absence && <>\n {arg.event.extendedProps.absence.typeName}\n
    \n }\n {arg.event.extendedProps.comment && <>\n {arg.event.extendedProps.comment}\n
    \n }\n \n }\n return <>\n {arg.timeText} {arg.event.title}\n \n\n }\n\n return <>\n}\n\nexport function resourceLaneContent(e: { resource: ResourceApi }){\n if (e.resource.extendedProps.hierarchy === 'parent' && e.resource.extendedProps.backgroundColor){\n let lane = document.querySelector(`.fc-timeline-lane.fc-resource[data-resource-id=\"${e.resource.id}\"]`) as HTMLTableColElement;\n if (lane){\n lane.style.backgroundColor = e.resource.extendedProps.backgroundColor;\n }\n }else if(e.resource.extendedProps.hierarchy === 'grandChild'){\n let lane = document.querySelector(`.fc-timeline-lane.fc-resource[data-resource-id=\"${e.resource.id}\"]`) as HTMLTableColElement;\n if (lane){\n lane.style.backgroundColor = \"#e9ecef\";\n }\n }\n}\n\nexport const ResourceAreaHeaderContent:React.FC<{\n isAbsence: boolean,\n setIsAbsence: React.Dispatch,\n filterEventsWithResources: boolean,\n setFilterEventsWithResources: React.Dispatch,\n setIsBackgroundEvents: React.Dispatch,\n isBackgroundEvents: boolean,\n setIsOuterEvent: React.Dispatch\n isOuterEvents: boolean,\n}> = (props) => {\n const {isAbsence, setIsAbsence, filterEventsWithResources, setFilterEventsWithResources, setIsBackgroundEvents, isBackgroundEvents, setIsOuterEvent, isOuterEvents} = props;\n\n return \n \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n}\n\nconst ViewTitleContainer = forwardRef((props, ref) => {\n const { onClick, viewTitle, prevClick, nextClick, endDate, handlePickedDateChange } = props;\n\n let maxDate = getMaxVisibilityDate();\n\n return (\n
    \n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-light rounded-circle shadow flex-grow-0 shadow-sm'}\n onClick={() => prevClick()}\n >\n \n \n onMouseEnterTooltip(e.currentTarget)}\n style={{maxWidth: 250}}\n className=\"btn dropdown-toggle text-capitalize flex-grow-1 text-primary\"\n onClick={onClick}\n ref={ref}\n >\n {viewTitle}\n \n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-light rounded-circle flex-grow-0 shadow-sm'}\n onClick={() => nextClick()}\n disabled={maxDate && maxDate <= endDate}\n >\n \n \n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-light flex-grow-0 ms-2 shadow-sm'}\n onClick={() => handlePickedDateChange(new Date())}\n >\n \n \n
    \n )\n});\n\nexport const CalendarTitle: React.FC<{pickerDate: Date, handlePickerDateChange: (pickerDate: Date) => void, title: string, prevClick: () => void, nextClick: () => void, endDate: Date}> = (props) => {\n const { handlePickerDateChange, pickerDate, title, prevClick, nextClick, endDate } = props;\n\n return (\n {\n if (date instanceof Date){\n handlePickerDateChange(date)\n }\n }}\n customInput={\n \n }\n />\n )\n}\n\n\nexport const renderDaySeparator = () => {\n const leadingZero = (num: number) => `0${num}`.slice(-2);\n const formatTime = (date: Date) =>\n [date.getHours(), date.getMinutes(), date.getSeconds()]\n .map(leadingZero)\n .join(':');\n\n let lanes = Array.from(document.querySelectorAll('td.fc-timeline-slot-lane') as NodeListOf);\n let dates = lanes.filter((lane) => !!lane.dataset?.date).map((lane) => new Date(lane.dataset.date!).getTime())\n const maxDate = new Date(Math.max.apply(null, dates));\n const maxTime = formatTime(maxDate)\n for (let i in lanes){\n if(typeof lanes[i] === 'object'){\n if (lanes[i].hasAttribute('data-date')){\n if(lanes[i].getAttribute('data-date')?.split('T')[1] === maxTime){\n lanes[i].style.cssText = 'border-right: solid #4723D9 2px !important;'\n }else{\n lanes[i].style.cssText = ''\n }\n }\n }\n }\n}","import React, { useEffect, useState } from \"react\";\n\nimport FullCalendar, { EventClickArg } from \"@fullcalendar/react\";\nimport listPlugin from \"@fullcalendar/list\";\nimport CalendarTaskSidebar, { CalendarTaskSidebarInterface } from \"../sidebar\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\n\nimport * as types from \"../../../../constants/calendar\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\nimport * as api from \"../../../../adapters/calendar\";\n\nimport { Granted } from \"../../../../security/granted\";\nimport { CalendarTitle, renderEvent } from \"../../utils\";\nimport format from \"../../../../utils/locale\";\nimport onMouseEnterTooltip from \"../../../../utils/mouseOverTooltip\";\n\ninterface Controlled {\n type: 'CONTROLLED'\n setCalendarTaskSidebarProps: React.Dispatch,\n tasks: any[],\n initialView: string,\n initialDate: Date\n}\n\ninterface Uncontrolled {\n type: 'UNCONTROLLED'\n}\n\nconst CalendarTaskList:React.FC = (props) => { \n const [tasks, setTasks] = useState([])\n const [pickerDate, setPickerDate] = useState(new Date());\n const [title, setTitle] = useState('');\n const [loading, setLoading] = useState(false);\n const calendarRef = React.createRef();\n const [calendarTaskSidebarProps, setCalendarTaskSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [initialDate, setInitialDate] = useState(props.type === 'UNCONTROLLED' ? new Date() : props.initialDate);\n const [initialView, setInitialView] = useState('listWeek');\n const [endDate, setEndDate] = useState(new Date());\n const [view, setView] = useState(initialView)\n\n function fetchCalendar() {\n let API = calendarRef.current?.getApi();\n\n if (API) {\n setEndDate(API.view.activeEnd)\n setLoading(true)\n api.test({\n calendar: types.CALENDAR_TASK,\n start: format(API.view.currentStart, 'uuuu-MM-dd'),\n end: format(API.view.activeEnd, 'uuuu-MM-dd'),\n options: {\n sortBy: types.SORT_TASK_BY_GROUP\n }\n }).then(r => {\n setTasks(r.data.tasks)\n }).then(() => {\n setLoading(false)\n })\n }\n }\n\n function refreshCalendar(salaries: number[]) {\n let API = calendarRef.current?.getApi();\n\n if (API) {\n return api.test({\n start: format(API.view.currentStart, 'uuuu-MM-dd'),\n end: format(API.view.activeEnd, 'uuuu-MM-dd'),\n calendar: types.CALENDAR_TASK,\n options: {\n sortBy: types.SORT_TASK_BY_GROUP,\n salaries: salaries,\n }\n }).then((data) => {\n setTasks(prev =>[...[...prev.filter((e: any) => !(e.salaries.filter((s: any) => salaries.includes(s.id))))], ...data.data.tasks || []])\n }).then(() => true)\n } else {\n return false;\n }\n }\n\n function handleEventChange(ev: any) {\n let salaries: number[] = [];\n ev.salaries.map((s: any) => salaries.push(s.id))\n\n return refreshCalendar([...salaries, ...ev.previousSalaries || []]);\n }\n\n\n function handlePickerDateChange(dt: Date) {\n if (hasApi()) {\n setPickerDate(dt)\n getApi().gotoDate(dt)\n fetchCalendar()\n }\n }\n\n function getApi() {\n return calendarRef.current!.getApi();\n }\n\n function hasApi() {\n return !!calendarRef.current?.getApi();\n }\n\n function prevClick() {\n if (hasApi()){\n getApi().prev()\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n function nextClick() {\n if (hasApi()){\n getApi().next()\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n function onClick(arg: EventClickArg) {\n arg.jsEvent.stopPropagation()\n if (Granted(accessRights.LIST_TASK_GROUP)){\n if (props.type === 'UNCONTROLLED') {\n setCalendarTaskSidebarProps(prev => ({\n sidebarType: \"TASK_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarTaskSidebarProps: setCalendarTaskSidebarProps\n }))\n } else if (props.type === 'CONTROLLED') {\n props.setCalendarTaskSidebarProps((prev: any) => ({\n sidebarType: \"TASK_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarTaskSidebarProps: props.setCalendarTaskSidebarProps\n }))\n }\n }\n }\n\n function changeView(_view: string) {\n if (hasApi()){\n setView(_view)\n getApi().changeView(_view);\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n useEffect(() => {\n if (props.type === 'CONTROLLED') {\n if (props.initialDate.getTime() !== initialDate.getTime()){\n setInitialDate(props.initialDate)\n }\n if (props.initialView !== initialView){\n setInitialView(props.initialView)\n }\n }\n })\n\n useEffect(() => {\n if (props.type === 'UNCONTROLLED') {\n fetchCalendar()\n } else if (props.type === 'CONTROLLED') {\n if (hasApi()){\n setEndDate(getApi().view.activeEnd)\n switch (initialView){\n case types.RESOURCE_TIMELINE_MONTH_VIEW:\n getApi().changeView('listMonth', initialDate)\n break;\n case types.RESOURCE_TIMELINE_WEEK_VIEW:\n getApi().changeView('listWeek', initialDate)\n break;\n case types.RESOURCE_TIMELINE_DAY_VIEW:\n getApi().changeView('listDay', initialDate)\n break;\n }\n }\n }\n }, [initialDate, initialView])\n\n const Toolbar = () => {\n return (\n
    \n
    \n
    \n

    \n Tâches\n

    \n
    \n
    \n
    \n \n
      \n
    • changeView('listDay')}>\n Jour\n
    • \n
    • changeView('listWeek')}>\n Semaine\n
    • \n
    \n
    \n
    \n {Granted(accessRights.EDIT_TASK) &&\n onMouseEnterTooltip(e.currentTarget)}\n title={\"Ajouter une tâche\"}\n >\n \n
    \n }\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n )\n }\n\n return (\n
    \n {props.type === 'UNCONTROLLED' &&\n \n }\n\n
    \n setTitle(arg.view.title)}\n locales={allLocales}\n locale={'fr'}\n eventClick={onClick}\n eventContent={renderEvent}\n />\n
    \n\n {props.type === 'UNCONTROLLED' &&\n \n }\n
    \n )\n}\n\nexport default CalendarTaskList;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/absence\"\nimport * as actions from \"../../../actions/absence\"\nimport Loader from \"../../../utils/loader\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_ABSENCE, PENDING_ABSENCE_LIST} from \"../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Absence} from \"../../../models/absence\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Granted} from \"../../../security/granted\";\nimport getUser from \"../../../security/getUser\";\n\n\nconst DashboardAbsenceRequest:React.FC = () => {\n\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(actions.fetchAbsences())\n api.list({status: ['1']}, controller.signal)\n .then(data => dispatch(actions.fetchAbsencesSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n return <>\n
    \n
    dispatch(openSidebar(PENDING_ABSENCE_LIST))}>\n
    \n
    \n \n \n Congés\n \n
    \n \n en attente\n \n
    \n
    \n {state.absence.isLoading ?
    \n Loading...\n
    : {state.absence.payload.filter((absence: Absence) => absence.status === 1).length}}\n
    \n
    \n
    \n {Granted(accessRights.EDIT_ABSENCE) && }\n {Granted(accessRights.REQUEST_ABSENCE) && !Granted(accessRights.EDIT_ABSENCE) && }\n
    \n \n}\n\nexport default DashboardAbsenceRequest;","import {get, post} from \"../xhr\";\n\nexport function list(requestData: { start: string, end: string}, signal: AbortSignal){\n return post('keep_note/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: { private: boolean, description: string, dueDate: Date }, id: number){\n return post('keep_note/edit/' + id, requestData);\n}\n\nexport function create(requestData: { private: boolean, description: string, dueDate: Date }){\n return post('keep_note/create', requestData);\n}\n\nexport function show(id: string){\n return get('keep_note/show/' + id);\n}\n\nexport function cancel(id: number){\n return get('keep_note/delete/' + id);\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/keepNote\";\nimport * as action from \"../../../actions/keepNote\";\nimport format from \"../../../utils/locale\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {\n FORM_KEEP_NOTE_ADD,\n FORM_KEEP_NOTE_LIST,\n} from \"../../../constants/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Granted} from \"../../../security/granted\";\n\n\nconst DashboardKeepNote:React.FC = () => {\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state.keepNote)\n let today = new Date();\n let end = new Date(today.setDate(today.getDate() + 7))\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(action.fetchKeepNotes());\n api.list({start: format(new Date(), 'uuu-MM-dd'), end: format(end, 'uuu-MM-dd')}, controller.signal)\n .then(data => dispatch(action.fetchKeepNotesSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n return <>\n
    \n
    dispatch(openSidebar(FORM_KEEP_NOTE_LIST))}>\n
    \n
    \n \n \n Notes\n \n
    \n \n +7 jours\n \n
    \n
    \n {state.isLoading ?
    \n Loading...\n
    : {state.payload.length}}\n
    \n
    \n
    \n {Granted(accessRights.EDIT_KEEP_NOTE) && }\n
    \n \n}\n\nexport default DashboardKeepNote;","import {get, post} from \"../../xhr\";\n\nexport function setting(requestData: {setting: string, value: any}, id: number){\n return post(`salary/${id}/setting`, requestData);\n}\n\nexport function disable(id: number){\n return get('salary/disable/' + id);\n}\n\nexport function enable(id: number){\n return get('salary/enable/' + id);\n}","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../adapters/salary\";\nimport * as settingsApi from \"../../../adapters/salary/settings\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport format from \"../../../utils/locale\";\nimport {useDispatch} from \"react-redux\";\nimport {FEED_LIST} from \"../../../constants/rightSidebar\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Granted} from \"../../../security/granted\";\n\nconst DashboardFeed:React.FC = () => {\n\n const dispatch = useDispatch();\n const [feeds, setFeeds] = useState<{type: \"birthdate\"|\"trial\"|\"seniority\"|\"start\"|\"end\"|\"endActivated\", initials: string, dueDate: string, title: string, value: string, salaryId: number}[]>([]);\n let start = new Date();\n let end = new Date((new Date()).setDate((new Date().getDate() + 15)));\n const [isLoading, setIsLoading] = useState(true);\n\n useEffect(() => {\n const controller = new AbortController();\n\n api.feed({start: format(start, 'uuuu-MM-dd'), end: format(end, 'uuuu-MM-dd')}, controller.signal).then(data => {\n setFeeds(data.data)\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n const removeFeed = (index: number) => {\n let _feeds = [...feeds]\n _feeds.splice(index, 1)\n setFeeds([..._feeds]);\n }\n\n const getIcon = (type: string) => {\n switch (type){\n case 'trial':\n return ;\n case 'birthday':\n return ;\n case 'seniority':\n return ;\n case 'start':\n return ;\n case 'end':\n return ;\n case 'endActivated':\n return ;\n }\n }\n\n return <>\n
    \n
    \n \n \n Actualités\n \n
    \n \n +15 jours\n \n
    \n
    \n \n {!isLoading && feeds.length}\n \n
    \n
    \n
    \n {isLoading ?\n <>\n
    \n
    \n Loading...\n
    \n
    \n \n : (feeds.length ?\n
      \n {feeds.slice(0, 8).map((feed, index) =>
    • \n
      \n {getIcon(feed.type)}\n \n {feed.title}\n \n {feed.value}\n \n {feed.type === \"endActivated\" && Granted(accessRights.EDIT_SALARY, feed.salaryId) && \n \n }\n
      \n
    • )}\n
    : <> Aucune actualité )}\n {!isLoading && feeds.length > 8 && dispatch(openSidebar(FEED_LIST, {payload: feeds}))}\n className={'btn btn-outline-primary w-100'}> Voir plus }\n \n}\n\nexport default DashboardFeed;","import {post, get} from \"../xhr\";\n\ninterface FetchPayload {\n start: string;\n end: string;\n options?: {\n salaries?: number[];\n companies?: number[];\n isResource?: boolean;\n workingTime?: boolean;\n };\n}\n\nexport function fetch(requestData: FetchPayload, signal: AbortSignal){\n return post('time_clock/booking/fetch', requestData, {signal: signal});\n}\n\nexport function create(requestData: {salary?: number, company?: number, beginAt?: Date, endAt?: Date}){\n return post('time_clock/booking/create', requestData);\n}\n\nexport function edit(requestData: any, id: number){\n return post(`time_clock/booking/edit/${id}`, requestData);\n}\n\nexport function removeAnomaly(id: number){\n return get(`time_clock/booking/remove_anomaly/${id}`);\n}\n\nexport function remove(id: number){\n return get(`time_clock/booking/remove/${id}`);\n}\n\nexport function clockIn(requestData: {company: number, type: number}){\n return post('time_clock/clock_in', requestData);\n}","import React, {useState} from \"react\";\nimport * as API from \"../../../adapters/timeClock\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport {showAlertSuccess} from \"../../../actions/alert\";\nimport {Company} from \"../../../models/companies\";\n\nconst DashboardPointing:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const dispatch = useDispatch();\n const [type, setType] = useState<\"in\"|\"out\">();\n const [company, setCompany] = useState(state.auth.user.currentSalary.companies[0].id);\n const [isLoading, setIsLoading] = useState(false);\n const [showError, setShowError] = useState(false);\n\n const _clockIn = () => {\n\n if (!type || !company){\n setShowError(true)\n return false;\n }\n\n setIsLoading(true);\n\n API.clockIn({\n company: company,\n type: type === \"in\" ? 1 : 2,\n }).then(() => {\n dispatch(showAlertSuccess('Pointage efféctué'))\n setIsLoading(false);\n setType(undefined)\n });\n }\n\n return <>\n
    \n
    \n
    \n

    \n Badgeuse\n

    \n

    \n Choisissez une entrée ou une sortie puis validez.\n

    \n
    \n
    \n
    \n {state.auth.user.currentSalary.companies.length > 1 &&
    \n ({\n label: company.title,\n value: company.id\n }))}\n notFloating={true}\n required={true}\n value={{\n label: state.auth.user.currentSalary.companies[0].title,\n value: state.auth.user.currentSalary.companies[0].id\n }}\n onChange={(choice) => setCompany(Number(choice?.value))}\n />\n
    }\n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n {showError && !company && <>\n \n Veuillez séléctionner un point de vente\n \n }\n \n {showError && !type && <>\n \n Veuillez séléctionner une entrée ou une sortie.\n \n }\n

    \n
    \n \n}\n\nexport default DashboardPointing;","import {get, post} from \"../../xhr\";\n\ninterface BookingOfferPayload {\n description: string,\n beginAt: Date,\n endAt: Date,\n salaries: number[],\n localisation?: number,\n activity?: number,\n}\n\nexport function list(requestData: {start?: Date, end?: Date}, signal: AbortSignal){\n return post('booking/offer/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: BookingOfferPayload, id: number){\n return post('booking/offer/edit/' + id, requestData);\n}\n\nexport function create(requestData: BookingOfferPayload){\n return post('booking/offer/create', requestData);\n}\n\nexport function disable(id: number){\n return get('booking/offer/disable/' + id);\n}\n\nexport function show(id: number){\n return get('booking/offer/show/' + id);\n}\n\nexport function enable(id: number){\n return get('booking/offer/enable/' + id);\n}","export const ADD_BOOKING_OFFER = 'ADD_BOOKING_OFFER';\nexport const ADD_BOOKING_OFFER_SUCCESS = 'ADD_BOOKING_OFFER_SUCCESS';\nexport const ADD_BOOKING_OFFER_FAILURE = 'ADD_BOOKING_OFFER_FAILURE';\n\nexport const EDIT_BOOKING_OFFER = 'EDIT_BOOKING_OFFER';\nexport const EDIT_BOOKING_OFFER_SUCCESS = 'EDIT_BOOKING_OFFER_SUCCESS';\nexport const EDIT_BOOKING_OFFER_FAILURE = 'EDIT_BOOKING_OFFER_FAILURE';\n\nexport const FETCH_BOOKING_OFFERS = 'FETCH_BOOKING_OFFERS';\nexport const FETCH_BOOKING_OFFERS_SUCCESS = 'FETCH_BOOKING_OFFERS_SUCCESS';\nexport const FETCH_BOOKING_OFFERS_FAILURE = 'FETCH_BOOKING_OFFERS_FAILURE';\n\nexport const SHOW_BOOKING_OFFER = 'SHOW_BOOKING_OFFER';\nexport const SHOW_BOOKING_OFFER_SUCCESS = 'SHOW_BOOKING_OFFER_SUCCESS';\nexport const SHOW_BOOKING_OFFER_FAILURE = 'SHOW_BOOKING_OFFER_FAILURE';\n\nexport const CANCEL_BOOKING_OFFER_SUCCESS = 'CANCEL_BOOKING_OFFER_SUCCESS';","import * as types from \"../../../constants/booking/offer\";\nimport * as models from \"../../../models/booking/offer\";\n\nexport const addBookingOffer = () => {\n return {\n type: types.ADD_BOOKING_OFFER,\n }\n}\n\nexport const addBookingOfferSuccess = (bookingOffer: models.BookingOffer) => {\n return {\n type: types.ADD_BOOKING_OFFER_SUCCESS,\n bookingOffer: bookingOffer,\n }\n}\nexport const removeBookingOfferSuccess = (bookingOffer: models.BookingOffer) => {\n return {\n type: types.ADD_BOOKING_OFFER_SUCCESS,\n bookingOffer: bookingOffer,\n }\n}\n\nexport const addBookingOfferFailure = (error: string) => {\n return {\n type: types.ADD_BOOKING_OFFER_FAILURE,\n bookingOffer: null,\n bookingOffers: null,\n error: error\n }\n}\n\nexport const editBookingOffer = () => {\n return {\n type: types.EDIT_BOOKING_OFFER,\n }\n}\n\nexport const cancelBookingOfferSuccess = (bookingOffer: models.BookingOffer) => {\n return {\n type: types.CANCEL_BOOKING_OFFER_SUCCESS,\n bookingOffer: bookingOffer\n }\n}\n\nexport const editBookingOfferSuccess = (bookingOffer: models.BookingOffer) => {\n return {\n type: types.EDIT_BOOKING_OFFER_SUCCESS,\n bookingOffer: bookingOffer\n }\n}\n\nexport const editBookingOfferFailure = (error: string) => {\n return {\n type: types.EDIT_BOOKING_OFFER_FAILURE,\n bookingOffer: null,\n bookingOffers: null,\n error: error\n }\n}\n\nexport const fetchBookingOffers = () => {\n return {\n type: types.FETCH_BOOKING_OFFERS,\n }\n}\n\nexport const fetchBookingOffersFailure = (error: string) => {\n return {\n type: types.FETCH_BOOKING_OFFERS_FAILURE,\n bookingOffer: null,\n bookingOffers: [],\n error: error\n }\n}\n\nexport const fetchBookingOffersSuccess = (bookingOffers: models.BookingOffers) => {\n return {\n type: types.FETCH_BOOKING_OFFERS_SUCCESS,\n bookingOffer: null,\n bookingOffers: bookingOffers\n }\n}\n\n\nexport const showBookingOffer = () => {\n return {\n type: types.SHOW_BOOKING_OFFER,\n }\n}\nexport const showBookingOfferSuccess = (bookingOffer: models.BookingOffer) => {\n return {\n type: types.SHOW_BOOKING_OFFER_SUCCESS,\n bookingOffer: bookingOffer\n }\n}\nexport const showBookingOfferFailure = (error: string) => {\n return {\n type: types.SHOW_BOOKING_OFFER_FAILURE,\n bookingOffer: null,\n bookingOffers: null,\n error: error\n }\n}","import React, {useEffect} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/booking/offer\"\nimport * as actions from \"../../../actions/booking/offer\"\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {LIST_BOOKING_OFFER} from \"../../../constants/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {BookingOffer} from \"../../../models/booking/offer\";\n\nconst DashboardBookingOffer:React.FC = () => {\n\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n\n let now = new Date()\n now.setDate(now.getDate() + 30);\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(actions.fetchBookingOffers())\n api.list({}, controller.signal)\n .then(data => dispatch(actions.fetchBookingOffersSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n return <>\n
    dispatch(openSidebar(LIST_BOOKING_OFFER, {status: 'pending'}))}>\n
    \n
    \n \n \n Propositions de créneaux\n \n
    \n \n +30 jours\n \n
    \n
    \n {state.bookingOffer.isLoading ?
    \n Loading...\n
    : {state.bookingOffer.payload.filter((bookingOffer: BookingOffer) => !bookingOffer.applicants.find(a => a.validated)).length}}\n
    \n
    \n
    \n \n}\n\nexport default DashboardBookingOffer;","import {get, post} from \"../xhr\";\n\nexport function save(requestData: {start: string, end: string}){\n return post(`counter/save`, requestData)\n}\n\nexport function saveSingle(requestData: {start: string, end: string}, salaryId: number){\n return post(`counter/save/${salaryId}`, requestData)\n}\n\nexport function sum(signal: AbortSignal ,requestData?: {date?: string}){\n return post(`counter/sum`, requestData || {}, {signal: signal})\n}\n\nexport function sumSingle(){\n return get(`counter/sum_single`)\n}\n\nexport function listTable(){\n return get(`counter/list_table`)\n}\n\nexport function edit(requestData: {signe: string, valueHour: number, valueMin: number, paidOverTimeHour: number, paidOverTimeMin: number}, id: number){\n return post(`counter/edit/${id}`, requestData)\n}\n\nexport function remove(id: number){\n return get(`counter/delete/${id}`)\n}\n\nexport function saveMany(salary: number, requestData: {wn: number, year: number, value: number}[]){\n return post(`counter/save_many/${salary}`, requestData)\n}\n\nexport function clearMany(salary: number, requestData: {wn: number, year: number}[]){\n return post(`counter/clear_many/${salary}`, requestData)\n}\n\nexport function editWeek(salary: number, requestData: {wn: number, year: number}){\n return post(`counter/edit_week/${salary}`, requestData)\n}","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../adapters/counter\";\n\nconst DashboardCounter:React.FC = () => {\n\n\n const [counter, setCounter] = useState();\n const [isLoading, setIsLoading] = useState(true);\n\n useEffect(() => {\n api.sumSingle().then(data => setCounter(data.data)).then(() => setIsLoading(false))\n }, [])\n\n return <>\n
    \n
    \n
    \n \n \n Compteur\n \n
    \n \n à date\n \n
    \n
    \n {isLoading ?
    \n Loading...\n
    : \n {!!counter && counter < 0 && }\n {!!counter && counter > 0 && }\n {counter}h\n }\n
    \n
    \n
    \n \n}\n\nexport default DashboardCounter;","import {get, post} from \"../../xhr\";\n\ninterface EventOfferPayload {\n description: string,\n start: Date,\n end: Date,\n salaries: number[],\n localisation?: number,\n activity?: number,\n}\n\nexport function list(requestData: {start?: Date, end?: Date}, signal: AbortSignal){\n return post('event/offer/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: EventOfferPayload, id: number){\n return post('event/offer/edit/' + id, requestData);\n}\n\nexport function create(requestData: EventOfferPayload){\n return post('event/offer/create', requestData);\n}\n\nexport function disable(id: number){\n return get('event/offer/disable/' + id);\n}\n\nexport function show(id: number){\n return get('event/offer/show/' + id);\n}\n\nexport function enable(id: number){\n return get('event/offer/enable/' + id);\n}","export const ADD_EVENT_OFFER = 'ADD_EVENT_OFFER';\nexport const ADD_EVENT_OFFER_SUCCESS = 'ADD_EVENT_OFFER_SUCCESS';\nexport const ADD_EVENT_OFFER_FAILURE = 'ADD_EVENT_OFFER_FAILURE';\n\nexport const EDIT_EVENT_OFFER = 'EDIT_EVENT_OFFER';\nexport const EDIT_EVENT_OFFER_SUCCESS = 'EDIT_EVENT_OFFER_SUCCESS';\nexport const EDIT_EVENT_OFFER_FAILURE = 'EDIT_EVENT_OFFER_FAILURE';\n\nexport const FETCH_EVENT_OFFERS = 'FETCH_EVENT_OFFERS';\nexport const FETCH_EVENT_OFFERS_SUCCESS = 'FETCH_EVENT_OFFERS_SUCCESS';\nexport const FETCH_EVENT_OFFERS_FAILURE = 'FETCH_EVENT_OFFERS_FAILURE';\n\nexport const SHOW_EVENT_OFFER = 'SHOW_EVENT_OFFER';\nexport const SHOW_EVENT_OFFER_SUCCESS = 'SHOW_EVENT_OFFER_SUCCESS';\nexport const SHOW_EVENT_OFFER_FAILURE = 'SHOW_EVENT_OFFER_FAILURE';\n\nexport const CANCEL_EVENT_OFFER_SUCCESS = 'CANCEL_EVENT_OFFER_SUCCESS';","import * as types from \"../../../constants/event/offer\";\nimport * as models from \"../../../models/event/offer\";\n\nexport const addEventOffer = () => {\n return {\n type: types.ADD_EVENT_OFFER,\n }\n}\n\nexport const addEventOfferSuccess = (eventOffer: models.EventOffer) => {\n return {\n type: types.ADD_EVENT_OFFER_SUCCESS,\n eventOffer: eventOffer,\n }\n}\nexport const removeEventOfferSuccess = (eventOffer: models.EventOffer) => {\n return {\n type: types.ADD_EVENT_OFFER_SUCCESS,\n eventOffer: eventOffer,\n }\n}\n\nexport const addEventOfferFailure = (error: string) => {\n return {\n type: types.ADD_EVENT_OFFER_FAILURE,\n eventOffer: null,\n eventOffers: null,\n error: error\n }\n}\n\nexport const editEventOffer = () => {\n return {\n type: types.EDIT_EVENT_OFFER,\n }\n}\n\nexport const cancelEventOfferSuccess = (eventOffer: models.EventOffer) => {\n return {\n type: types.CANCEL_EVENT_OFFER_SUCCESS,\n eventOffer: eventOffer\n }\n}\n\nexport const editEventOfferSuccess = (eventOffer: models.EventOffer) => {\n return {\n type: types.EDIT_EVENT_OFFER_SUCCESS,\n eventOffer: eventOffer\n }\n}\n\nexport const editEventOfferFailure = (error: string) => {\n return {\n type: types.EDIT_EVENT_OFFER_FAILURE,\n eventOffer: null,\n eventOffers: null,\n error: error\n }\n}\n\nexport const fetchEventOffers = () => {\n return {\n type: types.FETCH_EVENT_OFFERS,\n }\n}\n\nexport const fetchEventOffersFailure = (error: string) => {\n return {\n type: types.FETCH_EVENT_OFFERS_FAILURE,\n eventOffer: null,\n eventOffers: [],\n error: error\n }\n}\n\nexport const fetchEventOffersSuccess = (eventOffers: models.EventOffers) => {\n return {\n type: types.FETCH_EVENT_OFFERS_SUCCESS,\n eventOffer: null,\n eventOffers: eventOffers\n }\n}\n\n\nexport const showEventOffer = () => {\n return {\n type: types.SHOW_EVENT_OFFER,\n }\n}\nexport const showEventOfferSuccess = (eventOffer: models.EventOffer) => {\n return {\n type: types.SHOW_EVENT_OFFER_SUCCESS,\n eventOffer: eventOffer\n }\n}\nexport const showEventOfferFailure = (error: string) => {\n return {\n type: types.SHOW_EVENT_OFFER_FAILURE,\n eventOffer: null,\n eventOffers: null,\n error: error\n }\n}","import React, {useEffect} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/event/offer\"\nimport * as actions from \"../../../actions/event/offer\"\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_ABSENCE, FORM_NEW_EVENT_OFFER, LIST_EVENT_OFFER} from \"../../../constants/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {EventOffer} from \"../../../models/event/offer\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Granted} from \"../../../security/granted\";\n\nconst DashboardEventOffer:React.FC = () => {\n\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n\n let now = new Date()\n now.setDate(now.getDate() + 30);\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(actions.fetchEventOffers())\n api.list({}, controller.signal)\n .then(data => dispatch(actions.fetchEventOffersSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n return <>\n
    \n
    dispatch(openSidebar(LIST_EVENT_OFFER, {status: 'pending'}))}>\n
    \n
    \n \n \n Propositions de créneaux\n \n
    \n \n +30 jours\n \n
    \n
    \n {state.eventOffer.isLoading ?
    \n Loading...\n
    : {state.eventOffer.payload.filter((eventOffer: EventOffer) => !(eventOffer.applications.find(a => a.validated))).length}}\n
    \n
    \n
    \n {Granted(accessRights.EDIT_BOOKING_OFFER) && }\n
    \n\n \n}\n\nexport default DashboardEventOffer;","import * as xhr from \"../xhr\";\n\ninterface listPayload {\n offset? : number,\n status? : number[],\n types? : number[],\n dates? : [string|null, string|null],\n salaries?: number[],\n companies?: number[],\n}\n\nexport function list(requestData: listPayload, signal: AbortSignal){\n return xhr.post('expense/list', requestData, {signal: signal});\n}\n\nexport function edit(requestData: any, id: number){\n return xhr.post('expense/edit/' + id.toString(), requestData);\n}\n\nexport function editStatus(requestData: { status: number }, id: number){\n return xhr.post(`expense/edit/${id}/status`, requestData);\n}\n\nexport function create(requestData: any, options?:xhr.Options){\n return xhr.post('expense/create', requestData, options);\n}\n\nexport function get(id: string){\n return xhr.get('expense/show/' + id);\n}\n\nexport function cancel(id: number){\n return xhr.get('expense/delete/' + id);\n}\n\nexport function downloadFile(id: string, options?:xhr.Options){\n return xhr.get('expense/justification/'+ id +'/download', options);\n}","import * as types from \"../../constants/expense\";\nimport * as models from \"../../models/expense\";\n\nexport const addExpense = () => {\n return {\n type: types.ADD_EXPENSE,\n }\n}\n\nexport const addExpenseSuccess = (expense: models.Expense) => {\n return {\n type: types.ADD_EXPENSE_SUCCESS,\n expense: expense,\n }\n}\n\nexport const addExpenseFailure = (error: string) => {\n return {\n type: types.ADD_EXPENSE_FAILURE,\n expense: null,\n expenses: null,\n error: error\n }\n}\n\nexport const editExpense = () => {\n return {\n type: types.EDIT_EXPENSE,\n }\n}\n\nexport const cancelExpenseSuccess = (expense: models.Expense) => {\n return {\n type: types.CANCEL_EXPENSE_SUCCESS,\n expense: expense\n }\n}\n\nexport const editExpenseSuccess = (expense: models.Expense) => {\n return {\n type: types.EDIT_EXPENSE_SUCCESS,\n expense: expense\n }\n}\n\nexport const editExpenseFailure = (error: string) => {\n return {\n type: types.EDIT_EXPENSE_FAILURE,\n expense: null,\n expenses: null,\n error: error\n }\n}\n\nexport const fetchExpenses = () => {\n return {\n type: types.FETCH_EXPENSES,\n }\n}\n\nexport const fetchExpensesFailure = (error: string) => {\n return {\n type: types.FETCH_EXPENSES_FAILURE,\n expense: null,\n expenses: [],\n error: error\n }\n}\n\nexport const fetchExpensesSuccess = (expenses: models.Expenses) => {\n return {\n type: types.FETCH_EXPENSES_SUCCESS,\n expense: null,\n expenses: expenses\n }\n}\n\n\nexport const showExpense = () => {\n return {\n type: types.SHOW_EXPENSE,\n }\n}\nexport const showExpenseSuccess = (expense: models.Expense) => {\n return {\n type: types.SHOW_EXPENSE_SUCCESS,\n expense: expense\n }\n}\nexport const showExpenseFailure = (error: string) => {\n return {\n type: types.SHOW_EXPENSE_FAILURE,\n expense: null,\n expenses: null,\n error: error\n }\n}","import React, {useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Expenses, Expense} from \"../../../../models/expense\";\nimport * as types from \"../../../../constants/expense\";\nimport * as globals from \"../../../../constants/global\";\nimport * as api from \"../../../../adapters/expense\";\nimport * as actions from \"../../../../actions/expense\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport format from \"../../../../utils/locale\";\n\nconst DashboardExpenseRequestList:React.FC = () => {\n\n const expenses: Expenses = useSelector((state: RootStateOrAny) => state.expense.payload);\n const dispatch = useDispatch();\n\n const [statusLoading, setStatusLoading] = useState(false)\n\n const manageStatus = (status: number, expense: Expense) => {\n setStatusLoading(true)\n api.editStatus({status: status}, expense.id).then(resp => dispatch(actions.editExpenseSuccess(resp.data))).then(() => setStatusLoading(false))\n }\n\n return
    \n
    \n
    Demandes de note de frais
    \n \n
    \n
    \n
      \n {expenses.filter(expense => expense.status === types.STATUS_PENDING).map(expense =>
    • \n
      \n
      \n

      \n {expense.salary.title} | {types.getTypeChoice(expense.type)?.label}\n

      \n

      {expense.title}

      \n

      {format(new Date(expense.dueDate))}

      \n
      \n {expense.amount} {globals.CurrencyIcon(expense.currency)}\n
      \n
      \n
      \n
      \n

      \n

      \n \n
        \n {types.getStatusChoices().filter(c => c.value !== expense.status).map(c => manageStatus(c.value, expense)}\n className={'dropdown-item'}>\n {types.STATUS_NAMES[c.value]}\n )}\n
      \n
      \n

      \n
      \n
      \n
      \n
    • )}\n
    \n
    \n
    \n}\n\nexport default DashboardExpenseRequestList;","import React, {useEffect} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/expense\"\nimport * as actions from \"../../../actions/expense\"\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EXPENSE_ADD, FORM_NEW_ABSENCE, PENDING_ABSENCE_LIST} from \"../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Expense} from \"../../../models/expense\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {Granted, GrantedAny} from \"../../../security/granted\";\nimport DashboardExpenseRequestList from \"./list\";\n\n\nconst DashboardExpenseRequest:React.FC = () => {\n\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(actions.fetchExpenses())\n api.list({}, controller.signal)\n .then(data => dispatch(actions.fetchExpensesSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n\n return () => controller.abort();\n }, [])\n\n return <>\n
    \n
    \n
    \n
    \n \n \n Notes de frais\n \n
    \n \n en attente\n \n
    \n
    \n {state.expense.isLoading ?
    \n Loading...\n
    : {state.expense.payload.filter((expense: Expense) => expense.status === 1).length}}\n
    \n
    \n
    \n {Granted(accessRights.EDIT_EXPENSE) && }\n
    \n \n \n}\n\nexport default DashboardExpenseRequest;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useSelector} from \"react-redux\";\nimport * as calendarTypes from \"../../../../constants/calendar\"\n\ninterface Interface {\n loading: boolean;\n signed: any[],\n handleClick: (origin: string) => any\n}\n\nconst DashboardTimeClockMissing:React.FC = (props) => {\n\n const {loading, signed, handleClick} = props;\n const state = useSelector((state: RootStateOrAny) => state);\n\n const [signedMissing, setSignedMissing] = useState([])\n\n useEffect(() => {\n setSignedMissing([...signed.filter((s: any) => s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING)])\n }, [signed])\n\n return <>\n
    handleClick('missing')}>\n
    \n
    \n \n \n Absences\n \n
    \n \n + {state.auth.user.currentSalary.companyGroup.timeClockSettings?.lateAfter} minutes\n \n
    \n
    \n {loading ?
    \n Loading...\n
    : {signedMissing.length}}\n
    \n
    \n
    \n \n}\n\nexport default DashboardTimeClockMissing;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useSelector} from \"react-redux\";\n\ninterface Interface {\n loading: boolean;\n signed: any[],\n handleClick: (origin: string) => any\n}\n\nconst DashboardTimeClockLate:React.FC = (props) => {\n\n const {loading, signed, handleClick} = props;\n const state = useSelector((state: RootStateOrAny) => state);\n\n const [signedLate, setSignedLate] = useState([])\n\n useEffect(() => {\n setSignedLate([...signed.filter((s: any) => s.isLate)])\n }, [signed])\n\n return <>\n
    handleClick('late')}>\n
    \n
    \n \n \n Retards\n \n
    \n \n + {state.auth.user.currentSalary.companyGroup.timeClockSettings?.lateAfter} minutes\n \n
    \n
    \n {loading ?
    \n Loading...\n
    : {signedLate.length}}\n
    \n
    \n
    \n \n}\n\nexport default DashboardTimeClockLate;","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport Loader from \"../../../../utils/loader\";\n\ninterface Interface {\n loading: boolean,\n signed: any[],\n refresh: (salary: number) => void,\n origin: string\n}\n\nconst TimeClockDashboardList:React.FC = (props) => {\n\n const {loading, signed, refresh, origin} = props;\n\n const [onTime, setOnTime] = useState(false);\n const [late, setLate] = useState(origin === 'late');\n const [missing, setMissing] = useState(origin === 'missing');\n const [clockInId, setClockInId] = useState();\n\n useEffect(() => {\n if (origin){\n switch (origin){\n case 'late':\n setLate(true);\n setMissing(false);\n setOnTime(false);\n break;\n case 'missing':\n setMissing(true);\n setLate(false);\n setOnTime(false);\n break;\n }\n }\n }, [origin])\n\n return
    \n
    \n
    Reporting badgeage
    \n \n
    \n
    \n
    \n
    \n setOnTime(e.target.checked)} />\n \n
    \n
    \n setLate(e.target.checked)} />\n \n
    \n
    \n setMissing(e.target.checked)} />\n \n
    \n
    \n
      \n {loading ? : signed.filter(s => applyFilters(s)).map(s =>
    • \n
      \n
      \n

      \n {s.salary.title}\n

      \n \n {s.salary.information.job.title}\n \n
      \n
      \n {s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING && <>\n
      \n

      \n Absent\n

      \n
      \n \n Prévu à {format(new Date(s.start), 'HH:mm')}\n \n }\n {s.isLate && <>\n

      \n Retard\n

      \n \n Retard de {s.lateOfCaption}\n \n }\n {!(s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING) && !s.isLate && <>\n

      \n Arrivé à {format(new Date(s.start), 'HH:mm')}\n

      \n }\n
      \n
      \n
    • )}\n
    \n
    \n
    \n\n function applyFilters(s: any){\n\n if ([calendarTypes.EVENT_TYPE_BOOKING, calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION, calendarTypes.EVENT_TYPE_EVENT, calendarTypes.EVENT_TYPE_EVENT_EXCEPTION].includes(s.eventType)) return false;\n if (s.isLate) return late;\n if (s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING) return missing;\n\n return onTime;\n }\n}\n\nexport default TimeClockDashboardList;","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../adapters/calendar\";\nimport format from \"../../../utils/locale\";\nimport * as calendarTypes from \"../../../constants/calendar\"\nimport DashboardTimeClockMissing from \"./missing\";\nimport DashboardTimeClockLate from \"./late\";\nimport TimeClockDashboardList from \"./list\";\nimport {Offcanvas} from \"bootstrap\";\n\nconst DashboardTimeClock: React.FC = () => {\n\n const [signed, setSigned] = useState([])\n const [loading, setIsLoading] = useState(true)\n const [origin, setOrigin] = useState('');\n let today = new Date();\n let tomorrow = new Date(new Date().setDate(new Date().getDate() + 1))\n\n useEffect(() => {\n fetchSigned();\n }, [])\n\n return <>\n
    \n \n
    \n
    \n \n
    \n \n \n\n function fetchSigned(){\n setIsLoading(true);\n api.test({\n start: format(today, 'uuuu-MM-dd'),\n end: format(tomorrow, 'uuuu-MM-dd'),\n calendar: calendarTypes.CALENDAR_SIGNED_REPORTING\n }).then((resp) => {\n setSigned(resp.data.signed)\n setIsLoading(false);\n })\n }\n\n function refresh(salaryId: number){\n api.test({\n start: format(today, 'uuuu-MM-dd'),\n end: format(tomorrow, 'uuuu-MM-dd'),\n calendar: calendarTypes.CALENDAR_SIGNED_REPORTING,\n options: {\n salary: salaryId\n }\n }).then((resp) => {\n setSigned([...signed.filter(s => s.salary.id !== salaryId), ...resp.data.signed])\n })\n }\n\n function handleClick(origin: string){\n setOrigin(origin)\n let el = document.getElementById('offcanvasTimeClockDashboardList')\n if (el){\n let offcanvas = new Offcanvas(el);\n offcanvas.toggle(el);\n }\n }\n}\n\nexport default DashboardTimeClock;","import React, {useEffect, useState} from \"react\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {useDispatch} from \"react-redux\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport FormError from \"../../../../utils/formError\";\nimport * as exceptionApi from \"../../../../adapters/event/exception\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {AccountingTypes, getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport * as types from \"../../../../constants/calendar\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport * as accessRightsTypes from \"../../../../constants/accessRight\";\nimport SalarySelector from \"../../../salary/selector\";\n\ninterface Interface {\n values: {\n start: Date\n end: Date\n salary: Salary\n company: Company\n accountingType: number\n activity?: Activity\n localisation?: Localisation\n eventType: string\n eventId?: number\n exceptionId?: number,\n comment?: string\n },\n handleSubmitSuccess: (ev: any) => any;\n}\n\nconst EventEditForm:React.FC = (props) => {\n\n const {values, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [salary, setSalary] = useState(values.salary)\n const [company, setCompany] = useState(values.company)\n\n const initialValues = {\n salary: salary.id,\n start: values.start,\n end: values.end,\n accountingType: values.accountingType,\n company: values.company.id,\n activity: values.activity?.id,\n localisation: values.localisation?.id,\n comment: values.comment || '',\n }\n\n const validationSchema = Yup.object().shape({\n salary: Yup.number().required('Veuillez séléctionner un collaborateur dans la liste ci-dessus'),\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return value && start < value\n }),\n company: Yup.number().required(),\n activity: Yup.number().nullable(),\n localisation: Yup.number().nullable(),\n accountingType: Yup.number().required(),\n comment: Yup.string().nullable(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (_values, formikHelpers) => {\n switch (values.eventType){\n case types.EVENT_TYPE_EVENT:\n exceptionApi.create({..._values, exdate: values.start}, values.eventId!).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau mis à jour'));\n formikHelpers.setSubmitting(false)\n })\n })\n break;\n case types.EVENT_TYPE_EVENT_EXCEPTION:\n exceptionApi.edit(_values, values.exceptionId!).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n })\n break;\n }\n }\n })\n\n return
    \n
    \n {\n formik.setFieldValue('salary', s.id)\n setSalary(s)\n }}\n accessRight={accessRightsTypes.EDIT_BOOKING}\n />\n \n
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n timeIntervals={15}\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n />\n
    \n
    \n
    \n
    \n formik.setFieldValue('accountingType', c?.value)}\n />\n
    \n {<>\n
    \n ({label: c.title, value: c.id!}))] : []}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n value={company ? {label: company.title, value: company.id!} : undefined}\n onChange={(c) => formik.setFieldValue('company', c?.value)}\n onChangeObject={(c: Company) => setCompany(company)}\n />\n
    \n
    \n
    \n formik.setFieldValue('localisation', c?.value)}\n label={\"Emplacement\"}\n />\n
    \n
    \n formik.setFieldValue('activity', c?.value)}\n label={\"Activité\"}\n />\n
    \n
    \n }\n
    \n
    \n \n \n
    \n
    \n \n
    \n}\n\nexport default EventEditForm;","import React, {useEffect, useState} from \"react\";\nimport EventEditForm from \"../../../event/edit/form\";\nimport {EventClickArg} from \"@fullcalendar/react\";\n\nconst CalendarEventEdit:React.FC<{arg?: EventClickArg, handleSubmitSuccess: (ev: any) => any, close: () => any}> = (props) => { \n const {arg, handleSubmitSuccess, close} = props;\n \n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default CalendarEventEdit;","import React, {useEffect, useState} from \"react\";\nimport EventEditForm from \"../../../../event/edit/form\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\n\nconst EventResizeEdit:React.FC<{arg?: EventResizeDoneArg, handleSubmitSuccess: (ev: any) => any, close: () => any}> = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(0);\n\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarEvent')! as HTMLDivElement;\n el.addEventListener('hide.bs.offcanvas', cancelResize)\n\n return () => el?.removeEventListener('hide.bs.offcanvas', cancelResize)\n }, [arg])\n\n const cancelResize = () => {\n if (arg && arg.oldEvent){\n arg.event.setDates(arg.oldEvent.start!, arg.oldEvent.end!);\n }\n }\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default EventResizeEdit;","import * as xhr from \"../xhr\";\nimport {get, post} from \"../xhr\";\n\ninterface requestData {\n start: Date,\n end: Date,\n week?: number,\n daysOfWeek: string[],\n accountingType: number,\n company: number,\n activity: string,\n localisation: string,\n weekNumber?: number,\n year?: number,\n salary?: number,\n template?: number,\n}\n\nexport function create(requestData: requestData){\n return post(`event/create`, requestData);\n}\n\nexport function edit(requestData: requestData, eventId: number){\n return post(`event/${eventId}/edit`, requestData);\n}\n\nexport function cancel(eventId: number){\n return get(`event/${eventId}/cancel`);\n}\n\nexport function cancelOnce(event: number, requestData: any){\n return xhr.post(`event/${event}/cancel_once`, requestData);\n}\n\nexport function labourDayWorked(eventId: number, requestData: any){\n return xhr.post(`event/${eventId}/labour_day`, requestData);\n}\n\nexport function sub(eventId: number, substituteId: number, requestData: {exDate: string}){\n return xhr.post(`event/${eventId}/substitute/${substituteId}`, requestData);\n}","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\";\nimport {getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as exceptionApi from \"../../../../adapters/event/exception\";\nimport * as eventApi from \"../../../../adapters/event\";\nimport * as exchangeApi from \"../../../../adapters/eventExchange\";\nimport * as absenceApi from \"../../../../adapters/absence\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport {TYPE_EVENT, TYPE_EVENT_EXCEPTION} from \"../../../../constants/event\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {Granted} from \"../../../../security/granted\";\nimport {TYPE_CP} from \"../../../../constants/absence\";\n\ninterface Interface {\n arg: EventClickArg,\n handleEventChange: (ev: any) => any,\n calendar: string,\n setCalendarAbsenceSidebarProps: React.Dispatch,\n setCalendarEventSidebarProps: React.Dispatch,\n close: () => any,\n setCalendarSignedSidebarProps: React.Dispatch,\n}\n\nconst EventShow:React.FC = (props) => {\n\n const {arg, handleEventChange, calendar, setCalendarAbsenceSidebarProps, setCalendarSignedSidebarProps, setCalendarEventSidebarProps, close} = props;\n\n const dispatch = useDispatch();\n const [removingEvent, setRemovingEvent] = useState(false)\n const [removingAbsence, setRemovingAbsence] = useState(false)\n\n const removeEvent = () => {\n if (arg){\n setRemovingEvent(true)\n switch (arg.event.extendedProps.eventType){\n case TYPE_EVENT:\n eventApi.cancelOnce(arg.event.extendedProps.eventId, {\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n salary: arg.event.extendedProps.salary.id,\n company: arg.event.extendedProps.company.id,\n localisation: arg.event.extendedProps.localisation?.id,\n activity: arg.event.extendedProps.activity?.id,\n comment: arg.event.extendedProps.comment,\n exdate: arg.event.start\n }).then((resp) => removeEventSuccess(resp.data));\n break;\n case TYPE_EVENT_EXCEPTION:\n exceptionApi.cancel(arg.event.extendedProps.exceptionId).then((resp) => removeEventSuccess(resp.data));\n break;\n }\n }\n }\n\n const [absenceInfoLoading, setAbsenceInfoLoading] = useState(false);\n const [nbDays, setNbDays] = useState()\n const [nextWorkingDay, setNextWorkingDay] = useState()\n useEffect(() => {\n setNbDays(undefined);\n setNextWorkingDay(undefined);\n if (arg.event.extendedProps.absence){\n setAbsenceInfoLoading(true)\n absenceApi.days(arg.event.extendedProps.absence.id).then(resp => {\n setNbDays(resp.data.nbDays);\n if (resp.data.nextWorkingDay){\n setNextWorkingDay(resp.data.nextWorkingDay);\n }\n\n setAbsenceInfoLoading(false);\n })\n }\n }, [arg.event.extendedProps.absence])\n\n const [removingSub, setRemovingSub] = useState(false)\n const cancelSub = () => {\n setRemovingSub(true)\n exceptionApi.removeSub(arg.event.extendedProps.exceptionId)\n .then(() => removeSubSuccess(arg.event.extendedProps));\n }\n\n const [removingExchange, setRemovingExchange] = useState(false)\n const cancelExchange = () => {\n setRemovingExchange(true)\n exchangeApi.cancel(arg.event.extendedProps.exchangeId)\n .then(resp => removeExchangeSuccess({ids: [resp.data.finalEvent.salary.id, resp.data.finalTarget.salary.id]}));\n }\n\n const removeAbsence = () => {\n if (arg.event.extendedProps.absence){\n setRemovingAbsence(true);\n absenceApi.cancel(arg.event.extendedProps.absence.id).then((data) => removeAbsenceSuccess(data.data))\n }\n }\n\n const removeEventSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => dispatch(showAlertSuccess(\"Créneau supprimé\")))\n .then(() => close())\n .then(() => setRemovingEvent(false))\n .then(() => true)\n }\n\n const removeSubSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => dispatch(showAlertSuccess(\"Remplacement supprimé\")))\n .then(() => setRemovingSub(false))\n .then(() => true)\n }\n\n const removeExchangeSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => dispatch(showAlertSuccess(\"Échange supprimé\")))\n .then(() => setRemovingSub(false))\n .then(() => true)\n }\n\n const removeAbsenceSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => setRemovingAbsence(false))\n .then(() => dispatch(showAlertSuccess('Absence supprimé')))\n .then(() => close())\n }\n\n const setLabourDayWorked = (worked: boolean) => {\n if (arg){\n switch (arg.event.extendedProps.eventType){\n case TYPE_EVENT:\n exceptionApi.create( {\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n salary: arg.event.extendedProps.salary.id,\n company: arg.event.extendedProps.company.id,\n localisation: arg.event.extendedProps.localisation?.id,\n activity: arg.event.extendedProps.activity?.id,\n comment: arg.event.extendedProps.comment,\n labourDayWorked: worked,\n exdate: arg.event.start,\n }, arg.event.extendedProps.eventId)\n .then((resp) => handleEventChange(resp.data))\n .then(() => close());\n break;\n case TYPE_EVENT_EXCEPTION:\n exceptionApi.edit({\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n salary: arg.event.extendedProps.salary.id,\n company: arg.event.extendedProps.company.id,\n localisation: arg.event.extendedProps.localisation?.id,\n activity: arg.event.extendedProps.activity?.id,\n labourDayWorked: worked,\n comment: arg.event.extendedProps.comment,\n }, arg.event.extendedProps.exceptionId)\n .then((resp) => handleEventChange(resp.data))\n .then(() => close());\n break;\n }\n }\n }\n\n return <>\n
    \n
    Créneau de {arg.event.extendedProps.salary.title}
    \n \n
    \n {
    \n

    \n Détails du créneau\n

    \n
    \n
    \n \n \n \n Début\n \n \n {format(arg.event.start!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Fin\n \n \n {format(arg.event.end!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Type d'heure\n \n \n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n \n \n \n \n Établissement\n \n \n {arg.event.extendedProps.company?.title || }\n \n \n \n \n Emplacement\n \n \n {arg.event.extendedProps.localisation?.title || }\n \n \n \n \n Activité\n \n \n {arg.event.extendedProps.activity?.title || }\n \n \n \n \n Commentaire\n \n \n {arg.event.extendedProps.comment || }\n \n \n \n
    \n\n {arg.event.extendedProps.substitution &&
    \n
    \n Remplacement de {arg.event.extendedProps.substituted.title}\n
    \n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n
    }\n\n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) && arg.event.extendedProps.isSlotExchange &&
    \n
    \n {arg.event.extendedProps.salary.title} {arg.event.extendedProps.exchanged.title}\n
    \n
    \n \n
    \n
    }\n\n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) && !arg.event.extendedProps.substitution && arg.event.extendedProps.substitute &&
    \n
    \n Remplacé.e par {arg.event.extendedProps.substitute.title}\n
    \n
    \n \n
    \n
    }\n\n
    \n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n {Granted(accessRights.DELETE_BOOKING, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n
    \n
    \n\n
    \n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) &&
    \n {!arg.event.extendedProps.substitution &&
    \n \n
    }\n
    }\n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) &&
    \n {!arg.event.extendedProps.substitution &&
    \n \n
    }\n
    }\n
    \n\n {Granted(accessRights.EDIT_TIME_CLOCK, arg.event.extendedProps.salary.id) && calendarTypes.CALENDAR_SIGNED_GLOBAL === calendar && <>\n
    \n \n
    \n }\n\n {arg.event.extendedProps.isLabourDay &&
    \n
    \n

    \n Jour férié\n

    \n

    \n Cochez la case ci dessous si le collaborateur travail ce jour.\n

    \n
    \n setLabourDayWorked(e.target.checked)} type=\"checkbox\" id=\"labourDayWorked\"/>\n \n
    \n
    }\n\n {arg.event.extendedProps.absence &&
    \n
    \n

    \n Absence\n

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {arg.event.extendedProps.absence.type === TYPE_CP && \n \n \n }\n \n \n \n \n \n
    \n Type\n \n {arg.event.extendedProps.absence.typeName}\n
    \n Début\n \n {format(new Date(arg.event.extendedProps.absence.start))}\n
    \n Fin\n \n {format(new Date(arg.event.extendedProps.absence.end))}\n
    \n Jour de reprise prévu\n \n {absenceInfoLoading ? : (nextWorkingDay ? format(new Date(nextWorkingDay)) : )}\n
    \n Nb de jours\n \n {absenceInfoLoading ? : (nbDays ? nbDays : )}\n
    \n
    \n {Granted(accessRights.EDIT_ABSENCE, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n {Granted(accessRights.DELETE_ABSENCE, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n
    \n
    }\n\n
    }\n \n}\n\nexport default EventShow;","import moment from 'moment'\nimport 'moment/locale/fr'\n\nmoment.locale('fr')\n\nexport default moment","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../adapters/event\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport {Salary} from \"../../../../models/salary\";\nimport FormError from \"../../../../utils/formError\";\nimport DatePicker from \"react-datepicker\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport {AccountingTypes} from \"../../../../constants/booking\";\nimport {Company} from \"../../../../models/companies\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {useDispatch} from \"react-redux\";\nimport * as accessRightsTypes from \"../../../../constants/accessRight\";\nimport SalarySelector from \"../../../salary/selector\";\nimport {setSeconds} from \"date-fns\";\nimport moment from \"../../../../utils/moment.utils\";\n\ninterface Interface {\n start?: Date,\n end?: Date,\n initialSalary?: Salary,\n initialCompany?: Company,\n activity?: Activity,\n localisation?: Localisation,\n handleSubmitSuccess: (props: any[]) => any\n}\n\nconst EventAddForm:React.FC = (props) => {\n\n const {initialSalary, initialCompany, start, end, localisation, activity, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [salary, setSalary] = useState(initialSalary)\n //const [company, setCompany] = useState(initialCompany)\n\n const initialValues: any = {\n salary: salary?.id,\n start: start || new Date(),\n end: end || new Date(),\n accountingType: 1,\n company: initialCompany?.id,\n activity: activity?.id,\n localisation: localisation?.id,\n daysOfWeek: [String(Number(format(start || new Date(), 'i')) - 1)],\n weekNumber: moment(start).isoWeek(),\n year: moment(start).weekYear(),\n comment: \"\"\n }\n\n const validationSchema = Yup.object().shape({\n salary: Yup.number().required('Veuillez séléctionner un collaborateur dans la liste ci-dessus'),\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n\n if (!value) return false;\n\n if (start.getTime() > value.getTime()) {\n\n let clone = setSeconds(new Date(value), 0)\n clone.setDate(value.getDate() + 1)\n\n return clone.getTime() > start.getTime();\n }\n\n return value && start < value\n }),\n company: Yup.number().required(),\n activity: Yup.number().nullable(),\n localisation: Yup.number().nullable(),\n accountingType: Yup.number().required(),\n daysOfWeek: Yup.array().of(Yup.number()).min(1),\n weekNumber: Yup.number().required(),\n year: Yup.number().required(),\n comment: Yup.string().nullable(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n });\n }\n })\n\n return
    \n
    \n {\n formik.setFieldValue('salary', s.id)\n setSalary(s)\n }}\n accessRight={accessRightsTypes.EDIT_BOOKING}\n />\n \n
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n timeIntervals={15}\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n
    \n
    \n
    \n
    \n formik.setFieldValue('accountingType', c?.value)}\n />\n
    \n {<>\n
    \n ({label: c.title, value: c.id!}))] : undefined}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n value={initialCompany ? {label: initialCompany.title, value: initialCompany.id!} : undefined}\n onChange={(c) => formik.setFieldValue('company', c?.value)}\n //onChangeObject={(c: Company) => setCompany(c)}\n initialObjectsValues={salary?.companies ? [...salary.companies] : undefined}\n enableReinitialize={true}\n />\n \n
    \n {
    \n
    \n ({label: l.title, value: l.id!})) : []}\n fetchEntity=\"localisation\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n label={\"Emplacement\"}\n enableReinitialize={true}\n />\n
    \n
    \n ({label: a.title, value: a.id!})) : []}\n fetchEntity=\"activity\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n label={\"Activité\"}\n enableReinitialize={true}\n />\n
    \n
    }\n }\n
    \n
    \n \n
    \n

    \n Semaine {formik.values.weekNumber}, Année {formik.values.year}\n

    \n
    \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n}\n\nexport default EventAddForm;","import React, {useEffect, useState} from \"react\";\nimport EventAddForm from \"../../../event/add/form\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {setMinutes} from \"date-fns\";\n\nconst EventAdd:React.FC<{close: () => any, handleSubmitSuccess: (ev: any[]) => any, dt: Date, salary?: Salary, company?: Company, localisation?: Localisation, activity?: Activity}> = (props) => {\n\n const {handleSubmitSuccess, salary, company, activity, localisation, close, dt} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [salary, company, activity, localisation])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default EventAdd;","import React, {useEffect, useState} from \"react\";\nimport {EventDropArg} from \"@fullcalendar/react\";\nimport EventAddForm from \"../../../../event/add/form\";\n\ninterface Interface {\n arg: EventDropArg,\n handleSubmitSuccess: (props: any[]) => any,\n close: () => any\n}\n\nconst EventDrop:React.FC = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(1);\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarEvent')! as HTMLDivElement;\n el.addEventListener('hide.bs.offcanvas', cancelDrop)\n setKey(prevState => prevState + 1)\n\n return () => el?.removeEventListener('hide.bs.offcanvas', cancelDrop)\n }, [arg])\n\n const cancelDrop = () => {\n if (arg.oldEvent){\n arg?.event.setDates(arg?.oldEvent.start!, arg.oldEvent.end);\n if (arg.oldResource){\n arg.event.setResources([arg.oldResource])\n }\n }\n }\n\n const handleSubmit = (ev: any) => {\n cancelDrop();\n\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default EventDrop;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\nimport EventAddForm from \"../../../../event/add/form\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {setMinutes} from \"date-fns\";\n\ninterface Interface {\n arg?: DateSelectArg,\n salary?: Salary,\n company?: Company,\n activity?: Activity,\n localisation?: Localisation,\n handleSubmitSuccess: (props: any[]) => any,\n close: () => any,\n}\n\nconst EventSelect:React.FC = (props) => {\n\n const {handleSubmitSuccess, close, arg, salary, company, activity, localisation} = props;\n const [key, setKey] = useState(1);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1)\n }, [arg])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default EventSelect;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport * as eventApi from \"../../../../adapters/event\";\nimport * as salaryApi from \"../../../../adapters/salary\";\nimport format from \"../../../../utils/locale\";\nimport Loader from \"../../../../utils/loader\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {Salaries, Salary} from \"../../../../models/salary\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\n\ninterface Interface {\n arg: EventClickArg,\n handleSubmitSuccess: (ev: any) => any,\n close: () => any,\n}\n\nconst EventSubstitute:React.FC = (props) => {\n const {arg, handleSubmitSuccess, close} = props;\n const dispatch = useDispatch()\n\n const [loading, setLoading] = useState(false)\n const [jobs, setJobs] = useState([])\n const [salaries, setSalaries] = useState<(Salary & {rate: string, counter: string, counterDuration: number})[]>([])\n\n useEffect(() => {\n\n if (arg){\n setLoading(true)\n salaryApi.available({\n beginAt: format(arg.event.start!, 'uuuu-MM-dd HH:mm:ss'),\n endAt: format(arg.event.end!, 'uuuu-MM-dd HH:mm:ss'),\n options: {\n companies: [arg.event.extendedProps.company.id],\n jobs: jobs\n }\n }).then(resp => setSalaries(resp.data))\n .then(() => setLoading(false))\n }\n\n\n }, [arg, jobs])\n\n const handleSelectChange = (salary: Salary) => {\n setLoading(true)\n\n eventApi.sub(arg.event.extendedProps.eventId, salary.id, {exDate: format(arg.event.start!, 'uuuu-MM-dd')})\n .then((resp) => Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n }).then(() => true))\n .then(() => close())\n .then(() => setLoading(false))\n }\n\n return <>\n
    \n
    Remplacer le créneau de {arg?.event.extendedProps.salary.title}
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n Horaires\n \n {format(arg.event.start!, 'E dd MMMM uuuu HH:mm')} { format(arg.event.end!, 'E dd MMMM uuuu HH:mm')}\n
    \n Établissement\n \n {arg.event.extendedProps.company.title}\n
    \n \n
    \n setJobs(choices?.map(c => Number(c.value)) || [])}\n />\n
    \n\n
    \n {loading && }\n {!loading &&
      \n {salaries.map(salary =>
    • handleSelectChange(salary)}>\n
      \n
      \n

      \n {salary.title}\n

      \n

      \n {salary.information?.job.title}\n

      \n
      \n
      \n \n {salary.rate} \n \n \n {salary.counterDuration < 0 ?\n \n : (salary.counterDuration > 0 ?\n \n : )\n } {salary.counter}\n \n
      \n
      \n
    • )}\n
    }\n
    \n
    \n \n}\n\nexport default EventSubstitute;","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as api from \"../../../../adapters/eventExchange\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport FullCalendar, {EventClickArg} from \"@fullcalendar/react\";\nimport listPlugin from \"@fullcalendar/list\";\nimport {CalendarTitle} from \"../../utils\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport Loader from \"../../../../utils/loader\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport getMaxVisibilityDate from \"../../../../security/getMaxDate\";\n\n\ninterface Interface {\n arg: EventClickArg,\n handleSubmitSuccess: (ev: any) => any,\n close: () => any,\n}\n\nconst CalendarEventExchange:React.FC = (props) => {\n\n const {close, arg, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [pickerDate, setPickerDate] = useState(new Date());\n const [title, setTitle] = useState('');\n const calendarRef = React.createRef();\n const [selected, setSelected] = useState()\n const [submiting, setSubmiting] = useState(false)\n const [endDate, setEndDate] = useState(arg.view.activeEnd);\n\n const [jobs, setJobs] = useState([])\n const [isLoading, setIsLoading] = useState(true)\n const [isSameDuration, setIsSameDuration] = useState(true)\n const [slots, setSlots] = useState<{\n start: string,\n end: string,\n timeCaption: string,\n timeDiff: number,\n timeDiffCaption: string,\n salary: Salary,\n company: Company,\n eventId: number,\n initialStart: string,\n }[]>([])\n\n\n useEffect(() => fetchCalendar(), [isSameDuration]);\n\n function validate()\n {\n if (selected){\n setSubmiting(true)\n api.create({\n event: arg.event.extendedProps.eventId,\n exDate: arg.event.extendedProps.initialStart,\n target: selected.event.extendedProps.eventId,\n targetExDate: selected.event.extendedProps.initialStart\n }).then(() => handleSubmitSuccess({salaries: [arg.event.extendedProps.salary, selected.event.extendedProps.salary]}))\n .then(() => setSubmiting(false))\n .then(() => dispatch(showAlertSuccess('Créneau échangé')))\n .then(() => close())\n }\n }\n\n return <>\n
    \n
    Échanger un créneau
    \n \n
    \n
    \n {selected &&
    \n

    \n Récapitulatif\n

    \n
    \n
    \n
    \n

    \n {arg.event.extendedProps.salary.title}\n

    \n

    \n {format(arg.event.start!, 'E dd MMMM uuuu HH:mm')} {format(arg.event.end!, 'HH:mm')}\n

    \n
    \n
    \n
    \n
    \n

    \n Échange avec\n

    \n
    \n
    \n
    \n
    \n

    \n {selected.event.extendedProps.salary.title}\n

    \n

    \n {format(selected.event.start!, 'E dd MMMM uuuu HH:mm')} {format(selected.event.end!, 'HH:mm')}\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    }\n {!selected &&
    \n
    \n
    \n
    \n Filtrer\n
    \n
    \n
    \n setIsSameDuration(e.currentTarget.checked)} type=\"checkbox\" role=\"switch\" id=\"sameDuration\" defaultChecked={isSameDuration} />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n <>\n

    \n {e.event.extendedProps.salary.title}\n

    \n

    \n {e.event.extendedProps.salary.information.job.title}\n

    \n }\n viewDidMount={(arg) => setTitle(arg.view.title)}\n initialView={'listWeek'}\n locales={allLocales}\n locale={'fr'}\n eventClick={setSelected}\n />\n {isLoading && }\n
    \n
    }\n
    \n \n\n\n function handlePickerDateChange(dt: Date)\n {\n if (hasApi()){\n setPickerDate(dt)\n getApi().gotoDate(dt)\n setTitle(getApi().view.title)\n setEndDate(getApi().view.activeEnd)\n fetchCalendar()\n }\n }\n\n function getApi(){\n return calendarRef.current!.getApi();\n }\n\n function hasApi(){\n return !!calendarRef.current?.getApi();\n }\n function prevClick(){\n if (hasApi()){\n getApi().prev()\n setTitle(getApi().view.title)\n setEndDate(getApi().view.activeEnd)\n fetchCalendar()\n }\n }\n\n function nextClick(){\n if (hasApi()){\n getApi().next()\n setTitle(getApi().view.title)\n setEndDate(getApi().view.activeEnd)\n fetchCalendar()\n }\n }\n\n function fetchCalendar(){\n\n if (hasApi()){\n setSlots([])\n setIsLoading(true)\n api.list({\n event: {\n start: format(arg.event.start!, 'uuuu-MM-dd HH:mm:ss'),\n end: format(arg.event.end!, 'uuuu-MM-dd HH:mm:ss'),\n company: arg.event.extendedProps.company.id,\n salary: arg.event.extendedProps.salary.id\n },\n isSameDuration: isSameDuration,\n jobs: jobs,\n start: format(getApi().view.activeStart, 'uuuu-MM-dd'),\n end: format(getApi().view.activeEnd, 'uuuu-MM-dd')\n })\n .then(data => {\n setSlots(data.data)\n setIsLoading(false);\n })\n }\n }\n}\n\nexport default CalendarEventExchange;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg, EventClickArg, EventDropArg} from \"@fullcalendar/react\";\nimport CalendarEventEdit from \"../edit\";\nimport CalendarEventResize from \"../edit/resize\";\nimport CalendarEventShow from \"../show\";\nimport CalendarEventAdd from \"../add\";\nimport CalendarEventDrop from \"../add/drop\";\nimport CalendarEventSelect from \"../add/select\";\nimport CalendarEventSubstitute from \"../substitute\";\nimport CalendarEventExchange from \"../exchange\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface InterfaceEventShow {\n sidebarType: 'EVENT_SHOW',\n arg: EventClickArg,\n calendar: string,\n setCalendarAbsenceSidebarProps: React.Dispatch\n setCalendarEventSidebarProps: React.Dispatch,\n setCalendarSignedSidebarProps: React.Dispatch\n}\n\ninterface InterfaceEventEdit {\n sidebarType: 'EVENT_EDIT',\n arg?: EventClickArg,\n}\n\ninterface InterfaceEventResize {\n sidebarType: 'EVENT_RESIZE',\n arg?: EventResizeDoneArg,\n}\n\ninterface InterfaceEventAdd {\n sidebarType: 'EVENT_ADD',\n dt: Date\n salary?: Salary,\n company?: Company,\n localisation?: Localisation,\n activity?: Activity,\n}\n\ninterface InterfaceEventDop {\n sidebarType: 'EVENT_DROP',\n arg: EventDropArg,\n}\n\ninterface InterfaceEventSelect {\n sidebarType: 'EVENT_SELECT',\n arg?: DateSelectArg,\n salary?: Salary,\n company?: Company,\n activity?: Activity,\n localisation?: Localisation,\n}\n\ninterface InterfaceEventSubstitute {\n sidebarType: 'EVENT_SUBSTITUTE',\n arg: EventClickArg,\n}\n\ninterface InterfaceEventExchange {\n sidebarType: 'EVENT_EXCHANGE',\n arg: EventClickArg,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarEventSidebarInterface = {trigger: number} & (Interface | InterfaceEventSubstitute | InterfaceEventExchange | InterfaceEventShow | InterfaceEventEdit | InterfaceEventResize | InterfaceEventAdd | InterfaceEventDop | InterfaceEventSelect)\n\nconst CalendarEventSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarEvent')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarEvent')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"EVENT_EDIT\":\n return \n case \"EVENT_SHOW\":\n return \n case \"EVENT_RESIZE\":\n return \n case \"EVENT_ADD\":\n return \n case \"EVENT_DROP\":\n return \n case \"EVENT_SELECT\":\n return \n case \"EVENT_SUBSTITUTE\":\n return \n case \"EVENT_EXCHANGE\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarEventSidebarInterface & {handleEventChange: any}, nextProps: CalendarEventSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarEventSidebar, areEqual);","\nexport const ADD_SALARY = 'ADD_SALARY';\nexport const ADD_SALARY_SUCCESS = 'ADD_SALARY_SUCCESS';\nexport const ADD_SALARY_FAILURE = 'ADD_SALARY_FAILURE';\n\nexport const ADD_SALARY_INFORMATION = 'ADD_SALARY_INFORMATION';\nexport const ADD_SALARY_INFORMATION_SUCCESS = 'ADD_SALARY_INFORMATION_SUCCESS';\nexport const ADD_SALARY_INFORMATION_FAILURE = 'ADD_SALARY_INFORMATION_FAILURE';\n\nexport const EDIT_SALARY = 'EDIT_SALARY';\nexport const EDIT_SALARY_SUCCESS = 'EDIT_SALARY_SUCCESS';\nexport const EDIT_SALARY_FAILURE = 'EDIT_SALARY_FAILURE';\n\nexport const FETCH_SALARIES = 'FETCH_SALARIES';\nexport const FETCH_SALARIES_SUCCESS = 'FETCH_SALARIES_SUCCESS';\nexport const FETCH_SALARIES_FAILURE = 'FETCH_SALARIES_FAILURE';\n\nexport const SHOW_SALARY = 'SHOW_SALARY';\nexport const SHOW_SALARY_SUCCESS = 'SHOW_SALARY_SUCCESS';\nexport const SHOW_SALARY_FAILURE = 'SHOW_SALARY_FAILURE';\n\nexport const FLAT_RATE_HC = 1;\nexport const FLAT_RATE_DAILY = 2;\nexport const FLAT_RATE_EXECUTIVE_OFFICER = 3;\nexport const FLAT_RATE_ELSE = 4;\n\nexport const getFlatRateChoices = () => {\n return [\n {value: FLAT_RATE_HC, label: 'Heures contrat'},\n {value: FLAT_RATE_DAILY, label: 'Forfait jour'},\n {value: FLAT_RATE_EXECUTIVE_OFFICER, label: 'Cadre dirigeant'},\n {value: FLAT_RATE_ELSE, label: 'Autre'},\n ]\n}\n\nexport const getContractChoices = () => {\n return [\n {value: 1, label: 'CDI temps plein'},\n {value: 2, label: 'CDI temps partiel'},\n {value: 3, label: 'CDD temps plein'},\n {value: 4, label: 'CDD temps partiel'},\n {value: 5, label: 'Freelance'},\n {value: 6, label: 'Autre'},\n ]\n}\n","import * as types from \"../../constants/salary\";\nimport * as models from \"../../models/salary\";\n\nexport const addSalary = () => {\n return {\n type: types.ADD_SALARY,\n }\n}\n\nexport const addSalaryInformation = () => {\n return {\n type: types.ADD_SALARY,\n }\n}\n\nexport const addSalarySuccess = (salary: models.Salary) => {\n return {\n type: types.ADD_SALARY_SUCCESS,\n salary,\n }\n}\n\nexport const addSalaryInformationSuccess = (salary: models.Salary) => {\n return {\n type: types.ADD_SALARY_INFORMATION_SUCCESS,\n salary,\n }\n}\n\nexport const addSalaryFailure = (error: string) => {\n return {\n type: types.ADD_SALARY_FAILURE,\n salary: null,\n salaries: null,\n error\n }\n}\n\nexport const addSalaryInformationFailure = (error: string) => {\n return {\n type: types.ADD_SALARY_INFORMATION_FAILURE,\n salary: null,\n salaries: null,\n error\n }\n}\n\nexport const editSalary = () => {\n return {\n type: types.EDIT_SALARY,\n }\n}\n\nexport const editSalarySuccess = (salary: models.Salary) => {\n return {\n type: types.EDIT_SALARY_SUCCESS,\n salary: salary,\n }\n}\n\nexport const fetchSalaries = () => {\n return {\n type: types.FETCH_SALARIES,\n }\n}\n\nexport const fetchSalariesFailure = (error: string) => {\n return {\n type: types.FETCH_SALARIES_FAILURE,\n salary: null,\n salaries: [],\n error\n }\n}\n\nexport const fetchSalariesSuccess = (salaries: models.Salaries) => {\n return {\n type: types.FETCH_SALARIES_SUCCESS,\n salary: null,\n salaries\n }\n}\n\n\nexport const showSalary = () => {\n return {\n type: types.SHOW_SALARY,\n }\n}\nexport const showSalarySuccess = (salary: models.Salary) => {\n return {\n type: types.SHOW_SALARY_SUCCESS,\n salary: salary\n }\n}\nexport const showSalaryFailure = (error: string) => {\n return {\n type: types.SHOW_SALARY_FAILURE,\n salary: null,\n salaries: null,\n error: error\n }\n}","import {Salaries, Salary} from \"../../../models/salary\";\nimport React, {useEffect, useState} from \"react\";\nimport * as salaryApi from \"../../../adapters/salary\";\nimport {useDispatch} from \"react-redux\";\nimport * as actions from \"../../../actions/salary\";\nimport {Jobs} from \"../../../models/job\";\nimport {Companies} from \"../../../models/companies\";\nimport {PAGINATION} from \"../../../constants/global\";\n\ninterface SingleSalarySelectorProps {\n onSubmit: (s: Salary) => any,\n onClose: any,\n initialValue?: number,\n required?: boolean,\n jobs?: Jobs,\n companies?: Companies,\n salaries?: Salaries\n}\n\nexport const SingleSalarySelector:React.FC = (props) => {\n const {onSubmit, onClose, initialValue, required, companies, salaries, jobs} = props;\n\n const [offset, setOffset] = useState(0)\n const [isLast, setIsLast] = useState(false)\n const [query, setQuery] = useState()\n const [isLoading, setIsLoading] = useState(true)\n const [isFiltering, setIsFiltering] = useState(false)\n const [error, setError] = useState()\n const [fetchedSalaries, setFetchedSalaries] = useState([])\n const dispatch = useDispatch();\n const [scrollBottom, setScrollBottom] = useState(false)\n\n const jobsArray = jobs ? jobs.map((job) => job.id!) : [];\n const companiesArray = companies ? companies.map((companies) => companies.id!) : [];\n const salariesArray = salaries ? salaries.map((salaries) => salaries.id!) : [];\n\n useEffect(() => {\n let container = document.getElementsByClassName('offcanvas-body')[0]!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n setIsLoading(true);\n\n salaryApi.list({\n query: query,\n offset: offset,\n jobs: jobsArray,\n salaries: salariesArray,\n companies: companiesArray,\n }).then(data => {\n fetchSuccess([...data.data], 1)\n })\n\n return () => {\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }, [])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n dispatch(actions.fetchSalaries())\n setIsFiltering(true);\n setOffset(0)\n salaryApi.list({\n query: query,\n offset: 0,\n jobs: jobsArray,\n salaries: salariesArray,\n companies: companiesArray,\n }).then(data => {\n fetchSuccess([...data.data])\n\n })\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n if (!isLoading){\n if(offset > 0 && !isLast){\n setIsLoading(true)\n salaryApi.list({\n query: query,\n offset: offset,\n jobs: jobsArray,\n salaries: salariesArray,\n companies: companiesArray,\n }).then(data => {\n fetchSuccess([...fetchedSalaries, ...data.data])\n })\n }\n }\n }, [scrollBottom])\n\n\n const fetchSuccess = (items: Salaries, offset?: number) => {\n setIsLast(items.length < PAGINATION);\n setFetchedSalaries(items)\n setOffset(prevState => (offset ? offset : prevState + 1))\n setIsLoading(false)\n }\n\n const onScrollBottom = () => {\n let elem = document.getElementsByClassName('offcanvas-body')[0]!;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom((prevState) => !prevState)\n }\n }\n\n return (\n
    \n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control\" placeholder=\"Rechercher un collaborateur\" aria-describedby=\"search-addon\" />\n
    \n \n
    \n {error &&
    \n {error}\n
    }\n
      \n {fetchedSalaries.map((salary: Salary, index: number) => {\n return (\n
    • {\n onSubmit(salary)\n onClose()\n }} key={index}>\n
      \n {initialValue === salary.id && \n \n }\n \n \n \n {salary.firstname} {salary.lastname}\n \n \n \n \n {salary.information?.job.title}\n \n \n \n
      \n
      \n
      \n
      \n
      \n
    • \n )\n })}\n {isLoading &&
    • \n
      \n Loading...\n
      \n
    • }\n
    \n {!isLast && !isLoading && }\n
    \n )\n}\n\ninterface SingleSalarySelectedProps {\n onDelete: any,\n onOpen: any,\n required?: boolean,\n initialValue?: number,\n initialSalary?: Salary,\n validationClass?: string,\n disabled?: boolean\n}\n\nexport const SingleSalarySelected:React.FC = (props) => {\n\n const {\n onDelete,\n onOpen,\n initialValue,\n initialSalary,\n validationClass,\n required,\n disabled\n } = props;\n\n\n const [salary, setSalary] = useState(initialSalary)\n const [isLoading, setIsLoading] = useState(false)\n\n useEffect(() => {\n if (initialValue && initialSalary?.id !== initialValue){\n setIsLoading(true)\n salaryApi.show(initialValue).then(data => {\n setSalary(data.data)\n setIsLoading(false)\n })\n }\n }, [initialValue])\n\n useEffect(() => {\n setSalary(initialSalary);\n }, [initialSalary])\n\n return (\n
    \n
    \n
    \n {\n initialValue &&\n \n \n {salary && !isLoading ? salary.title :\n
    \n Loading...\n
    }\n
    \n {!required && {\n onDelete(initialValue)\n setSalary(undefined)\n }}>\n \n }\n
    \n }\n \n \n \n
    \n
    \n \n
    \n )\n}\n","import {Salary} from \"../salary\";\nimport {Company} from \"../companies\";\nimport {Localisation} from \"../localisation\";\nimport {Activity} from \"../activity\";\n\nexport interface BookingRecurrence {\n type: 1|2|3,\n start: string,\n end: string,\n daysOfWeek?: number[],\n weekLetters?: number[],\n separationCount?: number,\n description?: string\n}\n\nexport interface Booking {\n id?: number,\n start: string,\n end: string,\n salary: Salary,\n company: Company,\n accountingType: 1|2|3|4,\n localisation: Localisation|null,\n activity: Activity|null,\n recurrence: BookingRecurrence,\n}\n\nexport type Bookings = Booking[];\n\nexport const BOOKING_RECURRENCE_CHOICES = [\n {label: 'Une seule fois', value: 1},\n {label: 'Semaines X', value: 2},\n {label: 'Personnalisé', value: 3},\n];\n\nexport const getBookingRecurrenceChoice = (type: number) => [\n {label: 'Une seule fois', value: 1},\n {label: 'Semaines X', value: 2},\n {label: 'Personnalisé', value: 3},\n][type - 1];","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {FormikHelpers, useFormik} from \"formik\";\nimport * as Yup from \"yup\"\nimport {SingleSalarySelected, SingleSalarySelector} from \"../../../../utils/salarySelector/single\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport DatePicker from \"react-datepicker\";\nimport {setHours, setMinutes} from \"date-fns\";\nimport * as api from \"../../../../adapters/booking\"\nimport {submitSidebar} from \"../../../../actions/rightSidebar\";\nimport FormError from \"../../../../utils/formError\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {Choice} from \"../../../../utils/form/model\";\nimport format from \"../../../../utils/locale\";\nimport {AccountingTypes, getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport {BOOKING_RECURRENCE_CHOICES, getBookingRecurrenceChoice} from \"../../../../models/booking\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport Loader from \"../../../../utils/loader\";\n\ninterface Interface {\n values: {\n salary: Salary,\n company: Company,\n start: Date,\n end: Date,\n localisation?: Localisation,\n activity?: Activity\n accountingType: number\n description: string\n recurrence: any\n },\n bookingGroupTitle?: string,\n bookingGroupId?: number,\n exceptionId?: number,\n bookingId: number,\n instanceToken: string,\n eventType: string,\n handleSubmitSuccess: (ev: any) => any;\n}\n\nconst BookingEditForm:React.FC = (props) => {\n\n const {values,bookingGroupTitle, bookingGroupId, bookingId, exceptionId, instanceToken, eventType, handleSubmitSuccess } = props;\n\n const dispatch = useDispatch();\n const [salary, setSalary] = useState(values.salary)\n const [displayConfirmationTypeSelector, setDisplayConfirmationTypeSelector] = useState(false);\n const [confirmationType, setConfirmationType] = useState(1);\n const [displaySalarySelector, setDisplaySalarySelector] = useState(false);\n // const [weeks, setWeeks] = useState([])\n\n let now = new Date(values.start)\n now.setDate(now.getDate() + 7);\n const [startDate, setStartDate] = useState(values.start);\n const [endDate, setEndDate] = useState(now);\n const [weeks, setWeeks] = useState([])\n const [company, setCompany] = useState(values.company)\n const [init, setInit] = useState(false)\n\n const [initialValues, setInitialValues] = useState({\n salary: values.salary.id,\n company: values.company.id,\n localisation: values.localisation?.id,\n activity: values.activity?.id,\n beginAt: values.start,\n endAt: values.end,\n accountingType: values.accountingType,\n description: values.description,\n recurrence: {\n type: String(values.recurrence.type)\n }\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n salary: Yup.number().required(),\n company: Yup.number().required(),\n localisation: Yup.number().nullable(),\n activity: Yup.number().nullable(),\n beginAt: Yup.date().required(),\n endAt: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n accountingType: Yup.number().required(),\n description: Yup.string().nullable(),\n recurrence: Yup.object().shape({\n type: Yup.number().required()\n })\n }))\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n switch (confirmationType){\n case 1:\n switch (eventType) {\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n api.editException(values, exceptionId!).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n api.createException(values, bookingId, instanceToken).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n }\n break;\n case 2:\n api.split(values, bookingId).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n case 3:\n api.edit(values, bookingId).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n case 4:\n api.splitBetween(values, bookingId, format(startDate, \"uuuu-MM-dd\"), format(endDate, \"uuuu-MM-dd\")).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n case 5:\n api.splitDay(values, bookingId).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n case 6:\n api.editDay(values, bookingId).then((resp) => submitSuccess(resp.data, formikHelpers))\n break;\n }\n },\n });\n\n const submitSuccess = (data: any, formikHelpers: FormikHelpers) => {\n Promise.all([\n handleSubmitSuccess(data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau mis à jour'));\n formikHelpers.setSubmitting(false)\n })\n }\n\n useEffect(() => {\n getWeeks(company)\n }, [company])\n\n useEffect(() => {\n let _initialValues = {...initialValues}\n let data = init ? {..._initialValues} : {...values}\n let _validationSchema = {...validationSchema.fields}\n\n let fields: string[] = [];\n\n if ([2,3].includes(Number(_initialValues.recurrence.type))){\n _validationSchema.recurrence.fields.daysOfWeek = Yup.array().of(Yup.number()).min(1);\n\n if (!bookingGroupId){\n fields.push('start', 'end')\n _validationSchema.recurrence.fields.start = Yup.date().required();\n _validationSchema.recurrence.fields.end = Yup.date().nullable();\n }\n }\n\n switch (String(_initialValues.recurrence.type)){\n case '1':\n fields.push('type');\n break;\n case '2':\n fields.push('type', 'daysOfWeek', 'weekLetters', 'start');\n _validationSchema.recurrence.fields.weekLetters = Yup.array().of(Yup.number()).min(1);\n break;\n case '3':\n fields.push('type', 'daysOfWeek', 'separationCount', 'start');\n _validationSchema.recurrence.fields.separationCount = Yup.number().required();\n break;\n }\n\n // setValues\n for (let i in fields){\n switch (fields[i]) {\n case 'type':\n _initialValues.recurrence[fields[i]] = data.recurrence[fields[i]].toString();\n break;\n case 'daysOfWeek':\n case 'weekLetters':\n if (data.recurrence.hasOwnProperty(fields[i])){\n _initialValues.recurrence[fields[i]] = data.recurrence[fields[i]].map((num: number) => num.toString());\n break;\n }\n\n _initialValues.recurrence[fields[i]] = [];\n break;\n case 'end':\n case 'start':\n if (data.recurrence.hasOwnProperty(fields[i])) {\n _initialValues.recurrence[fields[i]] = data.recurrence[fields[i]] ? new Date(values.recurrence[fields[i]]) : null;\n break;\n }\n\n _initialValues.recurrence[fields[i]] = new Date();\n break;\n case 'separationCount':\n if (data.recurrence.hasOwnProperty(fields[i])) {\n _initialValues.recurrence[fields[i]] = data.recurrence[fields[i]].toString();\n break;\n }\n\n _initialValues.recurrence[fields[i]] = String(1);\n break;\n default:\n if (data.recurrence.hasOwnProperty(fields[i])) {\n _initialValues.recurrence[fields[i]] = data.recurrence[fields[i]];\n break;\n }\n _initialValues.recurrence[fields[i]] = null;\n }\n }\n\n setInit(true);\n setInitialValues({..._initialValues});\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n\n }, [formik.values.recurrence.type])\n\n const getWeeks = (company: Company) => {\n\n let length = company.timesheet.recurrence;\n let ret: string[] = [];\n for (let i = 0; i < length; i++){\n ret.push(String.fromCharCode(65 + i));\n }\n\n setWeeks(ret);\n }\n\n\n if (displayConfirmationTypeSelector){\n return
    \n
    \n
    \n

    \n \n Créneau récurrent\n

    \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n

    \n Vous souhaitez que la modification s'applique :\n

    \n
      \n
    • {\n setConfirmationType(1)\n formik.submitForm().then(data => console.log(data));\n }}>\n Une seule fois\n
    • \n {<>\n
    • {\n setConfirmationType(2)\n formik.submitForm().then(data => console.log(data));\n }}>\n Cette occurence et toute les suivantes\n
      \n {bookingGroupId && \n Créer un nouvel emploi du temps à partir du {format(new Date(formik.values.beginAt))} {values.recurrence.end && <>jusqu'au {format(new Date(values.recurrence.end))}}\n }\n
    • \n
    • {\n setConfirmationType(5)\n formik.submitForm().then(data => console.log(data));\n }}>\n Cette occurence et toute les suivantes le {format(formik.values.beginAt, 'eeee')} seulement\n
      \n {bookingGroupId && \n Créer un nouvel emploi du temps à partir du {format(new Date(formik.values.beginAt))} {values.recurrence.end && <>jusqu'au {format(new Date(values.recurrence.end))}}\n }\n
    • \n }\n\n {<>\n
    • {\n setConfirmationType(3)\n formik.submitForm().then(data => console.log(data));\n }}>\n Toutes les occurences\n
      \n \n Attention, en modifiant toutes les occurences, les modifications ponctuel apportés au créneau seront perdues.\n \n
      \n {!bookingGroupId && \n {formik.values.recurrence.start && formik.values.recurrence.end && <>Du {format(formik.values.recurrence.start, 'dd/MM/uuuu')} au {format(formik.values.recurrence.end, 'dd/MM/uuuu')}}\n {formik.values.recurrence.start && !formik.values.recurrence.end && <>A partir\n du {format(formik.values.recurrence.start, 'dd/MM/uuuu')}}\n }\n {bookingGroupId &&
      \n Modifier toutes les occurrences du créneau à partir du {format(new Date(values.recurrence.start))} {values.recurrence.end && <>jusqu'au {format(new Date(values.recurrence.end))}}\n
      }\n
    • \n\n
    • {\n setConfirmationType(6)\n formik.submitForm().then(data => console.log(data));\n }}>\n Toutes les occurences le {format(formik.values.beginAt, 'eeee')} seulement\n
      \n \n Attention, en modifiant toutes les occurences, les modifications ponctuel apportés au créneau seront perdues.\n \n
      \n {!bookingGroupId && \n {formik.values.recurrence.start && formik.values.recurrence.end && <>Du {format(formik.values.recurrence.start, 'dd/MM/uuuu')} au {format(formik.values.recurrence.end, 'dd/MM/uuuu')}}\n {formik.values.recurrence.start && !formik.values.recurrence.end && <>A partir\n du {format(formik.values.recurrence.start, 'dd/MM/uuuu')}}\n }\n {bookingGroupId &&
      \n Modifier toutes les occurrences du créneau le {format(formik.values.beginAt, 'eeee')} à partir du {format(new Date(values.recurrence.start))} {values.recurrence.end && <>jusqu'au {format(new Date(values.recurrence.end))}}\n
      }\n
    • \n }\n
    \n {formik.isSubmitting && }\n
    \n }\n\n return <>\n
    \n
    \n {!bookingGroupId &&
    \n setDisplaySalarySelector(true)}\n onOpen={() => setDisplaySalarySelector(true)}\n initialValue={formik.values.salary}\n initialSalary={values.salary}\n validationClass={validationClass(formik.errors, formik.touched, 'salary')}\n />\n \n {displaySalarySelector && {\n setSalary(salary)\n formik.setFieldValue('salary', salary.id)\n setDisplaySalarySelector(false)\n }}\n onClose={() => setDisplaySalarySelector(false)}\n initialValue={formik.values.salary}\n required={true}\n />}\n
    }\n
    \n
    \n
    \n }\n name={'beginAt'}\n id={'beginAt'}\n selected={formik.values.beginAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`beginAt`, date)\n }}\n selectsStart\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n \n
    \n
    \n }\n name={'endAt'}\n id={'endAt'}\n selected={formik.values.endAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`endAt`, date)\n }}\n selectsEnd\n startDate={formik.values.beginAt}\n endDate={formik.values.endAt}\n minDate={formik.values.beginAt}\n minTime={setHours(setMinutes(new Date(),\n new Date(formik.values.endAt).setHours(0,0,0,0) === new Date(formik.values.beginAt).setHours(0,0,0,0) ? new Date(formik.values.beginAt).getMinutes() : 0\n ),\n new Date(formik.values.endAt).setHours(0,0,0,0) === new Date(formik.values.beginAt).setHours(0,0,0,0) ? new Date(formik.values.beginAt).getHours() : 0\n )}\n maxTime={setHours(setMinutes(new Date(), 45), 23)}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de fin\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n ({label: company.title, value: company.id!})) || []}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n value={values?.company ? { value: values.company.id!, label: values.company.title } : undefined}\n onChange={(choice) => {\n formik.setFieldValue('company', choice?.value)\n formik.setFieldValue('localisation', null)\n formik.setFieldValue('activity', null)\n setCompany(salary!.companies.find(c => c.id === choice!.value)!)\n }}\n label={'Point de vente'}\n labelIcon={'bi bi-shop text-primary me-2'}\n className={validationClass(formik.errors, formik.touched, 'company')}\n />\n \n
    \n {company &&\n
    \n
    \n
    \n
    \n ({label: localisation.title, value: localisation.id!}))}\n fetchEntity=\"localisation\"\n fetchParams={{ companies: [formik.values.company] }}\n value={values?.localisation ? { value: values.localisation.id!, label: values.localisation.title } : undefined}\n className={validationClass(formik.errors, formik.touched, 'localisation')}\n onChange={(e) => formik.setFieldValue('localisation', e?.value)}\n label={'Localisation'}\n enableReinitialize={true}\n labelIcon={'bi bi-geo-alt text-primary me-2'}\n />\n \n
    \n
    \n
    \n
    \n ({label: activity.title, value: activity.id!}))}\n fetchEntity=\"activity\"\n fetchParams={{ companies: [formik.values.company] }}\n value={values?.activity ? { value: values.activity.id!, label: values.activity.title } : undefined}\n className={validationClass(formik.errors, formik.touched, 'activity')}\n onChange={(e) => formik.setFieldValue('activity', e?.value)}\n enableReinitialize={true}\n label={'Activités'}\n labelIcon={'bi bi-bookmark text-primary me-2'}\n />\n \n
    \n
    \n
    \n
    }\n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Recurrence\n

    \n {bookingGroupId &&
    \n \n Emploi du temps {bookingGroupTitle} à partir du {format(new Date(values.recurrence.start))} {values.recurrence.end ? \" jusqu'au \" + format(new Date(values.recurrence.end)) : ''}\n
    }\n
    \n
    \n
    \n formik.setFieldValue('recurrence.type', String(c!.value))}\n required={true}\n />\n
    \n {['2', '3'].includes(formik.values.recurrence.type) && !bookingGroupId &&
    \n
    \n
    \n }\n selected={formik.values.recurrence.start}\n onChange={(date) => formik.setFieldValue('recurrence.start', date)}\n selectsStart\n startDate={formik.values.recurrence.start}\n endDate={formik.values.recurrence.end}\n maxDate={formik.values.recurrence.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n />\n
    \n
    \n \n
    \n
    \n }\n selected={formik.values.recurrence.end}\n onChange={(date) => formik.setFieldValue('recurrence.end', date)}\n selectsEnd\n startDate={formik.values.recurrence.start}\n endDate={formik.values.recurrence.end}\n minDate={formik.values.recurrence.start}\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n />\n
    \n
    \n
    }\n
    \n {['2', '3'].includes(formik.values.recurrence.type) &&
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n
    }\n {formik.values.recurrence.type === '2' &&
    \n \n
    \n {weeks.map((week: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n
    \n \n
    }\n {formik.values.recurrence.type === '3' && <>\n
    \n
    \n \n Répeter toutes les\n \n \n \n Semaines\n \n
    \n
    \n }\n
    \n
    \n \n
    \n
    \n \n}\n\nexport default BookingEditForm;","import React, {useEffect, useState} from \"react\";\nimport BookingEditForm from \"../../../booking/edit/form\";\nimport {EventClickArg} from \"@fullcalendar/react\";\n\nconst CalendarBookingEdit:React.FC<{arg?: EventClickArg, handleSubmitSuccess: (ev: any) => any; close: () => any}> = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(0);\n\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default CalendarBookingEdit;","import React, {useEffect, useState} from \"react\";\nimport BookingEditForm from \"../../../../booking/edit/form\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\n\nconst BookingResizeEdit:React.FC<{arg?: EventResizeDoneArg, handleSubmitSuccess: (ev: any) => any; close: () => any}> = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(0);\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarBooking')! as HTMLDivElement;\n el.addEventListener('hide.bs.offcanvas', cancelResize)\n\n return () => el?.removeEventListener('hide.bs.offcanvas', cancelResize)\n }, [arg])\n\n const cancelResize = () => {\n if (arg && arg.oldEvent){\n arg.event.setDates(arg.oldEvent.start!, arg.oldEvent.end!);\n }\n }\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1)\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default BookingResizeEdit;","import {Salary} from \"../../models/salary\";\nimport {Granted} from \"../granted\";\n\nconst IsGranted = (right: string, salary?: Salary) => {\n return Granted(right, salary?.id);\n}\n\nexport default IsGranted;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\";\nimport {getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as exceptionApi from \"../../../../adapters/booking/exception\";\nimport * as bookingApi from \"../../../../adapters/booking\";\nimport * as absenceApi from \"../../../../adapters/absence\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport {TYPE_EVENT, TYPE_EVENT_EXCEPTION} from \"../../../../constants/event\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {EVENT_TYPE_BOOKING, EVENT_TYPE_BOOKING_EXCEPTION} from \"../../../../constants/calendar\";\nimport {closeSidebar} from \"../../../../actions/rightSidebar\";\nimport * as API from \"../../../../adapters/booking\";\nimport Granted from \"../../../../security/isGranted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\ninterface Interface {\n arg: EventClickArg,\n handleEventChange: (ev: any) => any,\n calendar: string,\n setCalendarSidebarBookingProps: React.Dispatch,\n setCalendarSidebarSignedProps: React.Dispatch,\n setCalendarAbsenceSidebarProps: React.Dispatch,\n close: () => any\n}\n\n\nconst BookingShow:React.FC = (props) => {\n\n const {arg, handleEventChange, calendar, close, setCalendarSidebarBookingProps, setCalendarAbsenceSidebarProps, setCalendarSidebarSignedProps} = props;\n\n const [confirmCancel, setConfirmCancel] = useState(false)\n const [cancelType, setCancelType] = useState(1)\n const [removingBooking, setRemovingBooking] = useState(false)\n const [removingAbsence, setRemovingAbsence] = useState(false)\n\n const removeBooking = () => {\n if (arg){\n setRemovingBooking(true)\n switch (cancelType){\n case 1:\n API.cancelOnce(arg.event.extendedProps.bookingId, arg.event.extendedProps.instanceToken).then(resp => removeBookingSuccess(resp.data))\n break;\n case 3:\n API.cancelAfter(arg.event.extendedProps.bookingId, format(arg.event.start!, 'uuuu-MM-dd')).then(resp => removeBookingSuccess(resp.data))\n break;\n case 2:\n API.cancel(arg.event.extendedProps.bookingId).then(resp => removeBookingSuccess(resp.data))\n break;\n }\n }\n }\n\n const removeAbsence = () => {\n if (arg.event.extendedProps.absence){\n setRemovingAbsence(true);\n absenceApi.cancel(arg.event.extendedProps.absence.id).then((data) => removeAbsenceSuccess(data.data))\n }\n }\n\n const removeBookingSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => setRemovingBooking(false))\n .then(() => true)\n }\n\n const removeAbsenceSuccess = (ev: any) => {\n if(arg){\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => arg.event.setExtendedProp('absence', null))\n .then(() => setRemovingAbsence(false))\n .then(() => true)\n }\n }\n\n const setLabourDayWorked = (worked: boolean) => {\n if (arg){\n switch (arg.event.extendedProps.eventType){\n case EVENT_TYPE_BOOKING:\n break;\n case EVENT_TYPE_BOOKING_EXCEPTION:\n break;\n }\n }\n }\n\n if (confirmCancel && arg){\n return <>\n
    \n
    Créneau de {arg.event.extendedProps.salary.title}
    \n \n
    \n
    \n
    \n
    \n Êtes vous sûr de vouloir supprimer le créneau suivant ?\n
    \n
    \n
    \n

    \n {arg.event.extendedProps.salary.title}\n

    \n
    \n
    {format(arg.event.start!, \"E dd MMMM uuuu HH:mm\")} - {format(arg.event.end!, \"HH:mm\")}
    \n
    \n {arg.event.extendedProps.timeCaption}\n
    \n
    \n
    \n {arg.event.extendedProps.recurrence.type !== 1 && <>\n
    \n

    \n \n Créneau récurrent\n \n {arg.event.extendedProps.recurrence.description}\n

    \n\n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n }\n {arg.event.extendedProps.bookingGroupId && cancelType === 3 &&
    \n Attention, ce créneau est rataché à l'emploi du temps {arg.event.extendedProps.bookingGroupTitle},\n en retirant les occurences suivantes, les autres créneaux ratachés s'arreteront en même temps\n
    }\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n }\n\n return <>\n
    \n
    Créneau de {arg.event.extendedProps.salary.title}
    \n \n
    \n {!arg &&
    \n

    \n Aucun créneau séléctionné\n

    \n
    }\n {arg &&
    \n

    \n Détails du créneau\n

    \n
    \n
    \n \n \n \n Début\n \n \n {format(arg.event.start!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Fin\n \n \n {format(arg.event.end!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Type d'heure\n \n \n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n \n \n \n \n Établissement\n \n \n {arg.event.extendedProps.company?.title || }\n \n \n \n \n Emplacement\n \n \n {arg.event.extendedProps.localisation?.title || }\n \n \n \n \n Activité\n \n \n {arg.event.extendedProps.activity?.title || }\n \n \n \n
    \n\n
    \n {Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n
    \n \n
    \n
    \n
    \n\n {Granted(accessRights.EDIT_TIME_CLOCK, arg.event.extendedProps.salary.id) && calendarTypes.CALENDAR_SIGNED_GLOBAL === calendar && <>\n
    \n \n
    \n }\n\n {arg.event.extendedProps.isLabourDay &&
    \n
    \n

    \n Jour férié\n

    \n

    \n Cochez la case ci dessous si le collaborateur travail ce jour.\n

    \n
    \n setLabourDayWorked(e.target.checked)} type=\"checkbox\" id=\"labourDayWorked\"/>\n \n
    \n
    }\n\n {arg.event.extendedProps.absence &&
    \n
    \n

    \n Absence\n

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Type\n \n {arg.event.extendedProps.absence.typeName}\n
    \n Début\n \n {format(new Date(arg.event.extendedProps.absence.start))}\n
    \n Fin\n \n {format(new Date(arg.event.extendedProps.absence.end))}\n
    \n Nb de jours\n \n {arg.event.extendedProps.absence.nbDays}\n
    \n
    \n {Granted(accessRights.EDIT_ABSENCE, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n {Granted(accessRights.DELETE_ABSENCE, arg.event.extendedProps.salary.id) &&
    \n \n
    }\n
    \n
    }\n\n
    }\n \n}\n\nexport default BookingShow;","import {post, get} from \"../../xhr\";\nimport * as models from \"../../../models/booking/group\"\n\n\nexport function create(requestData: models.Payload){\n return post('booking/group/create', requestData);\n}\n\nexport function edit(id: number, requestData: models.Payload){\n return post('booking/group/edit/' + id, requestData);\n}\n\nexport function list(requestData: {salary: number, query?: string}){\n return post('booking/group/list', requestData);\n}\n\nexport function show(id: number){\n return get('booking/group/show/' + id);\n}\n\nexport function cancel(id: number){\n return get('booking/group/cancel/' + id);\n}","import React, {BaseSyntheticEvent, useEffect, useState} from \"react\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Company} from \"../../../../models/companies\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as api from \"../../../../adapters/booking\";\nimport DatePicker from \"react-datepicker\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport Loader from \"../../../../utils/loader\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {setMinutes, setHours} from \"date-fns\";\nimport {SingleSalarySelected, SingleSalarySelector} from \"../../../../utils/salarySelector/single\";\nimport format from \"../../../../utils/locale\"\nimport FormError from \"../../../../utils/formError\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {AccountingTypes, getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as groupApi from \"../../../../adapters/booking/group\";\nimport {BookingRecurrence} from \"../../../../models/booking\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\ninterface Interface {\n initialSalary?: Salary,\n initialCompany?: Company,\n start?: Date,\n end?: Date,\n localisation?: Localisation,\n activity?: Activity,\n recurrence?: BookingRecurrence,\n bookingGroupId?: number,\n handleSubmitSuccess: (props: any[]) => any\n}\n\nconst BookingAddForm: React.FC = (props) => {\n\n const {initialCompany, initialSalary, end, start, localisation, activity, recurrence, bookingGroupId, handleSubmitSuccess} = props;\n\n const [isLoading, setIsLoading] = useState(true);\n const [displaySalarySelector, setDisplaySalarySelector] = useState(false);\n const [weeks, setWeeks] = useState([]);\n const [groups, setGroups] = useState<{title: string, id: number, start: string, finish: string}[]>([])\n const [salary, setSalary] = useState(initialSalary);\n const [company, setCompany] = useState(initialCompany);\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (salary) {\n groupApi.list({\n salary: salary.id\n }).then(data => setGroups(data.data))\n }\n }, [salary])\n\n const [initialValues, setInitialValues] = useState({\n salary: salary?.id,\n beginAt: start ? start : setMinutes(new Date(), 0),\n endAt: end ? end : setMinutes(new Date(), 30),\n accountingType: 1,\n company: company?.id,\n localisation: localisation?.id || salary?.defaultLabels?.find(d => d.company.id === company?.id)?.localisation?.id,\n activity: activity?.id || salary?.defaultLabels?.find(d => d.company.id === company?.id)?.activity?.id,\n bookingGroup: bookingGroupId || \"\",\n recurrence: {\n type: String(recurrence?.type || '1'),\n }\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n salary: Yup.number(),\n beginAt: Yup.date().required('Début de créneau requis'),\n endAt: Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n accountingType: Yup.number().required(),\n company: Yup.number().required('Veuillez choisir un point de vente'),\n localisation: Yup.number().nullable(),\n activity: Yup.number().nullable(),\n description: Yup.string().nullable(),\n bookingGroup: Yup.number().nullable(),\n recurrence: Yup.object().shape({\n type: Yup.string().required(),\n })\n }))\n\n useEffect(() => {\n let _initialValues:any = {...initialValues}\n\n if (String(_initialValues.recurrence.type) !== '1'){\n if(recurrence?.daysOfWeek){\n _initialValues.recurrence.daysOfWeek = recurrence.daysOfWeek.map((d: number) => String(d));\n }\n handleRecurrenceTypeChange(String(_initialValues.recurrence.type))\n }\n\n if(_initialValues.recurrence.type === '2' && recurrence?.weekLetters){\n _initialValues.recurrence.weekLetters = recurrence.weekLetters.map((d: number) => String(d));\n }\n\n if(_initialValues.recurrence.type === '3' && recurrence?.separationCount){\n _initialValues.recurrence.separationCount = recurrence.separationCount;\n }\n\n setInitialValues({..._initialValues})\n setIsLoading(false);\n }, [])\n\n useEffect(() => {\n if (company){\n getWeeks(company)\n }\n }, [company])\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n validateOnChange: true,\n enableReinitialize: true,\n isInitialValid: false,\n onSubmit: (values, formikHelpers) => {\n api.create(values)\n .then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n })\n .catch(error => dispatch(axiosError(error)))\n }\n })\n\n const handleSalaryChange = (data: Salary) => {\n let _values = {...formik.values}\n\n if (company && data.companies.find(c => c.id === company.id)){\n _values.company = data.companies.find(c => c.id === company.id)!.id\n }else{\n _values.company = data.companies[0].id\n }\n\n formik.setValues(_values)\n\n setSalary(data)\n handleBookingGroupChange();\n setCompany(data.companies[0])\n }\n\n const handleBookingGroupChange = (id?: number|string) => {\n let recurrenceValidation = {...validationSchema.fields.recurrence.fields};\n let _values = {...formik.values};\n _values.bookingGroup = id;\n\n if (id){\n delete _values.recurrence.start\n delete recurrenceValidation.start\n delete _values.recurrence.end\n delete recurrenceValidation.end\n }else if(formik.values.recurrence.type !== '1'){\n _values.recurrence.start = _values.beginAt\n _values.recurrence.end = null\n recurrenceValidation.start = Yup.date().required('Champs requis');\n recurrenceValidation.end = Yup.date().nullable()\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return !value || (value && start <= value)\n })\n }\n\n let validation = {\n salary: Yup.number().required('Veuillez choisir un collaborateur'),\n bookingGroup: Yup.number().nullable(),\n beginAt: Yup.date().required('Début de créneau obligatoire'),\n endAt: Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n company: Yup.number().required('Veuillez préciser un point de vente'),\n localisation: Yup.number().nullable(),\n activity: Yup.number().nullable(),\n recurrence: Yup.object().shape({...recurrenceValidation})\n }\n\n setValidationSchema(Yup.object().shape({...validation}));\n setInitialValues({..._values})\n }\n\n const handleRecurrenceTypeChange = (type : string) => {\n let fields:string[] = [];\n\n let recurrenceValidation: any = {\n type: Yup.string().required(),\n }\n\n switch (type){\n case '1':\n fields = ['type'];\n break;\n case '2':\n recurrenceValidation.daysOfWeek = Yup.array().of(Yup.number()).min(1, 'Veuillez choisir au moins un jour').required();\n recurrenceValidation.weekLetters = Yup.array().of(Yup.number()).min(1, 'Veuillez choisir au moins une semaine').required();\n fields = ['type', 'daysOfWeek', 'weekLetters'];\n break;\n case '3':\n recurrenceValidation.daysOfWeek = Yup.array().of(Yup.number()).min(1, 'Veuillez choisir au moins un jour');\n recurrenceValidation.separationCount = Yup.number().min(1).required('Veuillez préciser une répétition de semaine');\n fields = ['type', 'daysOfWeek', 'separationCount'];\n break;\n }\n\n let _values = {...formik.values}\n _values.recurrence.type = type;\n\n if (!_values.bookingGroup && type !== '1'){\n fields.push('start', 'end')\n recurrenceValidation.start = Yup.date().required('Début de récurrence requise');\n recurrenceValidation.end = Yup.date().nullable()\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return !value || (value && start <= value)\n })\n }\n\n // delete unecessary values\n for(let key in _values.recurrence){\n if (!fields.includes(key) && _values.recurrence.hasOwnProperty(key)){\n delete _values.recurrence[key];\n }\n }\n\n // add default values\n for(let key in fields){\n if(!_values.recurrence.hasOwnProperty(fields[key])){\n switch (fields[key]){\n case 'daysOfWeek':\n _values.recurrence.daysOfWeek = [format(_values.beginAt, 'i')];\n break;\n case 'weekLetters':\n _values.recurrence.weekLetters = [];\n break;\n case 'separationCount':\n _values.recurrence.separationCount = 1;\n break;\n case 'start':\n _values.recurrence.start = _values.beginAt;\n break;\n case 'end':\n _values.recurrence.end = null;\n break;\n }\n }\n }\n\n let validation = {\n salary: Yup.number().required('Veuillez choisir un collaborateur'),\n bookingGroup: Yup.number().nullable(),\n beginAt: Yup.date().required('Début de créneau obligatoire'),\n endAt: Yup.date().required('Fin de créneau requis')\n .test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n company: Yup.number().required('Veuillez préciser un point de vente'),\n localisation: Yup.number().nullable(),\n activity: Yup.number().nullable(),\n recurrence: Yup.object().shape({...recurrenceValidation})\n }\n\n setValidationSchema(Yup.object().shape({...validation}));\n setInitialValues({..._values})\n }\n\n const handleWeekDayChange = (e: BaseSyntheticEvent) => {\n let checked = e.target.checked;\n let _values = {...formik.values};\n let dayElements: HTMLInputElement[]|any = document.getElementsByName(\"recurrence.daysOfWeek\")\n let daysOfWeek_copy: string[] = [];\n dayElements.forEach((day: HTMLInputElement) => {\n day.checked = checked;\n if (checked) {\n daysOfWeek_copy.push(day.value)\n }\n })\n\n _values.recurrence.daysOfWeek = daysOfWeek_copy;\n setInitialValues({..._values});\n }\n\n const handleWeekChange = (e: BaseSyntheticEvent) => {\n let checked = e.target.checked;\n let _values = {...formik.values};\n let weekElements: HTMLInputElement[]|any = document.getElementsByName(\"recurrence.weekLetters\")\n let weekLetters_copy: string[] = [];\n weekElements.forEach((week: HTMLInputElement) => {\n week.checked = checked;\n if (checked) {\n weekLetters_copy.push(week.value)\n }\n })\n _values.recurrence.weekLetters = weekLetters_copy;\n setInitialValues({..._values});\n }\n\n const getWeeks = (company: Company) => {\n\n if (!company) return false;\n\n let length = company.timesheet.recurrence;\n let ret: string[] = [];\n for (let i = 0; i < length; i++){\n ret.push(String.fromCharCode(65 + i));\n }\n setWeeks(ret);\n }\n\n if (isLoading){\n return \n }\n\n\n if (!formik.values.salary || displaySalarySelector){\n return {\n handleSalaryChange(data)\n formik.setFieldValue('salary', data.id)\n setDisplaySalarySelector(false)\n }}\n onClose={() => setDisplaySalarySelector(false)}\n initialValue={formik.values.salary}\n required={true}\n />;\n }\n\n return (\n
    \n
    \n formik.setFieldValue('salary', null)}\n onOpen={() => {\n setDisplaySalarySelector(true)\n formik.setFieldTouched('salary', true)\n }}\n initialValue={formik.values.salary}\n initialSalary={salary}\n validationClass={validationClass(formik.errors, formik.touched, 'salary')}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n }\n selected={formik.values.beginAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`beginAt`, date)\n formik.setFieldTouched('beginAt', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n selected={formik.values.endAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`endAt`, date)\n formik.setFieldTouched('endAt', true)\n }}\n selectsEnd\n startDate={formik.values.beginAt}\n endDate={formik.values.endAt}\n minDate={formik.values.beginAt}\n minTime={setHours(setMinutes(new Date(),\n new Date(formik.values.endAt).setHours(0,0,0,0) === new Date(formik.values.beginAt).setHours(0,0,0,0) ? new Date(formik.values.beginAt).getMinutes() : 0\n ),\n new Date(formik.values.endAt).setHours(0,0,0,0) === new Date(formik.values.beginAt).setHours(0,0,0,0) ? new Date(formik.values.beginAt).getHours() : 0\n )}\n maxTime={setHours(setMinutes(new Date(), 45), 23)}\n timeIntervals={15}\n dateFormat=\"E dd MMM uuuu HH:mm\"\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n ({label: company.title, value: company.id!})) || []}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n value={company ? {label: company.title, value: company.id!} : undefined}\n onChange={(choice) => {\n formik.setFieldValue('company', choice?.value)\n formik.setFieldValue('localisation', null)\n formik.setFieldValue('activity', null)\n setCompany(salary!.companies.find((company: Company) => company.id === choice?.value)!)\n if (formik.values.hasOwnProperty('weekLetters')) {\n formik.setFieldValue('weekLetters', []);\n }\n }}\n label={'Point de vente'}\n labelIcon={'bi bi-shop text-primary me-2'}\n className={validationClass(formik.errors, formik.touched, 'company')}\n />\n \n
    \n {formik.values.company && <>\n
    \n ({label: localisation.title, value: localisation.id!})) : []}\n fetchEntity=\"localisation\"\n fetchParams={{ companies: [formik.values.company] }}\n className={validationClass(formik.errors, formik.touched, 'localisation')}\n onChange={(e) => formik.setFieldValue('localisation', e?.value)}\n label={'Emplacement'}\n labelIcon={'bi bi-geo-alt text-primary me-2'}\n />\n \n
    \n
    \n ({label: activity.title, value: activity.id!})) || []}\n fetchEntity=\"activity\"\n fetchParams={{ companies: [formik.values.company] }}\n className={validationClass(formik.errors, formik.touched, 'activity')}\n onChange={(e) => formik.setFieldValue('activity', e?.value)}\n label={'Activité'}\n labelIcon={'bi bi-bookmark-plus text-primary me-2'}\n />\n \n
    \n }\n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n handleRecurrenceTypeChange('1')\n }} />\n \n
    \n
    \n {\n handleRecurrenceTypeChange('2')\n }} />\n \n
    \n
    \n {\n handleRecurrenceTypeChange('3')\n }} />\n \n
    \n
    \n
    \n {['2','3'].includes(formik.values.recurrence.type) &&\n <>\n
    \n
    \n
    \n g.id == formik.values.bookingGroup) ? {value: groups.find(g => g.id == formik.values.bookingGroup)!.id, label: groups.find(g => g.id == formik.values.bookingGroup)!.title} : undefined }\n options={groups.map(g => ({label: g.title, value: g.id}))}\n onChange={(c) => handleBookingGroupChange(c?.value)}\n />\n {formik.values.bookingGroup &&
    \n {groups.find(g => g.id === formik.values.bookingGroup) && <>A partir du {format(new Date(groups.find(g => g.id === formik.values.bookingGroup)!.start))}}\n {groups.find(g => g.id === formik.values.bookingGroup)?.finish && <> jusqu'au {format(new Date(groups.find(g => g.id === formik.values.bookingGroup)!.finish))}}\n
    }\n
    \n
    \n
    \n {!formik.values.bookingGroup &&
    \n <>\n
    \n }\n selected={formik.values.recurrence.start}\n onChange={(date) => formik.setFieldValue('recurrence.start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.recurrence.start}\n endDate={formik.values.recurrence.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n selected={formik.values.recurrence.end}\n onChange={(date) => formik.setFieldValue('recurrence.end', date)}\n selectsEnd\n startDate={formik.values.recurrence.start}\n endDate={formik.values.recurrence.end}\n minDate={formik.values.recurrence.start}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    }\n
    \n
    \n \n \n
    \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n
    \n \n }\n {formik.values.recurrence.type === '3' &&\n
    \n
    \n
    \n \n \n \n
    \n \n Semaines\n \n
    \n
    }\n {formik.values.recurrence.type === '2' &&\n
    \n
    \n \n \n
    \n
    \n {weeks.map((week: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n
    }\n \n
    \n )\n}\n\nexport default BookingAddForm;","import React, {useEffect, useState} from \"react\";\nimport BookingAddForm from \"../../../booking/add/form\";\nimport {CalendarApi} from \"@fullcalendar/react\";\nimport {setHours, setMinutes} from \"date-fns\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\n\nconst BookingAdd:React.FC<{api: () => CalendarApi, close: () => any, hasApi: () => boolean, handleSubmitSuccess: (ev: any[]) => any, salary?: Salary, company?: Company, localisation?: Localisation, activity?: Activity}> = (props) => {\n\n const {hasApi, api, handleSubmitSuccess, salary, company, activity, localisation, close} = props;\n\n const [start, setStart] = useState(new Date());\n const [end, setEnd] = useState(new Date());\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [salary, company, activity, localisation])\n\n useEffect(() => {\n if (hasApi()){\n setStart(setMinutes(setHours(api()?.getDate(), (new Date()).getHours()), 0))\n setEnd(setMinutes(setHours(api()?.getDate(), (new Date()).getHours() + 1), 0))\n }\n }, [])\n\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default BookingAdd;","import React, {useEffect, useState} from \"react\";\nimport {EventDropArg} from \"@fullcalendar/react\";\nimport BookingAddForm from \"../../../../booking/add/form\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface Interface {\n arg?: EventDropArg,\n handleSubmitSuccess: (props: any[]) => any,\n close: () => any,\n}\n\nconst BookingDrop:React.FC = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(1);\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarBooking')! as HTMLDivElement;\n el.addEventListener('hide.bs.offcanvas', cancelDrop)\n\n return () => el.removeEventListener('hide.bs.offcanvas', cancelDrop)\n }, [arg])\n\n const cancelDrop = () => {\n if (arg && arg.oldEvent){\n arg?.event.setDates(arg.oldEvent.start!, arg.oldEvent.end);\n }\n }\n\n const handleSubmit = (ev: any) => {\n if (arg && arg.oldEvent){\n arg?.event.setDates(arg.oldEvent.start!, arg.oldEvent.end);\n }\n\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default BookingDrop;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\nimport BookingAddForm from \"../../../../booking/add/form\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {setMinutes} from \"date-fns\";\n\ninterface Interface {\n arg?: DateSelectArg,\n handleSubmitSuccess: (props: any[]) => any,\n salary?: Salary,\n company?: Company,\n activity?: Activity,\n localisation?: Localisation,\n close: () => any\n}\n\nconst BookingSelect:React.FC = (props) => {\n\n const {arg, handleSubmitSuccess, close, salary, company, activity, localisation} = props;\n const [key, setKey] = useState(1);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1)\n }, [arg])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default BookingSelect;","import React, {useEffect, useState} from \"react\";\nimport {CalendarApi, DateSelectArg, EventClickArg, EventDropArg} from \"@fullcalendar/react\";\nimport CalendarBookingEdit from \"../edit\";\nimport CalendarBookingResize from \"../edit/resize\";\nimport CalendarBookingShow from \"../show\";\nimport CalendarBookingAdd from \"../add\";\nimport CalendarBookingDrop from \"../add/drop\";\nimport CalendarBookingSelect from \"../add/select\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface InterfaceBookingShow {\n sidebarType: 'BOOKING_SHOW',\n arg: EventClickArg,\n calendar: string,\n setCalendarSidebarBookingProps: React.Dispatch,\n setCalendarSidebarSignedProps: React.Dispatch,\n setCalendarAbsenceSidebarProps: React.Dispatch,\n}\n\ninterface InterfaceBookingEdit {\n sidebarType: 'BOOKING_EDIT',\n arg?: EventClickArg,\n}\n\ninterface InterfaceBookingResize {\n sidebarType: 'BOOKING_RESIZE',\n arg?: EventResizeDoneArg,\n}\n\ninterface InterfaceBookingAdd {\n sidebarType: 'BOOKING_ADD',\n api: () => CalendarApi,\n hasApi: () => boolean,\n salary?: Salary,\n company?: Company,\n localisation?: Localisation,\n activity?: Activity\n}\n\ninterface InterfaceBookingDop {\n sidebarType: 'BOOKING_DROP',\n arg?: EventDropArg,\n}\n\ninterface InterfaceBookingSelect {\n sidebarType: 'BOOKING_SELECT',\n arg?: DateSelectArg,\n salary?: Salary,\n company?: Company,\n activity?: Activity,\n localisation?: Localisation,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarBookingSidebarInterface = {trigger: number} & (Interface | InterfaceBookingShow | InterfaceBookingEdit | InterfaceBookingResize | InterfaceBookingAdd | InterfaceBookingDop | InterfaceBookingSelect)\n\nconst CalendarBookingSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarBooking')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarBooking')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"BOOKING_EDIT\":\n return \n case \"BOOKING_SHOW\":\n return \n case \"BOOKING_RESIZE\":\n return \n case \"BOOKING_ADD\":\n return \n case \"BOOKING_DROP\":\n return \n case \"BOOKING_SELECT\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarBookingSidebarInterface & {handleEventChange: any}, nextProps: CalendarBookingSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarBookingSidebar, areEqual);\n","import React, {useState} from \"react\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {useDispatch} from \"react-redux\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport FormError from \"../../../../../utils/formError\";\nimport * as api from \"../../../../../adapters/timeClock\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {Company} from \"../../../../../models/companies\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport * as accessRightsTypes from \"../../../../../constants/accessRight\";\nimport SalarySelector from \"../../../../salary/selector\";\n\ninterface Interface {\n values: {\n start?: Date|null\n end?: Date|null\n salary: Salary\n company: Company\n timeClockId: number\n description: string\n },\n handleSubmitSuccess: (ev: any) => any;\n}\n\nconst SignedEditForm:React.FC = (props) => {\n\n const {values, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [salary, setSalary] = useState(values.salary)\n\n const initialValues = {\n beginAt: values.start,\n endAt: values.end,\n salary: salary.id,\n company: values.company.id!,\n description: values.description\n };\n\n const validationSchema = Yup.object().shape({\n beginAt: Yup.date().required('Début requis !'),\n endAt: Yup\n .date()\n .required('Fin requise !')\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return value && beginAt <= value\n }),\n salary: Yup.number().required('Veuillez choisir un collaborateur'),\n company: Yup.number().required('Veuillez choisir un point de vente'),\n description: Yup.string().nullable()\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (_values, formikHelpers) => {\n api.edit(_values, values.timeClockId).then((resp) => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n })\n }\n })\n\n return <>\n
    \n
    \n
    \n
    \n }\n name={'beginAt'}\n id={'beginAt'}\n selected={formik.values.beginAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`beginAt`, date)\n }}\n selectsStart\n showTimeInput={true}\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n name={'endAt'}\n id={'endAt'}\n selected={formik.values.endAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`endAt`, date)\n }}\n selectsEnd\n startDate={formik.values.beginAt}\n endDate={formik.values.endAt}\n minDate={formik.values.beginAt}\n showTimeInput={true}\n timeIntervals={15}\n timeCaption=\"Heure de fin\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n
    \n
    \n formik.setFieldValue('salary', s.id)}\n accessRight={accessRightsTypes.EDIT_TIME_CLOCK}\n />\n
    \n
    \n ({label: c.title, value: c.id!!})) : undefined}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n className={validationClass(formik.errors, formik.touched, 'company')}\n value={values.company ? {label: values.company.title, value: values.company.id!} : undefined}\n onChange={(choice) => formik.setFieldValue('company', choice?.value)}\n />\n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n}\n\nexport default SignedEditForm;","import React from \"react\";\nimport SignedEditForm from \"./form\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\n\nconst SignedEdit:React.FC<{handleSubmitSuccess: (ev: any) => any; close: () => any,\n salary: Salary\n start: Date|null,\n end: Date|null,\n company: Company,\n timeClockId: number,\n description: string\n}> = (props) => {\n\n const {handleSubmitSuccess, close, salary, end, description, company, timeClockId, start} = props;\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Modifier un badgeage
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default SignedEdit;","import React, {useEffect, useState} from \"react\";\nimport SignedEditForm from \"../form\";\nimport {Offcanvas} from \"bootstrap\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\n\nconst SignedResizeEdit:React.FC<{arg?: EventResizeDoneArg, handleSubmitSuccess: (ev: any) => any, close: () => any}> = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n const [key, setKey] = useState(0);\n\n useEffect(() => {\n let elem = document.getElementById('offcanvasCalendarSigned')!\n elem.addEventListener('hide.bs.offcanvas', cancelResize)\n\n return () => elem.removeEventListener('hide.bs.offcanvas', cancelResize)\n }, [arg])\n\n const cancelResize = () => {\n if (arg && arg.oldEvent){\n arg.event.setDates(arg.oldEvent.start!, arg.oldEvent.end!);\n }\n }\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1)\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default SignedResizeEdit;","import {get} from \"../../xhr\";\n\nexport function download(timeClockId: number, fileId: number){\n return get(`time_clock/${timeClockId}/file/${fileId}/download`, {responseType: \"arraybuffer\"})\n}","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as api from \"../../../../adapters/timeClock\";\nimport * as accessRight from \"../../../../constants/accessRight\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {Granted} from \"../../../../security/granted\";\nimport {Company} from \"../../../../models/companies\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as fileApi from \"../../../../adapters/timeClock/file\";\nimport Loader from \"../../../../utils/loader\";\n\ninterface Interface {\n handleEventChange: (ev: any) => any\n close: () => any,\n setCalendarSignedSidebarProps: React.Dispatch,\n timeClockId: number,\n salary: Salary,\n start: Date|null,\n _start?: string,\n end: Date|null,\n _end?: string,\n company: Company;\n isAnomaly: boolean;\n files?: any[]\n}\n\nconst SignedShow:React.FC = (props) => {\n\n const {handleEventChange, close, setCalendarSignedSidebarProps, salary, company, end, _end, timeClockId, start, _start, isAnomaly, files} = props;\n\n const [removing, setRemoving] = useState(false)\n\n const removeEvent = () => {\n setRemoving(true)\n api.remove(timeClockId).then((resp) => removeEventSuccess(resp.data));\n }\n\n const [_files, setFiles] = useState<{id: number, loaded: boolean, url: string}[]>(files?.map(f => ({id: f.id, loaded: false, url: \"\"})) || []);\n\n useEffect(() => {\n _files.map(f => addImage(f.id))\n }, [])\n\n async function addImage(id: number)\n {\n let url: string = \"\";\n await fileApi.download(timeClockId, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n url = URL.createObjectURL(newBlob);\n\n let index = _files.findIndex(f => f.id === id)\n\n setFiles(prev => {\n prev[index] = {id: prev[index].id, loaded: true, url: url}\n\n return [...prev];\n })\n })\n }\n\n const removeEventSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => setRemoving(false))\n .then(() => true)\n }\n\n return <>\n {<>\n
    \n
    Badgeage de {salary.title}
    \n \n
    \n
    \n

    \n Détails du badgeage\n

    \n
    \n
    \n \n \n \n Début\n \n \n {start ? format(start, \"E dd MMMM uuuu HH:mm\") : }\n {_start && Granted(accessRight.EDIT_TIME_CLOCK, salary.id) &&
    Avant bornage : {format(new Date(_start), \"E dd MMMM uuuu HH:mm\")}
    }\n \n \n \n \n Fin\n \n \n {end ? format(end, \"E dd MMMM uuuu HH:mm\") : }\n {_end && Granted(accessRight.EDIT_TIME_CLOCK, salary.id) &&
    Avant bornage : {format(new Date(_end), \"E dd MMMM uuuu HH:mm\")}
    }\n \n \n \n \n Établissement\n \n \n {company?.title || }\n \n \n {_files.length > 0 && \n \n Photos\n \n \n
    \n {_files.map(f => {\n if(!f.loaded){\n return
    \n \n
    \n }else{\n return
    \"\"
    \n }\n })}\n
    \n \n }\n \n
    \n
    \n {Granted(accessRight.EDIT_TIME_CLOCK, salary.id) && <>\n {isAnomaly &&
    \n {(!start || !end) &&
    \n Veuillez renseigner un début et une fin pour retirer l'anomalie\n
    }\n
    }\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n }\n
    \n }\n \n}\n\nexport default SignedShow;","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../adapters/calendar\";\nimport format from \"../../../utils/locale\";\n\nconst BookingTable:React.FC<{start?: Date, end?: Date, salary?: number}> = (props) => {\n\n const {start, end, salary} = props\n\n const [isLoading, setIsLoading] = useState(false)\n const [events, setEvents] = useState([]);\n\n useEffect(() => {\n if (start && end && salary){\n setIsLoading(true)\n let controller = new AbortController();\n api.fetchCalendar({start: format(start, \"uuuu-MM-dd\"), end: format(end, \"uuuu-MM-dd\"), options: {isSingle: true, explodeRecurrence: true, salaries: [salary]}}, controller.signal)\n .then(data => {\n setEvents(data.data.events);\n setIsLoading(false);\n })\n }\n }, [start, end])\n\n if (!salary || !start || !end){\n return <>\n }\n\n if (isLoading){\n return
    \n
    \n Loading...\n
    Chargement des horaires plannifiés...
    \n
    \n }\n\n return \n \n \n \n \n \n \n \n \n \n \n \n {!events.length && \n \n }\n {events.map((e: any) => \n \n \n \n )}\n \n
    \n

    Planifié

    \n
    \n Horaire\n \n Durée\n \n Point de vente\n
    \n Aucun horaire planifié\n
    \n {format(new Date(e.start), 'HH:mm')} {format(new Date(e.end), 'HH:mm')}\n \n {e.timeCaption}\n \n {e.company.title}\n
    \n}\n\nexport default BookingTable;","import React, {useState} from \"react\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../../adapters/timeClock\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport {Salary} from \"../../../../../models/salary\";\nimport FormError from \"../../../../../utils/formError\";\nimport DatePicker from \"react-datepicker\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport {Company} from \"../../../../../models/companies\";\nimport {useDispatch} from \"react-redux\";\nimport BookingTable from \"../../../../booking/table\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport * as accessRightsTypes from \"../../../../../constants/accessRight\";\nimport SalarySelector from \"../../../../salary/selector\";\n\ninterface Interface {\n start?: Date,\n end?: Date,\n initialSalary?: Salary,\n company?: Company,\n handleSubmitSuccess: (props: any[]) => any\n}\n\nconst SignedAddForm:React.FC = (props) => {\n\n const {initialSalary, company, start, end, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const [salary, setSalary] = useState(initialSalary)\n\n const initialValues = {\n beginAt: start,\n endAt: end,\n salary: salary?.id,\n company: company?.id,\n description: \"\"\n };\n\n const validationSchema = Yup.object().shape({\n beginAt: Yup.date().required('Début requis !'),\n endAt: Yup\n .date()\n .nullable()\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { beginAt } = this.parent;\n return (!value || (value && beginAt <= value))\n }),\n salary: Yup.number().required('Veuillez choisir un collaborateur'),\n company: Yup.number().required('Veuillez choisir un point de vente'),\n description: Yup.string().nullable()\n });\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n });\n }\n })\n\n return <>\n
    \n
    \n
    \n
    \n }\n name={'beginAt'}\n id={'beginAt'}\n selected={formik.values.beginAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`beginAt`, date)\n }}\n maxTime={formik.values.endAt}\n selectsStart\n showTimeInput={true}\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n name={'endAt'}\n id={'endAt'}\n selected={formik.values.endAt}\n onChange={(date: Date) => {\n formik.setFieldValue(`endAt`, date)\n }}\n selectsEnd\n startDate={formik.values.beginAt}\n endDate={formik.values.endAt}\n minDate={formik.values.beginAt}\n minTime={formik.values.beginAt}\n showTimeInput={true}\n timeIntervals={15}\n timeCaption=\"Heure de fin\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n required={false}\n isClearable={true}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n
    \n
    \n {\n formik.setFieldValue('salary', s.id)\n setSalary(s)\n }}\n accessRight={accessRightsTypes.EDIT_TIME_CLOCK}\n />\n
    \n
    \n ({label: c.title, value: c.id!}))] : []}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [formik.values.salary] }}\n className={validationClass(formik.errors, formik.touched, 'company')}\n value={company ? {label: company.title, value: company.id!} : undefined}\n onChange={(choice) => formik.setFieldValue('company', choice?.value)}\n />\n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n \n \n}\n\nexport default SignedAddForm;","import React, {useEffect, useState} from \"react\";\nimport SignedAddForm from \"./form\";\nimport {CalendarApi} from \"@fullcalendar/react\";\nimport {setHours, setMinutes} from \"date-fns\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Offcanvas} from \"bootstrap\";\n\nconst SignedAdd:React.FC<{close: () => any, handleSubmitSuccess: (ev: any[]) => any, salary?: Salary, company?: Company, start?: Date, end?: Date}> = (props) => {\n\n const {handleSubmitSuccess, salary, company, end, start, close} = props;\n\n const [_start, setStart] = useState(start || new Date());\n const [_end, setEnd] = useState(end || new Date());\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n\n if (start){\n setStart(start);\n }\n if (end){\n setEnd(end);\n }\n\n }, [salary, company, start, end])\n\n return <>\n
    \n
    Ajouter un badgeage
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default SignedAdd;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\nimport SignedAddForm from \"../form\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {Company} from \"../../../../../models/companies\";\nimport {setMinutes} from \"date-fns\";\n\ninterface Interface {\n arg?: DateSelectArg,\n salary?: Salary,\n company?: Company,\n handleSubmitSuccess: (props: any[]) => any,\n close: () => any;\n}\n\nconst SignedSelect:React.FC = (props) => {\n\n const {arg, handleSubmitSuccess, close, salary, company} = props;\n const [key, setKey] = useState(1);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1)\n if (arg){\n let slotDuration: any = arg.view.getOption('slotDuration')\n if (slotDuration.days === 1){\n arg.start = setMinutes(new Date(), 0);\n arg.end = setMinutes(new Date(), 30);\n }\n }\n }, [arg])\n\n return <>\n
    \n
    Ajouter un badgeage
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default SignedSelect;","import React, {useEffect, useState} from \"react\";\nimport {CalendarApi, DateSelectArg, EventClickArg} from \"@fullcalendar/react\";\nimport CalendarSignedEdit from \"../edit\";\nimport CalendarSignedResize from \"../edit/resize\";\nimport CalendarSignedShow from \"../show\";\nimport CalendarSignedAdd from \"../add\";\nimport CalendarSignedSelect from \"../add/select\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Offcanvas} from \"bootstrap\";\nimport {CalendarBookingSidebarInterface} from \"../../booking/sidebar\";\n\ninterface InterfaceSignedShow {\n sidebarType: 'SIGNED_SHOW',\n setCalendarSignedSidebarProps: React.Dispatch,\n timeClockId: number,\n salary: Salary,\n start: Date|null,\n _start?: string,\n end: Date|null,\n _end?: string,\n company: Company;\n isAnomaly: boolean;\n files: any[];\n}\n\ninterface InterfaceSignedEdit {\n sidebarType: 'SIGNED_EDIT',\n salary: Salary\n start: Date|null,\n end: Date|null,\n company: Company,\n timeClockId: number,\n description: string\n}\n\ninterface InterfaceSignedResize {\n sidebarType: 'SIGNED_RESIZE',\n arg?: EventResizeDoneArg,\n}\n\ninterface InterfaceSignedAdd {\n sidebarType: 'SIGNED_ADD',\n salary?: Salary,\n company?: Company,\n start?: Date,\n end?: Date,\n}\n\ninterface InterfaceSignedSelect {\n sidebarType: 'SIGNED_SELECT',\n arg?: DateSelectArg,\n salary?: Salary,\n company?: Company,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarSignedSidebarInterface = {trigger: number} & (Interface | InterfaceSignedShow | InterfaceSignedEdit | InterfaceSignedResize | InterfaceSignedAdd | InterfaceSignedSelect)\n\nconst CalendarSignedSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarSigned')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarSigned')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"SIGNED_EDIT\":\n return \n case \"SIGNED_SHOW\":\n return \n case \"SIGNED_RESIZE\":\n return \n case \"SIGNED_ADD\":\n return \n case \"SIGNED_SELECT\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarSignedSidebarInterface & {handleEventChange: any}, nextProps: CalendarSignedSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarSignedSidebar, areEqual);","import {Salary} from \"../salary\";\nimport {Files} from \"../file\";\n\nexport enum TYPE {\n CP = 1,\n RTT,\n CSS,\n REPOS,\n MALADIE,\n EVENT\n}\nexport enum EVENT_TYPE {\n CP = 1,\n RTT,\n CSS,\n REPOS,\n MALADIE,\n EVENT\n}\n\nexport interface Absence {\n readonly id?: number,\n readonly nbDays?: number,\n salary: Salary,\n status: 1|2|3,\n type: TYPE,\n start: string|Date,\n startFormat?: string,\n startComplement?: 1|2|3,\n startComplementTime?: Date,\n end: string|Date,\n endFormat?: string,\n endComplement?: 1|2|3,\n endComplementTime?: Date,\n files?: AbsenceFiles,\n lastDayIn?: string|Date,\n nextWorkingDay?: string,\n typeShortName?:string,\n typeName?:string,\n eventType?: 1|2|3|4,\n eventPrecision?: 1|2|3|4|5|6|7|8|9,\n color?: string,\n timeAccountedType: number,\n time: number,\n readonly createdAt?: string,\n}\n\nexport interface AbsenceFile {\n readonly id: number,\n title: string\n}\n\nexport type AbsenceFiles = AbsenceFile[];\n\nexport interface AbsencePostFields {\n salary: Salary,\n type: string,\n start: string,\n startComplement?: string,\n end: string,\n endComplement?: string,\n fileName?: string,\n lastDayIn?: string,\n eventType?: string,\n eventPrecision?: string,\n}\n\nexport type PostFieldKey = keyof AbsencePostFields;\n\nexport type Absences = Absence[];\n\nexport interface initialStateInterface {\n payload: Absences,\n single: Absence|null,\n isLoading: boolean,\n error: string|null\n}\n\nexport const initialState: initialStateInterface = {\n payload: [],\n single: null,\n isLoading: false,\n error: null\n};\n\nexport const TIME_ACCOUNTED_TYPE = [\n {label: 'Heures planifiées', value: '1'},\n {label: 'Total heures par jour', value: '3'},\n];","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../utils/locale\";\nimport * as api from \"../../../adapters/absence\";\n\nconst AbsenceBalance:React.FC<{start: Date, end: Date, salary?: number}> = (props) => {\n\n const {start, end, salary} = props;\n\n const [isLoading, setIsLoading] = useState(true)\n const [nbDays, setNbDays] = useState(0)\n const [nextWorkingDay, setNextWorkingDay] = useState()\n const [balanceBefore, setBalanceBefore] = useState(0)\n const [balanceAfter, setBalanceAfter] = useState(0)\n\n useEffect(() => {\n let controller = new AbortController();\n if (salary){\n setIsLoading(true)\n api.balance({\n start: format(start, \"uuuu-MM-dd\"),\n end: format(end, \"uuuu-MM-dd\")\n }, salary, controller.signal).then(data => {\n setNbDays(data.data.nbDays)\n setBalanceBefore(data.data.balanceBefore)\n setBalanceAfter(data.data.balanceAfter)\n setNextWorkingDay(data.data.nextWorkingDay)\n setIsLoading(false)\n })\n }\n\n return () => controller.abort();\n }, [start, end, salary])\n\n if (!salary) return <>\n\n return \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Droits cumulés au {format(end, \"dd/MM/uuuu\")}\n \n {isLoading ?
    \n Loading...\n
    : <>{balanceBefore} jour(s)}\n
    \n Jour de reprise planifié\n \n {isLoading ?
    \n Loading...\n
    : <>{nextWorkingDay ? format(new Date(nextWorkingDay)) : }}\n
    \n Durée de l'absence\n \n {isLoading ?
    \n Loading...\n
    : <>{nbDays} jour(s)}\n
    \n Droits restant après l'absence\n \n {isLoading ?
    \n Loading...\n
    : <>{balanceAfter} jour(s)}\n
    \n}\n\nexport default AbsenceBalance;","import {MULTIPART_FORM_DATA, post, get} from \"../../xhr\";\n\n\nexport function add(requestData: FormData, absenceId: number){\n return post(`absence/${absenceId}/file/add`, requestData, {headers: [MULTIPART_FORM_DATA], responseType: \"json\"})\n}\n\nexport function remove(absenceId: number, fileId: number){\n return get(`absence/${absenceId}/file/${fileId}/remove`)\n}\n\nexport function download(absenceId: number, fileId: number){\n return get(`absence/${absenceId}/file/${fileId}/download`, {responseType: \"arraybuffer\"})\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useFormik } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport DatePicker from \"react-datepicker\";\nimport AbsenceBalance from \"../../balance\";\nimport SalarySelector from \"../../../salary/selector\";\nimport { setHours } from \"date-fns\";\n\nimport { Salary } from \"../../../../models/salary\";\n\nimport * as type from \"../../../../constants/absence\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport { COMPLEMENT_AFTERNOON, COMPLEMENT_ALL_DAY, COMPLEMENT_MORNING } from \"../../../../constants/absence\";\n\nimport * as api from \"../../../../adapters/absence\";\nimport * as fileApi from \"../../../../adapters/absence/file\";\nimport * as actions from \"../../../../actions/absence\";\nimport { showAlertSuccess } from \"../../../../actions/alert\";\nimport { axiosError } from \"../../../../actions/axios\";\n\nimport { Granted } from \"../../../../security/granted\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport FormError from \"../../../../utils/formError\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport StyledDropzone from \"../../../../utils/fileUpload\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\nimport \"react-datepicker/dist/react-datepicker.css\";\n\ninterface Interface {\n handleSubmitSuccess: (data: any) => any,\n salary?: Salary\n}\n\nexport const typesAvailableToComplementTime = [\n type.TYPE_CP,\n type.TYPE_RTT,\n type.TYPE_REPOS,\n type.TYPE_CSS,\n type.TYPE_FORM,\n type.TYPE_CHILD_DISEASE,\n type.TYPE_WORK_ACCIDENT,\n type.TYPE_TRAVEL_ACCIDENT,\n type.TYPE_PROTECTIVE_LAYOFF,\n type.TYPE_DISCIPLINARY_DISMISSAL,\n type.TYPE_UNJUSTIFIED\n]\n\nexport const AbsenceAddForm: React.FC = (props) => {\n const { handleSubmitSuccess, salary } = props\n const dispatch = useDispatch();\n\n const state = useSelector((state:RootStateOrAny) => state)\n\n let date = new Date()\n date.setHours(0, 0, 0, 0);\n \n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n type: Yup.number().required(),\n start: Yup.date().required(),\n end: Yup\n .date()\n .required()\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return value && start <= value\n }),\n startComplement: Yup.number().required(),\n salary: Yup.number().required('Veuillez choisir un collaborateur'),\n }));\n const [initialValues, setInitialValues] = useState({\n type: 1,\n start: date,\n startComplement: 1,\n end: new Date(date),\n salary: salary?.id\n });\n const [file, setFile] = useState();\n const [eventPrecisions, setEventPrecisions] = useState<{label: string, value: number}[]>([]);\n\n const handleSubmit = (data: any) => {\n Promise.all([\n handleSubmitSuccess(data)\n ]).then(() => {\n dispatch(showAlertSuccess(\"Absence ajoutée\"));\n formik.setSubmitting(false)\n })\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(data => {\n if (file) {\n let formData = new FormData();\n formData.append('file', file)\n fileApi.add(formData, data.data.id).then((data) => handleSubmit(data.data))\n } else {\n handleSubmit(data.data)\n }\n\n dispatch(actions.addAbsenceSuccess(data.data))\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }\n })\n\n const handleTypeChange = (t: number) => {\n let fields: string[] = ['type', 'start', 'end', 'salary'];\n\n const _validationSchema: any = {};\n const _initialValues: any = {};\n\n switch (t) {\n case type.TYPE_MALADIE:\n fields.push('lastDayIn', 'fileName')\n break;\n case type.TYPE_EVENT:\n fields.push('eventType', 'eventPrecision')\n break;\n default:\n fields.push('startComplement')\n if (formik.values.start.getTime() !== formik.values.end.getTime()){\n fields.push('endComplement')\n }\n }\n\n if (((Granted(accessRights.EDIT_ABSENCE, formik.values.salary) && formik.values.salary !== state.auth.user.currentSalary.id) || (Granted(accessRights.VALIDATE_SELF_ABSENCE, formik.values.salary) && Number(formik.values.salary) === state.auth.user.currentSalary.id))) {\n fields.push('status')\n }\n\n for(let i in fields){\n switch (fields[i]) {\n case \"type\":\n _validationSchema.type = Yup.number().required('Veuillez séléctionner une option')\n _initialValues.type = t;\n break;\n case \"status\":\n _validationSchema.status = Yup.number().required('Veuillez renseigner le statut')\n _initialValues.status = formik.values.status;\n break;\n case \"start\":\n _validationSchema.start = Yup.date().required('Veuillez préciser une date de début')\n _initialValues.start = formik.values.start || new Date();\n break;\n case \"end\":\n _validationSchema.end = Yup.date().required('Veuillez préciser une date de fin')\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return value && start <= value\n });\n _initialValues.end = formik.values.end || new Date();\n break;\n case \"salary\":\n _validationSchema.salary = Yup.number().required('Veuillez séléctionner un collaborateur')\n _initialValues.salary = formik.values.salary || null;\n break;\n case \"eventType\":\n _validationSchema.eventType = Yup.number().required(\"Veuillez séléctionner un type d'évènement\")\n _initialValues.eventType = formik.values.eventType || 1;\n break;\n case \"lastDayIn\":\n _validationSchema.lastDayIn = Yup.date().required(\"Veuillez préciser une date\")\n _initialValues.lastDayIn = formik.values.lastDayIn || new Date();\n break;\n case \"eventPrecision\":\n _validationSchema.eventPrecision = Yup.number().required(\"Veuillez préciser le type d'évènement\")\n _initialValues.eventPrecision = formik.values.eventPrecision || 1;\n break;\n case \"startComplement\":\n _validationSchema.startComplement = Yup.number().required(\"Veuillez séléctionner une option\")\n _initialValues.startComplement = formik.values.startComplement || COMPLEMENT_ALL_DAY;\n if (_initialValues.startComplement !== COMPLEMENT_ALL_DAY){\n _validationSchema.startComplementTime = Yup.date().required(\"Veuillez séléctionner une heure\")\n _initialValues.startComplementTime = formik.values.startComplementTime || formik.values.start\n }\n break;\n case \"endComplement\":\n _validationSchema.endComplement = Yup.number().required(\"Veuillez séléctionner une option\")\n _initialValues.endComplement = formik.values.endComplement || COMPLEMENT_ALL_DAY;\n if (_initialValues.endComplement !== COMPLEMENT_ALL_DAY){\n _validationSchema.endComplementTime = Yup.date().required(\"Veuillez séléctionner une heure\")\n _initialValues.endComplementTime = formik.values.endComplementTime || formik.values.end\n }\n break;\n }\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n const handleDateChange = (field: \"start\"|\"end\", value: Date) => {\n const _initialValues = {...formik.values}\n const _validationSchema = {...validationSchema.fields};\n\n _initialValues[field] = value;\n let removeFields:string[] = [];\n\n switch (formik.values.type) {\n case type.TYPE_CP:\n case type.TYPE_RTT:\n case type.TYPE_CSS:\n case type.TYPE_FORM:\n case type.TYPE_REPOS:\n case type.TYPE_CHILD_DISEASE:\n case type.TYPE_WORK_ACCIDENT:\n case type.TYPE_TRAVEL_ACCIDENT:\n case type.TYPE_PROTECTIVE_LAYOFF:\n case type.TYPE_DISCIPLINARY_DISMISSAL:\n case type.TYPE_UNJUSTIFIED:\n\n _initialValues.startComplement = _initialValues.startComplement || 1\n _validationSchema.startComplement = Yup.number().required();\n if ([COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(_initialValues.startComplement)){\n _initialValues.startComplementTime = setHours(field === \"start\" ? value : formik.values.start, formik.values.startComplementTime.getHours());\n }\n\n if (_initialValues.start.getTime() !== _initialValues.end.getTime()){\n _initialValues.endComplement = _initialValues.endComplement || 1\n _validationSchema.endComplement = Yup.number().required();\n if ([COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(_initialValues.endComplement)){\n _initialValues.endComplementTime = setHours(field === \"end\" ? value : formik.values.end, formik.values.endComplementTime.getHours());\n }\n break;\n }\n\n removeFields = [\"endComplement\", \"endComplementTime\"]\n\n for (let f in removeFields) {\n if (_initialValues.hasOwnProperty(removeFields[f])){\n delete _initialValues[removeFields[f]];\n }\n if (_validationSchema.hasOwnProperty(removeFields[f])){\n delete _validationSchema[removeFields[f]];\n }\n }\n break;\n\n default:\n removeFields = [\"endComplement\", \"endComplementTime\", \"startComplement\", \"startComplementTime\"];\n for(let f in removeFields){\n if (_initialValues.hasOwnProperty(removeFields[f])){\n delete _initialValues[removeFields[f]];\n }\n if (_validationSchema.hasOwnProperty(removeFields[f])){\n delete _validationSchema[removeFields[f]];\n }\n }\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n const handleComplementChange = (t: \"start\"|\"end\", value: number) => {\n const _initialValues = {...formik.values}\n const _validationSchema = {...validationSchema.fields};\n\n switch (t) {\n case \"start\":\n _initialValues['startComplement'] = value;\n switch (value){\n case 1:\n delete _initialValues.startComplementTime;\n delete _validationSchema.startComplementTime;\n break;\n default:\n _initialValues.startComplementTime = setHours(formik.values.start, 12);\n _validationSchema.startComplementTime = Yup.date().required();\n break;\n }\n break;\n case \"end\":\n _initialValues['endComplement'] = value;\n switch (value){\n case 1:\n delete _initialValues.endComplementTime;\n delete _validationSchema.endComplementTime;\n break;\n default:\n _initialValues.endComplementTime = setHours(formik.values.end, 12);\n _validationSchema.endComplementTime = Yup.date().required();\n break;\n }\n break;\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n\n const filterComplementChoices = (t: \"start\"|\"end\") => {\n switch (t) {\n case \"start\":\n if (formik.values.start.getTime() === formik.values.end.getTime()){\n return type.getComplementChoices();\n }\n\n return type.getComplementChoices().filter(c => c.value !== COMPLEMENT_MORNING)\n case \"end\":\n return type.getComplementChoices().filter(c => c.value !== COMPLEMENT_AFTERNOON)\n }\n }\n\n useEffect(() => {\n if (((Granted(accessRights.EDIT_ABSENCE, formik.values.salary) && formik.values.salary !== state.auth.user.currentSalary.id) || (Granted(accessRights.VALIDATE_SELF_ABSENCE, formik.values.salary) && Number(formik.values.salary) === state.auth.user.currentSalary.id))){\n let _fields = validationSchema.fields;\n _fields.status = Yup.number().required();\n setValidationSchema(Yup.object().shape({..._fields}))\n setInitialValues({ ...initialValues, status: 1 })\n }\n }, [])\n \n return (\n
    \n {/* TYPE */}\n
    \n {\n handleTypeChange(Number(choice!.value))\n }}\n className={validationClass(formik.errors, formik.touched, 'type')}\n value={type.getTypeChoice(1)}\n label={\"Type d'absence\"}\n required={true}\n options={type.getTypeChoices()} />\n \n
    \n\n {/* EVENT TYPE */}\n {formik.values.type === type.TYPE_EVENT &&\n
    \n {\n formik.setFieldValue('eventType', choice!.value)\n formik.setFieldValue('eventPrecision', null)\n setEventPrecisions([...type.getEventPrecisionChoices(Number(choice!.value))])\n }}\n className={validationClass(formik.errors, formik.touched, 'eventType')}\n label={\"Type d'absence\"}\n required={true}\n options={type.getEventTypeChoices()}\n />\n \n
    \n }\n\n {/* EVENT PRECISION */}\n {formik.values.type === type.TYPE_EVENT && formik.values.eventType &&\n
    \n formik.setFieldValue('eventPrecision', e?.value)}\n className={validationClass(formik.errors, formik.touched, 'eventPrecision')}\n value={eventPrecisions.find(precision => precision.value === formik.values.eventPrecision)}\n enableReinitialize={true}\n label={\"Précision\"}\n required={true}\n options={eventPrecisions}\n />\n \n
    \n }\n\n {/*LAST DAY IN*/}\n {formik.values.type === type.TYPE_MALADIE &&\n
    \n {\n formik.setFieldValue('lastDayIn', date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={formik.values.lastDayIn}\n customInput={}\n endDate={formik.values.start}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'lastDayIn')}\n />\n \n
    \n }\n\n {/*START*/}\n
    \n
    \n
    \n {\n handleDateChange('start', date);\n }}\n customInput={}\n selectsStart\n startDate={formik.values.start}\n endDate={formik.values.end}\n title={'Date de début'}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'start')}\n />\n
    \n\n {typesAvailableToComplementTime.includes(formik.values.type) &&\n
    \n handleComplementChange(\"start\", Number(choice!.value))}\n />\n
    \n }\n
    \n \n \n
    \n\n {[COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(formik.values.startComplement) &&\n
    \n {\n formik.setFieldValue('startComplementTime', date)\n }}\n dateFormat={\"HH:mm\"}\n showTimeSelectOnly={true}\n showTimeSelect={true}\n selected={formik.values.startComplementTime}\n customInput={}\n endDate={formik.values.end}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'startComplementTime')}\n />\n \n
    \n }\n\n {/*END*/}\n
    \n
    \n
    \n {\n handleDateChange('end', date);\n }}\n customInput={}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n title={'Date de fin'}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'end')}\n />\n
    \n\n
    \n\n {typesAvailableToComplementTime.includes(formik.values.type) && formik.values.start.getTime() !== formik.values.end.getTime() &&\n
    \n handleComplementChange(\"end\", Number(choice!.value))}\n />\n
    \n }\n
    \n \n \n
    \n\n {[COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(formik.values.endComplement) &&\n
    \n {\n formik.setFieldValue('endComplementTime', date)\n }}\n dateFormat={\"HH:mm\"}\n showTimeSelectOnly={true}\n showTimeSelect={true}\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n selected={formik.values.endComplementTime}\n customInput={}\n endDate={formik.values.end}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'endComplementTime')}\n />\n \n
    \n }\n\n {/*SALARY*/}\n {Granted(accessRights.EDIT_ABSENCE, formik.values.salary) &&\n
    \n formik.setFieldValue('salary', s.id)}\n required={true}\n value={salary}\n fetchOptions={true}\n accessRight={accessRights.EDIT_ABSENCE}\n />\n \n
    \n }\n\n {((Granted(accessRights.EDIT_ABSENCE, formik.values.salary) && formik.values.salary !== state.auth.user.currentSalary.id) || (Granted(accessRights.VALIDATE_SELF_ABSENCE, formik.values.salary) && Number(formik.values.salary) === state.auth.user.currentSalary.id)) &&\n
    \n
    \n formik.setFieldValue('status', choice!.value)}\n className={validationClass(formik.errors, formik.touched, 'status')}\n required={true}\n />\n \n
    \n
    \n }\n\n {/*FILE NAME*/}\n {formik.values.type === type.TYPE_MALADIE &&\n
    \n \n \n \n
    \n }\n\n \n\n {formik.values.type === type.TYPE_CP &&\n \n }\n \n )\n}\n\nexport default AbsenceAddForm;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../../adapters/absence\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport format from \"../../../../utils/locale\";\nimport {Absence, TIME_ACCOUNTED_TYPE} from \"../../../../models/absence\";\nimport {ObjectSchema} from \"yup\";\nimport Loader from \"../../../../utils/loader\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport * as type from \"../../../../constants/absence\";\nimport FormError from \"../../../../utils/formError\";\nimport DatePicker from \"react-datepicker\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {COMPLEMENT_AFTERNOON, COMPLEMENT_ALL_DAY, COMPLEMENT_MORNING} from \"../../../../constants/absence\";\nimport {setHours} from \"date-fns\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport SalarySelector from \"../../../salary/selector\";\nimport { typesAvailableToComplementTime } from \"../../add/form\";\n\nexport const AbsenceEditForm: React.FC<{ absence: Absence, handleSubmitSuccess: (abs: any) => any }> = (props) => {\n\n const {absence, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state)\n const [validationSchema, setValidationSchema] = useState>(Yup.object().shape({}));\n const [initialValues, setInitialValues] = useState({});\n const [isLoading, setIsLoading] = useState(true);\n const [eventPrecisions, setEventPrecisions] = useState<{label: string, value: number}[]>([]);\n\n useEffect(() => {\n Promise.all([\n initiateFormValues(absence),\n initiateFormValidationSchema(absence)\n ]).then(() => setIsLoading(false));\n\n },[])\n\n const initiateFormValidationSchema = (absence: Absence) => {\n let validationShape: any = {\n type: Yup.number().required('Veuillez préciser un type d\\'absence'),\n start: Yup.date().required('Champs requis'),\n end: Yup\n .date()\n .required('Veuillez préciser la date de fin')\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return value && start <= value\n }),\n status: Yup.number().required('Champs requis'),\n salary: Yup.number().required('Champs requis'),\n timeAccountedType: Yup.number().required('Champs requis'),\n }\n\n if (absence.timeAccountedType !== 1){\n validationShape.time = Yup.number().required();\n }\n\n switch (absence.type){\n case 5:\n validationShape.lastDayIn = Yup.date().required('Champs requis');\n break;\n case 6:\n validationShape.eventType = Yup.number().required('Champs requis');\n validationShape.eventPrecision = Yup.number().required('Champs requis');\n break;\n default:\n validationShape.startComplement = Yup.number().required('Champs requis');\n\n if (format(new Date(absence.start)) !== format(new Date(absence.end)))\n validationShape.endComplement = Yup.number().required('Champs requis');\n }\n setValidationSchema(Yup.object().shape({...validationShape}))\n return true;\n }\n\n const initiateFormValues = (absence: Absence) => {\n\n let _initialValues: any = {\n type: absence.type,\n start: new Date(absence.start),\n end: new Date(absence.end),\n status: absence.status,\n salary: absence.salary?.id,\n timeAccountedType: String(absence.timeAccountedType)\n }\n\n if (String(absence.timeAccountedType) !== '1'){\n _initialValues.time = absence.time;\n }\n\n switch (absence.type){\n case type.TYPE_MALADIE:\n _initialValues.lastDayIn = new Date(absence.lastDayIn!)\n break;\n case type.TYPE_EVENT:\n _initialValues.eventType = absence.eventType;\n _initialValues.eventPrecision = absence.eventPrecision;\n setEventPrecisions(type.getEventPrecisionChoices(absence.eventType!))\n break;\n default:\n _initialValues.startComplement = absence.startComplement;\n if (absence.startComplement !== type.COMPLEMENT_ALL_DAY && absence.startComplementTime){\n _initialValues.startComplementTime = new Date(absence.startComplementTime)\n }\n\n let startTime, endTime = 0\n startTime = new Date(absence.start).getTime()\n endTime = new Date(absence.end).getTime()\n\n if (startTime !== endTime){\n _initialValues.endComplement = absence.endComplement;\n if (absence.endComplement !== type.COMPLEMENT_ALL_DAY && absence.endComplementTime){\n _initialValues.endComplementTime = new Date(absence.endComplementTime)\n }\n }\n break;\n }\n\n setInitialValues({..._initialValues})\n return true;\n }\n\n const handleSubmit = (data: Absence) => {\n dispatch(showAlertSuccess(\"Absence modifiée\"));\n formik.setSubmitting(false);\n handleSubmitSuccess(data)\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.edit(values, absence.id!).then(data => {\n handleSubmit(data.data)\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }\n })\n\n if (isLoading) return \n\n const handleTypeChange = (t: number) => {\n\n let fields: string[] = ['type', 'start', 'end', 'salary', 'status', 'timeAccountedType'];\n\n const _validationSchema: any = {};\n const _initialValues: any = {};\n\n switch (t) {\n case type.TYPE_MALADIE:\n fields.push('lastDayIn', 'fileName')\n break;\n case type.TYPE_EVENT:\n fields.push('eventType', 'eventPrecision')\n break;\n default:\n fields.push('startComplement')\n if (formik.values.start.getTime() !== formik.values.end.getTime()){\n fields.push('endComplement')\n }\n }\n\n switch (formik.values.timeAccountedType)\n {\n case \"2\":\n case \"3\":\n fields.push('time')\n break;\n }\n\n for(let i in fields){\n switch (fields[i]) {\n case \"type\":\n _validationSchema.type = Yup.number().required('Veuillez séléctionner une option')\n _initialValues.type = t;\n break;\n case \"timeAccountedType\":\n _validationSchema.timeAccountedType = Yup.number().required('Veuillez séléctionner une option')\n _initialValues.timeAccountedType = formik.values.timeAccountedType;\n break;\n case \"time\":\n _validationSchema.time = Yup.number().required('Veuillez saisir une valeur')\n _initialValues.time = formik.values.time || 7;\n break;\n case \"start\":\n _validationSchema.start = Yup.date().required('Veuillez préciser une date de début')\n _initialValues.start = formik.values.start || new Date();\n break;\n case \"end\":\n _validationSchema.end = Yup.date().required('Veuillez préciser une date de fin')\n .test(\"is-greater\", \"La date de fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n return value && start <= value\n });\n _initialValues.end = formik.values.end || new Date();\n break;\n case \"salary\":\n _validationSchema.salary = Yup.number().required('Veuillez séléctionner un collaborateur')\n _initialValues.salary = formik.values.salary || null;\n break;\n case \"status\":\n _validationSchema.status = Yup.number().required('Veuillez séléctionner un statut')\n _initialValues.status = formik.values.status || 1;\n break;\n case \"eventType\":\n _validationSchema.eventType = Yup.number().required(\"Veuillez séléctionner un type d'évènement\")\n _initialValues.eventType = formik.values.eventType || 1;\n break;\n case \"lastDayIn\":\n _validationSchema.lastDayIn = Yup.date().required(\"Veuillez préciser une date\")\n _initialValues.lastDayIn = formik.values.lastDayIn || new Date();\n break;\n case \"eventPrecision\":\n _validationSchema.eventPrecision = Yup.number().required(\"Veuillez préciser le type d'évènement\")\n _initialValues.eventPrecision = formik.values.eventPrecision || 1;\n break;\n case \"startComplement\":\n _validationSchema.startComplement = Yup.number().required(\"Veuillez séléctionner une option\")\n _initialValues.startComplement = formik.values.startComplement || COMPLEMENT_ALL_DAY;\n if (_initialValues.startComplement !== COMPLEMENT_ALL_DAY){\n _validationSchema.startComplementTime = Yup.number().required(\"Veuillez séléctionner une heure\")\n _initialValues.startComplementTime = formik.values.startComplementTime || formik.values.start\n }\n break;\n case \"endComplement\":\n _validationSchema.endComplement = Yup.number().required(\"Veuillez séléctionner une option\")\n _initialValues.endComplement = formik.values.endComplement || COMPLEMENT_ALL_DAY;\n if (_initialValues.endComplement !== COMPLEMENT_ALL_DAY){\n _validationSchema.endComplementTime = Yup.number().required(\"Veuillez séléctionner une heure\")\n _initialValues.endComplementTime = formik.values.endComplementTime || formik.values.end\n }\n break;\n }\n }\n\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n const handleDateChange = (field: \"start\"|\"end\", value: Date) => {\n const _initialValues = {...formik.values}\n const _validationSchema = {...validationSchema.fields};\n\n _initialValues[field] = value;\n let removeFields:string[] = [];\n\n switch (formik.values.type) {\n case type.TYPE_CP:\n case type.TYPE_RTT:\n case type.TYPE_CSS:\n case type.TYPE_FORM:\n case type.TYPE_REPOS:\n case type.TYPE_CHILD_DISEASE:\n case type.TYPE_WORK_ACCIDENT:\n case type.TYPE_TRAVEL_ACCIDENT:\n case type.TYPE_PROTECTIVE_LAYOFF:\n case type.TYPE_DISCIPLINARY_DISMISSAL:\n case type.TYPE_UNJUSTIFIED:\n\n _initialValues.startComplement = _initialValues.startComplement || 1\n _validationSchema.startComplement = Yup.number().required();\n if ([COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(_initialValues.startComplement)){\n _initialValues.startComplementTime = setHours(field === \"start\" ? value : formik.values.start, formik.values.startComplementTime.getHours());\n }\n\n if (_initialValues.start.getTime() !== _initialValues.end.getTime()){\n _initialValues.endComplement = _initialValues.endComplement || 1\n _validationSchema.endComplement = Yup.number().required();\n if ([COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(_initialValues.endComplement)){\n _initialValues.endComplementTime = setHours(field === \"end\" ? value : formik.values.end, formik.values.endComplementTime.getHours());\n }\n break;\n }\n\n removeFields = [\"endComplement\", \"endComplementTime\"]\n for(let f in removeFields){\n if (_initialValues.hasOwnProperty(removeFields[f])){\n delete _initialValues[removeFields[f]];\n }\n if (_validationSchema.hasOwnProperty(removeFields[f])){\n delete _validationSchema[removeFields[f]];\n }\n }\n break;\n default:\n removeFields = [\"endComplement\", \"endComplementTime\", \"startComplement\", \"startComplementTime\"];\n for(let f in removeFields){\n if (_initialValues.hasOwnProperty(removeFields[f])){\n delete _initialValues[removeFields[f]];\n }\n if (_validationSchema.hasOwnProperty(removeFields[f])){\n delete _validationSchema[removeFields[f]];\n }\n }\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n const handleComplementChange = (t: \"start\"|\"end\", value: number) => {\n const _initialValues = {...formik.values}\n const _validationSchema = {...validationSchema.fields};\n\n switch (t) {\n case \"start\":\n _initialValues['startComplement'] = value;\n switch (value){\n case 1:\n delete _initialValues.startComplementTime;\n delete _validationSchema.startComplementTime;\n break;\n default:\n _initialValues.startComplementTime = setHours(formik.values.start, 12);\n _validationSchema.startComplementTime = Yup.date().required();\n break;\n }\n break;\n case \"end\":\n _initialValues['endComplement'] = value;\n switch (value){\n case 1:\n delete _initialValues.endComplementTime;\n delete _validationSchema.endComplementTime;\n break;\n default:\n _initialValues.endComplementTime = setHours(formik.values.end, 12);\n _validationSchema.endComplementTime = Yup.date().required();\n break;\n }\n break;\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n const filterComplementChoices = (t: \"start\"|\"end\") => {\n switch (t) {\n case \"start\":\n if (formik.values.start.getTime() === formik.values.end.getTime()){\n return type.getComplementChoices();\n }\n\n return type.getComplementChoices().filter(c => c.value !== COMPLEMENT_MORNING)\n case \"end\":\n return type.getComplementChoices().filter(c => c.value !== COMPLEMENT_AFTERNOON)\n }\n }\n\n const handleTimeAccountedTypeChange = (t: string) => {\n let _initialValues = initialValues;\n let _fields = validationSchema.fields;\n\n _initialValues.timeAccountedType = t;\n\n if (t === '1'){\n delete _fields.time\n delete _initialValues.time;\n setValidationSchema(Yup.object().shape({..._fields}))\n setInitialValues({..._initialValues})\n }else{\n _fields.time = Yup.number().required();\n _initialValues.time = _initialValues.time || state.auth.user.currentSalary.companyGroup.absenceSettings.accountedTime || 7;\n setValidationSchema(Yup.object().shape({..._fields}))\n setInitialValues({..._initialValues})\n }\n }\n\n return (\n
    \n {/* TYPE */}\n
    \n {\n handleTypeChange(Number(choice!.value))\n }}\n className={validationClass(formik.errors, formik.touched, 'type')}\n value={type.getTypeChoice(formik.values.type) || undefined}\n label={\"Type d'absence\"}\n required={true}\n options={type.getTypeChoices()} />\n \n
    \n {/* EVENT TYPE */}\n {formik.values.type === type.TYPE_EVENT &&\n
    \n {\n formik.setFieldValue('eventType', choice!.value)\n formik.setFieldValue('eventPrecision', null)\n setEventPrecisions([...type.getEventPrecisionChoices(Number(choice!.value))])\n }}\n className={validationClass(formik.errors, formik.touched, 'eventType')}\n label={\"Type d'absence\"}\n required={true}\n value={type.getEventTypeChoices()[formik.values.eventType - 1] || undefined}\n options={type.getEventTypeChoices()}\n />\n \n
    \n }\n {/* EVENT PRECISION */}\n {formik.values.type === type.TYPE_EVENT && formik.values.eventType &&\n
    \n formik.setFieldValue('eventPrecision', e?.value)}\n className={validationClass(formik.errors, formik.touched, 'eventPrecision')}\n value={eventPrecisions.find(precision => precision.value === formik.values.eventPrecision)}\n enableReinitialize={true}\n label={\"Précision\"}\n required={true}\n options={eventPrecisions}\n />\n \n
    }\n {/*LAST DAY IN*/}\n {formik.values.type === type.TYPE_MALADIE &&\n
    \n {\n formik.setFieldValue('lastDayIn', date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={formik.values.lastDayIn}\n customInput={}\n endDate={formik.values.start}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'lastDayIn')}\n />\n \n
    }\n {/*START*/}\n
    \n
    \n
    \n {\n handleDateChange('start', date);\n }}\n customInput={}\n selectsStart\n startDate={formik.values.start}\n endDate={formik.values.end}\n title={'Date de début'}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'start')}\n />\n
    \n {typesAvailableToComplementTime.includes(formik.values.type) &&\n
    \n c.value === formik.values.startComplement) || undefined}\n required={true}\n onChange={(choice) => handleComplementChange(\"start\", Number(choice!.value))}\n />\n
    \n }\n
    \n \n \n
    \n {[COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(formik.values.startComplement) &&
    \n {\n formik.setFieldValue('startComplementTime', date)\n }}\n dateFormat={\"HH:mm\"}\n showTimeSelectOnly={true}\n showTimeSelect={true}\n selected={formik.values.startComplementTime}\n customInput={}\n endDate={formik.values.end}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'startComplementTime')}\n />\n \n
    }\n {/*END*/}\n
    \n
    \n
    \n {\n handleDateChange('end', date);\n }}\n customInput={}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n title={'Date de fin'}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'end')}\n />\n
    \n
    \n {typesAvailableToComplementTime.includes(formik.values.type) && formik.values.start.getTime() !== formik.values.end.getTime() &&\n <>\n
    \n c.value === formik.values.endComplement) || undefined}\n required={true}\n onChange={(choice) => handleComplementChange(\"end\", Number(choice!.value))}\n />\n
    \n }\n
    \n \n \n
    \n {[COMPLEMENT_MORNING, COMPLEMENT_AFTERNOON].includes(formik.values.endComplement) &&
    \n {\n formik.setFieldValue('endComplementTime', date)\n }}\n dateFormat={\"HH:mm\"}\n showTimeSelectOnly={true}\n showTimeSelect={true}\n selected={formik.values.endComplementTime}\n customInput={}\n endDate={formik.values.end}\n className={'form-control' + validationClass(formik.errors, formik.touched, 'endComplementTime')}\n />\n \n
    }\n {/*SALARY*/}\n {
    \n formik.setFieldValue('salary', choice.id)}\n accessRight={accessRights.EDIT_ABSENCE}\n />\n \n
    }\n {<>\n
    \n t.value === String(absence.timeAccountedType))}\n label={'Comptabilisation des heures'}\n required={true}\n onChange={(c) => handleTimeAccountedTypeChange(String(c!.value))}\n />\n
    \n {formik.values.timeAccountedType !== '1' &&
    \n
    \n \n \n
    \n
    }\n }\n {/*STATUS*/}\n
    \n
    \n formik.setFieldValue('status', choice!.value)}\n className={validationClass(formik.errors, formik.touched, 'status')}\n required={true}\n />\n \n
    \n
    \n \n
    \n )\n}\n\nexport default AbsenceEditForm;","import React, {useEffect, useState} from \"react\";\nimport AbsenceEditForm from \"../../../absence/edit/form\";\nimport {EventClickArg} from \"@fullcalendar/react\";\n\nconst AbsenceEdit:React.FC<{close: () => any, arg: EventClickArg, handleSubmitSuccess: (abs: any) => any}> = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (abs: any) => {\n return Promise.all([\n handleSubmitSuccess(abs)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [arg])\n\n return <>\n
    \n
    Modifier une absence
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default AbsenceEdit;","import React, { useEffect, useState } from \"react\";\n\nimport AbsenceAddForm from \"../../../absence/add/form\";\n\nimport { Salary } from \"../../../../models/salary\";\n\nconst AbsenceAdd: React.FC<{close: () => any,salary?: Salary, handleSubmitSuccess: (abs: any) => any}> = (props) => {\n const { salary, handleSubmitSuccess, close } = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (abs: any) => {\n return Promise.all([\n handleSubmitSuccess(abs)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [salary])\n\n return (\n <>\n
    \n
    \n Ajouter une absence\n
    \n\n \n
    \n\n
    \n \n
    \n \n )\n}\n\nexport default AbsenceAdd;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport CalendarAbsenceEdit from \"../edit\";\nimport CalendarAbsenceAdd from \"../add\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface InterfaceAbsenceEdit {\n sidebarType: 'ABSENCE_EDIT',\n arg: EventClickArg,\n}\n\ninterface InterfaceAbsenceAdd {\n sidebarType: 'ABSENCE_ADD',\n salary?: Salary,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarAbsenceSidebarInterface = {trigger: number} & (Interface | InterfaceAbsenceEdit | InterfaceAbsenceAdd)\n\nconst CalendarAbsenceSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarAbsence')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarAbsence')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"ABSENCE_EDIT\":\n return \n case \"ABSENCE_ADD\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarAbsenceSidebarInterface & {handleEventChange: any}, nextProps: CalendarAbsenceSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarAbsenceSidebar, areEqual);","import {Companies, Company} from \"../../../models/companies\";\nimport React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../adapters/company\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/companies\";\nimport {FormikTouched} from \"formik\";\nimport {PAGINATION} from \"../../../constants/global\";\n\ninterface SingleCompanySelectorProps {\n onSubmit: (company: Company) => void,\n onClose: any,\n initialValue?: number,\n label?: string,\n required?: boolean,\n choices?: Companies,\n}\n\nexport const SingleCompanySelector:React.FC = (props) => {\n const {onSubmit, label, onClose, initialValue, required, choices} = props;\n\n const [offset, setOffset] = useState(0)\n const [isLast, setIsLast] = useState(false)\n const [query, setQuery] = useState()\n const [isLoading, setIsLoading] = useState(true)\n const [isFiltering, setIsFiltering] = useState(false)\n const [error, setError] = useState()\n const [selectedCompany, setSelectedCompany] = useState(initialValue)\n const [companies, setCompanies] = useState([])\n\n const [scrollBottom, setScrollBottom] = useState(false)\n\n useEffect(() => {\n if (choices){\n setCompanies(choices)\n setIsLoading(false)\n }else{\n let container = document.getElementsByClassName('offcanvas-body')[0]!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n setIsLoading(true);\n\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n setCompanies(data.data)\n setIsLoading(false);\n setOffset( 1);\n })\n\n return () => {\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }\n }, [])\n\n useEffect(() => {\n if (choices) {\n if (!query){\n setCompanies(choices)\n }else{\n setCompanies([...choices.filter((company: Company) => company.title.toLowerCase().includes(query.toLowerCase()))])\n }\n }else{\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setIsFiltering(true);\n setOffset(0)\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n setCompanies(data.data)\n setIsFiltering(false);\n setOffset( 1);\n })\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }\n }, [query])\n\n useEffect(() => {\n if (!isLoading){\n if(offset > 0 && !isLast){\n setIsLoading(true)\n api.list({query: query, offset: offset}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n setCompanies([...companies, ...data.data])\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n })\n }\n }\n }, [scrollBottom])\n\n const onScrollBottom = () => {\n let elem = document.getElementsByClassName('offcanvas-body')[0]!;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom((prevState) => !prevState)\n }\n }\n\n return (\n
    \n
    \n
    \n
    \n

    \n Séléctionner un point de vente\n

    \n
    \n
    \n \n
    \n {error &&
    {error}
    }\n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control bg-white\" placeholder=\"Rechercher une entreprise\" aria-describedby=\"search-addon\" />\n
    \n
    \n\n
      \n {companies.map((company: Company, index: number) => {\n return (\n
    • \n
      \n onSubmit(company)} name={'Company'} type=\"radio\" value={company.id} id={`company${index}`} />\n \n
      \n
    • \n )\n })}\n {isLoading &&
    • \n
      \n Loading...\n
      \n
    • }\n
    \n {!isLast && !isLoading && }\n
    \n )\n}\n\ninterface SingleCompanySelectedProps {\n onDelete: any,\n onOpen: any,\n initialValue?: number,\n initialCompany?: Company,\n btnClassName?: string,\n onShow?: any,\n}\n\nexport const SingleCompanySelected:React.FC = (props) => {\n\n const {\n onDelete,\n onOpen,\n initialValue,\n initialCompany,\n btnClassName,\n onShow\n } = props;\n\n const [company, setCompany] = useState(initialCompany)\n const [isLoading, setIsLoading] = useState(false)\n\n useEffect(() => {\n if (initialValue && company?.id != initialValue){\n setIsLoading(true)\n api.show(initialValue).then(data => {\n setCompany(data.data)\n setIsLoading(false)\n if (onShow){\n onShow(data.data)\n }\n })\n }\n }, [initialValue])\n\n return (\n
    \n
    \n \n \n Point de vente\n \n
    \n
    \n {\n initialValue &&\n \n \n {!isLoading && company ? company.title :\n
    \n Loading...\n
    }\n
    \n {\n onDelete(initialValue)\n setCompany(undefined)\n }}>\n \n \n
    \n }\n \n \n \n
    \n
    \n )\n}\n","import React, {useState} from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport {Company} from \"../../../../../models/companies\";\nimport {useFormik} from \"formik\";\nimport {Salaries, Salary} from \"../../../../../models/salary\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/event/offer\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {SingleCompanySelected, SingleCompanySelector} from \"../../../../../utils/companySelector/single\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport {setHours, setMinutes} from \"date-fns\";\nimport FormError from \"../../../../../utils/formError\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {Activity} from \"../../../../../models/activity\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport format from \"../../../../../utils/locale\";\nimport SalarySelector from \"../../../../salary/selector\";\n\n\ninterface Interface {\n _company: Company,\n description: string;\n start: Date;\n end: Date;\n localisation?: Localisation\n activity?: Activity;\n salaries: Salaries;\n id: number;\n handleSubmitSuccess: (ev: any) => any\n}\n\nconst OfferEditForm:React.FC = (props) => {\n\n const {_company, description, start, end, localisation, activity, salaries, id, handleSubmitSuccess} = props\n\n const dispatch = useDispatch();\n const [displayCompanySelector, setDisplayCompanySelector] = useState(false);\n const [displaySalarySelector, setDisplaySalarySelector] = useState(false);\n const [company, setCompany] = useState(_company);\n\n const formik = useFormik({\n initialValues: {\n description: description,\n start: start,\n end: end,\n company: company.id!,\n localisation: localisation?.id,\n activity: activity?.id,\n salaries: salaries.map((s: Salary) => s.id),\n },\n validationSchema: Yup.object().shape({\n description: Yup.string(),\n start: Yup.date().required(),\n end: Yup.date().required(),\n company: Yup.number().required(),\n localisation: Yup.number(),\n activity: Yup.number(),\n salaries: Yup.array().of(Yup.number()).min(1, \"Veuillez séléctionner au moins un collaborateur\"),\n }),\n onSubmit: (values, formikHelpers) => {\n api.edit(values, id).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Offre de créneau mis à jour'));\n formikHelpers.setSubmitting(false)\n })\n });\n }\n })\n\n return
    \n {displayCompanySelector && {\n setCompany(company)\n formik.setFieldValue('company', company.id)\n setDisplayCompanySelector(false)\n }}\n onClose={() => setDisplayCompanySelector(false)}\n initialValue={company?.id}\n />}\n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n endDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n minDate={formik.values.start}\n minTime={setHours(setMinutes(new Date(),\n new Date(formik.values.end).setHours(0,0,0,0) === new Date(formik.values.start).setHours(0,0,0,0) ? new Date(formik.values.start).getMinutes() : 0\n ),\n new Date(formik.values.end).setHours(0,0,0,0) === new Date(formik.values.start).setHours(0,0,0,0) ? new Date(formik.values.start).getHours() : 0\n )}\n maxTime={setHours(setMinutes(new Date(), 45), 23)}\n timeIntervals={15}\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n
    \n setDisplayCompanySelector(true)}\n onOpen={() => setDisplayCompanySelector(true)}\n initialValue={company?.id}\n />\n
    \n {company &&
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(choice) => formik.setFieldValue('localisation', choice?.value)}\n required={false}\n />\n
    \n
    \n ({label: a.title, value: a.id!}))}\n fetchEntity=\"activity\"\n onChange={(choice) => formik.setFieldValue('activity', choice?.value)}\n required={false}\n />\n
    \n
    }\n
    \n formik.setFieldValue('salaries', s.map(s => s.id))}\n values={salaries}\n teams={true}\n />\n
    \n
    \n \n
    \n \n
    \n
    \n}\n\nexport default OfferEditForm;","import React from \"react\";\nimport OfferEditForm from \"../../../event/offer/edit/form\";\nimport {Company} from \"../../../../models/companies\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Salaries} from \"../../../../models/salary\";\n\ninterface Interface {\n handleSubmit: (ev: any) => any,\n close: () => any,\n company: Company,\n activity?: Activity\n localisation?: Localisation,\n start: Date,\n end: Date,\n offerId: number,\n description: string,\n salaries: Salaries,\n}\n\nconst CalendarOfferEdit:React.FC = (props) => {\n\n const {start, end, company, activity, localisation, handleSubmit, offerId, salaries, description, close} = props;\n\n const handleSubmitSuccess = (ev: any) => {\n return Promise.all([\n handleSubmit(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Modifier une offre de créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default CalendarOfferEdit;","import {get} from \"../../../xhr\";\n\nexport function apply(offerId: number){\n return get(`event/offer/${offerId}/application/apply`);\n}\n\nexport function cancel(offerId: number, applicationId: number){\n return get(`event/offer/${offerId}/application/${applicationId}/cancel`);\n}\n\nexport function validate(offerId: number, applicationId: number){\n return get(`event/offer/${offerId}/application/${applicationId}/validate`);\n}\n\nexport function invalidate(offerId: number, applicationId: number){\n return get(`event/offer/${offerId}/application/${applicationId}/invalidate`);\n}","import React, {useEffect, useState} from \"react\";\nimport OfferEditForm from \"../../../event/offer/edit/form\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\";\nimport * as api from \"../../../../adapters/event/offer\";\nimport * as applicationApi from \"../../../../adapters/event/offer/applicant\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {EventOfferApplication} from \"../../../../models/event/offer\";\nimport getUser from \"../../../../security/getUser\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Granted} from \"../../../../security/granted\";\n\ninterface Interface {\n arg: EventClickArg,\n setCalendarOfferSidebarProps: React.Dispatch,\n close: () => any;\n handleSubmit: (ev: any) => any;\n}\n\nconst CalendarOfferShow:React.FC = (props) => {\n\n const {arg, setCalendarOfferSidebarProps, close, handleSubmit} = props;\n\n const [canceling, setCanceling] = useState(false)\n\n const handleSubmitSuccess = (ev: any) => {\n return Promise.all([\n handleSubmit(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n function cancel(){\n setCanceling(true);\n api.disable(arg.event.extendedProps.offerId)\n .then(resp => {\n handleSubmitSuccess(resp.data)\n })\n .then(() => setCanceling(false))\n }\n\n function apply(){\n applicationApi.apply(arg.event.extendedProps.offerId)\n .then(resp => handleSubmitSuccess(resp.data))\n }\n\n function cancelApply(){\n applicationApi.cancel(arg.event.extendedProps.offerId, arg.event.extendedProps.applications.find((a: EventOfferApplication) => a.salary.id === getUser().currentSalary.id).id)\n .then(resp => handleSubmitSuccess(resp.data))\n }\n\n return <>\n
    \n
    Offre de créneau
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    Horaire\n {format(arg.event.start!, 'E dd MMMM HH:mm')} {format(arg.event.end!, 'HH:mm')}\n
    Établissement\n {arg.event.extendedProps.company.title}\n
    Emplacement\n {arg.event.extendedProps.localisation?.title || }\n
    Activité\n {arg.event.extendedProps.activity?.title || }\n
    \n\n {Granted(accessRights.APPLY_BOOKING_OFFER, undefined, arg.event.extendedProps) && arg.event.extendedProps.eventType !== calendarTypes.EVENT_TYPE_OFFER_VALIDATED && <>\n {arg.event.extendedProps.applications.find((a: EventOfferApplication) => a.salary.id === getUser().currentSalary.id) ?\n : }\n }\n\n {Granted(accessRights.EDIT_BOOKING_OFFER, undefined, arg.event.extendedProps) && <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Collaborateurs\n \n Participants\n \n Séléctionné\n
    \n {arg.event.extendedProps.salaries.length}\n \n {arg.event.extendedProps.applications.length}\n \n {arg.event.extendedProps.eventType === calendarTypes.EVENT_TYPE_OFFER_VALIDATED && <>\n

    \n {arg.event.extendedProps.salary.title}\n

    \n }\n \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n }\n
    \n \n}\n\nexport default CalendarOfferShow;","import React, {useEffect, useState} from \"react\";\nimport {Company} from \"../../../../../models/companies\";\nimport {useFormik} from \"formik\";\nimport {setHours, setMinutes} from \"date-fns\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/event/offer\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {SingleCompanySelected, SingleCompanySelector} from \"../../../../../utils/companySelector/single\";\n// import {SalarySelected, SalarySelector} from \"../../../../../utils/salarySelector\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport FormError from \"../../../../../utils/formError\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {useDispatch} from \"react-redux\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {Activity} from \"../../../../../models/activity\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport {Salaries} from \"../../../../../models/salary\";\nimport SalarySelector from \"../../../../salary/selector\";\nimport format from \"../../../../../utils/locale\";\n\ninterface Interface {\n handleSubmitSuccess: (ev:any) => any,\n _company?: Company,\n localisation?: Localisation,\n activity?: Activity,\n salaries?: Salaries,\n start?: Date,\n end?: Date,\n}\n\nconst OfferAddForm:React.FC = (props) => {\n\n const {_company, localisation, activity, salaries, handleSubmitSuccess, start, end} = props;\n\n const dispatch = useDispatch();\n const [displayCompanySelector, setDisplayCompanySelector] = useState(false);\n const [displaySalarySelector, setDisplaySalarySelector] = useState(false);\n const [company, setCompany] = useState(_company);\n\n const formik = useFormik({\n initialValues: {\n description: \"\",\n start: start || setMinutes(new Date(), 0),\n end: end || setMinutes(new Date(), 30),\n company: _company?.id,\n localisation: localisation?.id,\n activity: activity?.id,\n salaries: salaries?.map(s => s.id) || [],\n },\n validationSchema: Yup.object().shape({\n description: Yup.string(),\n start: Yup.date().required(),\n end: Yup.date().required(),\n company: Yup.number().required(),\n localisation: Yup.number(),\n activity: Yup.number(),\n salaries: Yup.array().of(Yup.number()).min(1, \"Veuillez séléctionner au moins un collaborateur\"),\n }),\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Offre de créneau ajoutée'));\n formikHelpers.setSubmitting(false)\n })\n });\n }\n })\n\n return
    \n {displayCompanySelector && {\n setCompany(company)\n formik.setFieldValue('company', company.id)\n setDisplayCompanySelector(false)\n }}\n onClose={() => setDisplayCompanySelector(false)}\n initialValue={company?.id}\n />}\n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n endDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n minDate={formik.values.start}\n minTime={setHours(setMinutes(new Date(),\n new Date(formik.values.end).setHours(0,0,0,0) === new Date(formik.values.start).setHours(0,0,0,0) ? new Date(formik.values.start).getMinutes() : 0\n ),\n new Date(formik.values.end).setHours(0,0,0,0) === new Date(formik.values.start).setHours(0,0,0,0) ? new Date(formik.values.start).getHours() : 0\n )}\n maxTime={setHours(setMinutes(new Date(), 45), 23)}\n timeIntervals={15}\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n \n
    \n
    \n setDisplayCompanySelector(true)}\n onOpen={() => setDisplayCompanySelector(true)}\n initialValue={company?.id}\n />\n \n
    \n {company &&
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(choice) => formik.setFieldValue('localisation', choice?.value)}\n required={false}\n />\n \n
    \n
    \n ({label: a.title, value: a.id!}))}\n fetchEntity=\"activity\"\n onChange={(choice) => formik.setFieldValue('activity', choice?.value)}\n required={false}\n />\n \n
    }\n
    \n formik.setFieldValue('salaries', s.map(s => s.id))}\n />\n \n
    \n
    \n \n \n
    \n \n
    \n
    \n}\n\nexport default OfferAddForm;","import React from \"react\";\nimport OfferAddForm from \"../../../event/offer/add/form\";\nimport {Company} from \"../../../../models/companies\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Salary} from \"../../../../models/salary\";\n\ninterface Interface {\n handleSubmit: (ev: any) => any,\n close: () => any,\n start?: Date,\n end?: Date,\n company?: Company,\n activity?: Activity\n salary?: Salary\n localisation?: Localisation\n}\n\nconst CalendarOfferAdd:React.FC = (props) => {\n\n const {company, activity, localisation, salary, handleSubmit, close, start, end} = props;\n\n const handleSubmitSuccess = (ev: any) => {\n return Promise.all([\n handleSubmit(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Ajouter une offre de créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default CalendarOfferAdd;","import React from \"react\";\nimport * as api from \"../../../../adapters/event/offer/applicant\";\nimport {EventOfferApplications} from \"../../../../models/event/offer\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\n\ninterface Interface {\n offerId: number\n applications: EventOfferApplications,\n handleSubmit: (ev: any) => any;\n close: () => any;\n}\n\nconst CalendarOfferApplication: React.FC = (props) => {\n\n const {offerId, applications, handleSubmit, close} = props;\n\n const dispatch = useDispatch();\n\n const validate = (applicationId: number) => {\n api.validate(offerId, applicationId).then(resp => {\n dispatch(showAlertSuccess('Participation validée'))\n handleSubmitSuccess(resp.data)\n })\n }\n\n const invalidate = (applicationId: number) => {\n api.invalidate(offerId, applicationId).then(resp => {\n dispatch(showAlertSuccess('Participation invalidée'))\n handleSubmitSuccess(resp.data)\n })\n }\n\n const handleSubmitSuccess = (ev: any) => {\n return Promise.all([\n handleSubmit(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Participants à l'offre de créneau
    \n \n
    \n
    \n
      \n {applications.map(a =>
    • \n
      \n
      \n {a.salary.title}\n
      \n {a.validated && <>Participation validée}\n
      \n
      \n
      \n {a.validated ? <>\n \n : <>\n \n }\n
      \n
      \n\n
    • )}\n
    \n
    \n \n}\n\nexport default CalendarOfferApplication;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport CalendarOfferEdit from \"../edit\";\nimport CalendarOfferShow from \"../show\";\nimport CalendarOfferAdd from \"../add\";\nimport {Salaries, Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Offcanvas} from \"bootstrap\";\nimport {EventOfferApplications} from \"../../../../models/event/offer\";\nimport CalendarOfferApplication from \"../application\";\n\ninterface InterfaceOfferShow {\n sidebarType: 'OFFER_SHOW',\n arg: EventClickArg,\n setCalendarOfferSidebarProps: React.Dispatch\n}\n\ninterface InterfaceOfferApplication {\n sidebarType: 'OFFER_APPLICATION',\n offerId: number\n applications: EventOfferApplications,\n}\n\ninterface InterfaceOfferEdit {\n sidebarType: 'OFFER_EDIT',\n company: Company,\n activity?: Activity\n localisation?: Localisation,\n start: Date,\n end: Date,\n offerId: number,\n description: string,\n salaries: Salaries,\n}\n\ninterface InterfaceOfferAdd {\n sidebarType: 'OFFER_ADD',\n salary?: Salary,\n company?: Company,\n localisation?: Localisation,\n activity?: Activity,\n start?: Date,\n end?: Date,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarOfferSidebarInterface = {trigger: number} & (Interface | InterfaceOfferShow | InterfaceOfferEdit | InterfaceOfferAdd | InterfaceOfferApplication)\n\nconst CalendarOfferSidebar:React.FC = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarOffer')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarOffer')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"OFFER_EDIT\":\n return \n case \"OFFER_SHOW\":\n return \n case \"OFFER_ADD\":\n return \n case \"OFFER_APPLICATION\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarOfferSidebarInterface & {handleEventChange: any}, nextProps: CalendarOfferSidebarInterface & {handleEventChange: any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarOfferSidebar, areEqual);","import {post, get} from \"../../../xhr\";\n\ninterface PostPayload {\n resource: number,\n salary: number,\n templateApplied: number\n}\n\nexport function create(requestData: PostPayload){\n return post(`template/applied/resource/create`, requestData);\n}\n\nexport function edit(requestData: PostPayload, id:number){\n return post(`template/applied/resource/edit/${id}`, requestData);\n}\n\nexport function cancel(id: number){\n return get(`template/applied/resource/delete/${id}`);\n}","import {post, get} from \"../../xhr\";\n\nexport function edit(requestData: any, id: number){\n return post('template/applied/edit/' + id, requestData);\n}\n\nexport function create(requestData: {year: number, week: number}, templateId: number){\n return post(`template/applied/create/${templateId}`, requestData);\n}\n\nexport function editStatus(status: 1|2, id: number){\n return get(`template/applied/edit_status/${id}/${status}`);\n}\n\nexport function preview(id: number){\n return get(`template/applied/preview/${id}`);\n}\nexport function activate(id: number){\n return get(`template/applied/activate/${id}`);\n}\n\nexport function cancel(id: number){\n return get(`template/applied/delete/${id}`);\n}\n","import React, {useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport SalarySelector from \"../../../salary/selector\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as resourceApi from \"../../../../adapters/template/applied/resource\";\nimport * as api from \"../../../../adapters/template/applied\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\ninterface Interface {\n close: () => void;\n handleEventChange: (e: any) => any;\n setCalendarData: React.Dispatch;\n _template: {\n id: number;\n template: {\n title: string;\n },\n isPreview: number;\n start: string,\n end: string,\n floatingResources: {title: string, id: number}[],\n appliedResources: {title: string, id: number, resource: {title: string, id: number}, salary: Salary}[]\n }\n}\n\nconst CalendarTemplateShow:React.FC = (props) => {\n\n const {close, _template} = props;\n\n const dispatch = useDispatch();\n const [disabled, setDisabled] = useState(false)\n const [canceling, setCanceling] = useState(false)\n const [template, setTemplate] = useState(_template)\n\n function handleFloatingResourceChange(id: number, salary?: Salary)\n {\n const salaries:number[] = [];\n let previousResource = template.appliedResources.find(ar => ar.resource.id === id);\n if (previousResource){\n salaries.push(previousResource.salary.id);\n }\n\n if (salary){\n salaries.push(salary.id);\n }\n\n setDisabled(true)\n if (salary){\n if (previousResource){\n resourceApi.edit({resource: id, salary: salary.id, templateApplied: template.id}, previousResource.id)\n .then(resp => {\n Promise.all([\n props.handleEventChange({ids: salaries})\n ]).then(() => {\n setDisabled(false);\n setTemplate(resp.data)\n props.setCalendarData((prev: any) => ({...prev, templates: [...prev.templates.filter((t: any) => t.id !== template.id), resp.data]}))\n })\n })\n }else{\n resourceApi.create({resource: id, salary: salary.id, templateApplied: template.id})\n .then(resp => {\n Promise.all([\n props.handleEventChange({ids: salaries})\n ]).then(() => {\n setDisabled(false);\n setTemplate(resp.data)\n props.setCalendarData((prev: any) => ({...prev, templates: [...prev.templates.filter((t: any) => t.id !== template.id), resp.data]}))\n })\n })\n }\n\n }else{\n resourceApi.cancel(id)\n .then(resp => {\n Promise.all([\n props.handleEventChange({ids: salaries})\n ]).then(() => {\n setDisabled(false);\n setTemplate(resp.data)\n props.setCalendarData((prev: any) => ({...prev, templates: [...prev.templates.filter((t: any) => t.id !== template.id), resp.data]}))\n })\n })\n }\n }\n\n function handleStatusChange(isPreview: boolean)\n {\n if (isPreview){\n api.preview(template.id)\n .then(resp => {\n setTemplate(resp.data)\n props.setCalendarData((prev: any) => ({...prev, templates: [...prev.templates.filter((t: any) => t.id !== template.id), resp.data]}))\n })\n }else{\n api.activate(template.id)\n .then(resp => {\n setTemplate(resp.data)\n props.setCalendarData((prev: any) => ({...prev, templates: [...prev.templates.filter((t: any) => t.id !== template.id), resp.data]}))\n })\n }\n }\n\n function handleDeactivation()\n {\n setCanceling(true)\n api.cancel(template.id)\n .then(resp => {\n Promise.all([\n props.handleEventChange(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Teamplate désactivé'))\n setCanceling(false);\n props.close();\n })\n })\n }\n\n return <>\n
    \n
    Template {template.template.title}
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Statut\n \n
    \n \n \n
    \n
    \n Début\n \n {format(new Date(template.start))}\n
    \n Fin\n \n {format(new Date(template.end))}\n
    \n \n
    \n

    \n Ressources flottantes\n

    \n
      \n {template.floatingResources.length > 0 ? template.floatingResources.map(r =>
    • \n
      \n {r.title}\n
      \n
      \n handleFloatingResourceChange(r.id, s)}\n value={template.appliedResources.find(ar => ar.resource.id === r.id)?.salary}\n />\n
      \n
    • ) :
    • Aucune ressource flottante
    • }\n
    \n
    \n \n}\n\nexport default CalendarTemplateShow;","import {post, get} from \"../xhr\";\nimport * as models from \"../../models/template\";\n\nexport function list(requestData?: any){\n return post('template/list', requestData || {});\n}\n\nexport function edit(requestData: any, id: number){\n return post('template/edit/' + id, requestData);\n}\n\nexport function cancel(id: number){\n return get('template/delete/' + id);\n}\n\nexport function activate(id: number){\n return get(`template/${id}/activate`);\n}\n\nexport function deactivate(id: number){\n return get(`template/${id}/deactivate`);\n}\n\nexport function create(requestData: any){\n return post('template/create', requestData);\n}\n\nexport function make(requestData:any){\n return post('template/make', requestData);\n}\n\nexport function show(id: string){\n return get('template/show/' + id);\n}\nexport function simulate(id: number, checked: boolean){\n return get('template/' + (checked ? 'simulate' : 'cancel_simulation') + '/' + id);\n}\n\nexport function fetchCalendar(requestData: {start: string, end: string, view: string, groupBy: number}, id: number){\n return post('template/'+ id +'/calendar', requestData);\n}\n\nexport function fetch(requestData: {start: Date, end: Date, view: string, sortBy: number, timePrecision: string, presence: boolean, resources?: number[]}, id: number, signal?: AbortSignal){\n return post(`template/${id}/fetch`, requestData, {signal: signal});\n}\n\nexport function schedule(requestData: {start: Date, end: Date, target: string, targetId: number, breakDuration: number, shiftDuration: number, resources: number[]}, id: number)\n{\n return post(`template/${id}/schedule`, requestData);\n}","import React, {useEffect, useState} from \"react\";\nimport {Company} from \"../../../../models/companies\";\nimport * as api from \"../../../../adapters/template\"\nimport * as appliedApi from \"../../../../adapters/template/applied\"\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport getUser from \"../../../../security/getUser\";\nimport {Template, Templates} from \"../../../../models/template\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport format from \"../../../../utils/locale\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {getISOWeeks, range} from \"../../../../constants/global\";\nimport FormError from \"../../../../utils/formError\";\n\ninterface Interface {\n company: Company,\n start: Date,\n end: Date,\n handleSubmitSuccess: (e: any) => any;\n close: () => any;\n}\n\nconst CalendarTemplateImport:React.FC = (props) => {\n\n const dispatch = useDispatch()\n const [company, setCompany] = useState(props.company.id!);\n const [templates, setTemplates] = useState([]);\n const [loading, setLoading] = useState(false);\n const [submitting, setSubmitting] = useState(false);\n const [year, setYear] = useState(Number(format(props.start, 'uuuu')));\n const [week, setWeek] = useState(Number(format(props.start, 'w')));\n\n useEffect(() => {\n setTemplates([])\n setLoading(true)\n api.list({companies: [company]})\n .then(data => {\n setLoading(false)\n setTemplates(data.data)\n })\n }, [company])\n\n const handleClick = (t: Template) => {\n setSubmitting(true)\n appliedApi.create({year: year, week: week}, t.id)\n .then(resp => {\n Promise.all([\n props.handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Prévisualisation activée'))\n setSubmitting(false)\n props.close();\n })\n })\n }\n\n return <>\n
    \n
    Importer un template
    \n \n
    \n
    \n
    \n
    \n
    \n ({label: c.title, value: c.id}))}\n onChange={c => setCompany(Number(c?.value))}\n />\n
    \n
    \n ({\n label: String(week),\n value: week\n }))}\n enableReinitialize={true}\n value={{label: String(week), value: week}}\n onChange={(c) => setWeek(Number(c?.value))}\n required={true}\n />\n
    \n
    \n ({label: String(y), value: y.toString()}))}\n value={{label: String(year), value: year.toString()}}\n onChange={(c) => setYear(Number(c?.value))}\n required={true}\n />\n
    \n
    \n
    \n
      \n {loading &&
    • \n
      Chargement des templates
      \n
    • }\n {!loading && !templates.length &&
    • \n Aucun template trouvé\n
    • }\n {templates.map(t =>
    • \n
      \n

      \n {t.title}\n

      \n
      \n
      \n \n
      \n
    • )}\n
    \n
    \n \n}\n\nexport default CalendarTemplateImport;","import React, {useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../../utils/locale\";\nimport {getAccountingTypeChoice} from \"../../../../../constants/booking\";\nimport * as calendarTypes from \"../../../../../constants/calendar\";\nimport * as api from \"../../../../../adapters/template/applied/exception\";\nimport * as absenceApi from \"../../../../../adapters/absence\";\nimport {TYPE_EVENT, TYPE_EVENT_EXCEPTION} from \"../../../../../constants/event\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\n\ninterface Interface {\n arg: EventClickArg,\n handleEventChange: (ev: any) => any,\n calendar: string,\n setCalendarAbsenceSidebarProps: React.Dispatch,\n setCalendarTemplateSidebarProps: React.Dispatch,\n close: () => any,\n setCalendarSignedSidebarProps: React.Dispatch,\n}\n\nconst CalendarTemplateEventShow:React.FC = (props) => {\n\n const {arg, handleEventChange, calendar, setCalendarAbsenceSidebarProps, setCalendarSignedSidebarProps, setCalendarTemplateSidebarProps, close} = props;\n\n const [removingEvent, setRemovingEvent] = useState(false)\n const [removingAbsence, setRemovingAbsence] = useState(false)\n\n const removeEvent = () => {\n setRemovingEvent(true)\n api.cancel(arg.event.extendedProps.templateId, arg.event.extendedProps.eventId, arg.event.extendedProps.exDay, {\n salary: arg.event.extendedProps.salary.id,\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n activity: arg.event.extendedProps.activity?.id,\n localisation: arg.event.extendedProps.localisation?.id,\n comment: arg.event.extendedProps.comment\n })\n .then(resp => removeEventSuccess(resp.data))\n }\n\n const [removingSub, setRemovingSub] = useState(false)\n const cancelSub = () => {\n setRemovingSub(true)\n api.unsub(arg.event.extendedProps.templateId, arg.event.extendedProps.exceptionId)\n .then(resp => removeSubSuccess(resp.data))\n }\n\n const removeAbsence = () => {\n if (arg.event.extendedProps.absence){\n setRemovingAbsence(true);\n absenceApi.cancel(arg.event.extendedProps.absence.id).then((data) => removeAbsenceSuccess(data.data))\n }\n }\n\n const removeEventSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => setRemovingEvent(false))\n .then(() => true)\n }\n\n const removeSubSuccess = (ev: any) => {\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => close())\n .then(() => setRemovingSub(false))\n .then(() => true)\n }\n\n const removeAbsenceSuccess = (ev: any) => {\n if(arg){\n return Promise.all([\n handleEventChange(ev)\n ])\n .then(() => arg.event.setExtendedProp('absence', null))\n .then(() => setRemovingAbsence(false))\n .then(() => true)\n }\n }\n\n const setLabourDayWorked = (worked: boolean) => {\n api.labourDay(arg.event.extendedProps.templateId, arg.event.extendedProps.eventId, arg.event.extendedProps.exDay, worked, {\n salary: arg.event.extendedProps.salary.id,\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n activity: arg.event.extendedProps.activity?.id,\n localisation: arg.event.extendedProps.localisation?.id,\n comment: arg.event.extendedProps.comment\n })\n .then(resp => handleEventChange(resp.data))\n }\n\n return <>\n
    \n
    Créneau de {arg.event.extendedProps.salary.title}
    \n \n
    \n {
    \n

    \n Détails du créneau\n

    \n
    \n
    \n \n \n \n Début\n \n \n {format(arg.event.start!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Fin\n \n \n {format(arg.event.end!, \"E dd MMMM uuuu HH:mm\")}\n \n \n \n \n Type d'heure\n \n \n {getAccountingTypeChoice(arg.event.extendedProps.accountingType)?.label}\n \n \n \n \n Établissement\n \n \n {arg.event.extendedProps.company?.title || }\n \n \n \n \n Emplacement\n \n \n {arg.event.extendedProps.localisation?.title || }\n \n \n \n \n Activité\n \n \n {arg.event.extendedProps.activity?.title || }\n \n \n \n
    \n\n {arg.event.extendedProps.substitution &&
    \n
    \n Remplacement de {arg.event.extendedProps.substituted.title}\n
    \n
    \n \n
    \n
    }\n\n {!arg.event.extendedProps.substitution && arg.event.extendedProps.substitute &&
    \n
    \n Remplacer par {arg.event.extendedProps.substitute.title}\n
    \n
    \n \n
    \n
    }\n\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n\n
    \n
    \n {!arg.event.extendedProps.substitution &&
    \n \n
    }\n
    \n
    \n\n {calendarTypes.CALENDAR_SIGNED_GLOBAL === calendar && <>\n
    \n \n
    \n }\n\n {arg.event.extendedProps.isLabourDay &&
    \n
    \n

    \n Jour férié\n

    \n

    \n Cochez la case ci dessous si le collaborateur travail ce jour.\n

    \n
    \n setLabourDayWorked(e.target.checked)} type=\"checkbox\" id=\"labourDayWorked\"/>\n \n
    \n
    }\n\n {arg.event.extendedProps.absence &&
    \n
    \n

    \n Absence\n

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Type\n \n {arg.event.extendedProps.absence.typeName}\n
    \n Début\n \n {format(new Date(arg.event.extendedProps.absence.start))}\n
    \n Fin\n \n {format(new Date(arg.event.extendedProps.absence.end))}\n
    \n Nb de jours\n \n {arg.event.extendedProps.absence.nbDays}\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    }\n
    }\n \n}\n\nexport default CalendarTemplateEventShow;","import {post, get} from \"../../../xhr\";\n\ninterface Interface {\n start: Date;\n end: Date;\n accountingType: number;\n comment: string;\n salary: number;\n activity: number;\n localisation: number;\n}\n\nexport function create(requestData: any, templateAppliedId: number){\n return post(`template/applied/${templateAppliedId}/event/create`, requestData);\n}\n\nexport function edit(requestData: any, templateAppliedId: number, templateEventExceptionId: number){\n return post(`template/applied/${templateAppliedId}/event/edit/${templateEventExceptionId}`, requestData);\n}\n\nexport function cancel(templateAppliedId: number, templateEventId: number, exDay: number, requestData: any){\n return post(`template/applied/${templateAppliedId}/event/${templateEventId}/cancel`, {...requestData, exDay: exDay});\n}\n\nexport function sub(templateAppliedId: number, templateEventId: number, exDay: number, salaryId: number, requestData: any){\n return post(`template/applied/${templateAppliedId}/event/${templateEventId}/sub/${salaryId}`, {...requestData, exDay: exDay});\n}\n\nexport function unsub(templateAppliedId: number, exceptionId: number){\n return get(`template/applied/${templateAppliedId}/event/unsub/${exceptionId}`);\n}\n\nexport function labourDay(templateAppliedId: number, templateEventId: number, exDay: number, worked: boolean, requestData: any){\n return post(`template/applied/${templateAppliedId}/event/${templateEventId}/labour_day`, {...requestData, worked: worked, exDay: exDay});\n}","import React from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {FormikHelpers, useFormik} from \"formik\";\nimport {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport * as Yup from 'yup';\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport * as calendarTypes from \"../../../../../constants/calendar\";\nimport * as api from \"../../../../../adapters/template/applied/exception\";\nimport {AccountingTypes, getAccountingTypeChoice} from \"../../../../../constants/booking\";\nimport {AxiosResponse} from \"axios\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport SalarySelector from \"../../../../salary/selector\";\nimport {Salary} from \"../../../../../models/salary\";\n\ninterface Interface {\n arg: EventClickArg | EventResizeDoneArg\n handleEventChange: (ev: any) => any,\n close: () => any,\n}\n\nconst CalendarTemplateEventEdit:React.FC = (props) => {\n\n const {arg, handleEventChange, close} = props;\n\n const dispatch = useDispatch()\n\n const initialValues = {\n salary: arg.event.extendedProps.salary.id,\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n localisation: arg.event.extendedProps.localisation?.id,\n activity: arg.event.extendedProps.activity?.id,\n comment : arg.event.extendedProps.comment,\n };\n\n const validationSchema = Yup.object().shape({\n salary: Yup.number().required(),\n start: Yup.date().required(),\n end: Yup.date().required(),\n accountingType: Yup.number().required(),\n localisation: Yup.number().nullable(),\n activity: Yup.number().nullable(),\n comment: Yup.string().nullable(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT:\n api.create({...values, event: arg.event.extendedProps.eventId, exDay: arg.event.extendedProps.exDay}, arg.event.extendedProps.templateId)\n .then(resp => handleSubmitSuccess(resp, formikHelpers))\n break;\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION:\n api.edit(values, arg.event.extendedProps.templateId, arg.event.extendedProps.exceptionId)\n .then(resp => handleSubmitSuccess(resp, formikHelpers))\n break;\n }\n }\n });\n\n const handleSubmitSuccess = (resp: AxiosResponse, formikHelpers: FormikHelpers) => {\n Promise.all([\n handleEventChange(resp.data)\n ])\n .then(() => dispatch(showAlertSuccess('Créneau mis à jour.')))\n .then(() => formikHelpers.setSubmitting(false))\n .then(() => close())\n }\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n
    \n
    \n formik.setFieldValue('salary', s?.id)}\n />\n
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n timeIntervals={15}\n dateFormat=\"E dd MMM uuuu HH:mm\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n
    \n
    \n formik.setFieldValue('accountingType', c?.value)}\n />\n
    \n
    \n
    \n formik.setFieldValue('localisation', c?.value)}\n label={\"Emplacement\"}\n />\n
    \n
    \n formik.setFieldValue('activity', c?.value)}\n label={\"Activité\"}\n />\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n}\n\nexport default CalendarTemplateEventEdit;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport * as salaryApi from \"../../../../../adapters/salary\";\nimport format from \"../../../../../utils/locale\";\nimport Loader from \"../../../../../utils/loader\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {Salaries, Salary} from \"../../../../../models/salary\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\nimport * as api from \"../../../../../adapters/template/applied/exception\";\n\ninterface Interface {\n arg: EventClickArg,\n handleSubmitSuccess: (ev: any) => any,\n close: () => any,\n}\n\nconst TemplateEventSubstitute:React.FC = (props) => {\n\n const {arg, handleSubmitSuccess, close} = props;\n\n const dispatch = useDispatch()\n const [loading, setLoading] = useState(false)\n const [submitting, setSubmitting] = useState(false)\n const [jobs, setJobs] = useState([])\n const [salaries, setSalaries] = useState<(Salary & {rate: string, counter: string, counterDuration: number})[]>([])\n\n useEffect(() => {\n\n if (arg){\n setLoading(true)\n salaryApi.available({\n beginAt: format(arg.event.start!, 'uuuu-MM-dd HH:mm:ss'),\n endAt: format(arg.event.end!, 'uuuu-MM-dd HH:mm:ss'),\n options: {\n companies: [arg.event.extendedProps.company.id],\n jobs: jobs\n }\n }).then(resp => setSalaries(resp.data))\n .then(() => setLoading(false))\n }\n\n\n }, [arg, jobs])\n\n const handleSelectChange = (salary: Salary) => {\n setSubmitting(true)\n\n api.sub(arg.event.extendedProps.templateId, arg.event.extendedProps.eventId, arg.event.extendedProps.exDay, salary.id, {\n salary: arg.event.extendedProps.salary.id,\n start: arg.event.start,\n end: arg.event.end,\n accountingType: arg.event.extendedProps.accountingType,\n activity: arg.event.extendedProps.activity?.id,\n localisation: arg.event.extendedProps.localisation?.id,\n comment: arg.event.extendedProps.comment\n })\n .then((resp) => Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Remplacement ajouté'));\n }).then(() => true))\n .then(() => close())\n .then(() => setSubmitting(false))\n }\n\n return <>\n
    \n
    Remplacer le créneau de {arg?.event.extendedProps.salary.title}
    \n \n
    \n {submitting &&
    \n \n
    }\n {!submitting &&
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n Horaires\n \n {format(arg.event.start!, 'E dd MMMM uuuu HH:mm')} {format(arg.event.end!, 'E dd MMMM uuuu HH:mm')}\n
    \n Établissement\n \n {arg.event.extendedProps.company.title}\n
    \n
    \n setJobs(choices?.map(c => Number(c.value)) || [])}\n />\n
    \n
    \n {loading && }\n {!loading &&
      \n {salaries.map(salary =>
    • handleSelectChange(salary)}>\n
      \n
      \n

      \n {salary.title}\n

      \n

      \n {salary.information?.job.title}\n

      \n
      \n
      \n \n {salary.rate} \n \n \n {salary.counterDuration < 0 ?\n : (salary.counterDuration > 0 ?\n :\n )} {salary.counter}\n \n
      \n
      \n
    • )}\n
    }\n
    \n
    }\n \n}\n\nexport default TemplateEventSubstitute;","import React, {useEffect, useState} from \"react\";\nimport {Company} from \"../../../../models/companies\";\nimport * as api from \"../../../../adapters/template\"\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport getUser from \"../../../../security/getUser\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport format from \"../../../../utils/locale\";\nimport {useDispatch} from \"react-redux\";\nimport {getISOWeeks, range} from \"../../../../constants/global\";\nimport * as Yup from \"yup\";\nimport {Field, useFormik} from \"formik\";\nimport FormError from \"../../../../utils/formError\";\nimport SalarySelector from \"../../../salary/selector\";\nimport {Salaries} from \"../../../../models/salary\";\nimport {Link} from \"react-router-dom\";\n\ninterface Interface {\n company: Company,\n start: Date,\n close: () => void;\n}\n\nconst CalendarTemplateExport:React.FC = (props) => {\n\n const [filterType, setFilterType] = useState(1);\n const [linkId, setLinkId] = useState(undefined);\n\n const [initialValues, setInitialValues] = useState({\n year: Number(format(props.start, 'uuuu')),\n week: Number(format(props.start, 'w')),\n company: props.company.id!,\n title: `Copie S.${format(props.start, 'w')} Année ${Number(format(props.start, 'uuuu'))}`,\n description: \"\",\n visibility: 1\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n year: Yup.number().required(),\n week: Yup.number().required(),\n company: Yup.number().required(),\n title: Yup.string().required(),\n visibility: Yup.number().required(),\n }))\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.make(values)\n .then(resp => {\n formikHelpers.setSubmitting(false)\n window.location.href = `#/template/${resp.data.id}`\n props.close();\n })\n }\n })\n\n const handleFilterTypeChange = (filterType: number) => {\n switch (filterType){\n case 2:\n setInitialValues(prev => ({\n week: prev.week,\n year: prev.year,\n company: prev.company,\n title: prev.title,\n description: prev.description,\n visibility: prev.visibility,\n job: 1\n }))\n\n setValidationSchema(Yup.object().shape({\n year: Yup.number().required(),\n week: Yup.number().required(),\n company: Yup.number().required(),\n title: Yup.string().required(),\n visibility: Yup.number().required(),\n job: Yup.number().required()\n }))\n break;\n case 3:\n setInitialValues(prev => ({\n week: prev.week,\n year: prev.year,\n company: prev.company,\n title: prev.title,\n description: prev.description,\n visibility: prev.visibility,\n salaries: []\n }))\n setValidationSchema(Yup.object().shape({\n year: Yup.number().required(),\n week: Yup.number().required(),\n company: Yup.number().required(),\n title: Yup.string().required(),\n visibility: Yup.number().required(),\n salaries: Yup.number().required()\n }))\n break;\n }\n\n setFilterType(filterType)\n }\n\n return <>\n
    \n
    Créer un template
    \n \n
    \n {linkId &&
    \n
    \n

    \n Template {formik.values.title} Créé !\n

    \n Accéder à {formik.values.title}\n
    \n
    }\n {!linkId &&
    \n
    \n
    \n
    \n ({\n label: String(week),\n value: week\n }))}\n enableReinitialize={true}\n value={{label: String(formik.values.week), value: formik.values.week}}\n onChange={(c) => formik.setFieldValue('week', Number(c?.value))}\n required={true}\n />\n
    \n
    \n ({\n label: String(y),\n value: y.toString()\n }))}\n value={{label: String(formik.values.year), value: formik.values.year.toString()}}\n onChange={(c) => formik.setFieldValue('year', Number(c?.value))}\n required={true}\n />\n
    \n
    \n
    \n ({label: c.title, value: c.id}))}\n onChange={c => formik.setFieldValue('company', c?.value)}\n />\n
    \n
    \n
    \n

    \n Visibilité *\n

    \n
    \n \n \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n

    \n Filtrer les collaborateurs\n

    \n
    \n handleFilterTypeChange(1)} className='form-check-input'\n defaultChecked={true} id={'all'} type={'radio'} name=\"filter\"/>\n \n
    \n
    \n handleFilterTypeChange(2)} className='form-check-input' value={'2'}\n id={\"job\"} type={'radio'} name=\"filter\"/>\n \n
    \n
    \n handleFilterTypeChange(3)} className='form-check-input' value={'3'}\n id={\"salaries\"} type={'radio'} name=\"filter\"/>\n \n
    \n
    \n
    \n {filterType === 2 &&
    \n formik.setFieldValue('job', c?.value)}\n required={true}\n />\n
    }\n {filterType === 3 &&
    \n formik.setFieldValue('salaries', salaries.map(salary => salary.id))}\n companies={[formik.values.company]}\n initiallyOpen={true}\n teams={true}\n />\n
    }\n \n
    \n
    }\n \n}\n\nexport default CalendarTemplateExport;","import React, {useEffect, useState} from \"react\";\nimport {Company} from \"../../../../models/companies\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Salary} from \"../../../../models/salary\";\nimport CalendarTemplateShow from \"../show\";\nimport CalendarTemplateImport from \"../import\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport CalendarTemplateEventShow from \"../event/show\";\nimport CalendarTemplateEventEdit from \"../event/edit\";\nimport TemplateEventSubstitute from \"../event/substitute\";\nimport CalendarTemplateExport from \"../export\";\n\n\ninterface InterfaceTemplateShow {\n sidebarType: 'TEMPLATE_SHOW',\n setCalendarData: React.Dispatch,\n template: {\n id: number;\n template: {\n title: string;\n }\n isPreview: number;\n start: string,\n end: string,\n floatingResources: {title: string, id: number}[],\n appliedResources: {title: string, id: number, resource: {title: string, id: number}, salary: Salary}[]\n }\n}\n\ninterface InterfaceTemplateImport {\n sidebarType: 'TEMPLATE_IMPORT',\n start: Date,\n end: Date,\n company: Company\n}\n\ninterface InterfaceTemplateExport {\n sidebarType: 'TEMPLATE_EXPORT',\n start: Date,\n company: Company\n}\n\ninterface InterfaceTemplateEventShow {\n sidebarType: 'TEMPLATE_EVENT_SHOW',\n arg: EventClickArg,\n calendar: string,\n setCalendarAbsenceSidebarProps: React.Dispatch,\n setCalendarTemplateSidebarProps: React.Dispatch,\n setCalendarSignedSidebarProps: React.Dispatch,\n}\n\ninterface InterfaceTemplateEventEdit {\n sidebarType: 'TEMPLATE_EVENT_EDIT',\n arg: EventClickArg,\n}\n\n\ninterface InterfaceTemplateEventSubstitute {\n sidebarType: 'TEMPLATE_EVENT_SUBSTITUTE',\n arg: EventClickArg,\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarTemplateSidebarInterface = {trigger: number} & (Interface | InterfaceTemplateShow | InterfaceTemplateExport | InterfaceTemplateImport | InterfaceTemplateEventShow | InterfaceTemplateEventEdit | InterfaceTemplateEventSubstitute)\n\nconst CalendarTemplateSidebar:React.FC any}> = (props) => {\n const [offcanvas, setOffcanvas] = useState();\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarTemplate')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarTemplate')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"TEMPLATE_SHOW\":\n return ;\n case \"TEMPLATE_IMPORT\":\n return ;\n case \"TEMPLATE_EXPORT\":\n return \n case \"TEMPLATE_EVENT_SUBSTITUTE\":\n return \n case \"TEMPLATE_EVENT_EDIT\":\n return \n case \"TEMPLATE_EVENT_SHOW\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarTemplateSidebarInterface & {handleEventChange: (e: any) => any}, nextProps: CalendarTemplateSidebarInterface & {handleEventChange: (e: any) => any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarTemplateSidebar, areEqual);","import React, {useEffect, useState} from \"react\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport {useFormik} from \"formik\";\nimport {Salaries, Salary} from \"../../../models/salary\";\nimport {Company} from \"../../../models/companies\";\nimport * as Yup from \"yup\";\nimport SalarySelector from \"../../salary/selector\";\nimport FormError from \"../../../utils/formError\";\nimport * as api from \"../../../adapters/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {useDispatch} from \"react-redux\";\nimport format from \"../../../utils/locale\";\nimport {showAlertDanger, showAlertSuccess} from \"../../../actions/alert\";\nimport SmallLoader from \"../../../utils/loader/small\";\nimport {getISOWeeks, range} from \"../../../constants/global\";\n\ninterface Interface {\n dt: Date,\n}\n\ninterface Single {\n type: 'single',\n salary: Salary,\n}\n\ninterface Multiple {\n type: 'multiple',\n company: Company\n}\n\nconst CalendarPublish: React.FC = (props) => {\n\n const [initialValues, setInitialValues] = useState({});\n const [validationSchema, setValidationSchema] = useState()\n const [filterType, setFilterType] = useState(0);\n const dispatch = useDispatch();\n\n useEffect(() => {\n\n let _initialValues: any = {\n publishType: props.type,\n message: `Retrouvez ci-joint votre emploi du temps de la semaine ${format(props.dt, 'w')}`,\n week: Number(format(props.dt, 'w')),\n year: props.dt.getFullYear(),\n }\n\n let _validationSchema: any = {\n publishType: Yup.string().required(),\n message: Yup.string().required(),\n week: Yup.number().required(),\n year: Yup.number().required(),\n }\n\n switch (props.type)\n {\n case \"single\":\n _initialValues.salary = props.salary.id;\n _validationSchema.salary = Yup.number().required()\n break;\n case \"multiple\":\n _initialValues.company = props.company.id;\n _validationSchema.company = Yup.number().required()\n break;\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }, [props.dt, props.type])\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.publish(values)\n .then(() => dispatch(showAlertSuccess('Planning publié')))\n .then(() => formikHelpers.setSubmitting(false))\n .catch(() => dispatch(showAlertDanger('Echec de la publication du planning')))\n }\n })\n\n return <>\n
    \n
    \n
    Publier le planning
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n ({\n label: String(week),\n value: week\n }))}\n enableReinitialize={true}\n value={{label: format(props.dt, 'w'), value: format(props.dt, 'w')}}\n onChange={(c) => formik.setFieldValue('week', Number(c?.value))}\n required={true}\n />\n \n
    \n
    \n ({label: String(y), value: y.toString()}))}\n value={{label: String(props.dt.getFullYear()), value: props.dt.getFullYear().toString()}}\n onChange={(c) => formik.setFieldValue('year', Number(c?.value))}\n required={true}\n />\n \n
    \n
    \n
    \n\n
    \n
    \n \n \n
    \n \n
    \n\n {props.type === \"multiple\" && <>\n
    \n formik.setFieldValue('company', c?.value)}\n />\n
    \n
    \n

    \n Filtrer les collaborateurs\n

    \n
    \n
    \n handleFilterTypeChange(e)} defaultChecked={true} type=\"radio\" name=\"filterType\" id=\"filterType1\" />\n \n
    \n
    \n handleFilterTypeChange(e)} type=\"radio\" name=\"filterType\" id=\"filterType2\" />\n \n
    \n
    \n handleFilterTypeChange(e)} type=\"radio\" name=\"filterType\" id=\"filterType3\" />\n \n
    \n
    \n
    \n {filterType === 2 &&
    \n formik.setFieldValue('job', c?.value)}\n required={true}\n />\n
    }\n {filterType === 3 &&
    \n formik.setFieldValue('salaries', salaries.map(salary => salary.id))}\n companies={[formik.values.company]}\n initiallyOpen={true}\n teams={true}\n />\n
    }\n }\n\n {props.type === \"single\" &&
    \n formik.setFieldValue('salary', salary?.id)}\n accessRight={accessRights.PUBLISH_CALENDAR}\n />\n
    }\n \n
    \n
    \n
    \n \n\n function handleFilterTypeChange(e: React.ChangeEvent)\n {\n setFilterType(Number(e.target.value));\n let _initialValues = {...initialValues}\n let _validationSchema = {...validationSchema.fields}\n\n let fields: string[] = []\n let removed: string[] = []\n\n switch (Number(e.target.value)){\n case 1:\n removed.push('job', 'salaries')\n break;\n case 2:\n fields.push('job')\n removed.push('salaries')\n break;\n case 3:\n fields.push('salaries')\n removed.push('job')\n break;\n }\n\n removed.forEach(f => {\n if (_initialValues.hasOwnProperty(f)){\n delete _initialValues[f]\n }\n\n if (_validationSchema.hasOwnProperty(f)){\n delete _validationSchema[f]\n }\n })\n\n fields.forEach(f => {\n switch (f)\n {\n case 'salaries' :\n _initialValues[f] = [];\n _validationSchema[f] = Yup.array().of(Yup.number()).min(1);\n break;\n case 'job' :\n _initialValues[f] = 'all';\n _validationSchema[f] = Yup.string().required();\n break;\n }\n })\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n}\n\nexport default CalendarPublish;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport FullCalendar, { DateSelectArg, EventClickArg, EventDropArg, EventHoveringArg } from \"@fullcalendar/react\";\nimport interactionPlugin, { EventResizeDoneArg } from \"@fullcalendar/interaction\";\nimport rrulePlugin from \"@fullcalendar/rrule\";\nimport resourceTimeGridPlugin from \"@fullcalendar/resource-timegrid\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport CalendarEventSidebar, { CalendarEventSidebarInterface } from \"../event/sidebar\";\nimport CalendarBookingSidebar, { CalendarBookingSidebarInterface } from \"../booking/sidebar\";\nimport CalendarSignedSidebar, { CalendarSignedSidebarInterface } from \"../signed/sidebar\";\nimport CalendarAbsenceSidebar, { CalendarAbsenceSidebarInterface } from \"../absence/sidebar\";\nimport { Popover, Tooltip } from \"bootstrap\";\nimport CalendarOfferSidebar, { CalendarOfferSidebarInterface } from \"../offer/sidebar\";\nimport CalendarTemplateSidebar, { CalendarTemplateSidebarInterface } from \"../template/sidebar\";\nimport listPlugin from \"@fullcalendar/list\";\nimport CalendarPublish from \"../publish\";\nimport CalendarTaskSidebar, { CalendarTaskSidebarInterface } from \"../task/sidebar\";\n\nimport { Salary } from \"../../../models/salary\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport { LIST_BOOKING_GROUP } from \"../../../constants/rightSidebar\";\n\nimport * as api from \"../../../adapters/calendar\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\n\nimport { Granted, GrantedAny } from \"../../../security/granted\";\nimport HasModule from \"../../../security/hasModule\";\nimport getVersion from \"../../../security/getVersion\";\nimport getUser from \"../../../security/getUser\";\nimport format from \"../../../utils/locale\";\nimport { CalendarTitle, renderEvent } from \"../utils\";\nimport Loader from \"../../../utils/loader\";\nimport timeFormat from \"../../../utils/timeFormat\";\nimport { setHours, setMinutes } from \"date-fns\";\nimport { getLabourDaysDatesTab } from \"../../../constants/calendar\";\nimport moment from \"moment\";\n\ninterface IProps {\n salary: Salary;\n setDate?: React.Dispatch;\n start: Date;\n end?: Date;\n}\n\nconst CalendarSingle:React.FC = (props) => {\n const { salary, end, start } = props;\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state);\n\n const [calendar, setCalendar] = useState(calendarTypes.CALENDAR_EVENTS_SINGLE);\n const [sortBy, setSortBy] = useState<1|2|3>(state.auth.user.calendarSettings.defaultGroupBy || 1);\n const [isLoading, setIsLoading] = useState(true);\n const [isNightTime, setNightTime] = useState(false);\n const [events, setEvents] = useState([]);\n const [companyWeeks, setCompanyWeeks] = useState<{title: string, id: number, week: number}[]>([]);\n const [keepNotes, setKeepNotes] = useState([]);\n const [tasks, setTasks] = useState([]);\n const [offers, setOffers] = useState([]);\n const [signed, setSigned] = useState([]);\n const [calendarEvents, setCalendarEvents] = useState([]); \n const [timeSheets, setTimeSheets] = useState([]);\n const [title, setTitle] = useState('');\n const [view, setView] = useState(window.innerWidth >= 768 ? calendarTypes.TIME_GRID_WEEK_VIEW : calendarTypes.LIST_WEEK_VIEW);\n const [pickerDate, setPickerDate] = useState(new Date());\n const [isOffers, setIsOffers] = useState(false)\n const [sm, setSm] = useState(window.innerWidth < 768)\n const [endDate, setEndDate] = useState(new Date())\n const [disableDemarcation, setDisableDemarcation] = useState(false)\n\n const [calendarEventSidebarProps, setCalendarEventSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarBookingSidebarProps, setCalendarBookingSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarSignedSidebarProps, setCalendarSignedSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarAbsenceSidebarProps, setCalendarAbsenceSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarOfferSidebarProps, setCalendarOfferSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarTemplateSidebarProps, setCalendarTemplateSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarTaskSidebarProps, setCalendarTaskSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [timeRange, setTimeRange] = useState({\n minTime: format(setMinutes(setHours(new Date(), 0), 0), 'HH:mm:ss'),\n maxTime: \"1.\" + format(setMinutes(setHours(new Date(), 0), 0), 'HH:mm:ss'),\n });\n\n const calendarRef = React.createRef();\n\n function fetchCalendar(overrides?: {overrideCalendar?: string, overrideView?: string, overrideSortBy?: number, overrideNightTime?: boolean}) {\n const {overrideCalendar, overrideView, overrideSortBy, overrideNightTime} = overrides || {};\n\n let API = calendarRef.current?.getApi()\n\n if (API) {\n setEndDate(API.view.activeEnd)\n setIsLoading(true)\n if (props.setDate){\n props.setDate(API.getDate());\n }\n\n return api.test({\n start: format(API.view.currentStart, 'uuuu-MM-dd'),\n end: format(API.view.currentEnd, 'uuuu-MM-dd'),\n calendar: overrideCalendar || calendar,\n options: {\n view: overrideView || API.view.type,\n sortBy: overrideSortBy || sortBy,\n companies: salary.companies.map(c => c.id!),\n salary: salary.id,\n isNightTime: overrideNightTime !== undefined ? overrideNightTime : isNightTime,\n disableDemarcation: disableDemarcation\n }\n }).then((data) => { \n setTimeSheets([...data.data.eventsTimeSheet || [], ...data.data.signedTimeSheet || []])\n setSigned([...data.data.signed || []])\n setOffers([...data.data.eventOffers || []])\n setTasks([...data.data.tasks || []])\n setKeepNotes([...data.data.keepNotes || []])\n setEvents([...data.data.events || [], ...data.data.absences || []])\n setCompanyWeeks([...data.data.companyWeek?.filter((c: any) => salary.companies.map(_c => _c.id).includes(c.id)) || []])\n\n setTimeRange({\n minTime: format(new Date(data.data.timeRange.minTime), \"HH:mm:ss\"),\n maxTime: (new Date(data.data.timeRange.maxTime).getDate() - new Date(data.data.timeRange.minTime).getDate()) + '.' + format(new Date(data.data.timeRange.maxTime), \"HH:mm:ss\"),\n })\n setIsLoading(false)\n }).then(() => true)\n } else {\n return false;\n }\n }\n\n const handleResize = () => {\n if (window.innerWidth >= 768){\n setSm(false)\n }else if(window.innerWidth < 768){\n setSm(true)\n }\n }\n\n function getApi(){\n return calendarRef.current!.getApi();\n }\n\n function hasApi(){\n return !!calendarRef.current?.getApi();\n }\n\n function handlePickerDateChange(dt: Date)\n {\n if (hasApi()){\n setPickerDate(dt)\n getApi().gotoDate(dt)\n fetchCalendar()\n }\n }\n\n function prevClick(){\n if (hasApi()){\n getApi().prev()\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n function nextClick(){\n if (hasApi()){\n getApi().next()\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n function changeView(_view: string)\n {\n if (hasApi()){\n setView(_view)\n getApi().changeView(_view);\n setTitle(getApi().view.title)\n fetchCalendar()\n }\n }\n\n function handleCalendarChange(calendar: string) {\n setCalendar(calendar)\n\n if ([calendarTypes.CALENDAR_SIGNED_SINGLE, calendarTypes.CALENDAR_ABSENCE].includes(calendar)) {\n setSortBy(1);\n }\n\n fetchCalendar({overrideCalendar: calendar})\n }\n\n function onResize(arg: EventResizeDoneArg) {\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION:\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n break;\n }\n }\n\n function onDrop(arg: EventDropArg) {\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_DROP\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_DROP\",\n trigger: prev.trigger + 1,\n arg: arg\n }))\n break;\n default:\n arg.revert();\n }\n }\n\n function onSelect(arg: DateSelectArg) {\n switch (calendar){\n case calendarTypes.CALENDAR_EVENTS_SINGLE:\n switch (getVersion()) {\n case 1:\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: salary,\n company: salary.companies[0],\n }))\n break;\n default:\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: salary,\n company: salary.companies[0],\n }))\n break;\n }\n break;\n case calendarTypes.CALENDAR_SIGNED_SINGLE:\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: salary,\n company: salary.companies[0],\n }))\n }\n }\n\n function onClick(arg: EventClickArg) {\n arg.jsEvent.stopPropagation()\n \n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_OFFER_PENDING:\n case calendarTypes.EVENT_TYPE_OFFER_VALIDATED:\n setCalendarOfferSidebarProps(prev => ({\n sidebarType: \"OFFER_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarOfferSidebarProps: setCalendarOfferSidebarProps\n }))\n break;\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n calendar: calendar,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps,\n setCalendarEventSidebarProps: setCalendarEventSidebarProps,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n }))\n\n break;\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION:\n setCalendarTemplateSidebarProps(prev => ({\n sidebarType: \"TEMPLATE_EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n calendar: calendar,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps,\n setCalendarTemplateSidebarProps: setCalendarTemplateSidebarProps,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n }))\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarSidebarSignedProps: setCalendarSignedSidebarProps,\n calendar: calendar,\n setCalendarSidebarBookingProps: setCalendarBookingSidebarProps,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps\n }))\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION:\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_SHOW\",\n trigger: prev.trigger + 1,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n company: arg.event.extendedProps.company,\n end: arg.event.end,\n _end: arg.event.extendedProps._end,\n start: arg.event.start,\n _start: arg.event.extendedProps._start,\n isAnomaly: arg.event.extendedProps.isAnomaly,\n salary: arg.event.extendedProps.salary,\n timeClockId: arg.event.extendedProps.timeClockId,\n files: arg.event.extendedProps.files\n }))\n break;\n case calendarTypes.EVENT_TYPE_ABSENCE:\n if (Granted(accessRights.EDIT_ABSENCE, salary.id)){\n setCalendarAbsenceSidebarProps(prev => ({\n sidebarType: \"ABSENCE_EDIT\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING:\n if (Granted(accessRights.EDIT_TIME_CLOCK, salary.id)){\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_ADD\",\n trigger: prev.trigger + 1,\n company: arg.event.extendedProps.company,\n salary: arg.event.extendedProps.salary,\n start: arg.event.start!,\n end: arg.event.end!,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_TASK:\n case calendarTypes.EVENT_TYPE_TASK_EXCEPTION:\n setCalendarTaskSidebarProps(prev => ({\n sidebarType: \"TASK_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarTaskSidebarProps: setCalendarTaskSidebarProps\n }))\n break;\n }\n }\n\n function handleNightTimeChange(checked: boolean)\n {\n fetchCalendar({overrideNightTime: checked})\n setNightTime(checked)\n }\n\n function handleEventChange(ev: any)\n {\n return fetchCalendar();\n }\n\n function onMouseEnterTooltip(e: EventTarget & HTMLButtonElement){\n let tooltip = new Tooltip(e, {trigger: \"hover\"})\n tooltip.show();\n\n e.addEventListener('click', () => tooltip.hide());\n e.addEventListener('mouseleave', () => tooltip.hide());\n }\n\n function eventMouseEnter(e: EventHoveringArg) {\n if (e.event.extendedProps.comment) {\n let tooltip = new Tooltip(e.el, {trigger: \"hover\", html: true, title: e.event.extendedProps.comment})\n tooltip.show();\n\n e.el.addEventListener('click', () => tooltip.hide());\n e.el.addEventListener('mouseleave', () => tooltip.hide());\n }\n }\n\n useEffect(() => {\n window.addEventListener(\"resize\", handleResize)\n if (!isLoading) {\n changeView(sm ? calendarTypes.LIST_WEEK_VIEW : calendarTypes.TIME_GRID_WEEK_VIEW)\n }\n return () => window.removeEventListener(\"resize\", handleResize)\n }, [sm])\n\n useEffect(() => {\n fetchCalendar();\n }, [salary?.id, disableDemarcation])\n\n useEffect(() => {\n if (hasApi()) {\n getApi().gotoDate(pickerDate);\n setTitle(getApi().view.title)\n }\n }, [pickerDate])\n\n useEffect(() => {\n switch (calendar) {\n case calendarTypes.CALENDAR_EVENTS_SINGLE:\n setCalendarEvents([...events, ...offers.filter((o: any) => isOffers || o.eventType === calendarTypes.EVENT_TYPE_OFFER_VALIDATED), ...keepNotes, ...tasks]);\n break;\n case calendarTypes.CALENDAR_SIGNED_SINGLE:\n setCalendarEvents([...events, ...signed, ...keepNotes]);\n break;\n }\n\n }, [events, signed, isOffers])\n\n const TimeSheetSlot = () => {\n let timesheet = timeSheets.find((t: any) => t.salary?.id === salary?.id);\n \n if (timesheet) return (\n \n )\n\n return <>\n }\n\n return (\n <>\n
    \n
    \n \n
    \n\n {HasModule('timeClock') && (Granted(accessRights.LIST_TIME_CLOCK, salary.id) || (Granted(accessRights.LIST_SELF_TIME_CLOCK, salary.id) && salary.id === getUser().currentSalary.id)) &&\n
    \n
    \n
    \n \n {calendar === calendarTypes.CALENDAR_EVENTS_SINGLE && <>Planifié}\n {calendar === calendarTypes.CALENDAR_SIGNED_SINGLE && <>Badgé}\n \n\n
      \n
    • handleCalendarChange(calendarTypes.CALENDAR_EVENTS_SINGLE)}>\n {calendar === calendarTypes.CALENDAR_EVENTS_SINGLE && } Planifié\n
    • \n
    • handleCalendarChange(calendarTypes.CALENDAR_SIGNED_SINGLE)}>\n {calendar === calendarTypes.CALENDAR_SIGNED_SINGLE && } Badgé\n
    • \n
    \n
    \n\n {calendar === calendarTypes.CALENDAR_SIGNED_SINGLE &&\n \n }\n
    \n
    \n }\n\n
    \n
    \n \n {view === 'timeGridDay' && <>Jour}\n {view === 'timeGridWeek' && <>Semaine}\n {view === 'dayGridMonth' && <>Mois}\n \n\n
      \n
    • changeView('timeGridDay')}>\n Jour\n
    • \n
    • changeView('timeGridWeek')}>\n Semaine\n
    • \n
    • changeView('dayGridMonth')}>\n Mois\n
    • \n
    \n
    \n
    \n\n
    \n `

    ${c.title}

    Semaine ${c.week}`).join('
    ') : \"Aucun établissement\"}\n onMouseEnter={e => {\n let popover = new Popover(e.currentTarget, {\n trigger: 'hover',\n container: 'body',\n html: true\n })\n popover.show();\n e.currentTarget.addEventListener(\"mouseleave\", () => popover.hide())\n }}\n >\n \n \n
    \n\n
    \n \n
    \n\n
    \n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-light text-primary shadow-sm mx-1'}\n onClick={() => handleNightTimeChange(!isNightTime)}\n >\n {isNightTime ? : }\n \n
    \n\n {getVersion() === 0 && Granted(accessRights.EDIT_BOOKING, salary.id) &&\n
    \n \n
    \n }\n\n {GrantedAny([accessRights.EDIT_TIME_CLOCK, accessRights.EDIT_BOOKING, accessRights.EDIT_ABSENCE, accessRights.EDIT_BOOKING_OFFER], salary.id) &&\n
    \n
    \n \n Ajouter\n \n\n
      \n {Granted(accessRights.EDIT_BOOKING, salary.id) && calendar === calendarTypes.CALENDAR_EVENTS_SINGLE &&\n {\n let API = calendarRef.current?.getApi();\n\n if (API){\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_ADD\",\n dt: setHours(API!.getDate(), (new Date()).getHours()),\n trigger: prev.trigger + 1,\n salary: salary,\n company: salary.companies[0]\n }))\n }\n }}\n >\n Ajouter un créneau\n \n }\n\n {Granted(accessRights.EDIT_ABSENCE, salary.id) &&\n setCalendarAbsenceSidebarProps(prev => ({\n sidebarType: \"ABSENCE_ADD\",\n trigger: prev.trigger + 1,\n salary: salary,\n }))}\n >\n Ajouter une absence\n \n }\n\n {Granted(accessRights.EDIT_TASK) && calendar === calendarTypes.CALENDAR_EVENTS_SINGLE &&\n setCalendarTaskSidebarProps(prev => ({\n sidebarType: \"TASK_ADD\",\n trigger: prev.trigger + 1,\n salary: salary\n }))}\n >\n Ajouter une tâche\n \n }\n\n {calendarTypes.CALENDAR_SIGNED_SINGLE === calendar && Granted(accessRights.EDIT_TIME_CLOCK, salary.id) &&\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_ADD\",\n trigger: prev.trigger + 1,\n salary: salary,\n company: salary.companies[0]\n }))}\n >\n Ajouter un badgeage\n \n }\n\n {calendarTypes.CALENDAR_EVENTS_SINGLE === calendar && Granted(accessRights.EDIT_BOOKING_OFFER, salary.id) &&\n setCalendarOfferSidebarProps(prev => ({\n sidebarType: \"OFFER_ADD\",\n trigger: prev.trigger + 1,\n salary: salary,\n company: salary.companies[0]\n }))}\n >\n Ajouter une offre de créneau\n \n }\n
    \n
    \n
    \n }\n\n {Granted(accessRights.LIST_BOOKING_OFFER, salary.id) && calendar === calendarTypes.CALENDAR_EVENTS_SINGLE &&\n
    \n setIsOffers(prev => !prev)}\n data-bs-placement=\"top\"\n title=\"Offres de créneaux\"\n onMouseEnter={(e) => onMouseEnterTooltip(e.currentTarget)}\n >\n \n \n {offers.filter((o: any) => o.eventType === calendarTypes.EVENT_TYPE_OFFER_PENDING).length}\n \n \n\n {Granted(accessRights.PUBLISH_CALENDAR) &&\n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-light text-primary shadow-sm mx-1'}\n >\n \n \n }\n
    }\n
    \n\n
    \n setTitle(arg.view.title)}\n plugins={[interactionPlugin, rrulePlugin, timeGridPlugin, dayGridPlugin, resourceTimeGridPlugin, listPlugin]}\n lazyFetching={false}\n headerToolbar={false}\n displayEventEnd={true}\n initialView={view}\n height={'100%'}\n events={calendarEvents}\n resourceGroupField={'groupId'}\n displayEventTime={true}\n eventContent={renderEvent}\n hiddenDays={state.auth.user.calendarSettings.daysOfWeek}\n slotMinTime={timeRange.minTime}\n slotMaxTime={timeRange.maxTime}\n dayHeaderContent={(info) => {\n const labourDates = getLabourDaysDatesTab(moment(info.date).year()) \n const headerDate = moment(info.date).format('MM-DD')\n if (labourDates.includes(headerDate)) {\n return (\n

    \n {moment(info.date).format('ddd DD/MM')}\n

    \n )\n } \n }}\n locales={allLocales}\n locale={'fr'}\n schedulerLicenseKey={'GPL-My-Project-Is-Open-Source'}\n editable={Granted(accessRights.EDIT_BOOKING, salary.id)}\n selectable={Granted(accessRights.EDIT_BOOKING, salary.id)}\n select={onSelect}\n eventResize={onResize}\n eventClick={onClick}\n eventDrop={onDrop}\n scrollTime={null}\n eventMouseEnter={eventMouseEnter}\n weekNumbers={true}\n visibleRange={{\n start: start ? format(start, 'uuuu-MM-dd') : undefined,\n end: end ? format(end, 'uuuu-MM-dd') : undefined\n }}\n />\n
    \n\n \n \n \n \n \n \n \n \n\n {isLoading && }\n \n );\n}\n\nexport default CalendarSingle;","export const ADD_TIME_CLOCK = 'ADD_TIME_CLOCK';\nexport const ADD_TIME_CLOCK_SUCCESS = 'ADD_TIME_CLOCK_SUCCESS';\nexport const ADD_TIME_CLOCK_FAILURE = 'ADD_TIME_CLOCK_FAILURE';\n\nexport const ADD_TIME_CLOCK_INFORMATION = 'ADD_TIME_CLOCK_INFORMATION';\nexport const ADD_TIME_CLOCK_INFORMATION_SUCCESS = 'ADD_TIME_CLOCK_INFORMATION_SUCCESS';\nexport const ADD_TIME_CLOCK_INFORMATION_FAILURE = 'ADD_TIME_CLOCK_INFORMATION_FAILURE';\n\nexport const EDIT_TIME_CLOCK = 'EDIT_TIME_CLOCK';\nexport const EDIT_TIME_CLOCK_SUCCESS = 'EDIT_TIME_CLOCK_SUCCESS';\nexport const EDIT_TIME_CLOCK_FAILURE = 'EDIT_TIME_CLOCK_FAILURE';\n\nexport const FETCH_TIME_CLOCKS = 'FETCH_TIME_CLOCKS';\nexport const FETCH_TIME_CLOCKS_SUCCESS = 'FETCH_TIME_CLOCKS_SUCCESS';\nexport const FETCH_TIME_CLOCKS_FAILURE = 'FETCH_TIME_CLOCKS_FAILURE';\n\nexport const SHOW_TIME_CLOCK = 'SHOW_TIME_CLOCK';\nexport const SHOW_TIME_CLOCK_SUCCESS = 'SHOW_TIME_CLOCK_SUCCESS';\nexport const SHOW_TIME_CLOCK_FAILURE = 'SHOW_TIME_CLOCK_FAILURE';\n\nexport const REFRESH_TIME_CLOCK = 'REFRESH_TIME_CLOCK';\n\nexport const REMOVE_TIME_CLOCK_SUCCESS = 'REMOVE_TIME_CLOCK_SUCCESS';\n\nexport const TYPE_TIME_CLOCK = \"timeClock\"\nexport const TYPE_TIME_CLOCK_EXCEPTION = \"timeClockException\"","import * as types from \"../../constants/timeClock\";\nimport * as models from \"../../models/timeClock\";\n\nexport const addTimeClock = () => {\n return {\n type: types.ADD_TIME_CLOCK,\n }\n}\n\nexport const addTimeClockInformation = () => {\n return {\n type: types.ADD_TIME_CLOCK,\n }\n}\n\nexport const addTimeClockGeneratedSuccess = (timeClockGenerated: models.TimeClockGenerated) => {\n return {\n type: types.ADD_TIME_CLOCK_SUCCESS,\n timeClockGenerated: timeClockGenerated,\n }\n}\n\nexport const addTimeClockFailure = (error: string) => {\n return {\n type: types.ADD_TIME_CLOCK_FAILURE,\n timeClock: null,\n timeClocks: null,\n error: error\n }\n}\n\nexport const editTimeClock = () => {\n return {\n type: types.EDIT_TIME_CLOCK,\n }\n}\n\nexport const editTimeClockGeneratedSuccess = (key: string, timeClockGenerated: models.TimeClockGenerated) => {\n return {\n type: types.EDIT_TIME_CLOCK_SUCCESS,\n timeClockGenerated: timeClockGenerated,\n key: key\n }\n}\nexport const removeTimeClockGeneratedSuccess = (key: string) => {\n return {\n type: types.REMOVE_TIME_CLOCK_SUCCESS,\n key: key\n }\n}\n\nexport const fetchTimeClocks = () => {\n return {\n type: types.FETCH_TIME_CLOCKS,\n }\n}\n\nexport const fetchTimeClocksFailure = (error: string) => {\n return {\n type: types.FETCH_TIME_CLOCKS_FAILURE,\n timeClock: null,\n timeClocks: [],\n error: error\n }\n}\n\nexport const fetchTimeClocksSuccess = (timeClocks: models.TimeClocks) => {\n return {\n type: types.FETCH_TIME_CLOCKS_SUCCESS,\n timeClock: null,\n timeClocks: timeClocks\n }\n}\n\n\nexport const refreshTimeClock = () => {\n return {\n type: types.REFRESH_TIME_CLOCK,\n }\n}\nexport const showTimeClockSuccess = (timeClockGenerated: models.TimeClockGenerated) => {\n return {\n type: types.SHOW_TIME_CLOCK_SUCCESS,\n timeClockGenerated: timeClockGenerated\n }\n}\nexport const showTimeClockFailure = (error: string) => {\n return {\n type: types.SHOW_TIME_CLOCK_FAILURE,\n timeClock: null,\n timeClocks: null,\n error: error\n }\n}","import React, { useEffect } from \"react\";\nimport { useDispatch } from \"react-redux\";\n\nimport TaskCalendar from \"../calendar/task/list\";\nimport DashboardAbsenceRequest from \"./absenceRequest\";\nimport DashboardKeepNote from \"./keepNote\";\nimport DashboardFeed from \"./feed\";\nimport DashboardPointing from \"./pointing\";\nimport DashboardBookingOffer from \"./bookingOffer\";\nimport DashboardCounter from \"./counter\";\nimport DashboardEventOffer from \"./eventOffer\";\nimport DashboardExpenseRequest from \"./expenseRequest\";\nimport DashboardTimeClock from \"./timeClock\";\nimport CalendarSingle from \"../calendar/single\";\n\nimport * as accessRights from \"../../constants/accessRight\";\n\nimport * as api from \"../../adapters/timeClock\";\nimport * as actions from \"../../actions/timeClock\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../actions/header\";\n\nimport getVersion from \"../../security/getVersion\";\nimport getUser from \"../../security/getUser\";\nimport { Granted, GrantedAny } from \"../../security/granted\";\nimport HasModule from \"../../security/hasModule\";\nimport hasModule from \"../../security/hasModule\";\nimport format from \"../../utils/locale\";\n\nconst Dashboard: React.FC = () => {\n const dispatch = useDispatch();\n\n useEffect(() => {\n const controller = new AbortController();\n\n dispatch(setPageTitle(`Tableau de bord`))\n dispatch(setHelpProductSheetIds([5, 7, 14]))\n\n if (Granted(accessRights.LIST_TIME_CLOCK)){\n dispatch(actions.fetchTimeClocks());\n api.fetch({start: format(new Date(), 'uuuu-MM-dd'), end: format(new Date(), 'uuuu-MM-dd'), options: {}}, controller.signal).then(data => {\n dispatch(actions.fetchTimeClocksSuccess(data.data.events));\n })\n }\n\n return () => {\n dispatch(setHelpProductSheetIds([]))\n controller.abort();\n }\n }, [])\n\n return (\n
    \n
    \n {getVersion() === 1 &&\n
    \n \n
    \n Testez dès maintenant la nouvelle plateforme Sivan en version Beta en cliquant juste ici. Toutes vos \n données seront synchronisées entre les différentes versions jusqu’au déploiement officiel de la nouvelle version.\n
    \n
    \n }\n\n {Granted(accessRights.CLOCK_IN_FROM_APP) && HasModule('timeClock') &&\n \n }\n\n
    \n
    \n {Granted(accessRights.LIST_ABSENCE) &&\n
    \n \n
    \n }\n {Granted(accessRights.LIST_TIME_CLOCK) && HasModule('timeClock') &&\n <>\n {}\n \n }\n {Granted(accessRights.LIST_KEEP_NOTE) &&\n
    \n \n
    \n }\n
    \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n\n
    \n {HasModule('expense') && Granted(accessRights.EDIT_EXPENSE) &&\n \n }\n {Granted(accessRights.LIST_COUNTER) &&\n \n }\n {HasModule(\"bookingOffer\") && GrantedAny([accessRights.LIST_BOOKING_OFFER, accessRights.APPLY_BOOKING_OFFER]) &&\n (getVersion() === 1 ? : )\n }\n
    \n \n
    \n
    \n
    \n
    \n\n {Granted(accessRights.LIST_TASK_GROUP) && hasModule('task') &&\n
    \n
    \n \n
    \n
    \n }\n
    \n )\n}\n\nexport default Dashboard;","import * as React from \"react\";\n\nimport Dashboard from \"../../components/dashboard\";\n\nconst DashboardPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default DashboardPage;","import React, {useEffect, useState} from \"react\";\n\ninterface LoaderListProps {\n leftCircle: boolean;\n title: boolean;\n description: boolean;\n listLength: number;\n}\n\nconst LoaderList:React.FC = (props) => {\n\n const {description, title, leftCircle, listLength} = props;\n const [listArray, setListArray] = useState([]);\n\n useEffect(() => {\n let _listArray: number[] = []\n for(let i = 0; i < listLength; i++){\n _listArray.push(i)\n }\n setListArray([..._listArray])\n }, [])\n\n return
      \n {listArray.map(index =>
    • \n \n {title &&
      }\n
      \n {description &&
      }\n
      \n \n {leftCircle &&
      }\n
      \n
    • )}\n
    \n}\n\nexport default LoaderList;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport FileSaver from \"file-saver\";\n\nimport * as models from \"../../../models/salary\";\n\nimport { FORM_NEW_SALARY, SALARY_IMPORT } from \"../../../constants/rightSidebar\";\nimport { PAGINATION } from \"../../../constants/global\";\nimport * as accessRights from \"../../../constants/accessRight\";\n\nimport { _export, list } from \"../../../adapters/salary\";\nimport * as actions from \"../../../actions/salary\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport { Granted } from \"../../../security/granted\";\nimport LoaderList from \"../../../utils/loaderList\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\n\nconst SalaryList: React.FC = () => {\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n\n const state = useSelector((state: RootStateOrAny) => state.salary);\n\n const [offset, setOffset] = useState(0);\n const [scrollBottom, setScrollBottom] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [query, setQuery] = useState();\n const [activated, setActivated] = useState(true);\n const [companies, setCompanies] = useState([]);\n const [jobs, setJobs] = useState([]);\n const [isLoading, setIsLoading] = useState(false);\n const [isFiltering, setFiltering] = useState(false);\n const [isExporting, setIsExporting] = useState(false)\n\n const __export = () => {\n setIsExporting(true);\n _export().then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n FileSaver.saveAs(newBlob, \"export.xlsx\")\n setIsExporting(false);\n }).catch(error => dispatch(axiosError(error)))\n }\n\n useEffect(() => {\n dispatch(actions.fetchSalaries())\n setIsLoading(true);\n\n list({query: query, activated: activated, companies: companies, jobs: jobs, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n\n return () => {\n\n }\n }, [activated, companies, jobs])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setFiltering(true);\n setOffset(0)\n list({query: query, activated: activated, companies: companies, jobs: jobs, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess(data.data))\n setFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n if (scrollBottom) {\n if (offset && !isLast){\n setIsLoading(true)\n list({query: query, activated: activated, companies: companies, jobs: jobs, offset: offset}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n\n setScrollBottom(false);\n }\n }, [scrollBottom])\n\n useEffect(() => {\n dispatch(setPageTitle('Collaborateurs'))\n dispatch(setHelpProductSheetIds([1]))\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n return (\n <>\n
    \n
    \n
    \n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
    \n
    \n\n {Granted(accessRights.EDIT_SALARY) &&\n
    \n \n \n dispatch(openSidebar(SALARY_IMPORT))}\n className='btn btn-outline-primary'>\n \n \n \n
    \n }\n
    \n\n {state.payload.length ? state.payload.map((salary: models.Salary, index: number) => ([\n \n
    \n
    \n

    {salary.title}

    \n
    \n \n {salary.information?.job.title}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n ]))\n : !isLoading ?\n : ''\n }\n\n {!isLoading && !isLast && state.payload.length &&\n \n }\n\n {isLoading && !state.payload.length &&\n \n }\n {isLoading && !!state.payload.length &&\n \n }\n
    \n
    \n\n
    \n
    \n
    \n
    \n
    Filtrer les collaborateurs
    \n \n
    \n\n
    \n
    \n
    \n setActivated(e.target.checked)} className=\"form-check-input\" type=\"radio\" name=\"activated\"\n id=\"activated\" defaultChecked={activated} />\n \n
    \n\n
    \n setActivated(!e.target.checked)} className=\"form-check-input\" type=\"radio\" name=\"activated\"\n id=\"deactivated\" defaultChecked={!activated} />\n \n
    \n
    \n\n
    \n setCompanies(choices.map(c => Number(c.value)))}\n />\n
    \n\n
    \n setJobs(choices.map(c => Number(c.value)))}\n />\n
    \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default SalaryList;","import React, { useEffect, useState } from \"react\";\nimport { useFormik } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport DatePicker from \"react-datepicker\";\n\nimport { Timetable, Timetables } from \"../../../../models/timetable\";\nimport { Salary } from \"../../../../models/salary\";\n\nimport * as api from \"../../../../adapters/timetable\";\n\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport FormError from \"../../../../utils/formError\";\n\ninterface InterfaceAdd {\n timetables: Timetables;\n salary: Salary;\n lastEnd?: Date;\n handleSubmit: (ev: any) => any;\n duplicate: false;\n}\n\ninterface InterfaceDuplicate {\n timetables: Timetables;\n salary: Salary;\n lastEnd?: Date;\n handleSubmit: (ev: any) => any;\n duplicate: true;\n timetable: Timetable;\n}\n\nconst TimetableAddForm:React.FC = (props) => {\n const { timetables, salary, lastEnd, handleSubmit } = props;\n\n const [initialValues, setInitialValues] = useState({\n title: '',\n start: lastEnd || new Date(),\n end: undefined,\n salary: salary.id,\n type: 1\n });\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n type: Yup.number().required(),\n }));\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: values => {\n if (props.duplicate) {\n api.duplicate(values, props.timetable.id).then(data => {\n formik.setSubmitting(false)\n handleSubmit(data.data)\n })\n } else {\n api.create(values).then(data => {\n formik.setSubmitting(false)\n handleSubmit(data.data)\n })\n }\n }\n })\n\n const handleTypeChange = (type: number) => {\n let _values = {...formik.values, type: type}\n let _validation = {...validationSchema.fields}\n\n switch (type)\n {\n case 1:\n delete _values.recurrence;\n delete _validation.recurrence;\n break;\n case 2:\n _values.recurrence = 1;\n _validation.recurrence = Yup.number().required();\n break;\n }\n\n setValidationSchema(Yup.object().shape(_validation))\n setInitialValues(_values)\n\n }\n\n const overlap = () => {\n return timetables.filter(t => {\n if (formik.values.start && !formik.values.end){\n return (new Date(t.start) > (formik.values.start) || (!t.end || new Date(t.end) > (formik.values.start)))\n }\n\n if (formik.values.start && formik.values.end && t.start && t.end){\n return (new Date(t.start) < formik.values.end! && new Date(t.end) > formik.values.start);\n }\n\n if (!t.end){\n return !formik.values.end || formik.values.end! > new Date(t.start)\n }\n\n return false;\n })\n }\n\n const isOverlap = !!overlap().length\n\n useEffect(() => {\n if (props.duplicate) {\n let _initialValues: any = {\n title: props.timetable.title + \" - copy\",\n start: lastEnd || new Date(),\n end: undefined,\n salary: salary.id,\n type: props.timetable.type\n }\n\n if (props.timetable.type === 2) {\n _initialValues.recurrence = props.timetable.recurrence;\n }\n\n setInitialValues(_initialValues);\n } else {\n setInitialValues({\n title: '',\n start: lastEnd || new Date(),\n end: undefined,\n salary: salary.id,\n type: 1\n })\n }\n }, [lastEnd, salary.id])\n\n return (\n
    \n

    \n Paramètres de l’emploi du temps\n

    \n
    \n \n \n \n
    \n\n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date) => formik.setFieldValue('start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.start}\n endDate={formik.values.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n \n \n \n\n }\n selected={formik.values.end}\n onChange={(date) => formik.setFieldValue('end', date)}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n
    \n \n \n
    \n\n
    \n
    \n handleTypeChange(1)} type=\"radio\" value={1} name=\"type\" id=\"type1\" />\n \n
    \n
    \n handleTypeChange(2)} type=\"radio\" value={2} name=\"type\" id=\"type1\" />\n \n
    \n\n {formik.values.type === 2 &&\n <>\n
    \n \n \n
    \n \n }\n
    \n\n
    \n {overlap().map(item =>\n

    \n Incompatible avec {item.title}\n

    \n )}\n
    \n\n \n {formik.isSubmitting ?\n
    \n Loading...\n
    \n : <> Valider}\n \n \n )\n}\n\nexport default TimetableAddForm;","import React, { useEffect, useState } from \"react\";\n\nimport TimetableAddForm from \"./form\";\n\nimport { Timetable, Timetables } from \"../../../models/timetable\";\nimport { Salary } from \"../../../models/salary\";\n\nimport { Offcanvas } from \"bootstrap\";\n\ninterface IProps {\n timetables: Timetables;\n salary: Salary;\n setTimetables: React.Dispatch;\n}\n\nconst TimetableAdd:React.FC = (props) => {\n const {timetables, salary, setTimetables } = props;\n\n const [offcanvas, setOffcanvas] = useState();\n const [lastEnd, setLastEnd] = useState();\n\n const maxDate = (dates: Date[]) => new Date(Math.max(...dates.map(Number)));\n\n const close = () => {\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const handleSubmit = (t: Timetable) => {\n setTimetables([...timetables, t])\n close()\n }\n\n useEffect(() => {\n if(timetables.length > 0 && timetables.filter(t => !t.end).length === 0) {\n setLastEnd(maxDate(timetables.map(t => new Date(t.end!))));\n }else{\n setLastEnd(undefined)\n }\n }, [timetables])\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTimetableAdd')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n return (\n
    \n
    \n
    \n Ajouter un emploi du temps\n
    \n \n \n
    \n\n
    \n \n
    \n
    \n )\n}\n\nexport default TimetableAdd;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../models/salary\";\nimport * as api from \"../../../adapters/timetable\";\nimport {Timetable, Timetables} from \"../../../models/timetable\";\nimport format from \"../../../utils/locale\";\nimport Loader from \"../../../utils/loader\";\nimport TimetableAdd from \"../add\";\n\nconst TimetableList:React.FC<{salary: Salary, setTimetable: React.Dispatch, timetable?: Timetable, timetables: Timetables, setTimetables: React.Dispatch, date?: Date}> = (props) => {\n\n const {salary, setTimetable, timetable, timetables, setTimetables, date} = props;\n const [loading, setLoading] = useState(false);\n\n useEffect(() => {\n setLoading(true);\n api.list(salary.id).then(resp => {\n setTimetables(resp.data);\n\n if (date){\n let _timetable = resp.data.find((t: Timetable) => new Date(t.start) <= date && (!t.end || date < new Date(t.end)))\n if (_timetable){\n setTimetable(_timetable)\n }\n }\n setLoading(false)\n })\n }, [salary])\n\n const Toolbar = () =>
    \n
    \n \n
    \n
    \n\n return
    \n \n
    \n {loading && }\n
      \n {timetables.map(t =>
    • setTimetable(t)}>\n

      \n {t.title}\n

      \n

      \n {format(new Date(t.start), 'dd/MM/uuuu')} {t.end ? <>{format(new Date(t.end), 'dd/MM/uuuu')} : }\n

      \n
    • )}\n
    \n
    \n \n
    \n}\n\nexport default TimetableList;","import React, {useEffect, useState} from \"react\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport format from \"../../../../../utils/locale\";\nimport FormError from \"../../../../../utils/formError\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n AccountingTypes,\n getAccountingTypeChoice\n} from \"../../../../../constants/booking\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../../adapters/timetable/event\";\nimport * as Yup from \"yup\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Timetable, TimetableEvents} from \"../../../../../models/timetable\";\nimport {setSeconds} from \"date-fns\";\nimport {Salary} from \"../../../../../models/salary\";\n\nconst TimetableEventAddForm:React.FC<{refreshValues: number, salary: Salary, start: Date, end: Date, week: number, company: Company, timetable: Timetable, handleSubmitSuccess: (ev: any) => any, events: TimetableEvents }> = (props) => {\n\n const {salary, start, end, timetable, company, week, handleSubmitSuccess, events, refreshValues} = props;\n\n const [initialValues, setInitialValues] = useState({\n start: start,\n end: end,\n week: week,\n company: company.id!,\n activity: \"\",\n localisation: \"\",\n accountingType: ACCOUNTING_TYPE_WORK_ACCOUNTED,\n daysOfWeek: [String(Number(format(start || new Date(), 'i')) - 1)],\n timetable: timetable.id\n })\n\n useEffect(() => {\n setInitialValues({\n start: start,\n end: end,\n week: week,\n company: company.id!,\n activity: \"\",\n localisation: \"\",\n accountingType: ACCOUNTING_TYPE_WORK_ACCOUNTED,\n daysOfWeek: [String(Number(format(start || new Date(), 'i')) - 1)],\n timetable: timetable.id\n })\n }, [refreshValues])\n\n const validationSchema = Yup.object().shape({\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n\n if (!value) return false;\n\n if (start.getTime() > value.getTime()) {\n\n let clone = setSeconds(new Date(value), 0)\n clone.setDate(value.getDate() + 1)\n\n return clone.getTime() > start.getTime();\n }\n\n return value && start < value\n }),\n week: Yup.number().required(),\n accountingType: Yup.number().required(),\n activity: Yup.number().nullable(),\n company: Yup.number().required(),\n localisation: Yup.number().nullable(),\n daysOfWeek: Yup.array().of(Yup.number()).min(1)\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n formikHelpers.setSubmitting(false);\n handleSubmitSuccess(resp.data)\n })\n }\n })\n\n const overlap = () => events.filter(e => e.week ===week && !!e.daysOfWeek.filter(d => formik.values.daysOfWeek.includes(String(d))).length && format(new Date(e.start), 'HH:mm') < format(formik.values.end, 'HH:mm') && format(new Date(e.end), 'HH:mm') > format(formik.values.start, 'HH:mm'))\n\n return
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeInput={true}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n minDate={new Date(\"2019/07/01\")}\n dateFormat=\"E HH:mm\"\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeInput={true}\n popperPlacement=\"bottom-end\"\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n maxDate={new Date(\"2019/07/07\")}\n dateFormat=\"E HH:mm\"\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n ({label: c.title, value: c.id!}))}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [salary.id] }}\n onChange={(c) => formik.setFieldValue('company', c?.value)}\n />\n
    \n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n />\n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"activity\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n />\n
    \n
    \n
    \n
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n {overlap().map(e => <>\n
    \n Créneau déjà existant {e.description}\n
    \n
    \n )}\n \n
    \n}\n\nexport default TimetableEventAddForm;","import {post, get} from \"../../xhr\";\nimport * as Yup from \"yup\";\n\ninterface requestData {\n start: Date,\n end: Date,\n week?: number,\n daysOfWeek: string[],\n accountingType: number,\n company: number,\n activity: string,\n localisation: string,\n weekNumber?: number,\n year?: number,\n salary?: number,\n template?: number,\n}\n\nexport function create(requestData: requestData){\n return post(`event/create`, requestData);\n}\n\nexport function edit(requestData: requestData, eventId: number){\n return post(`event/${eventId}/edit`, requestData);\n}\n\nexport function cancel(eventId: number){\n return get(`event/${eventId}/cancel`);\n}","import React, {useEffect, useState} from \"react\";\nimport TimetableEventAddForm from \"../form\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Timetable, TimetableEvents} from \"../../../../../models/timetable\";\nimport {Salary} from \"../../../../../models/salary\";\n\nconst TimetableEventSelect:React.FC<{arg: DateSelectArg, salary: Salary, week: number, company: Company, timetable: Timetable, handleSubmitSuccess: (ev: any) => any, events: TimetableEvents}> = (props) => {\n\n const {arg, salary, timetable, company, week, events, handleSubmitSuccess} = props\n\n const [key, setKey] = useState(0)\n\n useEffect(() => {\n setKey(prev => prev + 1)\n }, [arg])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default TimetableEventSelect;","import React, {useEffect, useState} from \"react\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport format from \"../../../../../utils/locale\";\nimport FormError from \"../../../../../utils/formError\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../../adapters/timetable/event\";\nimport * as Yup from \"yup\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Timetable, TimetableEvent, TimetableEvents} from \"../../../../../models/timetable\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {editTimetableSuccess} from \"../../../../../actions/timetable\";\nimport {\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n AccountingTypes,\n getAccountingTypeChoice\n} from \"../../../../../constants/booking\";\nimport {refresh, refreshResource} from \"../../../../../actions/calendar\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {setSeconds} from \"date-fns\";\nimport {Salary} from \"../../../../../models/salary\";\n\nconst TimetableEventEditForm:React.FC<{\n salary: Salary,\n start: Date,\n end: Date,\n eventId: number,\n daysOfWeek: number[],\n week: number,\n company: Company,\n timetable: Timetable,\n activity?: Activity,\n localisation?: Localisation,\n handleSubmitSuccess: (ev: any) => any,\n events: TimetableEvents }> = (props) => {\n\n const {start, timetable, salary, end, daysOfWeek, events, week, company, activity, localisation, handleSubmitSuccess, eventId } = props;\n\n const initialValues = {\n start: new Date(start),\n end: new Date(end),\n company: company.id!,\n activity: activity ? String(activity.id) : \"\",\n localisation: localisation ? String(localisation.id) : \"\",\n accountingType: ACCOUNTING_TYPE_WORK_ACCOUNTED,\n daysOfWeek: daysOfWeek.map((d: number) => String(d)),\n }\n\n const validationSchema = Yup.object().shape({\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n\n if (!value) return false;\n\n if (start.getTime() > value.getTime()) {\n\n let clone = setSeconds(new Date(value), 0)\n clone.setDate(value.getDate() + 1)\n\n return clone.getTime() > start.getTime();\n }\n\n return value && start < value\n }),\n accountingType: Yup.number().required(),\n activity: Yup.number().nullable(),\n company: Yup.number().required(),\n localisation: Yup.number().nullable(),\n daysOfWeek: Yup.array().of(Yup.number()).min(1)\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.edit(values, eventId).then(resp => {\n formikHelpers.setSubmitting(false)\n handleSubmitSuccess(resp.data)\n })\n }\n })\n\n const overlap = () => events.filter(e => e.id !== eventId && e.week === week && !!e.daysOfWeek.filter(d => formik.values.daysOfWeek?.includes(String(d))).length && format(new Date(e.start), 'HH:mm') < format(formik.values.end, 'HH:mm') && format(new Date(e.end), 'HH:mm') > format(formik.values.start, 'HH:mm'))\n\n return
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeInput={true}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n minDate={new Date(\"2019/07/01\")}\n dateFormat=\"E HH:mm\"\n\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeInput={true}\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n maxDate={new Date(\"2019/07/07\")}\n dateFormat=\"E HH:mm\"\n popperPlacement=\"bottom-end\"\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n ({label: c.title, value: c.id!}))}\n fetchEntity=\"company\"\n fetchParams={{ salaries: [salary.id] }}\n onChange={(c) => formik.setFieldValue('company', c?.value)}\n />\n
    \n
    \n
    \n l.id === Number(formik.values.localisation)) ? {label: company.localisations?.find(l => l.id === Number(formik.values.localisation))!.title, value: company.localisations?.find(l => l.id === Number(formik.values.localisation))!.id!} : undefined}\n //options={company.localisations!.map((l: Localisation) => ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n />\n
    \n
    \n l.id === Number(formik.values.activity)) ? {label: company.activities?.find(l => l.id === Number(formik.values.activity))!.title, value: company.activities?.find(l => l.id === Number(formik.values.activity))!.id!} : undefined}\n //options={company.activities!.map((l: Activity) => ({label: l.title, value: l.id!}))}\n fetchEntity=\"activity\"\n fetchParams={{ companies: [formik.values.company] }}\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n />\n
    \n
    \n
    \n
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n {overlap().map(e => <>\n
    \n Créneau déjà existant {e.description}\n
    \n
    \n )}\n \n
    \n}\n\nexport default TimetableEventEditForm;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {Timetable, TimetableEvents} from \"../../../../models/timetable\";\nimport TimetableEventEditForm from \"./form\";\nimport {Salary} from \"../../../../models/salary\";\n\nconst TimetableEventEdit:React.FC<{arg?: EventClickArg, salary: Salary, timetable: Timetable, week: number, handleSubmitSuccess: (ev: any) => any, events: TimetableEvents}> = (props) => {\n const {arg, timetable , salary, week, events, handleSubmitSuccess} = props\n \n const [key, setKey] = useState(0)\n\n useEffect(() => {\n setKey(prev => prev + 1)\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default TimetableEventEdit;","import React, {useState} from \"react\";\nimport {Company} from \"../../../../models/companies\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {Salary} from \"../../../../models/salary\";\nimport format from \"../../../../utils/locale\";\nimport {Timetable, TimetableEvents} from \"../../../../models/timetable\";\nimport {getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as api from \"../../../../adapters/timetable/event\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\ninterface Interface {\n company: Company,\n salary: Salary,\n timetable: Timetable,\n week: number,\n arg: EventClickArg,\n setCalendarEventSidebarProps: React.Dispatch,\n setEvents: React.Dispatch,\n close: () => any\n}\n\nconst TimetableEventShow:React.FC = (props) => {\n\n const {setCalendarEventSidebarProps, arg, company, week, salary, timetable, setEvents, close} = props;\n\n const [canceling, setCanceling] = useState(false)\n\n const cancel = () => {\n setCanceling(true)\n api.cancel(arg!.event.extendedProps.event.id).then(() => {\n setEvents((prev: TimetableEvents) => ([...prev.filter(e => e.id !== arg!.event.extendedProps.event.id)]))\n close()\n setCanceling(false)\n })\n }\n\n return <>\n
    \n
    Créneau de {salary.title}
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Début\n \n {format(new Date(arg.event.extendedProps.initialStart), 'HH:mm')}\n
    \n Fin\n \n {format(new Date(arg.event.extendedProps.initialEnd), 'HH:mm')}\n
    \n Type d'heure\n \n {getAccountingTypeChoice(arg.event.extendedProps.event.accountingType)?.label}\n
    \n Description\n \n {arg.event.extendedProps.description}\n
    \n Semaine\n \n {week}\n
    \n Établissement\n \n {company.title}\n
    \n Activité\n \n {arg.event.extendedProps.event.activity?.title || }\n
    \n Localisation\n \n {arg.event.extendedProps.event.localisation?.title || }\n
    \n Emploi du temps\n \n {timetable.title}\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n}\n\nexport default TimetableEventShow;","import React, {useEffect, useState} from \"react\";\nimport * as api from '../../../../adapters/timetable'\nimport {Events, Timetable} from \"../../../../models/timetable\";\nimport {Company} from \"../../../../models/companies\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {Salary} from \"../../../../models/salary\";\n\nconst TimetableCopyWeek:React.FC<{\n week: number,\n timetable: Timetable,\n salary: Salary,\n setEvents: (events: Events) => void;\n company: Company;\n close: () => any;\n}> = (props) => {\n\n const {week, setEvents, timetable, company, close} = props;\n\n const dispatch = useDispatch()\n const [loading, setLoading] = useState(false);\n const [targets, setTargets] = useState([])\n\n useEffect(() => {\n setTargets([])\n }, [week])\n\n const submit = () => {\n setLoading(true)\n api.copyEvents(timetable.id, week, targets).then(resp => {\n dispatch(showAlertSuccess('Semaine duplqué'))\n setEvents(resp.data.events)\n setLoading(false);\n close()\n })\n }\n\n const handleClick = (w: number) => {\n let _targets = targets;\n\n if (_targets.includes(w)){\n let index = _targets.findIndex(t => t === w);\n if (index !== -1){\n _targets.splice(index, 1);\n setTargets([..._targets])\n }\n }else{\n setTargets([..._targets, w]);\n }\n }\n\n return <>\n
    \n
    Dupliquer la S.{week} sur la semaine
    \n \n
    \n
    \n {<>\n

    \n Dupliquer sur la semaine\n

    \n {timetable.type === 1 &&
    \n {Array.from(Array(company.timesheet.recurrence).keys()).filter(i => i + 1 !== week).map((i) =>\n handleClick(i + 1)}\n className={'btn mx-2' + (targets.includes(i + 1) ? \" btn-primary text-white\" : \" btn-light\")}>\n {i + 1}\n )}\n
    }\n {timetable.type === 2 &&
    \n {Array.from(Array(timetable.recurrence).keys()).filter(i => i + 1 !== week).map((i) =>\n handleClick(i + 1)}\n className={'btn mx-2' + (targets.includes(i + 1) ? \" btn-primary text-white\" : \" btn-light\")}>\n {i + 1}\n )}\n
    }\n \n }\n
    \n \n}\n\nexport default TimetableCopyWeek;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg, EventClickArg} from \"@fullcalendar/react\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Company} from \"../../../../models/companies\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Timetable, TimetableEvents} from \"../../../../models/timetable\";\nimport TimetableEventSelect from \"../add/select\";\nimport TimetableEventEdit from \"../edit\";\nimport TimetableEventShow from \"../show\";\nimport TimetableCopyWeek from \"../copy\";\n\ninterface InterfaceEventShow {\n sidebarType: 'EVENT_SHOW',\n setCalendarEventSidebarProps: React.Dispatch,\n arg: EventClickArg,\n}\n\ninterface InterfaceEventEdit {\n sidebarType: 'EVENT_EDIT',\n arg: EventClickArg,\n}\n\ninterface InterfaceEventSelect {\n sidebarType: 'EVENT_SELECT',\n arg: DateSelectArg,\n}\n\ninterface InterfaceEventCopy {\n sidebarType: 'EVENT_COPY',\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type TimetableEventSidebarInterface = {trigger: number} & (Interface | InterfaceEventEdit | InterfaceEventSelect | InterfaceEventShow | InterfaceEventCopy)\n\nconst TimetableEventSidebar:React.FC}> = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTimetableEvent')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n let elem = document.getElementById('offcanvasTimetableEvent')!\n offcanvas.show(elem)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"EVENT_EDIT\":\n return \n case \"EVENT_SELECT\":\n return \n case \"EVENT_SHOW\":\n return \n case \"EVENT_COPY\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n \n
    \n\n function handleEventAdd(ev: any){\n props.setEvents([...props.events, ev])\n close();\n }\n\n function handleEventEdit(ev: any){\n props.setEvents([...props.events.filter(e => e.id !== ev.id), ev])\n close();\n }\n}\n\nexport default TimetableEventSidebar;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../adapters/timetable\";\nimport {Timetables, Timetable} from \"../../../../models/timetable\";\nimport {Salary} from \"../../../../models/salary\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport FormError from \"../../../../utils/formError\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\n\nconst TimetableEditForm:React.FC<{\n timetables: Timetables,\n timetable: Timetable,\n salary: Salary,\n handleSubmit: (ev: any) => any\n}> = (props) => {\n\n const {timetables, timetable, salary, handleSubmit} = props;\n\n const [initialValues, setInitialValues] = useState({\n title: '',\n start: new Date(),\n end: undefined,\n salary: salary.id\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n type: Yup.number().required(),\n }))\n\n useEffect(() => {\n if (timetable){\n let _validationSchema:any = {\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n type: Yup.number().required(),\n }\n\n let _initialValues: any = {\n title: timetable.title,\n start: new Date(timetable.start),\n end: timetable.end ? new Date(timetable.end) : undefined,\n salary: salary.id,\n type: timetable.type\n }\n\n if (timetable.type === 2)\n {\n _initialValues.recurrence = timetable.recurrence;\n _validationSchema.recurrence = Yup.number().required();\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n }, [timetable])\n\n const dispatch = useDispatch();\n const formik = useFormik({\n enableReinitialize: true,\n initialValues: initialValues,\n validationSchema: Yup.object().shape({\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n }),\n onSubmit: (values, formikHelpers) => {\n api.edit(values, timetable.id).then(data => {\n dispatch(showAlertSuccess('Emploi du temps mis à jour'))\n formikHelpers.setSubmitting(false)\n handleSubmit(data.data)\n })\n }\n })\n\n const overlap = () => {\n return timetables.filter(t => {\n\n if (t.id === timetable.id) return false;\n\n if (formik.values.start && !formik.values.end){\n return (new Date(t.start) > (formik.values.start) || (!t.end || new Date(t.end) > (formik.values.start)))\n }\n\n if (formik.values.start && formik.values.end && t.start && t.end){\n return (new Date(t.start) < formik.values.end! && new Date(t.end) > formik.values.start);\n }\n\n if (!t.end){\n return !formik.values.end || formik.values.end! > new Date(t.start)\n }\n\n return false;\n })\n }\n\n const isOverlap = !!overlap().length\n\n\n const handleTypeChange = (type: number) => {\n\n let _values = {...formik.values, type: type}\n let _validation = {...validationSchema.fields}\n\n switch (type)\n {\n case 1:\n delete _values.recurrence;\n delete _validation.recurrence;\n break;\n case 2:\n _values.recurrence = 1;\n _validation.recurrence = Yup.number().required();\n break;\n }\n\n\n setValidationSchema(Yup.object().shape(_validation))\n setInitialValues(_values)\n\n }\n\n return
    \n
    \n \n \n \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date) => formik.setFieldValue('start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.start}\n endDate={formik.values.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n \n \n \n }\n selected={formik.values.end}\n onChange={(date) => formik.setFieldValue('end', date)}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n
    \n \n \n
    \n
    \n
    \n handleTypeChange(1)} type=\"radio\" value={1} name=\"type\" id=\"type1\" />\n \n
    \n
    \n handleTypeChange(2)} type=\"radio\" value={2} name=\"type\" id=\"type1\" />\n \n
    \n {formik.values.type === 2 && <>\n
    \n \n \n
    \n }\n
    \n
    \n {overlap().map(item =>

    \n Incompatible avec {item.title}\n

    )}\n
    \n \n
    \n}\n\nexport default TimetableEditForm;","import React, {useEffect, useState} from \"react\";\nimport {Timetable, Timetables} from \"../../../models/timetable\";\nimport {Salary} from \"../../../models/salary\";\nimport TimetableEditForm from \"./form\";\nimport {Offcanvas} from \"bootstrap\";\n\nconst TimetableEdit:React.FC<{\n timetables: Timetables,\n timetable: Timetable,\n salary: Salary,\n setTimetables: React.Dispatch,\n setTimetable: React.Dispatch,\n}> = (props) => {\n\n const {timetables, salary, setTimetables, timetable, setTimetable } = props;\n const [offcanvas, setOffcanvas] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTimetableEdit')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const handleSubmit = (t: Timetable) => {\n\n let index = timetables.findIndex(_t => _t.id === t.id)\n if (index !== -1){\n timetables[index] = t;\n setTimetables([...timetables])\n }\n setTimetable(t)\n close()\n }\n\n return
    \n
    \n
    Modifier un emploi du temps
    \n \n
    \n
    \n \n
    \n
    \n}\n\nexport default TimetableEdit;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../adapters/timetable\";\nimport {useDispatch} from \"react-redux\";\nimport {Timetable, Timetables} from \"../../../../models/timetable\";\nimport TimetableAddForm from \"../form\";\nimport {Offcanvas} from \"bootstrap\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {Salary} from \"../../../../models/salary\";\n\nconst TimetableDuplicate:React.FC<{setTimetables: React.Dispatch, setTimetable: React.Dispatch, salary: Salary, timetable: Timetable, timetables: Timetables}> = (props) => {\n\n const dispatch = useDispatch();\n const {timetables, setTimetable, setTimetables, timetable, salary} = props;\n const [offcanvas, setOffcanvas] = useState()\n const [lastEnd, setLastEnd] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTimetableDuplicate')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const maxDate = (dates: Date[]) => new Date(Math.max(...dates.map(Number)));\n\n useEffect(() => {\n if(timetables.length > 0 && timetables.filter(t => !t.end).length === 0) {\n setLastEnd(maxDate(timetables.map(t => new Date(t.end!))));\n }else{\n setLastEnd(undefined)\n }\n }, [timetables])\n\n const handleSubmit = (t: Timetable) => {\n setTimetables([...timetables, t])\n setTimetable(t)\n close()\n }\n\n return
    \n
    \n
    Dupliquer un emploi du temps
    \n \n
    \n
    \n \n
    \n
    \n}\n\nexport default TimetableDuplicate;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../../models/salary\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {Timetable} from \"../../../../models/timetable\";\nimport * as api from \"../../../../adapters/timetable\";\nimport {Offcanvas} from \"bootstrap\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport SalarySelector from \"../../../salary/selector\";\n\nconst TimetableImport:React.FC<{targetSalary: Salary, targetTimetable: Timetable, setTimetable: React.Dispatch}> = (props) => {\n\n const [_salary, setSalary] = useState()\n const [timetable, setTimetable] = useState()\n const [isSubmitting, setIsSubmitting] = useState(false)\n\n const [offcanvas, setOffcanvas] = useState()\n useEffect(() => {\n const el = document.getElementById('offcanvasTimetableImport')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function importTimetable(){\n setIsSubmitting(true)\n api.copy(timetable, props.targetTimetable.id).then(resp => {\n props.setTimetable(resp.data)\n close()\n setIsSubmitting(false);\n })\n }\n\n return
    \n
    \n
    Importer un emploi du temps
    \n \n
    \n
    \n
    \n {\n setSalary(s)\n setTimetable(undefined)\n }}\n />\n
    \n {_salary &&
    \n setTimetable(c?.value)}\n fetchEntity={'timetable'}\n fetchParams={{salary: _salary.id}}\n label={'Timetable à importer'}\n />\n
    }\n {_salary && timetable && <>\n \n }\n
    \n
    \n}\n\nexport default TimetableImport;","import React, { useEffect, useState } from \"react\";\n\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport rrulePlugin from \"@fullcalendar/rrule\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport TimetableEventSidebar, { TimetableEventSidebarInterface } from \"../event/sidebar\";\nimport TimetableEdit from \"../edit\";\nimport TimetableDuplicate from \"../add/duplicate\";\nimport TimetableImport from \"../add/import\";\n\nimport { Salary } from \"../../../models/salary\";\nimport { Events, Timetable, Timetables } from \"../../../models/timetable\";\nimport { Company } from \"../../../models/companies\";\n\nimport { ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED, getAccountingTypeChoice } from \"../../../constants/booking\";\n\nimport * as api from \"../../../adapters/timetable\";\n\nimport format from \"../../../utils/locale\";\nimport Loader from \"../../../utils/loader\";\nimport SmallLoader from \"../../../utils/loader/small\";\n\ninterface IProps {\n salary: Salary;\n timetable?: Timetable;\n timetables: Timetables;\n setTimetables: React.Dispatch;\n setTimetable: React.Dispatch;\n}\n\nconst TimetableShow: React.FC = (props) => {\n const { salary, timetable, timetables, setTimetables, setTimetable } = props;\n\n const [loading, setLoading] = useState(false);\n const [company, setCompany] = useState(salary.companies[0]);\n const [week, setWeek] = useState(1);\n const [nightView, setNightView] = useState(false);\n const [counter, setCounter] = useState<{ contractWorkingTime: string, workingTime: string, deltaDuration: number, delta: string }>()\n const [counterFetched, setCounterFetched] = useState(false)\n const [timeRange, setTimeRange] = useState({\n minTime: format(new Date(company.timesheet.openAt), 'HH:mm:ss'),\n maxTime: format(new Date(company.timesheet.closeAt), 'HH:mm:ss'),\n });\n const [events, setEvents] = useState([])\n const [canceling, setCanceling] = useState(false)\n const [calendarEventSidebarProps, setCalendarEventSidebarProps] = useState({sidebarType: \"EMPTY\", trigger: 0});\n\n const pad = (num: number, size: number) => {\n let ret = num.toString();\n while (ret.length < size) ret = \"0\" + ret;\n return ret;\n }\n\n const cleanWeek = () => {\n let evt = [...events.filter(e => e.week !== week)];\n api.clean(timetable!.id, week).then(() => setEvents(evt))\n }\n\n useEffect(() => {\n if (timetable){\n setLoading(true)\n setWeek(1)\n api.show(timetable.id).then(resp => {\n setEvents(resp.data.events)\n setLoading(false);\n })\n }\n }, [timetable])\n\n useEffect(() => {\n if (timetable){\n setCounterFetched(false)\n api.workingTime(timetable.id, week).then(data => {\n setCounter(data.data)\n setCounterFetched(true)\n })\n }\n }, [week, events])\n\n useEffect(() => {\n if (nightView) {\n let max_hours = pad(24 + (new Date(company.timesheet.openAt)).getHours(), 2);\n let max_minutes = pad((new Date(company.timesheet.openAt)).getMinutes(), 2);\n\n let min_hours = pad((new Date(company.timesheet.closeAt)).getHours(), 2);\n let min_minutes = pad((new Date(company.timesheet.closeAt)).getMinutes(), 2);\n\n setTimeRange({\n minTime: `${min_hours}:${min_minutes}:00`,\n maxTime: `${max_hours}:${max_minutes}:00`,\n });\n } else {\n setTimeRange({\n minTime: format(new Date(company.timesheet.openAt), 'HH:mm:ss'),\n maxTime: (new Date(company.timesheet.closeAt).getDate() - new Date(company.timesheet.openAt).getDate()) + '.' + format(new Date(company.timesheet.closeAt), \"HH:mm:ss\")\n })\n }\n\n }, [nightView])\n\n if (!timetable) {\n return (\n
    \n

    \n Veuillez séléctionner un emploi du temps\n

    \n
    \n )\n }\n\n const deactivate = () => {\n setCanceling(true)\n api.deactivate(timetable.id).then(() => {\n setTimetable(undefined)\n setTimetables([...timetables.filter(_t => _t.id !== timetable.id)])\n setCanceling(false)\n })\n }\n\n return (\n
    \n {/* TIMETABLE DETAILS */}\n
    \n
    \n {format(new Date(timetable.start))} {timetable.end ? <>{format(new Date(timetable.end))} : }\n
    \n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n
    \n \n {/* TIMETABLE TOOLBAR */}\n
    \n {timetable.type === 1 &&\n
    \n
    \n \n
      \n {salary.companies.map(c =>
    • setCompany(c)}\n className={'dropdown-item' + (c.id === company.id ? ' active text-white' : '')}>\n {c.id === company.id && } {c.title}\n
    • )}\n
    \n
    \n
    \n }\n\n
    \n
    \n \n {Array.from(Array(timetable.type === 2 ? timetable.recurrence : company.timesheet.recurrence).keys()).map((i) =>\n setWeek(i + 1)}\n className={'btn btn-outline-primary ' + (week === i + 1 ? \" active text-white\" : '')}>\n {i + 1}\n \n )}\n
    \n
    \n\n
    \n
    \n \n \n {counterFetched ? <>{counter ? <>{counter.workingTime} / {counter.contractWorkingTime} {counter.deltaDuration < 0 ? <> {counter.delta} : (counter.deltaDuration === 0 ? : <><> {counter.delta} )} : '00:00'} : }\n \n
    \n
    \n\n
    \n
    \n
    \n setNightView(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckNightView\" />\n \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n \n
      \n
    • setCalendarEventSidebarProps( prev => ({sidebarType: \"EVENT_COPY\", trigger: prev.trigger + 1}))}> Dupliquer S.{week}
    • \n
    • \n Importer\n
    • \n
    • cleanWeek()}> Supprimer S.{week}
    • \n
    \n
    \n
    \n
    \n \n {/* TIMETABLE */}\n
    \n e.week === week && (timetable!.type === 2 || e.company.id === company.id)).map(e => ({\n rrule: {\n freq: 'weekly',\n byweekday: e.daysOfWeek,\n dtstart: '2019-07-01 ' + e.startTime,\n until: '2019-07-07 ' + e.startTime,\n },\n duration: e.duration * 1000,\n backgroundColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#fff' : '',\n textColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#000' : '',\n borderColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#000' : '',\n extendedProps: {\n event: {...e},\n initialStart: e.start,\n initialEnd: e.end\n }\n }))}\n select={(arg) => setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))}\n eventClick={(arg) => {\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarEventSidebarProps: setCalendarEventSidebarProps\n }))\n }}\n editable\n eventResizableFromStart\n eventResize={(arg) => {\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_EDIT\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarEventSidebarProps: setCalendarEventSidebarProps\n }))\n }}\n dayHeaderContent={arg => {format(arg.date, 'EEEE')}}\n eventContent={e => <>\n \n {e.timeText}\n \n
    \n \n {e.event.extendedProps.event.timeCaption}\n \n {e.event.extendedProps.event.company &&
    \n {e.event.extendedProps.event.company.title}\n
    }\n {e.event.extendedProps.event.activity &&
    \n {e.event.extendedProps.event.activity.title}\n
    }\n {e.event.extendedProps.event.localisation &&
    \n {e.event.extendedProps.event.localisation.title}\n
    }\n
    \n {getAccountingTypeChoice(e.event.extendedProps.event.accountingType)?.label}\n
    \n }\n />\n {loading && }\n
    \n\n \n \n \n \n
    \n )\n}\n\nexport default TimetableShow;","import React, { useEffect, useState } from \"react\";\n\nimport TimetableList from \"./list\";\nimport TimetableShow from \"./show\";\n\nimport { Salary } from \"../../models/salary\";\nimport * as models from \"../../models/timetable\";\nimport { Timetables } from \"../../models/timetable\";\n\nconst Timetable: React.FC<{salary: Salary, date?: Date}> = (props) => {\n const {salary, date} = props;\n\n const [timetable, setTimetable] = useState();\n const [timetables, setTimetables] = useState([]);\n\n useEffect(() => {\n if (timetable) {\n setTimetable(undefined)\n }\n }, [salary])\n\n return (\n
    \n
    \n
    \n \n
    \n\n
    \n \n
    \n
    \n
    \n )\n}\n\nexport default Timetable;","import {openSidebar} from \"../../../../../actions/rightSidebar\";\nimport {FORM_MANAGER_ADD, FORM_MANAGER_EDIT} from \"../../../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../../../constants/accessRight\";\nimport React, {useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Manager, Salary} from \"../../../../../models/salary\";\nimport * as api from \"../../../../../adapters/salary/manager\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport {editSalarySuccess} from \"../../../../../actions/salary\";\nimport {Granted} from \"../../../../../security/granted\";\n\nconst ManagerShow:React.FC = () => {\n\n const dispatch = useDispatch();\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single)\n const [removing, setRemoving] = useState()\n\n const handleRemove = (m: Manager) => {\n setRemoving(m.id)\n api.remove(m.id)\n .then(resp => dispatch(editSalarySuccess(resp.data)))\n .then(() => setRemoving(undefined))\n }\n\n return
    \n
    \n
    \n
    \n

    \n Manageurs\n

    \n
    \n
    \n \n
    \n
    \n\n
      \n {salary.managers.map(m =>
    • \n
      \n

      \n {m.manager.title}\n

      \n
      \n {Granted(accessRights.EDIT_SALARY, salary.id) &&
      \n
      \n \n \n
      \n
      }\n
    • )}\n
    \n
    \n
    \n}\n\nexport default ManagerShow;","import {get, post} from \"../../xhr\";\n\nexport function create(requestData: any, target: number){\n return post('manager/create/' + target, requestData);\n}\n\nexport function edit(requestData: any, id: number){\n return post('manager/edit/' + id, requestData);\n}\nexport function remove(id: number){\n return get('manager/remove/' + id);\n}","import {get, post} from \"../xhr\";\n\nexport function subscription(company: number){\n return get(`billing/${company}/subscription`);\n}\n\nexport function model(company: string, model: number){\n return get(`billing/${company}/subscription/${model}`);\n}\n\nexport function companies(){\n return get(`billing/companies`);\n}\n\nexport function invoices(company: number, requestData: {offset: number}){\n return post(`billing/${company}/invoices`, requestData);\n}\n\nexport function salaries(company: number){\n return get(`billing/${company}/salaries`);\n}\n\nexport function salary(company: number, salary: number){\n return get(`billing/company/${company}/salary/${salary}`);\n}","import { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport { Salary } from \"../../../../models/salary\";\n\nimport * as api from \"../../../../adapters/salary/settings\";\nimport * as billingApi from \"../../../../adapters/billing\";\n\nimport * as action from \"../../../../actions/salary\";\nimport { axiosError } from \"../../../../actions/axios\";\n\nimport HasModule from \"../../../../security/hasModule\";\nimport isGranted from \"../../../../security/isGranted\";\nimport getUser from \"../../../../security/getUser\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\n\nconst ACCOUNTED_TYPES_OPTIONS = [\n { label: 'Heures planifiées', value: 1 },\n { label: 'Heures par jour', value: 3 },\n { label: 'Paramètre par défaut', value: 0 }\n]\n\nconst SalarySettings = () => {\n const dispatch = useDispatch();\n\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single)\n\n const [isLoading, setIsLoading]= useState(false);\n const [acquisition, setAcquisition] = useState(salary.settings.absenceAcquisition);\n const [silaeMatricule, setSilaeMatricule] = useState(salary.connector?.silaeMatricule);\n const [activationError, setActivationError] = useState('')\n const [billingOptions, setBillingOptions] = useState<{label: string, id: number, shouldUpgrade: boolean}[]>([])\n const [accountedTime, setAccountedTime] = useState(salary.settings?.accountedTime || undefined);\n\n function handleBillingChange(cid: number)\n {\n billingApi.salary(cid, salary.id)\n .then(r => dispatch(action.editSalarySuccess(r.data)))\n }\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n api.setting({setting: setting, value: value}, salary.id).then(data => {\n dispatch(action.editSalarySuccess(data.data));\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n\n const handleActivation = (checked: boolean) => {\n setIsLoading(true);\n if (checked){\n api.enable(salary.id).then(data => {\n dispatch(action.editSalarySuccess(data.data));\n setIsLoading(false)\n }).catch(error => setActivationError(error.response.data.message))\n }else{\n api.disable(salary.id).then(data => {\n dispatch(action.editSalarySuccess(data.data));\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n }\n\n useEffect(() => {\n billingApi.companies().then(r => setBillingOptions(r.data))\n }, [salary.id])\n\n useEffect(() => {\n setSilaeMatricule(salary.connector?.silaeMatricule)\n }, [salary])\n\n return (\n
    \n

    \n Réglages\n

    \n \n
    \n
    \n \n
    \n Rendez-vous dans l’onglet \"Répartition des HC\" pour gérer la répartition des heures contrat \n du collaborateur\n
    \n
    \n\n
    \n\n
    \n
    \n \n
    \n {!salary.activated ? Désactivé : Activé }\n
    \n
    \n
    \n handleActivation(e.target.checked)} id=\"btn-check-outlined\" className=\"btn-check\" type=\"checkbox\" />\n \n
    \n
    \n\n {activationError &&\n
    \n {activationError}\n
    \n }\n
    \n\n {isGranted(\"HANDLE_BILLING\") && getUser().currentSalary.companyGroup.billingVersion === 2 &&\n <>\n
    \n
    \n
    \n
    \n \n
    \n
    \n !o.shouldUpgrade).map(o => ({label: o.label, value: o.id}))]}\n value={salary.billingCompany ? {label: salary.billingCompany.title, value: salary.billingCompany.id!} : undefined}\n onChange={c => handleBillingChange(c.value!)}\n />\n
    \n
    \n
    \n \n }\n\n
    \n\n {HasModule('timeClock') &&\n <>\n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('time_clock_activated', e.target.checked)}\n className=\"form-check-input\"\n type=\"checkbox\"\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer pour que le collaborateur puisse badger depuis l'accès utilisateur\n
    \n
    \n
    \n
    \n handleChange('time_clock_from_app', e.target.checked)}\n className=\"form-check-input\" type=\"checkbox\"/>\n
    \n
    \n
    \n
    \n
    \n \n }\n \n
    \n
    \n
    \n \n
    \n En dessous du seuil, l’horaire est arrondie à l’heure planifiée\n
    \n
    \n
    \n
    \n \n minute(s)\n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n
    \n \n
    \n En dessous du seuil, l’horaire est arrondie à l’heure planifiée\n
    \n
    \n
    \n
    \n \n minute(s)\n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n
    \n \n
    \n Nombre de congés payés aquis par mois travaillés\n
    \n
    \n
    \n
    \n setAcquisition(parseFloat(e.target.value))} disabled={isLoading} defaultValue={salary.settings.absenceAcquisition} type=\"number\" className=\"form-control\" />\n Jours\n {salary.settings.absenceAcquisition !== acquisition && }\n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n
    \n \n
    \n Veuillez saisir le matricule silae pour préremplir les exports\n
    \n
    \n
    \n
    \n setSilaeMatricule(e.target.value)} disabled={isLoading} defaultValue={salary.connector?.silaeMatricule} type=\"text\" className=\"form-control\" />\n {salary.connector?.silaeMatricule !== silaeMatricule && }\n
    \n
    \n
    \n
    \n\n
    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n o.value === salary.settings.accountedType) : undefined}\n options={ACCOUNTED_TYPES_OPTIONS}\n required={true}\n onChange={(c) => handleChange('accounted_type', c?.value)}\n />\n
    \n
    \n
    \n
    \n {salary.settings?.accountedType === 3 &&\n <>\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n setAccountedTime(parseFloat(e.target.value))}\n />\n heures\n {salary.settings?.accountedTime !== accountedTime &&\n handleChange('accounted_time', accountedTime))}\n >\n Enregistrer\n \n }\n
    \n
    \n
    \n
    \n \n }\n
    \n )\n}\n\nexport default SalarySettings;","import React from 'react';\n\ninterface IProps {\n text?: string;\n}\n\nconst EmptyList: React.FC = ({ text }) => {\n return (\n
    \n
    \n
    \n

    \n {text || \"Aucun élément dans la liste\"}\n

    \n
    \n
    \n
    \n )\n}\n\nexport default EmptyList","import { get, post } from \"../../xhr\";\n\nimport { IAddSalaryRepartition } from \"../../../models/salary/repartition/IAddSalaryRepartition\";\nimport { IUpdateSalaryRepartition } from \"../../../models/salary/repartition/IUpdateSalaryRepartition\";\n\nexport function addSalaryRepartition(salaryId: number, requestData: IAddSalaryRepartition){\n return post(`salary/${salaryId}/repartition/add`, requestData);\n}\n\nexport function updateSalaryRepartition(salaryId: number, salaryRepartitionId: number, requestData: IUpdateSalaryRepartition){\n return post(`salary/${salaryId}/repartition/${salaryRepartitionId}/edit`, requestData);\n}","import { FunctionComponent } from \"react\"\nimport { useDispatch } from \"react-redux\"\n\nimport { Formik, Form } from \"formik\"\nimport * as Yup from \"yup\"\nimport DatePicker from \"react-datepicker\"\nimport { Offcanvas } from \"bootstrap\";\n\nimport { Salary, SalaryRepartition } from \"../../../../../models/salary\"\n\nimport { addSalaryRepartition, updateSalaryRepartition } from \"../../../../../adapters/salary/repartition\"\nimport { showSalarySuccess } from \"../../../../../actions/salary\"\n\nimport DateCustomInput from \"../../../../../utils/customInput\"\nimport moment from \"moment\"\nimport { showAlertSuccess, showAlertDanger } from \"../../../../../actions/alert\"\n\ninterface IProps {\n salary: Salary;\n repartitionData?: SalaryRepartition;\n onSuccess: () => void;\n}\n\nconst validations = Yup.object().shape({\n contractWorkingTimeRepartition: Yup.boolean()\n .required(),\n contractWorkingTimeRepartitionTrigger: Yup.number()\n .min(2, 'La répartition doit être définie sur 2 semaines au minimum')\n .required('Veuillez préciser la répartition'),\n contractWorkingTimeRepartitionCurrentWeek: Yup.number()\n .required('Veuillez préciser la semaine en cours'),\n startDate: Yup.date()\n .required('Veuillez indiquer la date de début'),\n});\n\nconst AddOrUpdateSalaryRepartitionForm: FunctionComponent = ({ salary, repartitionData, onSuccess }) => {\n const dispatch = useDispatch()\n\n return (\n {\n try {\n setSubmitting(true)\n\n for (const value of values.contractWorkingTimeRepartitionValues) {\n if (isNaN(value) || value < 0) {\n return dispatch(showAlertDanger('Format des heures semaines incorrecte'))\n } else if (values.endDate && moment(values.endDate).isBefore(moment(values.startDate))) {\n return dispatch(showAlertDanger('L’heure de fin doit être après le début'))\n }\n }\n\n if (repartitionData) {\n const { status, data } = await updateSalaryRepartition(salary.id, repartitionData.id, {\n ...values,\n contractWorkingTimeRepartitionCurrentWeekEditedAt: moment().toDate()\n });\n \n if (status === 203) {\n dispatch(showAlertDanger(data.error));\n return\n }\n \n dispatch(showSalarySuccess(data));\n dispatch(showAlertSuccess('Répartition mise à jour avec succès'))\n onSuccess()\n } else {\n const { status, data } = await addSalaryRepartition(salary.id, {\n ...values,\n contractWorkingTimeRepartitionCurrentWeekEditedAt: moment().toDate()\n });\n \n if (status === 203) {\n dispatch(showAlertDanger(data.error));\n return\n }\n \n dispatch(showSalarySuccess(data));\n dispatch(showAlertSuccess('Nouvelle répartition ajoutée'))\n resetForm()\n }\n\n const drawerElement = document.getElementById('addOrUpdateRepartitionDrawer');\n if (drawerElement) {\n const drawerInstance = Offcanvas.getInstance(drawerElement);\n drawerInstance.hide(); \n }\n } catch (error) { \n dispatch(showAlertDanger('Impossible d’ajouter la répartition'))\n } finally {\n setSubmitting(false)\n }\n }}\n >\n {({\n values,\n errors,\n touched,\n isSubmitting,\n handleChange,\n setFieldValue,\n handleBlur,\n handleSubmit,\n }) => (\n
    \n
    \n

    \n {repartitionData ? \"Modifier la répartition\" : \"Ajouter une nouvelle répartition\"}\n

    \n
    \n\n
    \n
    \n \n
    \n (ex: 1 = Semaine A, 2 = Semaine A + Semaine B, etc)\n
    \n
    \n\n
    \n
    \n {\n if (Number(e.target.value) <= 20) {\n if (Number(e.target.value) < values.contractWorkingTimeRepartitionValues.length) {\n setFieldValue('contractWorkingTimeRepartitionValues', [ ...values.contractWorkingTimeRepartitionValues.slice(0, Number(e.target.value) - 1)])\n }\n\n setFieldValue('contractWorkingTimeRepartitionTrigger', Number(e.target.value))\n }\n }}\n />\n
    \n
    \n
    \n\n
    \n
    \n \n
    \n\n
    \n
    \n \n
    \n
    \n
    \n\n
      \n {Array.from(Array(values.contractWorkingTimeRepartitionTrigger).keys()).map((value, index) =>\n
    • \n
      \n
      \n Heures semaine {index + 1}\n
      \n\n
      \n
      \n \n \n \n\n {\n let newTab: (number|null)[] = [ ...values.contractWorkingTimeRepartitionValues ];\n newTab[index] = parseFloat(e.target.value);\n setFieldValue('contractWorkingTimeRepartitionValues', newTab);\n }}\n />\n
      \n
      \n
      \n
    • \n )}\n
    \n \n
    \n

    \n Période\n

    \n
    \n
    \n }\n selected={values.startDate}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={values.startDate}\n endDate={values.endDate}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={isSubmitting}\n onChange={(date) => setFieldValue('startDate', date)}\n />\n
    \n
    \n }\n selected={values.endDate}\n selectsEnd\n startDate={values.startDate}\n endDate={values.endDate}\n minDate={values.startDate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={isSubmitting}\n onChange={(date) => setFieldValue('endDate', date ? moment(date?.toString()).endOf('d').toDate() : undefined)}\n />\n
    \n
    \n
    \n\n
    \n handleSubmit()}\n >\n {repartitionData ? \"Enregistrer\" : \"Ajouter la répartition\"}\n \n
    \n
    \n )}\n \n )\n}\n\nexport default AddOrUpdateSalaryRepartitionForm","import { FunctionComponent, useState } from \"react\"\nimport { useDispatch, useSelector, RootStateOrAny } from \"react-redux\"\n\nimport EmptyList from \"../../../common/EmptyList\"\nimport AddOrUpdateSalaryRepartitionForm from \"./add\"\n\nimport { Salary, SalaryRepartition } from \"../../../../models/salary\"\n\nimport { FLAT_RATE_HC } from \"../../../../constants/salary\"\n\nimport { showSalarySuccess } from \"../../../../actions/salary\"\nimport { updateSalaryRepartition } from \"../../../../adapters/salary/repartition\"\n\nimport { showAlertDanger } from \"../../../../actions/alert\"\n\nimport moment from \"../../../../utils/moment.utils\"\n\nconst SalaryRepartitions: FunctionComponent = () => {\n const dispatch = useDispatch()\n\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single)\n\n const [repartitionToEdit, setRepartitionToEdit] = useState(undefined)\n \n const isAvailable = salary?.information?.flatRate === FLAT_RATE_HC;\n const activeRepartitionsList = salary?.repartitions?.filter(el => !el.archived) || [];\n\n const onArchivedSalaryRepartition = async (salaryRepartition: SalaryRepartition) => {\n try {\n const { data } = await updateSalaryRepartition(salary.id, salaryRepartition.id, {\n ...salaryRepartition,\n archived: true\n })\n dispatch(showSalarySuccess(data))\n } catch (error) {\n dispatch(showAlertDanger('Impossible d’archiver la répartition du salarié'))\n }\n }\n\n return (\n
    \n
    \n

    \n RÉPARTITION DES HEURES CONTRAT\n

    \n\n setRepartitionToEdit(undefined)}\n >\n + Ajouter une répartition\n \n
    \n\n {!isAvailable &&\n \n }\n\n {isAvailable &&\n
    \n
    \n {activeRepartitionsList.length === 0 &&\n \n }\n \n {activeRepartitionsList.length > 0 &&\n
    \n {activeRepartitionsList.map((repartition: SalaryRepartition) => (\n \n
    \n

    \n {repartition?.endDate ? `Du ${moment(repartition.startDate).format('DD MMMM YYYY')} au ${moment(repartition.endDate).format('DD MMMM YYYY')}` : `À partir du ${moment(repartition.startDate).format('DD MMMM YYYY')}`}\n

    \n

    \n {`Répartition sur ${repartition.contractWorkingTimeRepartitionTrigger} semaine${repartition?.contractWorkingTimeRepartitionTrigger && repartition.contractWorkingTimeRepartitionTrigger > 1 ? 's' : ''} (${repartition?.contractWorkingTimeRepartitionValues?.slice(0, repartition?.contractWorkingTimeRepartitionTrigger || 0)?.map(el => el + 'h')})`}\n

    \n

    \n {`Semaine en cours: ${repartition?.contractWorkingTimeRepartitionCurrentWeek}`}\n

    \n
    \n\n
    \n setRepartitionToEdit(repartition)}\n >\n Modifier\n \n onArchivedSalaryRepartition(repartition)}\n >\n Archiver\n \n
    \n
    \n ))}\n
    \n }\n
    \n
    \n }\n \n \n setRepartitionToEdit(undefined)}\n />\n
    \n
    \n )\n}\n\nexport default SalaryRepartitions","import {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../../../models/salary\";\nimport * as api from \"../../../../../adapters/salary\"\nimport * as actions from \"../../../../../actions/salary\"\nimport {useDispatch} from \"react-redux\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\n\nconst SalaryTimeClockToken = ({salary}: {salary: Salary}) => {\n\n\n const [timeClockToken, setTimeClockToken] = useState(salary.timeClockToken);\n const [isValid, setIsValid] = useState(true);\n const [loading, setLoading] = useState(false);\n const dispatch = useDispatch();\n\n let timer: NodeJS.Timer;\n function handleQueryChange(query: number){\n clearTimeout(timer)\n timer = setTimeout(() => {\n setLoading(true)\n setTimeClockToken(query)\n api.validateToken(salary.id, timeClockToken)\n .then(r => setIsValid(r.data.success))\n .then(() => setTimeClockToken(query))\n .then(() => setLoading(false))\n }, 1500)\n }\n\n function validate(){\n api.setToken(salary.id, timeClockToken)\n .then(() => {\n const copy = {...salary};\n copy.timeClockToken = timeClockToken;\n dispatch(actions.showSalarySuccess(copy))\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n

    Modifier le code badgeuse de {salary.title}

    \n \n
    \n
    \n
    \n handleQueryChange(Number(e.target.value))} />\n \n
    \n {loading ? <> Verification de la disponibilité : <>{isValid ?
    Code disponible
    :
    Code indisponible
    }}\n \n
    \n
    \n
    \n
    \n \n}\n\nexport default SalaryTimeClockToken;","import React, { useEffect } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\n\nimport ManagerShow from \"../manageur/show\";\nimport SalarySettings from \"../settings\";\nimport SalaryRepartitions from \"../repartitions\";\nimport FileSaver from \"file-saver\";\nimport SalaryTimeClockToken from \"./qr\";\n\nimport { Salary } from \"../../../../models/salary\";\n\nimport * as types from \"../../../../constants/salary\";\nimport { FORM_EDIT_SALARY, FORM_EDIT_SALARY_INFORMATION, SALARY_DEFAULT_LABEL_SELECTOR } from \"../../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\nimport * as api from \"../../../../adapters/salary\";\nimport * as salaryUserApi from \"../../../../adapters/salary/account\";\nimport * as defaultLabelApi from \"../../../../adapters/salary/defaultLabel\";\nimport { editSalarySuccess } from \"../../../../actions/salary\";\nimport { openSidebar } from \"../../../../actions/rightSidebar\";\nimport { setHelpProductSheetIds } from \"../../../../actions/header\";\nimport { showAlertSuccess } from \"../../../../actions/alert\";\nimport { axiosError } from \"../../../../actions/axios\";\n\nimport { Granted } from \"../../../../security/granted\";\nimport HasModule from \"../../../../security/hasModule\";\nimport format from \"../../../../utils/locale\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport onMouseEnterTooltip from \"../../../../utils/mouseOverTooltip\";\n\nconst SalaryInformation: React.FC = () => {\n const dispatch = useDispatch();\n\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single);\n\n const removeActivity = (id: number) => {\n defaultLabelApi.removeActivity(salary.id, id).then(data => dispatch(editSalarySuccess(data.data)))\n }\n\n const removeLocalisation = (id: number) => {\n defaultLabelApi.removeLocalisation(salary.id, id).then(data => dispatch(editSalarySuccess(data.data)))\n }\n\n function downloadQr(){\n api.qr(salary.id).then(resp => {\n let newBlob = b64toBlob(resp.data.base64, 'image/png')\n FileSaver.saveAs(newBlob, `qr-code-${salary.id}-${salary.title}.png`)\n })\n }\n\n const b64toBlob = (b64Data: any, contentType='', sliceSize=512) => {\n const byteCharacters = atob(b64Data);\n const byteArrays = [];\n\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize);\n\n const byteNumbers = new Array(slice.length);\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n\n const byteArray = new Uint8Array(byteNumbers);\n byteArrays.push(byteArray);\n }\n\n return new Blob(byteArrays, {type: contentType});\n }\n\n useEffect(() => {\n return(() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n return (\n <>\n
    \n
    \n {!salary.user && !salary.email && <>\n
    \n Vous pouvez associer un compte au collaborateur pour qu'il puisse accéder à sivan après lui avoir renseigné un email\n
    \n }\n {!salary.user && salary.email && <>\n
    \n
    \n Vous pouvez associer un compte au collaborateur pour qu'il puisse accéder à sivan\n
    \n \n
    \n }\n {salary.user && !salary.user.activated && <>\n {salary.email !== salary.user.email && <>\n
    \n
    \n Le mail renseigné sur le collaborateur ne correspond pas à celui du compte associé\n
    \n
      \n
    • \n Mail collaborateur : {salary.email}\n
    • \n
    • \n Mail compte associé : {salary.user.email}\n
    • \n
    \n
    \n
    \n \n
    \n
    \n }\n
    \n
    \n Le compte est désactivé\n
    \n \n
    \n }\n {salary.user && salary.user.activated && <>\n
    \n
    \n

    \n Compte activé\n

    \n
    \n
    \n }\n
    \n
    \n
    \n
    \n \n \n \n \n dispatch(setHelpProductSheetIds([4]))}\n >\n Réglages\n \n dispatch(setHelpProductSheetIds([]))}\n >\n Répartition des HC\n \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Informations personnelles\n

    \n
    \n {Granted(accessRights.EDIT_SALARY, salary.id) &&
    \n \n
    }\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {HasModule('timeClock') && \n \n \n }\n \n
    \n Droits d'accès\n \n
    \n {Granted(accessRights.EDIT_ACCESS_LEVEL, salary.id) ? <>\n {\n api.updateAccess(salary.id, Number(c!.value))\n .then(resp => dispatch(editSalarySuccess(resp.data)))\n }}\n required={true}\n notFloating={true}\n />\n : salary.accessLevel.title}\n
    \n \n \n \n
    \n Tél\n \n {salary.tel}\n
    \n Email\n \n {salary.email || }\n
    \n Date de naissance\n \n {format(new Date(salary.birthdate))}\n
    \n Adresse\n \n {salary.address?.address}\n
    \n Ville\n \n {salary.address?.city}\n
    \n Code postal\n \n {salary.address?.zip}\n
    \n {salary.companies.length} Point de vente\n \n {salary.companies.map((company, index) => {company.title}{index + 1 < salary.companies.length && <>, })}\n
    \n \n Code badgeuse\n \n {salary.timeClockToken}\n {salary.timeClockToken &&
    \n onMouseEnterTooltip(e.currentTarget)}\n className={'btn btn-sm btn-light ms-2'} onClick={() => downloadQr()}>\n \n \n onMouseEnterTooltip(e.currentTarget)}\n data-bs-toggle={\"modal\"}\n data-bs-target={\"#timeClockModal\"}\n className={'btn btn-sm btn-light ms-2'}>\n \n \n
    }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Informations professionelles\n

    \n
    \n {Granted(accessRights.EDIT_SALARY, salary.id) &&
    \n \n
    }\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {salary.information?.flatRate === types.FLAT_RATE_HC && \n \n \n }\n {salary.information?.flatRate === types.FLAT_RATE_DAILY && \n \n \n }\n \n \n \n \n \n \n \n \n \n
    \n Métier\n \n {salary.information?.job.title}\n
    \n Contrat\n \n {types.getContractChoices().find(choice => choice.value === salary.information?.contract)?.label}\n
    \n Date de début de contrat\n \n {salary.information?.startDate && format(new Date(salary.information?.startDate))}\n
    \n Date de fin de contrat\n \n {salary.information?.endDate ? format(new Date(salary.information?.endDate)) : }\n
    \n Forfait\n \n {types.getFlatRateChoices().find(choice => choice.value === salary.information?.flatRate)?.label}\n
    \n Taux horaire\n \n {salary.information?.hourlyRate} €\n
    \n Heures contrat\n \n {salary.information.contractWorkingTime}H\n
    \n Jours ouvrés annuel\n \n {salary.information.dayAnnualFlatRate}\n
    \n Base compteur d'heure\n \n {salary.information?.overtimeBasis || 0}\n
    \n Congés pris (N)\n \n {salary.information?.absenceBasis || 0}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Étiquettes par défaut (Emplacements & Activités)\n

    \n
    \n
    \n \n \n \n \n \n \n \n {salary.companies.map(c => {\n let companyDefaultLabel = salary.defaultLabels?.find(d => d.company.id === c.id);\n\n return <>\n \n \n \n \n \n \n })}\n \n
    \n Point de vente\n \n Emplacement\n \n Activité\n
    \n {c.title}\n \n {!!companyDefaultLabel?.localisation ?\n <>\n {companyDefaultLabel.localisation.title}\n {Granted(accessRights.EDIT_BOOKING, salary.id) && <>\n {\n dispatch(openSidebar(SALARY_DEFAULT_LABEL_SELECTOR, {\n type: 'localisation',\n company: c,\n value: companyDefaultLabel?.localisation\n }))\n }}>\n \n removeLocalisation(companyDefaultLabel!.id!)}\n className={'btn btn-light'}>\n \n \n }\n :\n Granted(accessRights.EDIT_BOOKING, salary.id) && }\n \n {!!companyDefaultLabel?.activity ?\n <>\n {companyDefaultLabel.activity.title}\n {Granted(accessRights.EDIT_BOOKING, salary.id) && <>\n {\n dispatch(openSidebar(SALARY_DEFAULT_LABEL_SELECTOR, {\n type: 'activity',\n company: c,\n value: companyDefaultLabel?.activity\n }))\n }}>\n \n removeActivity(companyDefaultLabel!.id!)}\n className={'btn btn-light'}>\n \n \n }\n :\n Granted(accessRights.EDIT_BOOKING, salary.id) && }\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \n \n
    \n
    \n
    \n\n \n \n )\n}\n\nexport default SalaryInformation;","import {get} from \"../../xhr\";\n\nexport function setActivity(salary: number, company: number, activity: number){\n return get(`salary/${salary}/default_label/activity/${company}/${activity}`);\n}\nexport function setLocalisation(salary: number, company: number, localisation: number){\n return get(`salary/${salary}/default_label/localisation/${company}/${localisation}`);\n}\n\nexport function removeActivity(salary: number, id: number){\n return get(`salary/${salary}/default_label/remove/activity/${id}`);\n}\nexport function removeLocalisation(salary: number, id: number){\n return get(`salary/${salary}/default_label/remove/localisation/${id}`);\n}","import {get} from \"../../xhr\";\n\n\nexport function createUser(id: number){\n return get('salary/user/create/' + id);\n}\nexport function confirmUser(id: number){\n return get('salary/user/confirm/' + id);\n}\nexport function editUserEmail(id: number){\n return get('salary/user/email/' + id);\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport { ABSENCE_SETTINGS } from \"../../../../../constants/rightSidebar\";\n\nimport * as api from \"../../../../../adapters/absence\"\nimport { axiosError } from \"../../../../../actions/axios\";\nimport { openSidebar } from \"../../../../../actions/rightSidebar\";\n\nimport format from \"../../../../../utils/locale\";\n\nexport interface CounterProps {\n n: {\n start: string,\n end: string,\n tookBetween: {\n start: string,\n end: string,\n },\n cp: {\n acquired: number,\n taken: number,\n balance: number,\n\n }\n },\n n1: {\n start: string,\n end: string,\n tookBetween: {\n start: string,\n end: string,\n }\n cp: {\n acquired: number,\n taken: number,\n balance: number,\n }\n }\n n2: {\n start: string,\n end: string,\n tookBetween: {\n start: string,\n end: string,\n }\n cp: {\n acquired: number,\n taken: number,\n balance: number,\n }\n }\n}\n\nexport const SalaryAbsenceCounter:React.FC<{ counter?: CounterProps, setCounter: React.Dispatch }> = ({ counter, setCounter }) => {\n const dispatch = useDispatch();\n\n const salary = useSelector((state: RootStateOrAny) => state.salary.single);\n \n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n setIsLoading(true)\n api.counter(salary.id).then(data => {\n setCounter(data.data);\n setIsLoading(false);\n }).catch(error => dispatch(axiosError(error)))\n }, [salary])\n\n return (\n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n dispatch(openSidebar(ABSENCE_SETTINGS))}\n className={'btn btn-light me-2'}\n >\n \n \n \n Acquis\n \n Pris\n \n Solde\n
    \n Année en cours (N)\n {counter &&\n <>\n
    \n \n Acquis : Cumul des droits du {!!counter && <>{format(new Date(counter?.n.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n.end), 'dd/MM/uuuu')}}\n \n
    \n \n Pris : Cumul des consommés du {!!counter && <>{format(new Date(counter?.n.tookBetween.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n.tookBetween.end), 'dd/MM/uuuu')}}\n \n \n }\n
    \n {isLoading ?
    : counter?.n.cp.acquired}\n
    \n {isLoading ?
    : counter?.n.cp.taken}\n
    \n {isLoading ?
    : counter?.n.cp.balance}\n
    \n Année précédente (N-1)\n {counter &&\n <>\n
    \n \n Acquis : Cumul des droits du {!!counter && <>{format(new Date(counter?.n1.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n1.end), 'dd/MM/uuuu')}}\n \n
    \n \n Pris : Cumul des consommés du {!!counter && <>{format(new Date(counter?.n1.tookBetween.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n1.tookBetween.end), 'dd/MM/uuuu')}}\n \n \n }\n
    \n {isLoading ?
    : counter?.n1.cp.acquired}\n
    \n {isLoading ?
    : counter?.n1.cp.taken}\n
    \n {isLoading ?
    : counter?.n1.cp.balance}\n
    \n Solde restant (N-2)\n
    \n \n Acquis : Cumul des droits du {!!counter && <>{format(new Date(counter?.n2.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n2.end), 'dd/MM/uuuu')}}\n \n
    \n \n Pris : Cumul des consommés du {!!counter && <>{format(new Date(counter?.n2.tookBetween.start), 'dd/MM/uuuu')} au {format(new Date(counter?.n2.tookBetween.end), 'dd/MM/uuuu')}}\n \n
    \n {isLoading ?
    : counter?.n2.cp.acquired}\n
    \n {isLoading ?
    : counter?.n2.cp.taken}\n
    \n {isLoading ?
    : counter?.n2.cp.balance}\n
    \n
    \n
    \n\n
    \n

    \n Solde global\n

    \n
    \n
    \n {counter ? counter.n.cp.balance + counter.n1.cp.balance : 0}\n
    \n
    \n
    \n
    \n )\n}\n\nexport default SalaryAbsenceCounter;","import { FunctionComponent, ReactNode } from \"react\"\n\nexport interface ITabItem {\n label: string;\n icon?: ReactNode;\n}\n\ninterface IProps {\n colsNumber: \"2\"|\"3\"|\"4\"|\"5\"|\"6\"|\"7\"|\"8\"|\"9\"|\"10\"|\"11\"|\"12\";\n tabItems: ITabItem[];\n selectedIndex: number;\n onClick: (tabIndex: number) => void;\n}\n\nconst TabMenu: FunctionComponent = ({ colsNumber, tabItems, selectedIndex, onClick }) => {\n const gridColsVariants = {\n \"2\": \"col-2\",\n \"3\": \"col-3\",\n \"4\": \"col-4\",\n \"5\": \"col-5\",\n \"6\": \"col-6\",\n \"7\": \"col-7\",\n \"8\": \"col-8\",\n \"9\": \"col-9\",\n \"10\": \"col-10\",\n \"11\": \"col-11\",\n \"12\": \"col-12\"\n }\n\n return (\n
    \n {tabItems.map((tabItem, key) => (\n onClick(key)}\n >\n {tabItem?.icon}\n

    \n {tabItem.label}\n

    \n
    \n ))}\n \n )\n}\n\nexport default TabMenu","import React, {useState} from \"react\";\nimport {Absence} from \"../../../../models/absence\";\nimport * as fileApi from \"../../../../adapters/absence/file\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {showAlertDanger, showAlertSuccess} from \"../../../../actions/alert\";\nimport FileSaver from \"file-saver\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport Loader from \"../../../../utils/loader\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {FORM_NEW_ABSENCE_FILE} from \"../../../../constants/rightSidebar\";\nimport {editAbsenceSuccess} from \"../../../../actions/absence\";\n\nconst AbsenceFileShow:React.FC = () => {\n\n const absence: Absence = useSelector((state: RootStateOrAny) => state.absence.single);\n\n const [downloading, setDownloading] = useState();\n const [deleting, setDeleting] = useState();\n const [justificatifUrl, setJustificatifUrl] = useState()\n const [loadingFile, setLoadingFile] = useState(false)\n const dispatch = useDispatch();\n\n const displayFile = (id: number) => {\n\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file){\n setLoadingFile(true)\n fileApi.download(absence.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n let url = URL.createObjectURL(newBlob);\n setJustificatifUrl(url)\n setLoadingFile(false)\n\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const downloadJustification = (id: number) => {\n\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file){\n setDownloading(id);\n fileApi.download(absence.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n FileSaver.saveAs(newBlob, file!.title)\n setDownloading(undefined)\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const deleteJustification = (id: number) => {\n\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file){\n setDeleting(id);\n fileApi.remove(absence.id!, id).then(resp => {\n let files = [...absence.files!]\n files.splice(files.findIndex(file => file.id === id), 1);\n absence.files = [...files];\n setDeleting(undefined)\n dispatch(editAbsenceSuccess(resp.data))\n dispatch(showAlertSuccess('Fichier supprimé'))\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors de la supression ! Fichier introuvable.'))\n }\n }\n\n return <>\n
    \n
    \n
    \n Fichiers\n
    \n
    \n {Granted(accessRights.EDIT_ABSENCE, undefined, absence) && }\n
    \n
    \n
    \n
      \n {absence?.files?.map((file, index) => <>\n
    • \n

      \n {file.title}\n

      \n
      \n \n \n {Granted(accessRights.EDIT_ABSENCE, undefined, absence) && }\n
      \n
    • \n )}\n
    \n
    \n
    \n
    \n
    \n {loadingFile && }\n {!loadingFile && justificatifUrl && }\n
    \n
    \n
    \n
    \n \n}\n\nexport default AbsenceFileShow;","import React from 'react';\n\nconst Loading: React.FC = () => {\n return (\n
    \n
    \n Loading...\n
    \n

    \n Veuillez patienter..\n

    \n
    \n )\n}\n\nexport default Loading","import { get, post } from \"../../xhr\";\n\nimport { IAddSalaryPaidVacationModel } from \"../../../models/salary/paidVacation/IAddSalaryPaidVacationModel\";\n\nexport function getSalaryPaidVacationsList(salaryId: number){\n return get(`salary/${salaryId}/paid-vacations/list`);\n}\n\nexport function addSalaryPaidVacation(salaryId: number, requestData: IAddSalaryPaidVacationModel){\n return post(`salary/${salaryId}/paid-vacations/add`, requestData);\n}\n\nexport function deleteSalaryPaidVacation(salaryId: number, paidVacationId: number){\n return get(`salary/${salaryId}/paid-vacations/${paidVacationId}/delete`);\n}","import React from 'react'\nimport { useDispatch } from 'react-redux'\n\nimport { Formik, Form } from \"formik\"\nimport * as Yup from \"yup\"\nimport DatePicker from \"react-datepicker\"\nimport { Offcanvas } from 'bootstrap'\n\nimport { addSalaryPaidVacation } from '../../../../../adapters/salary/paidVacation'\n\nimport CustomInput from \"../../../../../utils/customInput\"\nimport FormError from \"../../../../../utils/formError\"\nimport validationClass from \"../../../../../utils/validationClass\"\nimport moment from \"../../../../../utils/moment.utils\"\nimport { showAlertDanger } from '../../../../../actions/alert'\n\ninterface IProps {\n drawerId: string;\n salaryId: number;\n onSubmitSuccess: () => void;\n}\n\nconst AddPaidVacationSchema = Yup.object().shape({\n duration: Yup.number().min(0.5, 'Une demi journée minimum').required('Veuillez préciser la durée du congé'),\n availableStart: Yup.date().required('Veuillez préciser la date de disponibilité'),\n reason: Yup.string().max(255, '255 caractères maximum'),\n});\n\nconst AddPaidVacationDrawer: React.FC = ({ drawerId, salaryId, onSubmitSuccess }) => {\n const dispatch = useDispatch()\n\n return (\n \n
    \n \n Ajouter un congé supplémentaire\n \n \n
    \n\n
    \n {\n try {\n setSubmitting(true)\n await addSalaryPaidVacation(salaryId, {\n ...values,\n availableStart: moment(values.availableStart).startOf('day').toDate()\n })\n onSubmitSuccess()\n resetForm()\n\n const offcanvasElement = document.getElementById(drawerId);\n if (offcanvasElement) {\n const bsOffcanvas = Offcanvas.getInstance(offcanvasElement);\n bsOffcanvas.hide(); \n }\n } catch (error) {\n dispatch(showAlertDanger('Impossible d’ajouter le congé supplémentaire'))\n } finally {\n setSubmitting(false)\n }\n }}\n >\n {({ errors, touched, values, isSubmitting, handleBlur, handleChange, setFieldValue, handleSubmit }) => (\n
    \n
    \n
    \n \n \n \n
    \n
    \n\n
    \n }\n onChange={(date: Date) => setFieldValue('availableStart', date)}\n dateFormat={\"E dd MMM uuuu\"}\n className={'form-control' + validationClass(errors, touched, 'availableStart')}\n selected={values.availableStart}\n />\n \n
    \n\n
    \n
    \n \n \n \n
    \n
    \n\n
    \n handleSubmit()}\n >\n Ajouter\n \n
    \n
    \n )}\n \n
    \n \n )\n}\n\nexport default AddPaidVacationDrawer","import React, { useState, useEffect } from 'react'\nimport { useDispatch } from 'react-redux'\n\nimport Loading from '../../../../common/Loading'\nimport EmptyList from '../../../../common/EmptyList'\nimport AddPaidVacationDrawer from './AddPaidVacationDrawer'\n\nimport { Salary } from '../../../../../models/salary'\nimport { ISalaryPaidVacationModel } from '../../../../../models/salary/paidVacation/ISalaryPaidVacationModel'\n\nimport * as accessRights from \"../../../../../constants/accessRight\"\nimport { Granted } from \"../../../../../security/granted\"\n\nimport * as api from \"../../../../../adapters/absence\"\nimport { getSalaryPaidVacationsList, deleteSalaryPaidVacation } from '../../../../../adapters/salary/paidVacation'\n\nimport { showAlertDanger } from '../../../../../actions/alert'\nimport { axiosError } from '../../../../../actions/axios'\n\nimport moment from \"../../../../../utils/moment.utils\"\n\ninterface IProps {\n salary: Salary;\n setCounter: (data: any) => void;\n}\n\nconst PaidVacations: React.FC = ({ salary, setCounter }) => {\n const dispatch = useDispatch()\n\n const [isLoading, setIsLoading] = useState(false)\n const [salaryPaidVacationsList, setSalaryPaidVacationsList] = useState([])\n\n const fetchCounterData = () => {\n api.counter(salary.id.toString()).then(data => {\n setCounter(data.data);\n }).catch(error => dispatch(axiosError(error)))\n }\n\n const fetchPaidVacations = async (noLoading?: string) => {\n try {\n if (!noLoading) setIsLoading(true)\n const { data } = await getSalaryPaidVacationsList(salary.id)\n setSalaryPaidVacationsList(data)\n } catch (error) {\n dispatch(showAlertDanger('Impossible de récupérer les congés supplémentaires'))\n } finally {\n setIsLoading(false)\n }\n }\n\n const onDeletePaidVacation = async (paidVacationId: number) => {\n try {\n await deleteSalaryPaidVacation(salary.id, paidVacationId)\n fetchPaidVacations('noLoading')\n fetchCounterData()\n } catch (error) {\n dispatch(showAlertDanger('Impossible de supprimer le congé'))\n }\n }\n\n useEffect(() => {\n fetchPaidVacations()\n }, [])\n\n return (\n
    \n {isLoading &&\n \n }\n\n {!isLoading &&\n
    \n \n \n \n \n \n \n \n \n \n\n \n {salaryPaidVacationsList.length === 0 &&\n \n \n \n }\n\n {salaryPaidVacationsList.map(paidVacation => (\n \n \n \n \n \n \n ))}\n \n
    \n Durée (jours)\n \n Disponible à partir du\n \n Motif\n \n Actions\n
    \n \n
    \n {paidVacation.duration} jour(s)\n \n {moment(paidVacation.availableStart).format('DD MMMM YYYY')}\n \n {paidVacation?.reason || '-'}\n \n onDeletePaidVacation(paidVacation.id)}\n />\n
    \n\n {Granted(accessRights.EDIT_ABSENCE, salary.id) &&\n
    \n
    \n \n Ajouter\n \n
    \n
    \n }\n
    \n }\n\n {\n fetchPaidVacations()\n fetchCounterData()\n }}\n />\n
    \n )\n}\n\nexport default PaidVacations","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport SalaryAbsenceCounter, { CounterProps } from \"./counter\";\nimport TabMenu from \"../../../common/TabMenu\";\nimport AbsenceFileShow from \"../../../absence/file/show\";\nimport PaidVacations from \"./paidVacations\";\n\nimport { Absence } from \"../../../../models/absence\";\nimport { Salary } from \"../../../../models/salary\";\n\nimport { FORM_EDIT_ABSENCE, FORM_NEW_ABSENCE } from \"../../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\nimport * as api from \"../../../../adapters/absence\";\nimport * as actions from \"../../../../actions/absence\";\nimport { openSidebar } from \"../../../../actions/rightSidebar\";\nimport { showAlertSuccess } from \"../../../../actions/alert\";\nimport { axiosError } from \"../../../../actions/axios\";\n\nimport { Granted } from \"../../../../security/granted\";\nimport format from \"../../../../utils/locale\";\n\nconst SalaryAbsence:React.FC<{salary: Salary}> = (props) => {\n const { salary } = props;\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.absence);\n\n const [isLoading, setIsLoading] = useState(false)\n const [offset, setOffset] = useState(0)\n const [isListEnd, setIsListEnd] = useState(false)\n const [query, setQuery] = useState(['1','2','3']);\n const [period, setPeriod] = useState(0);\n const [type, setType] = useState([]);\n const [counter, setCounter] = useState();\n const [tabIndex, setTabIndex] = useState(0);\n\n const remove = (absence: Absence) => {\n dispatch(actions.cancelAbsenceSuccess(absence));\n api.cancel(absence.id!).then(() => {\n dispatch(showAlertSuccess('Absence archivée'))\n })\n }\n\n function overlap(a: Absence)\n {\n if (counter) {\n switch (period) {\n case 0:\n return true;\n case 1:\n return (new Date(counter.n.tookBetween.start)).getTime() < (new Date(a.end)).getTime() && (new Date(counter.n.tookBetween.end)).getTime() > (new Date(a.start)).getTime();\n case 2:\n return (new Date(counter.n1.tookBetween.start)).getTime() < (new Date(a.end)).getTime() && (new Date(counter.n1.tookBetween.end)).getTime() > (new Date(a.start)).getTime();\n case 3:\n return (new Date(counter.n2.tookBetween.start)).getTime() < (new Date(a.end)).getTime() && (new Date(counter.n2.tookBetween.end)).getTime() > (new Date(a.start)).getTime();\n }\n }\n\n return true;\n }\n\n useEffect(() => {\n let controller = new AbortController();\n\n setIsLoading(true);\n dispatch(actions.fetchAbsences())\n dispatch(actions.showAbsence())\n api.listForSalary(salary.id, { offset, limit: 5 }).then(data => {\n if (data.data.length < 5) {\n setIsListEnd(true)\n } else if (offset === 0 && data.data.length === 5) {\n setIsListEnd(false)\n }\n\n dispatch(actions.fetchAbsencesSuccess(data.data))\n setIsLoading(false);\n }).catch(error => dispatch(axiosError(error)))\n\n return () => {\n controller.abort();\n }\n }, [salary, offset])\n\n return (\n
    \n
    \n
    \n \n\n setTabIndex(newTabIndex)}\n />\n\n {tabIndex === 0 &&\n
    \n \n \n \n \n \n \n \n \n \n \n \n\n \n {state.payload.length ? state.payload.filter((a: Absence) => {\n return (!type.length || type.includes(String(a.type))) && (!query.length || query.includes(String(a.status))) && overlap(a)\n }).map((a: Absence, index: number) => {\n return (\n <>\n dispatch(actions.showAbsenceSuccess(a))}\n >\n {Granted(accessRights.EDIT_ABSENCE, undefined, a) &&\n \n }\n \n \n \n \n \n \n\n {state.single && state.single.id === a.id &&\n \n \n \n }\n \n )\n }) : (isLoading ?\n \n \n \n :\n \n \n \n )}\n \n
    \n #\n \n Type d'absence\n \n Dates\n \n Reprise le\n \n Nb jours\n \n Statut\n
    \n
    \n \n \n \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n
    \n {a.typeName}\n \n {format(new Date(a.start))} {format(new Date(a.end))}\n \n {a.nextWorkingDay ? format(new Date(a.nextWorkingDay)) : }\n \n {a.nbDays}\n \n \n
    \n
    \n \n \n \n \n \n {state.single.editedBy && \n \n }\n {\n \n }\n \n
    \n Créé par {state.single.createdBy?.title || '-'} le {format(new Date(state.single.createdAt))}\n
    \n Modifié par {state.single.editedBy.title} le {format(new Date(state.single.editedAt))}\n
    \n \n
    \n
    \n
    \n
    \n Loading...\n
    \n
    \n Aucune absence\n
    \n\n {state.payload.length > 0 &&\n
    \n
    \n setOffset(offset - 1)}\n >\n {\"< Page précédente\"}\n \n
    \n\n
    \n setOffset(offset + 1)}\n >\n {\"Page suivante >\"}\n \n
    \n
    \n }\n\n
    \n {Granted(accessRights.EDIT_ABSENCE, salary.id) &&\n
    \n dispatch(openSidebar(FORM_NEW_ABSENCE, {salary: salary}))}\n >\n Ajouter\n \n
    \n }\n
    \n
    \n }\n\n {tabIndex === 1 &&\n \n }\n
    \n
    \n
    \n )\n}\n\nexport default SalaryAbsence;","import * as xhr from \"../xhr\";\nimport {APPLICATION_PDF} from \"../xhr\";\n\nexport function fetch(requestData?: {\n start: string,\n end: string,\n options?: {\n map?: 1|2|3;\n salaries?: number[];\n companies?: number[];\n isCounter?: boolean,\n query?: string;\n offset?: number;\n }\n}){\n return xhr.post('reporting/fetch', requestData || {});\n}\n\nexport function exportDays(requestData: {\n start: string;\n end: string;\n}, salary: number)\n{\n return xhr.post(`reporting/export/days/${salary}`, requestData, {headers: [APPLICATION_PDF], responseType: 'arraybuffer'});\n}\n\nexport function exportDaysGrouped(requestData: {\n start: string;\n end: string;\n}, salary: number)\n{\n return xhr.post(`reporting/export/days_grouped/${salary}`, requestData, {headers: [APPLICATION_PDF], responseType: 'arraybuffer'});\n}\n\nexport function exportPeriods(requestData: { start: string; end: string; company: number, jobs?: number[]})\n{\n return xhr.post(`reporting/export/periods`, requestData, {responseType: 'blob'});\n}\n\nexport function exportSilae(requestData: { start: string; end: string; company?: number; team?: number; type?: string})\n{\n return xhr.post(`reporting/export/silae`, requestData, {responseType: 'blob'});\n}\n\nexport function exportSignature(requestData: { start: string; end: string; salary: number;}, options?:xhr.Options)\n{\n return xhr.post(`reporting/export/signature`, requestData, options);\n}","export const FETCH_COUNTERS = 'FETCH_COUNTER';\nexport const FETCH_COUNTERS_SUCCESS = 'FETCH_COUNTER_SUCCESS';\nexport const FETCH_COUNTERS_FAILURE = 'FETCH_COUNTER_FAILURE';\n\nexport const SHOW_COUNTER = 'SHOW_COUNTER';\nexport const SHOW_COUNTER_SUCCESS = 'SHOW_COUNTER_SUCCESS';\nexport const SHOW_COUNTER_FAILURE = 'SHOW_COUNTER_FAILURE';\n\nexport const EDIT_COUNTER = 'EDIT_COUNTER';\nexport const EDIT_COUNTER_SUCCESS = 'EDIT_COUNTER_SUCCESS';\nexport const EDIT_COUNTER_FAILURE = 'EDIT_COUNTER_FAILURE';\n\nexport const REFRESH_COUNTER = 'REFRESH_COUNTER';\n","import * as types from \"../../constants/counter\";\nimport * as models from \"../../models/counter\";\n\nexport const fetchReporting = () => {\n return {\n type: types.FETCH_COUNTERS\n }\n}\n\nexport const fetchCountersFailure = (error: string) => {\n return {\n type: types.FETCH_COUNTERS_FAILURE,\n error: error\n }\n}\n\nexport const fetchCountersSuccess = (totalCounters: models.TotalCounters) => {\n return {\n type: types.FETCH_COUNTERS_SUCCESS,\n payload: totalCounters,\n }\n}\n\n\nexport const showCounter = () => {\n return {\n type: types.SHOW_COUNTER\n }\n}\n\nexport const showCounterFailure = (error: string) => {\n return {\n type: types.SHOW_COUNTER_FAILURE,\n error: error\n }\n}\n\nexport const showCounterSuccess = (totalCounter?: models.TotalCounter|any) => {\n return {\n type: types.SHOW_COUNTER_SUCCESS,\n single: totalCounter,\n }\n}\n\nexport const editCounterSuccess = (totalCounter: models.TotalCounter) => {\n return {\n type: types.EDIT_COUNTER_SUCCESS,\n single: totalCounter,\n }\n}\n\nexport const refreshCounter = () => {\n return {\n type: types.REFRESH_COUNTER\n }\n}\n","export const FETCH_REPORTING = 'FETCH_REPORTING';\nexport const FETCH_REPORTING_SUCCESS = 'FETCH_REPORTING_SUCCESS';\nexport const FETCH_REPORTING_FAILURE = 'FETCH_REPORTING_FAILURE';\n\nexport const SHOW_REPORTING = 'SHOW_REPORTING';\nexport const SHOW_REPORTING_SUCCESS = 'SHOW_REPORTING_SUCCESS';\nexport const SHOW_REPORTING_FAILURE = 'SHOW_REPORTING_FAILURE';\n\nexport const REFRESH_SINGLE = 'REFRESH_SINGLE';\n\nexport const getAvailableFields = () => {\n return [\n {\n title: \"Temps de travail\",\n camelCase: \"timesheet\",\n fields: [\n {\n camelCase: \"monthlyContractWorkingTime\",\n name: \"Heures contrat théorique\"\n },\n {\n camelCase: \"workingTime\",\n name: \"Heures réellement travaillées\"\n },\n {\n camelCase: \"overtime25\",\n name: \"Heures supplémentaires (25%)\"\n },\n {\n camelCase: \"overtime50\",\n name: \"Heures supplémentaires (50%)\"\n },\n {\n camelCase: \"nightTime20\",\n name: \"Horaires de nuit (20%)\"\n },\n {\n camelCase: \"nightTime40\",\n name: \"Horaires de nuit (40%)\"\n },\n {\n camelCase: \"labourDayWorkingTime\",\n name: \"Horaires jours fériés travaillés\"\n },\n {\n camelCase: \"sundayWorkingTime\",\n name: \"Horaires dimanches\"\n },\n {\n camelCase: \"fullDays\",\n name: \"Jours complets\"\n },\n {\n camelCase: \"presenceDays\",\n name: \"Jours présents\"\n },\n ],\n },\n {\n title: \"Absence\",\n camelCase: \"absence\",\n fields: [\n {\n camelCase: \"paidVacation\",\n name: \"Congés payés\"\n },\n {\n camelCase: \"labourDayNonWorkingTime\",\n name: \"Jour fériés\"\n },\n {\n camelCase: \"recovery\",\n name: \"Repos\"\n },\n {\n camelCase: \"rtt\",\n name: \"RTT\"\n },\n {\n camelCase: \"formation\",\n name: \"Formations\"\n },\n {\n camelCase: \"paidElse\",\n name: \"Autres absences payées\"\n },\n {\n camelCase: \"unpaidVacation\",\n name: \"Congés sans solde\"\n },\n {\n camelCase: \"unpaidElse\",\n name: \"Autres absences non payées\"\n },\n {\n camelCase: \"sickLeave\",\n name: \"Arrêts maladie\"\n },\n {\n camelCase: \"compensatedElse\",\n name: \"Autres absences indemnisées\"\n }\n ]\n },\n {\n title: \"Variables payées\",\n camelCase: \"paidVariables\",\n fields: [\n {\n camelCase: \"paid\",\n name: \"Heures normales payées\"\n },\n {\n camelCase: \"paidLowMajoration\",\n name: \"Heures supplémentaires payées à 25%\"\n },\n {\n camelCase: \"paidHighMajoration\",\n name: \"Heures supplémentaires payées à 50%\"\n }\n ]\n }\n ];\n}","import * as types from \"../../constants/reporting\";\nimport * as models from \"../../models/reporting\";\n\nexport const fetchReporting = () => {\n return {\n type: types.FETCH_REPORTING\n }\n}\n\nexport const fetchReportingFailure = (error: string) => {\n return {\n type: types.FETCH_REPORTING_FAILURE,\n error: error\n }\n}\n\nexport const fetchReportingSuccess = (reporting: models.PeriodsReporting, singleReporting?: models.PeriodReporting) => {\n return {\n type: types.FETCH_REPORTING_SUCCESS,\n payload: reporting,\n single: singleReporting\n }\n}\n\n\nexport const showReporting = () => {\n return {\n type: types.SHOW_REPORTING\n }\n}\n\nexport const showReportingFailure = (error: string) => {\n return {\n type: types.SHOW_REPORTING_FAILURE,\n error: error\n }\n}\n\nexport const showReportingSuccess = (reporting: models.PeriodReporting) => {\n return {\n type: types.SHOW_REPORTING_SUCCESS,\n single: reporting,\n }\n}\n\nexport const refreshSingleReporting = (reporting: models.PeriodReporting) => {\n return {\n type: types.REFRESH_SINGLE,\n single: reporting,\n }\n}\n","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as api from \"../../../../adapters/reporting\"\nimport {Salary} from \"../../../../models/salary\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {PeriodReporting, WeeksReporting} from \"../../../../models/reporting\";\nimport {Tooltip} from \"bootstrap\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {\n ACCOUNTING_SETTINGS, COUNTER_SETTINGS,\n FORM_COUNTER_SHOW,\n FORM_COUNTER_WITHDRAWN_ADD, FORM_COUNTER_WITHDRAWN_EDIT,\n REPORTING_SHOW_WEEK\n} from \"../../../../constants/rightSidebar\";\nimport * as counterApi from \"../../../../adapters/counter\";\nimport {refreshCounter} from \"../../../../actions/counter\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {showReportingSuccess} from \"../../../../actions/reporting\";\nimport {Granted} from \"../../../../security/granted\";\n\nconst SalaryCounter:React.FC = () => {\n\n const date = new Date();\n const [month, setMonth] = useState(date.getMonth() + 1);\n const [year, setYear] = useState(date.getFullYear());\n const [isLoading, setIsLoading] = useState(true)\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single)\n const state = useSelector((state: RootStateOrAny) => state.counter)\n const [weeksReporting, setWeeksReporting] = useState()\n const [reporting, setReporting] = useState()\n const dispatch = useDispatch();\n const [counterLoading, setCounterLoading] = useState(false)\n const [startDate, setStartDate] = useState()\n const [endDate, setEndDate] = useState()\n\n useEffect(() => {\n setStartDate(new Date(year, month - 1, 1));\n setEndDate(new Date(year, month, 0));\n }, [month, year, salary, state.hasChanged])\n\n useEffect(() => {\n if (startDate && endDate){\n fetchItems();\n }\n }, [startDate, endDate])\n\n useEffect(() => {\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n\n return () => {\n tooltipTriggerList.map(t => Tooltip.getInstance(t).hide())\n }\n }, [reporting])\n\n const fetchItems = () => {\n if (startDate && endDate){\n setIsLoading(true);\n api.fetch({start: format(startDate, 'uuuu-MM-dd'), end: format(endDate, 'uuuu-MM-dd'), options: {salaries: [salary.id!], isCounter: true}}).then(data => {\n dispatch(showReportingSuccess(data.data[0]))\n setWeeksReporting(data.data[0].weeks);\n setReporting(data.data[0]);\n setIsLoading(false);\n }).catch(error => dispatch(axiosError(error)))\n }\n }\n\n const goToPrevMonth = () => {\n if (month === 1){\n setMonth(12)\n setYear(prevState => prevState - 1);\n }else{\n setMonth(prevState => prevState - 1)\n }\n }\n\n const goToNextMonth = () => {\n if (month === 12){\n setMonth(1)\n setYear(prevState => prevState + 1);\n }else{\n setMonth(prevState => prevState + 1)\n }\n }\n\n const month_array = [\n {title: 'Janvier'},\n {title: 'Février'},\n {title: 'Mars'},\n {title: 'Avril'},\n {title: 'Mai'},\n {title: 'Juin'},\n {title: 'Juillet'},\n {title: 'Août'},\n {title: 'Séptembre'},\n {title: 'Octobre'},\n {title: 'Novembre'},\n {title: 'Décembre'},\n ];\n\n const saveCounter = () => {\n if (startDate && endDate){\n setCounterLoading(true)\n counterApi.saveSingle({start: format(startDate, 'uuuu-MM-dd'), end: format(endDate, 'uuuu-MM-dd')}, Number(salary.id)).then(data => {\n setCounterLoading(false)\n dispatch(refreshCounter())\n }).catch(error => dispatch(axiosError(error)));\n }\n }\n\n const TableLoader:React.FC<{className: \"circle\"|\"line\", length?: number}> = (props) => {\n\n const {className} = props;\n\n return <>\n \n
    \n \n \n
    \n \n \n
    \n \n \n
    \n \n \n
    \n \n \n
    \n \n \n }\n\n return <>\n
    \n
    \n
    \n \n \n \n \n \n \n \n \n {month_array.map((item, key) => {\n\n let dt = new Date();\n dt.setMonth(key);\n\n if(key+1 !== month) return <>\n\n return <>{key + 1 === month && }\n \n {key + 1 === month && }\n \n })}\n \n \n \n \n \n {month_array.map((item, key) => key + 1 === month ?\n (isLoading ? : <>\n \n {weeksReporting?.map((weekReporting, key) => )}\n \n )\n : key+1 === month ? : <> )}\n \n \n \n {month_array.map((item, key) => key + 1 === month ?\n (isLoading ? : <>\n \n {weeksReporting?.map((weekReporting, key) => )}\n \n )\n : key+1 === month ? : <> )}\n \n \n \n {month_array.map((item, key) => key + 1 === month ?\n (isLoading ? : <>\n \n {weeksReporting?.map((weekReporting, key) => )}\n \n )\n : key+1 === month ? : <> )}\n \n \n \n {month_array.map((item, key) => key + 1 === month ?\n (isLoading ? : <>\n \n {weeksReporting?.map((weekReporting, key) => )}\n \n )\n : key+1 === month ? : <> )}\n \n \n
    \n {Granted(accessRights.EDIT_COUNTER) && }\n \n \n \n \n {month_array[month - 1].title} {year}\n \n \n \n
    \n {Granted(accessRights.EDIT_COUNTER, salary.id) && <> saveCounter()}\n disabled={counterLoading}\n className={'btn btn-light ms-2'}>\n {counterLoading ? <>
    \n Loading...\n
    Validation en cours... : <> Valider le compteur}\n \n }\n
    \n

    \n Compteur initial\n

    \n
    \n \n \n
      \n {month_array.map((_item, _key) => {\n let _dt = new Date();\n _dt.setMonth(_key);\n return
    • setMonth(_key + 1)}>\n {format(_dt, 'MMMM')}\n
    • \n })}\n
    \n
    \n
    \n

    \n Compteur final\n

    \n
    \n N° Semaine\n \n \n S{weekReporting.weekNumber}\n \n
    \n {!weekReporting.disabled && {\n dispatch(openSidebar(REPORTING_SHOW_WEEK, {\n currentWeek: weekReporting.weekNumber,\n start: format(startDate!, \"uuuu-MM-dd\"),\n end: format(endDate!, \"uuuu-MM-dd\")\n }))\n }}\n className={'btn text-primary'}\n >\n \n }\n
    \n Heures retirées du compteur\n \n\n {(weekReporting.counterWithdrawn && weekReporting.counterWithdrawn !== '00:00') ? <>\n \n \n {weekReporting.counterWithdrawn}\n {weekReporting.counterWithdrawnStep && Granted(accessRights.EDIT_COUNTER, salary.id) &&\n <>\n dispatch(openSidebar(FORM_COUNTER_WITHDRAWN_EDIT, {...weekReporting.counterWithdrawnStep}))}\n className={'btn btn-sm text-primary'}>\n \n \n }\n \n : <>{Granted(accessRights.EDIT_COUNTER, salary.id) &&\n }}\n {weekReporting.counterWithdrawnStep?.description && <>\n
    \n \n {weekReporting.counterWithdrawnStep?.description}\n \n }\n
    \n Compteurs\n \n
    \n \n à date\n \n
    \n {(weekReporting.counterSaved && weekReporting.counterSaved !== '00:00') ? <>\n \n {weekReporting.counterSaved[0] === '-' ? : } {weekReporting.counterSaved}\n {weekReporting.counterStep && Granted(accessRights.EDIT_COUNTER, salary.id) &&\n <>\n dispatch(openSidebar(FORM_COUNTER_SHOW, {...weekReporting.counterStep, salary: salary}))}\n className={'btn btn-sm text-primary'}>\n \n \n }\n \n : }\n {(weekReporting.counter && weekReporting.counter !== weekReporting.counterSaved && weekReporting.counter !== '00:00') && <>\n
    \n \n {weekReporting.counter}\n \n }\n
    \n Suivi évolution compteur\n \n {reporting?.counterTotalInitial}\n {(weekReporting.counterSavedTotal && weekReporting.counterSavedTotal !== '00:00') ? weekReporting.counterSavedTotal : }\n \n {reporting?.counterSavedTotal && {reporting?.counterSavedTotal} }\n
    \n {reporting?.counterSavedTotal !== reporting?.counterTotal && {reporting?.counterTotal} }\n
    \n
    \n
    \n
    \n \n}\n\nexport default SalaryCounter;","export const ADD_SYNTHESIS = 'ADD_SYNTHESIS';\nexport const ADD_SYNTHESIS_SUCCESS = 'ADD_SYNTHESIS_SUCCESS';\nexport const ADD_SYNTHESIS_FAILURE = 'ADD_SYNTHESIS_FAILURE';\n\nexport const EDIT_SYNTHESIS = 'EDIT_SYNTHESIS';\nexport const EDIT_SYNTHESIS_SUCCESS = 'EDIT_SYNTHESIS_SUCCESS';\nexport const EDIT_SYNTHESIS_FAILURE = 'EDIT_SYNTHESIS_FAILURE';\n\nexport const FETCH_SYNTHESES = 'FETCH_SYNTHESES';\nexport const FETCH_SYNTHESES_SUCCESS = 'FETCH_SYNTHESES_SUCCESS';\nexport const FETCH_SYNTHESES_FAILURE = 'FETCH_SYNTHESES_FAILURE';\n\nexport const UPDATE_SYNTHESES = 'UPDATE_SYNTHESES';\nexport const UPDATE_SYNTHESES_SUCCESS = 'UPDATE_SYNTHESES_SUCCESS';\n\nexport const SHOW_SYNTHESIS = 'SHOW_SYNTHESIS';\nexport const SHOW_SYNTHESIS_SUCCESS = 'SHOW_SYNTHESIS_SUCCESS';\nexport const SHOW_SYNTHESIS_FAILURE = 'SHOW_SYNTHESIS_FAILURE';","import * as types from \"../../constants/synthesis\";\nimport * as models from \"../../models/synthesis\";\n\nexport const addSynthesis = () => {\n return {\n type: types.ADD_SYNTHESIS,\n }\n}\n\nexport const addSynthesisSuccess = (synthesis: models.Synthesis) => {\n return {\n type: types.ADD_SYNTHESIS_SUCCESS,\n synthesis: synthesis,\n }\n}\n\nexport const addSynthesisFailure = (error: string) => {\n return {\n type: types.ADD_SYNTHESIS_FAILURE,\n synthesis: null,\n syntheses: null,\n error: error\n }\n}\n\nexport const editSynthesis = () => {\n return {\n type: types.EDIT_SYNTHESIS,\n }\n}\n\nexport const editSynthesisSuccess = (synthesis: models.Synthesis) => {\n return {\n type: types.EDIT_SYNTHESIS_SUCCESS,\n synthesis: synthesis\n }\n}\n\nexport const editSynthesisFailure = (error: string) => {\n return {\n type: types.EDIT_SYNTHESIS_FAILURE,\n synthesis: null,\n syntheses: null,\n error: error\n }\n}\n\nexport const fetchSyntheses = (start: Date, end: Date) => {\n return {\n type: types.FETCH_SYNTHESES,\n start: start,\n end: end\n }\n}\n\nexport const fetchSynthesesFailure = (error: string) => {\n return {\n type: types.FETCH_SYNTHESES_FAILURE,\n synthesis: null,\n syntheses: [],\n error: error\n }\n}\n\nexport const fetchSynthesesSuccess = (syntheses: models.Syntheses, weeks: models.Weeks) => {\n return {\n type: types.FETCH_SYNTHESES_SUCCESS,\n synthesis: null,\n weeks: weeks,\n syntheses: syntheses\n }\n}\n\nexport const updateSyntheses = (syntheses: models.Syntheses) => {\n return {\n type: types.UPDATE_SYNTHESES,\n synthesis: null,\n weeks: null,\n syntheses: syntheses\n }\n}\n\nexport const updateSynthesesSuccess = (syntheses: models.Syntheses) => {\n return {\n type: types.UPDATE_SYNTHESES_SUCCESS,\n synthesis: null,\n weeks: null,\n syntheses: syntheses\n }\n}\n\nexport const showSynthesis = () => {\n return {\n type: types.SHOW_SYNTHESIS,\n }\n}\n\nexport const showSynthesisSuccess = (synthesis: models.Synthesis) => {\n return {\n type: types.SHOW_SYNTHESIS_SUCCESS,\n synthesis: synthesis\n }\n}\n\nexport const showSynthesisFailure = (error: string) => {\n return {\n type: types.SHOW_SYNTHESIS_FAILURE,\n synthesis: null,\n syntheses: null,\n error: error\n }\n}","import {post} from \"../xhr\";\n\nexport function add(salaryId: number, requestData: {month: number, year: number, week: number, value: number, maj: string}){\n return post(`paid/add/${salaryId}`, requestData)\n}\n\nexport function paidValue(salaryId: number, requestData: {month: number, year: number, value: number}){\n return post(`paid/add/value/${salaryId}`, requestData)\n}\n\n\nexport function paidLow(salaryId: number, requestData: {month: number, year: number, value25: number}){\n return post(`paid/add/value_low_majoration/${salaryId}`, requestData)\n}\n\nexport function paidHigh(salaryId: number, requestData: {month: number, year: number, value50: number}){\n return post(`paid/add/value_high_majoration/${salaryId}`, requestData)\n}","import React, {useState} from \"react\";\nimport * as models from \"../../../models/synthesis\";\nimport format from \"../../../utils/locale\";\nimport {RootStateOrAny, useSelector} from \"react-redux\";\nimport timeFormat from \"../../../utils/timeFormat\";\nimport {\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n getAccountingTypeChoice,\n getAccountingTypeChoiceClassName\n} from \"../../../constants/booking\";\nimport duration from \"../../../utils/duration\";\nimport {\n EVENT_TYPE_EVENT_EXCEPTION,\n EVENT_TYPE_TEMPLATE_APPLIED_EVENT, EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION,\n EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION\n} from \"../../../constants/calendar\";\n\nconst SynthesisSignature: React.FC = () => {\n const state: models.initialStateInterface = useSelector((state: RootStateOrAny) => state.synthesis);\n \n const [displayOverlappingDays, setDisplayOverlappingDays] = useState(false)\n \n function toHHMMSS(secs: number){\n let sec_num = secs\n let hours = Math.floor(sec_num / 3600)\n let minutes = Math.floor(sec_num / 60) % 60\n\n return [hours,minutes]\n .map(v => v < 10 ? \"0\" + v : v)\n .filter((v,i) => v !== \"00\" || i > 0)\n .join(\":\")\n }\n\n return <>\n
    \n
    \n {state.single &&
    \n
    \n
    \n Feuille d'émargements de {state.single.salary.title}\n
    \n \n
    \n
    \n \n \n\n \n {Object.values(state.single.weeks).map((week, index) => \n \n \n \n \n \n \n \n \n \n \n \n {Object.values(week.days).filter(day => !day.overlapStart || displayOverlappingDays).map(day => \n \n \n \n \n )}\n {week.overlapStart ? <>\n {displayOverlappingDays ? <>\n \n \n \n : <>\n \n \n\n \n }\n : <>\n \n \n \n }\n )}\n
    \n S.{week.weekNumber}\n \n {format(new Date(week.start))} {format(new Date(week.end))}\n \n {week.overlapStart &&
    \n setDisplayOverlappingDays(e.target.checked)}/>\n \n
    }\n
    \n Jour\n \n Planifié\n \n Travaillé\n \n Delta (h)\n
    \n
    \n {format(new Date(day.dt), \"E dd\")}\n
    \n {day.isLabourDay &&
    \n Jour férié\n
    }\n {!!day.nightTimeDetails.length &&
    \n Heures de nuit\n
    }\n
    \n
      \n {!!day.absence && !day.planned.length &&
    • \n
      \n {day.absence.typeName}\n
      \n
    • }\n {day.planned.map(e =>
    • \n
      \n {e.eventType === EVENT_TYPE_EVENT_EXCEPTION && }\n {[EVENT_TYPE_TEMPLATE_APPLIED_EVENT, EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION, EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION].includes(e.eventType) && }\n {format(new Date(e.start), \"HH:mm\")} {format(new Date(e.end), \"HH:mm\")} ({duration(new Date(e.start), new Date(e.end))})\n
      \n {e.absence &&
      \n {e.absence.typeName}\n
      }\n {e.comment &&
      \n {e.comment}\n
      }\n {e.accountingType && e.accountingType !== ACCOUNTING_TYPE_WORK_ACCOUNTED &&
      \n {getAccountingTypeChoice(e.accountingType).label}\n
      }\n {!!e.nightTimeDetails?.length &&
        \n {e.nightTimeDetails.map((d: {maj: \"_low\"|\"_high\", value: number}) =>
      • \n Majoration: {d.maj === \"_low\" ? \"20%\" : \"40%\"}, Durée: {toHHMMSS(d.value)}\n
      • )}\n
      }\n
    • )}\n
    \n
    \n
      \n {day.done.map(e =>
    • \n {format(new Date(e.start), \"HH:mm\")} {format(new Date(e.end), \"HH:mm\")} ({duration(new Date(e.start), new Date(e.end), e.nonBadgedBreak)})\n {!!e.nonBadgedBreak && <>\n \n \n {timeFormat(e.nonBadgedBreak)} de pause.\n \n }\n {!!e.nightTimeDetails?.length &&
        \n {e.nightTimeDetails.map((d: {maj: \"_low\"|\"_high\", value: number}) =>
      • \n Majoration: {d.maj === \"_low\" ? \"20%\" : \"40%\"}, Durée: {toHHMMSS(d.value)}\n
      • )}\n
      }\n {e.description &&
      \n {e.description}\n
      }\n
    • )}\n
    \n
    \n {timeFormat(day.delta)}\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Contrat\n \n Travaillé\n \n H. d'absences ajoutées au volume d'heure\n \n Total\n \n Compteur\n
    \n {timeFormat(week.contractWorkingTime)}\n \n {timeFormat(week.overlapWorkingTime)}\n \n {timeFormat(week.overlapAbsenceAccountedTime)}\n \n {timeFormat(week.overlapAccountedWorkingTime)}\n \n {timeFormat(week.counter)}\n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Contrat\n \n Travaillé\n \n H. d'absences ajoutées au volume d'heure\n \n Total\n \n Compteur\n
    \n \n \n {timeFormat(week.workingTime)}\n \n {timeFormat(week.absenceAccountedTime)}\n \n {timeFormat(week.accountedWorkingTime)}\n \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Contrat\n \n Travaillé\n \n H. d'absences ajoutées au volume d'heure\n \n Total\n \n Compteur\n
    \n {timeFormat(week.contractWorkingTime)}\n \n {timeFormat(week.workingTime)}\n \n {timeFormat(week.absenceAccountedTime)}\n \n {timeFormat(week.accountedWorkingTime)}\n \n {timeFormat(week.counter)}\n
    \n
    \n
    \n
    }\n
    \n
    \n \n}\n\nexport default SynthesisSignature;","import * as models from \"../../models/companyGroup\";\nimport {get, post} from \"../xhr\";\n\nexport function create(requestData: models.CompanyGroup){\n return post('company_group/create', requestData);\n}\n\nexport function list(){\n return get('company_group/list');\n}\n\nexport function requestModule(module: string){\n return get('company_group/module/' + module);\n}\n\nexport function timeClockSetting(requestData: { setting: string, value: any }){\n return post('company_group/time_clock', requestData);\n}\n\nexport function absenceSetting(requestData: { setting: string, value: any }){\n return post('company_group/absence', requestData);\n}\n\nexport function accountingSetting(requestData: { setting: string, value: any }){\n return post('company_group/accounting', requestData);\n}\n\nexport function modules(requestData: { setting: string, value: any }){\n return post('company_group/modules', requestData);\n}\n\nexport function generalSettings(requestData: { setting: string, value: any }){\n return post('company_group/general', requestData);\n}","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../../utils/locale\";\nimport * as actions from \"../../../../actions/synthesis\"\nimport * as api from \"../../../../adapters/calendar\"\nimport * as counterApi from \"../../../../adapters/counter\"\nimport * as paidApi from \"../../../../adapters/paid\"\nimport * as reporting from \"../../../../adapters/reporting\"\nimport * as withdrawnApi from \"../../../../adapters/counter/withdrawn\"\nimport * as calendarTypes from \"../../../../constants/calendar\"\nimport {Salary} from \"../../../../models/salary\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Synthesis, SynthesisWeek} from \"../../../../models/synthesis\";\nimport timeFormat from \"../../../../utils/timeFormat\";\nimport {getMonthOption} from \"../../../../constants/global\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport SynthesisSignature from \"../../../synthesis/signature\";\nimport onMouseEnterTooltip from \"../../../../utils/mouseOverTooltip\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport {Modal} from \"bootstrap\";\nimport FormError from \"../../../../utils/formError\";\nimport * as cgApi from \"../../../../adapters/companyGroup\";\nimport {editUserCompanyGroupSuccess} from \"../../../../actions/auth\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport {APPLICATION_PDF} from \"../../../../adapters/xhr\";\nimport FileSaver from \"file-saver\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {COUNTER_SETTINGS} from \"../../../../constants/rightSidebar\";\nimport { showAlertDanger } from \"../../../../actions/alert\";\n\nconst SalaryCounterV2:React.FC = () => {\n\n let today = new Date();\n let isOvertimeMarkUp = useSelector((state: RootStateOrAny) => state.auth.user.currentSalary.companyGroup.accountingSettings.overtimeMarkUp)\n\n const dispatch = useDispatch();\n const [year, setYear] = useState(today.getFullYear());\n const [month, setMonth] = useState(today.getMonth() + 1);\n\n let firstDay = new Date(year, month - 1, 1);\n let lastDay = new Date(year, month, 1);\n\n const state = useSelector((state: RootStateOrAny) => state)\n const hasChanged = useSelector((state: RootStateOrAny) => state.hasChanged)\n let salary: Salary = state.salary.single;\n let synthesis: Synthesis = state.synthesis.single;\n let loading: boolean = state.synthesis.isLoading;\n const [modal, setModal] = useState()\n const [paidModal, setPaidModal] = useState()\n const [downloadModal, setDownloadModal] = useState()\n const [withdrawnModal, setWithdrawnModal] = useState()\n\n useEffect(() => {\n setModal(new Modal(document.getElementById('counterEditModal')!))\n setPaidModal(new Modal(document.getElementById('paidModal')!))\n setDownloadModal(new Modal(document.getElementById('downloadModal')!))\n setWithdrawnModal(new Modal(document.getElementById('withdrawnModal')!))\n }, [])\n\n const [currentWeek, setCurrentWeek] = useState();\n\n useEffect(() => {\n fetchCounters();\n }, [salary, year, month, hasChanged, isOvertimeMarkUp])\n\n function handleOvertimeMarkUpChange(checked: boolean){\n cgApi.accountingSetting({\n setting: \"overtime_mark_up\",\n value: checked\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n })\n }\n\n function saveCounters(counters: {wn: number, year: number, value: number}[])\n {\n dispatch(actions.showSynthesis())\n counterApi.saveMany(salary.id, counters)\n .then(resp => fetchCounters());\n }\n\n function clearCounters(counters: {wn: number, year: number}[])\n {\n dispatch(actions.showSynthesis())\n counterApi.clearMany(salary.id, counters)\n .then(resp => fetchCounters());\n }\n\n const [initialValues, setInitialValues] = useState({\n year: null,\n weekNumber: null,\n signe: null,\n hours: null,\n minutes: null\n })\n\n const [initialWithdrawnValues, setInitialWithdrawnValues] = useState({\n year: null,\n weekNumber: null,\n description: null,\n hours: null,\n minutes: null\n })\n\n const [paidInitialValues, setPaidInitialValues] = useState<{\n year: number,\n month: number,\n week: number|null,\n hours: number,\n minutes: number,\n maj: \"none\"|\"low\"|\"high\"\n }>({\n year: year,\n month: month,\n week: null,\n hours: 0,\n minutes: 0,\n maj: \"none\"\n })\n\n const [downloadInitialValues, setDownloadInitialValues] = useState({\n start: firstDay,\n end: lastDay\n })\n\n const [updateForm, setUpdateForm] = useState(0)\n\n useEffect(() => {\n if (currentWeek){\n let absValue = Math.abs(currentWeek.counterSaved)\n let hours = Math.floor(absValue / 3600)\n let minutes = Math.floor((absValue - (hours * 3600)) / 60)\n\n setInitialValues({\n year: currentWeek.year,\n weekNumber: currentWeek.weekNumber,\n signe: currentWeek.counterSaved >= 0 ? '+' : '-',\n hours: hours,\n minutes: minutes\n })\n\n let withdrawnAbsValue = Math.abs(currentWeek.counterWithdrawn);\n let withdrawnHours = Math.floor(withdrawnAbsValue / 3600)\n let withdrawnMinutes = Math.floor((withdrawnAbsValue - (withdrawnHours * 3600)) / 60)\n\n setInitialWithdrawnValues({\n year: currentWeek.year,\n weekNumber: currentWeek.weekNumber,\n description: currentWeek.counterWithdrawnDescription,\n hours: withdrawnHours,\n minutes: withdrawnMinutes\n })\n\n setUpdateForm(prev => prev + 1)\n }else{\n setInitialValues({\n year: null,\n weekNumber: null,\n signe: null,\n hours: null,\n minutes: null\n })\n }\n }, [currentWeek])\n\n useEffect(() => {\n if (synthesis) {\n let paid = synthesis.paid;\n\n switch (paidInitialValues.maj){\n case \"none\":\n paid = synthesis.paid;\n break;\n case \"low\":\n paid = synthesis.paidLowMajoration;\n break;\n case \"high\":\n paid = synthesis.paidHighMajoration;\n break;\n }\n\n let absValue = Math.abs(paid)\n let hours = Math.floor(absValue / 3600)\n let minutes = Math.floor((absValue - (hours * 3600)) / 60)\n\n setPaidInitialValues(p => ({\n ...p,\n year: year,\n month: month,\n hours: hours,\n minutes: minutes,\n }))\n\n setUpdateForm(prev => prev + 1)\n }\n }, [salary, paidInitialValues.maj, year, month])\n\n useEffect(() => {\n let firstDay = new Date(year, month - 1, 1);\n let lastDay = new Date(year, month, 1);\n\n setDownloadInitialValues({\n salary: salary.id,\n start: firstDay,\n end: lastDay\n })\n\n setUpdateForm(prev => prev + 1)\n }, [salary, year, month])\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: Yup.object().shape({\n year: Yup.number().required(),\n weekNumber: Yup.number().required(),\n signe: Yup.string().required(),\n hours: Yup.number().nullable(),\n minutes: Yup.number().nullable()\n }),\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n let _value = ((values.hours || 0) * 3600) + ((values.minutes || 0) * 60);\n _value = values.signe === \"+\" ? _value : 0 - _value;\n editWeek({year: values.year, wn: values.weekNumber, value: _value})\n }\n })\n\n const formikPaid = useFormik({\n initialValues: paidInitialValues,\n validationSchema: Yup.object().shape({\n year: Yup.number().required(),\n month: Yup.number().required(),\n week: Yup.number().required(),\n hours: Yup.number().nullable(),\n minutes: Yup.number().nullable(),\n maj: Yup.string().required()\n }),\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => { \n if (values.week) {\n let _value = ((values.hours || 0) * 3600) + ((values.minutes || 0) * 60);\n addPaid({ year: values.year, month: values.month, week: values.week, value: _value, maj: values.maj }) \n }\n }\n })\n\n const formikDownload = useFormik({\n initialValues: downloadInitialValues,\n validationSchema: Yup.object().shape({\n start: Yup.date().required(),\n end: Yup.date().required(),\n }),\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n reporting.exportSignature({salary: salary.id, start: format(values.start, 'uuuu-MM-dd'), end: format(values.end, 'uuuu-MM-dd')}, {headers: [APPLICATION_PDF], responseType: 'arraybuffer'})\n .then(resp => {\n let newBlob = new Blob([resp.data], { type: 'application/pdf;charset=utf-8' })\n FileSaver.saveAs(newBlob, `emargements-${salary.title}.pdf`)\n })\n .then(() => formikHelpers.setSubmitting(false))\n .then(() => downloadModal?.hide())\n .catch((error) => {\n dispatch(showAlertDanger('Une erreur est survenue pendant l’export du fichier'))\n })\n }\n })\n\n const formikWithdrawn = useFormik({\n initialValues: initialWithdrawnValues,\n validationSchema: Yup.object().shape({\n year: Yup.number().required(),\n weekNumber: Yup.number().required(),\n description: Yup.string().nullable(),\n hours: Yup.number().nullable(),\n minutes: Yup.number().nullable()\n }),\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n let _value = ((values.hours || 0) * 3600) + ((values.minutes || 0) * 60);\n addWithdrawn({year: values.year, weekNumber: values.weekNumber, value: _value, description: values.description})\n }\n })\n\n function addWithdrawn(withdrawn: {weekNumber: number, year: number, value: number, description: string})\n {\n dispatch(actions.showSynthesis())\n withdrawnApi.add(salary.id, withdrawn)\n .then(() => fetchCounters())\n .then(() => formikWithdrawn.setSubmitting(false))\n .then(() => withdrawnModal?.hide())\n ;\n }\n\n function addPaid(paid: { month: number, year: number, week: number, value: number, maj: \"none\"|\"low\"|\"high\" })\n {\n dispatch(actions.showSynthesis())\n paidApi.add(salary.id, paid)\n .then(() => fetchCounters())\n .then(() => formikPaid.setSubmitting(false))\n .then(() => paidModal?.hide())\n ;\n }\n\n function editWeek(week: {wn: number, year: number, value: number})\n {\n dispatch(actions.showSynthesis())\n counterApi.editWeek(salary.id, week)\n .then(() => fetchCounters())\n .then(() => formik.setSubmitting(false))\n .then(() => modal?.hide())\n .then(() => setCurrentWeek(undefined))\n ;\n }\n\n function fetchCounters(){\n dispatch(actions.showSynthesis())\n\n let firstDay = new Date(year, month - 1, 1);\n let lastDay = new Date(year, month, 1);\n \n api.test({\n start: format(firstDay, 'uuuu-MM-dd'),\n end: format(lastDay, 'uuuu-MM-dd'),\n calendar: calendarTypes.CALENDAR_TIME_SHEET,\n options: {\n salaries: [salary.id],\n year: year,\n month: month,\n }\n })\n .then(resp => dispatch(actions.showSynthesisSuccess(resp.data.timeSheet[0])))\n }\n\n function prevMonth()\n {\n if (month === 1){\n setYear(prev => prev - 1)\n setMonth(12)\n }else{\n setMonth(prev => prev - 1)\n }\n }\n\n function nextMonth()\n {\n if (month === 12){\n setYear(prev => prev + 1)\n setMonth(1)\n }else{\n setMonth(prev => prev + 1)\n }\n }\n\n function prevYear()\n {\n setYear(prev => prev - 1)\n }\n\n function nextYear()\n {\n setYear(prev => prev + 1)\n }\n\n return <>\n
    \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n
    \n\n
    \n
    \n {Granted(accessRights.EDIT_COUNTER) && }\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    \n Compteur\n

    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n handleOvertimeMarkUpChange(e.currentTarget.checked)} defaultChecked={isOvertimeMarkUp} type=\"checkbox\" role=\"switch\" id=\"isOvertimeMarkUp\" />\n \n
    \n
    \n
    \n \n \n \n \n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => \n )\n : Object.values(synthesis.weeks).map(w => \n \n )}\n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => \n )\n : Object.values(synthesis.weeks).map(w => \n \n )}\n \n {isOvertimeMarkUp && <>\n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n }\n\n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n \n {(loading || !synthesis?.weeks) ? Array.from(Array(4).keys()).map(() => ) : Object.values(synthesis.weeks).map(w => )}\n \n \n
    \n Compteur par semaine\n
    \n {loading && <> Chargement...}\n
    \n S.{w.weekNumber}\n \n \n {format(new Date(w.start), 'dd/MM')} {format(new Date(w.end), 'dd/MM')}\n \n
    \n Compteur à date\n \n \n Calculé depuis l'état actuel du planning\n \n \n
    \n
    \n {timeFormat(w.counter)} {!!w.counter && (w.counter !== w.counterSaved &&\n <>\n saveCounters([{year: w.year, value: w.counter, wn: w.weekNumber}])}\n onMouseEnter={e => onMouseEnterTooltip(e.currentTarget)}\n title={'Ajouter au compteur'}\n className={'btn btn-sm btn-light text-primary'}\n >\n \n \n \n )}\n
    \n Compteur validé\n \n \n Valeurs enregistrées dans le compteur personnel\n \n \n
    \n
    \n {!(loading || !synthesis?.weeks) ?\n <>\n {timeFormat(w.counterSaved)}\n {!!w.counterSaved && (w.counterSaved === w.counter ?\n \n : \n )}\n {!!w.counterSaved && (\n <>\n clearCounters([{year: w.year, wn: w.weekNumber}])}\n onMouseEnter={e => onMouseEnterTooltip(e.currentTarget)}\n title={'Retirer du compteur'}\n className={'btn btn-sm btn-light text-primary'}\n >\n \n \n \n )}\n {!!w.counterSaved && (\n <>\n setCurrentWeek(w)}\n onMouseEnter={e => onMouseEnterTooltip(e.currentTarget)}\n title={'Modifier'}\n className={'btn btn-sm btn-light text-primary'}\n >\n \n \n \n )}\n \n :
    \n }\n
    \n H. majorée à 25%\n
    {!(loading || !synthesis?.weeks) ? <>{timeFormat(w.overtime25)} :
    }
    \n H. majorée à 50%\n
    {!(loading || !synthesis?.weeks) ? <>{timeFormat(w.overtime50)} :
    }
    \n Retrait personnalisé\n
    {!(loading || !synthesis?.weeks) ? \n \n {timeFormat(w.counterWithdrawn)}\n {!!w.counterWithdrawnDescription && <>\n
    \n \n {w.counterWithdrawnDescription}\n \n }\n
    \n \n \n \n
    :
    }
    \n H. payées taux normal\n
    {!(loading || !synthesis?.weeks) ? \n \n {timeFormat(w.paid)}\n \n {!w.overlapEnd &&\n \n setPaidInitialValues(p => ({...p, week: Number(w.weekNumber), maj: \"none\"}))}\n data-bs-target=\"#paidModal\"\n className={'btn btn-light text-primary btn-sm'}\n >\n \n \n \n }\n :
    }
    \n H. payées taux 25%\n
    {!(loading || !synthesis?.weeks) ? \n \n {timeFormat(w.paidLowMajoration)}\n \n {!w.overlapEnd &&\n \n setPaidInitialValues(p => ({...p, week: Number(w.weekNumber), maj: \"low\"}))}\n data-bs-target=\"#paidModal\"\n className={'btn btn-light text-primary btn-sm'}\n >\n \n \n \n }\n :
    }
    \n H. payées taux 50%\n
    {!(loading || !synthesis?.weeks) ? \n \n {timeFormat(w.paidHighMajoration)}\n \n {!w.overlapEnd &&\n \n setPaidInitialValues(p => ({...p, week: Number(w.weekNumber), maj: \"high\"}))}\n data-bs-target=\"#paidModal\"\n className={'btn btn-light text-primary btn-sm'}\n >\n \n \n \n }\n :
    }
    \n \n \n \n \n \n \n \n \n {isOvertimeMarkUp && <>\n \n \n }\n \n \n \n \n \n \n \n \n \n \n \n {isOvertimeMarkUp && <>\n \n \n }\n \n \n \n \n \n \n \n
    Total
    \n Initial\n \n Validé\n \n HS 25%\n \n HS 50%\n \n Retrait personnalisé\n \n H. payées taux normal\n \n H. payées taux 25%\n \n H. payées taux 50%\n \n Final\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.initialCounter)}}\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.counterSaved)}}\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.overtime25)}}\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.overtime50)}}\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.counterWithdrawn)}}\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.paid)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.paidLowMajoration)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.paidHighMajoration)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>{timeFormat(synthesis.finalCounter)}}\n
    \n
    \n
    \n
    \n
    \n

    \n Temps de travail\n

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Contrat (théorique)\n \n Travaillé\n \n Absences ajoutées au volume d'heure\n \n HS. 25%\n \n HS. 50%\n \n H. de nuit 20%\n \n H. de nuit 40%\n \n H. jour férié travaillé\n \n H. dimanche\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.monthlyContractWorkingTime, 'decimal')}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.workingTime)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.absenceAccountedTime)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.overtime25)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.overtime50)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.nightTime20)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.nightTime40)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.labourDayWorkingTime)}\n }\n
    \n {(loading || !synthesis?.weeks) ?
    : <>\n {timeFormat(synthesis.sundayWorkingTime)}\n }\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n

    Modifier le compteur

    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formik.setFieldValue('hours', c?.value)}\n />\n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formik.setFieldValue('minutes', c?.value)}\n />\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n

    Retrait personnalisé

    \n \n
    \n
    \n
    \n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formikWithdrawn.setFieldValue('hours', c?.value)}\n />\n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formikWithdrawn.setFieldValue('minutes', c?.value)}\n />\n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n

    \n {paidInitialValues.maj === \"none\" && <>Payer des heures au taux normal}\n {paidInitialValues.maj === \"low\" && <>Payer des heures majorées à 25%}\n {paidInitialValues.maj === \"high\" && <>Payer des heures majorées à 50%}\n

    \n \n
    \n
    \n
    \n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formikPaid.setFieldValue('hours', c?.value)}\n />\n
    \n
    \n ({label: String(n), value: n}))}\n onChange={(c) => formikPaid.setFieldValue('minutes', c?.value)}\n />\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n

    Télécharger

    \n \n
    \n
    \n
    \n
    \n
    \n
    \n }\n selected={formikDownload.values.start}\n onChange={(date: Date) => {\n formikDownload.setFieldValue(`start`, date)\n formikDownload.setFieldTouched('start', true)\n }}\n key={updateForm}\n selectsStart\n startDate={formikDownload.values.start}\n maxDate={formikDownload.values.end}\n dateFormat={\"E dd MMM uuuu\"}\n />\n
    \n
    \n \n
    \n
    \n }\n selected={formikDownload.values.end}\n onChange={(date: Date) => {\n formikDownload.setFieldValue(`end`, date)\n formikDownload.setFieldTouched('end', true)\n }}\n key={updateForm}\n selectsEnd\n dateFormat={\"E dd MMM uuuu\"}\n />\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n}\n\nexport default SalaryCounterV2;","import {get, post} from \"../../xhr\";\n\nexport function edit(requestData: {value: number, weekNumber: number, year: number, salary: number, description: string}, id: number){\n return post(`counter_withdrawn/edit/${id}`, requestData)\n}\n\nexport function create(requestData: {value: number, weekNumber: number, year: number, salary: number, description: string}){\n return post(`counter_withdrawn/create`, requestData)\n}\n\nexport function add(salaryId: number, requestData: {value: number, weekNumber: number, year: number, description: string}){\n return post(`counter_withdrawn/add/${salaryId}`, requestData)\n}","import {MULTIPART_FORM_DATA, post, get} from \"../../xhr\";\n\nexport function list(salaryId: number){\n return get(`salary/${salaryId}/file/list`)\n}\n\nexport function add(requestData: FormData, salaryId: number){\n return post(`salary/${salaryId}/file/add`, requestData, {headers: [MULTIPART_FORM_DATA], responseType: \"json\"})\n}\n\nexport function remove(salaryId: number, fileId: number){\n return get(`salary/${salaryId}/file/${fileId}/remove`)\n}\n\nexport function download(salaryId: number, fileId: number){\n return get(`salary/${salaryId}/file/${fileId}/download`, {responseType: \"arraybuffer\"})\n}","import React from 'react';\n\nimport { SalaryFile } from \"../../../models/salary\";\n\ninterface IProps {\n data: SalaryFile;\n onDisplay?: () => void;\n onDownload?: () => void;\n downloading?: boolean;\n onDelete?: () => void;\n deleting?: boolean;\n}\n\nconst SalaryFileListItem: React.FC = ({ data, onDisplay, onDownload, downloading, onDelete, deleting }) => {\n return (\n
    \n
    \n
    \n {data?.title}\n
    \n\n
    \n {onDisplay !== undefined &&\n \n \n \n }\n\n {onDownload !== undefined &&\n \n }\n\n {onDelete !== undefined &&\n \n }\n
    \n
    \n
    \n )\n}\n\nexport default SalaryFileListItem","import React, { useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport FileSaver from \"file-saver\";\nimport EmptyList from \"../../../../common/EmptyList\";\nimport SalaryFileListItem from \"../../../common/SalaryFileListItem\";\n\nimport { Salary, SalaryFiles } from \"../../../../../models/salary\";\n\nimport { Granted } from \"../../../../../security/granted\";\nimport * as accessRights from \"../../../../../constants/accessRight\";\n\nimport * as fileApi from \"../../../../../adapters/salary/file\";\nimport { axiosError } from \"../../../../../actions/axios\";\n\nimport Loader from \"../../../../../utils/loader\";\nimport { showAlertDanger, showAlertSuccess } from \"../../../../../actions/alert\";\n\ninterface IProps {\n files: SalaryFiles;\n fetchSalaryFilesList: () => void;\n}\n\nconst SalaryDocumentStocked: React.FC = ({ files, fetchSalaryFilesList }) => {\n const dispatch = useDispatch();\n\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.single);\n\n const [downloading, setDownloading] = useState();\n const [deleting, setDeleting] = useState();\n const [fileUrl, setJustificatifUrl] = useState()\n const [loadingFile, setLoadingFile] = useState(false)\n\n const displayFile = (id: number) => {\n if (!salary) return false;\n\n let file = files.find((file => file.id === id))\n if (file) {\n setLoadingFile(true)\n fileApi.download(salary.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n let url = URL.createObjectURL(newBlob);\n setJustificatifUrl(url)\n setLoadingFile(false)\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const downloadFile = (id: number) => {\n if (!salary) return false;\n\n let file = salary.files?.find((file => file.id === id))\n if (file) {\n setDownloading(id);\n fileApi.download(salary.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n FileSaver.saveAs(newBlob, file!.title)\n setDownloading(undefined)\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const deleteFile = (id: number) => {\n if (!salary) return false;\n\n let file = salary.files?.find((file => file.id === id))\n if (file) {\n setDeleting(id);\n fileApi.remove(salary.id!, id).then(data => {\n let files = [...salary.files!]\n files.splice(files.findIndex(file => file.id === id), 1);\n salary.files = [...files];\n setDeleting(undefined)\n dispatch(showAlertSuccess('Fichier supprimé'))\n fetchSalaryFilesList()\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors de la supression ! Fichier introuvable.'))\n }\n }\n\n return (\n <>\n
    \n {files.length === 0 && }\n {files.map((file, index) => (\n displayFile(file.id)}\n onDownload={() => downloadFile(file.id)}\n downloading={downloading === file.id}\n onDelete={Granted(accessRights.EDIT_SALARY, salary.id) ? () => deleteFile(file.id) : undefined}\n deleting={deleting === file.id}\n />\n ))}\n
    \n\n
    \n
    \n
    \n
    \n {loadingFile && }\n {!loadingFile && fileUrl && }\n
    \n
    \n
    \n
    \n \n )\n}\n\nexport default SalaryDocumentStocked;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport { Granted } from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\n\nimport { Salary, SalaryFiles } from \"../../../../models/salary\";\n\nimport { FORM_NEW_SALARY_STOCKED_DOCUMENT } from \"../../../../constants/rightSidebar\";\n\nimport * as api from \"../../../../adapters/salary/file\";\nimport { openSidebar } from \"../../../../actions/rightSidebar\";\n\nimport SalaryDocumentStocked from \"./bucket\";\nimport Loader from \"../../../../utils/loader\";\n\nconst SalaryStorage: React.FC = () => {\n const dispatch = useDispatch();\n\n const salary: Salary = useSelector((state:RootStateOrAny) => state.salary.single);\n\n const [files, setFiles] = useState([])\n const [loading, setLoading] = useState(true)\n\n const fetchSalaryFilesList = () => {\n setLoading(true);\n api.list(salary.id).then(resp => setFiles(resp.data))\n .then(() => setLoading(false))\n }\n\n useEffect(() => { \n fetchSalaryFilesList()\n }, [salary])\n\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n Stocker\n

    \n
    \n
    \n {(Granted(accessRights.EDIT_SALARY, salary.id)) && }\n
    \n
    \n

    \n Stocker vos documents utiles (cv, diplôme, carte vitale...)\n

    \n {loading ? <> Chargement des fichiers... : }\n
    \n
    \n
    \n )\n}\n\nexport default SalaryStorage;","import * as xhr from \"../xhr\";\n\nexport function list(requestData: any, signal: AbortSignal){\n return xhr.post('document/list', requestData, {signal: signal});\n}\n\nexport function show(id: number, signal: AbortSignal){\n return xhr.get(`document/show/${id}`, {signal: signal});\n}\n\nexport function edit(requestData: any, id: number){\n return xhr.post('document/edit/' + id.toString(), requestData);\n}\n\nexport function create(requestData: any, options?:xhr.Options){\n return xhr.post('document/create', requestData, options);\n}\n\nexport function download(salary: number, document: number){\n return xhr.get(`document/download/${document}/${salary}`, {responseType: \"arraybuffer\"});\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport FileSaver from \"file-saver\";\nimport EmptyList from \"../../../../common/EmptyList\";\n\nimport { Documents } from \"../../../../../models/document\";\n\nimport * as api from \"../../../../../adapters/document\";\nimport { showAlertDanger } from \"../../../../../actions/alert\";\n\nconst SalaryDocumentGenerated:React.FC = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state:RootStateOrAny) => state.salary);\n\n const [documents, setDocuments] = useState([]);\n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n let controller = new AbortController();\n setIsLoading(true)\n api.list({}, controller.signal)\n .then(data => {\n setDocuments(data.data)\n setIsLoading(false)\n })\n return () => controller.abort();\n }, [state.single.id])\n\n const download = (id: number) => {\n let doc = documents.find((file => file.id === id))\n if (doc) {\n api.download(state.single.id, doc.id).then(data => {\n let newBlob = new Blob([data.data], { type: 'application/pdf;charset=utf-8' })\n FileSaver.saveAs(newBlob, doc!.title)\n })\n .catch(error => {\n console.log(error)\n })\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n return (\n <>\n {isLoading &&\n
    \n
    \n Loading...\n
    \n
    \n Chargement en cours...\n
    \n
    \n }\n\n {!isLoading &&\n
      \n {documents.length === 0 && }\n {documents.map(d =>
    • \n
      \n

      \n {d.title}\n

      \n
      \n
      \n \n
      \n
    • )}\n
    \n }\n \n )\n}\n\nexport default SalaryDocumentGenerated;","import React from \"react\";\nimport SalaryDocumentGenerated from \"./generated\";\nimport {useDispatch} from \"react-redux\";\n\nconst SalaryDocument: React.FC = () => {\n\n return
    \n
    \n
    \n
    \n
    \n

    \n Générer un document\n

    \n
    \n
    \n

    \n Générer un des documents suivant avec les informations du collaborateur\n

    \n \n
    \n
    \n
    \n}\n\nexport default SalaryDocument;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useParams, Link } from \"react-router-dom\";\n\nimport CalendarSingle from \"../../calendar/single\";\nimport Timetable from \"../../timetable\";\nimport SalaryInformation from \"./information\";\nimport SalaryAbsence from \"./absence\";\nimport SalaryCounter from \"./counter/index\";\nimport SalaryCounterV2 from \"./counter/test\";\nimport SalaryStorage from \"./storage\";\nimport SalaryDocument from \"./document\";\n\nimport * as accessRights from \"../../../constants/accessRight\";\n\nimport * as api from \"../../../adapters/salary\";\nimport * as billingApi from \"../../../adapters/billing\";\nimport * as actions from \"../../../actions/salary\";\nimport * as action from \"../../../actions/salary\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport { Granted } from \"../../../security/granted\";\nimport getVersion from \"../../../security/getVersion\";\nimport hasModule from \"../../../security/hasModule\";\nimport HasModule from \"../../../security/hasModule\";\nimport BgSingle from \"../../../utils/background/single\";\n\nconst SalaryShow: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.salary)\n\n const [currentTab, setCurrentTab] = useState('calendar')\n const [currentDate, setCurrentDate] = useState(new Date());\n const [billingOptions, setBillingOptions] = useState<{label: string, id: number, shouldUpgrade: boolean}[]>([])\n\n function handleBillingChange(cid: number)\n {\n billingApi.salary(cid, state.single.id)\n .then(r => dispatch(action.editSalarySuccess(r.data)))\n }\n\n useEffect(() => {\n if (params.id){\n dispatch(actions.showSalary());\n api.show(Number(params.id)).then(data => { \n dispatch(actions.showSalarySuccess(data.data))\n dispatch(setPageTitle('Collaborateurs', data.data.firstname + ' ' + data.data.lastname))\n dispatch(setHelpProductSheetIds([3, 8, 14]))\n }).catch(error => dispatch(axiosError(error)))\n }\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [params.id])\n\n useEffect(() => {\n if (state.single?.locked){\n billingApi.companies().then(r => setBillingOptions(r.data))\n }\n }, [state.single?.id])\n\n if (!state.single){\n return \n }\n\n const NavMenu = () => {\n return (\n
    \n
      \n {Granted(accessRights.LIST_BOOKING, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([3, 8, 14]))\n setCurrentTab('calendar')\n }}\n >\n \n

      Planning

      \n \n
    • }\n {getVersion() === 1 && Granted(accessRights.EDIT_BOOKING, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([2, 6]))\n setCurrentTab('timetable')\n }}\n >\n \n

      Emploi du temps

      \n \n
    • }\n {Granted(accessRights.LIST_SALARY, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([]))\n setCurrentTab('information')\n }}\n >\n \n

      Informations

      \n \n
    • }\n {Granted(accessRights.LIST_ABSENCE, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([5]))\n setCurrentTab('absence')\n }}\n >\n \n

      Absences

      \n \n
    • }\n {Granted(accessRights.LIST_REPORTING, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([15]))\n setCurrentTab('counter')\n }}\n >\n \n

      Rapport

      \n \n
    • }\n {Granted(accessRights.LIST_SALARY_FILE, state.single.id) &&
    • \n {\n dispatch(setHelpProductSheetIds([16]))\n setCurrentTab('storage')\n }}\n >\n \n

      Stockage

      \n \n
    • }\n {Granted(accessRights.LIST_DOCUMENT, state.single.id) && HasModule('document') &&
    • \n {\n dispatch(setHelpProductSheetIds([18]))\n setCurrentTab('document')\n }}\n >\n \n

      Documents

      \n \n
    • }\n
    \n\n \n Retour\n \n
    \n )\n }\n\n return (\n
    \n \n\n
    \n {Granted(accessRights.LIST_BOOKING, state.single.id) && currentTab === 'calendar' && }\n {Granted(accessRights.EDIT_BOOKING, state.single.id) && getVersion() === 1 && currentTab === 'timetable' && }\n {Granted(accessRights.LIST_SALARY, state.single.id) && currentTab === 'information' && }\n {Granted(accessRights.LIST_ABSENCE, state.single.id) && currentTab === 'absence' && }\n {Granted(accessRights.LIST_COUNTER, state.single.id) && currentTab === 'counter' && (getVersion() === 1 ? : )}\n {Granted(accessRights.LIST_SALARY_FILE, state.single.id) && currentTab === 'storage' && }\n {hasModule('document') && Granted(accessRights.LIST_DOCUMENT, state.single.id) && currentTab === 'document' && }\n
    \n
    \n )\n}\n\nexport default SalaryShow;","import * as React from \"react\";\n\nimport SalaryList from \"../../components/salary/list\";\nimport SalaryShow from \"../../components/salary/show\";\n\nconst SalaryPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default SalaryPage;","export const OPEN_MODAL = 'OPEN_MODAL';\nexport const SUBMIT_MODAL = 'SUBMIT_MODAL';\nexport const CLOSE_MODAL = 'CLOSE_MODAL';\n\nexport const FORM_FILTER_ABSENCE = \"FORM_FILTER_ABSENCE\"","import React from \"react\";\nimport * as types from \"../../constants/staticBackdropModal\";\n\nexport const openModal = (item: string, data?: any, props?: any) => {\n return {\n type: types.OPEN_MODAL,\n item: item,\n data: data,\n props: props\n }\n};\n\nexport const closeModal = () => {\n return {\n type: types.CLOSE_MODAL\n }\n};","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport * as models from \"../../../models/absence\";\n\nimport { FORM_NEW_ABSENCE } from \"../../../constants/rightSidebar\";\nimport { FORM_FILTER_ABSENCE } from \"../../../constants/staticBackdropModal\";\nimport { PAGINATION } from \"../../../constants/global\";\nimport { CALENDAR_ABSENCE } from \"../../../constants/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\n\nimport { list } from \"../../../adapters/absence\";\nimport * as actions from \"../../../actions/absence\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { openModal } from \"../../../actions/staticBackdropModal\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport { Granted } from \"../../../security/granted\";\nimport getUser from \"../../../security/getUser\";\nimport format from \"../../../utils/locale/index\";\nimport LoaderList from \"../../../utils/loaderList\";\n\nconst AbsenceList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.absence);\n const auth = useSelector((state: RootStateOrAny) => state.auth);\n\n const [isLoading, setIsLoading] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [offset, setOffset] = useState(0);\n const [query, setQuery] = useState();\n const [types, setTypes] = useState();\n const [isFiltering, setFiltering] = useState(false)\n const [scrollBottom, setScrollBottom] = useState(false);\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n const validateFilter = (values: {status: string[], types: string[]}) => {\n setFiltering(true);\n setTypes([...values.types]);\n setQuery([...values.status]);\n }\n\n useEffect(() => {\n let controller = new AbortController();\n\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n dispatch(actions.fetchAbsences())\n setIsLoading(true);\n setOffset(0)\n list({status: query, types: types, offset: 0}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchAbsencesSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n setFiltering(false)\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }\n }, 1000);\n\n return () => {\n controller.abort();\n clearTimeout(timer)\n }\n }, [query])\n\n useEffect(() => {\n let controller = new AbortController();\n if(scrollBottom){\n if (offset && !isLast){\n setIsLoading(true)\n list({status: query, offset: offset}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchAbsencesSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }else{\n setScrollBottom(false);\n }\n }\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => {\n controller.abort()\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }, [scrollBottom])\n\n useEffect(() => {\n dispatch(setPageTitle('Absence'))\n dispatch(setHelpProductSheetIds([5]))\n\n setIsLoading(true);\n\n let controller = new AbortController();\n dispatch(actions.fetchAbsences())\n list({status: ['1','2','3'], offset: 0}, controller.signal).then(data => {\n dispatch(actions.fetchAbsencesSuccess(data.data))\n setIsLast(data.data.length < PAGINATION);\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => {\n dispatch(axiosError(error))\n })\n\n return () => {\n dispatch(setHelpProductSheetIds([]))\n controller.abort();\n }\n }, [])\n\n return (\n
    \n
    \n dispatch(openModal(FORM_FILTER_ABSENCE, { status: query, types: types }, { validateModal: validateFilter }))}\n >\n {isFiltering ?
    \n Loading...\n
    : <> Filtrer }\n \n\n {(Granted(accessRights.EDIT_ABSENCE) || Granted(accessRights.REQUEST_ABSENCE)) &&\n dispatch(openSidebar(FORM_NEW_ABSENCE, {salary: getUser().currentSalary}))}\n >\n \n {Granted(accessRights.EDIT_ABSENCE) ? \"Ajouter\" : \"Demander\"}\n \n \n }\n\n {Granted(accessRights.LIST_ABSENCE) &&\n \n Planning\n \n }\n
    \n\n
      \n {!!state.payload.length && state.payload.map((absence: models.Absence, index: number) => ([\n \n \n {absence.salary?.firstname} {absence.salary?.lastname} - {absence.typeName}\n
      \n \n {format(new Date(absence.start))} - {format(new Date(absence.end))}\n \n \n ]))}\n\n {isLoading ?\n :\n (!state.payload.length ?
    • \n Aucune abences\n
    • : '')\n }\n\n {!isLoading && !isLast && state.payload.length &&\n setScrollBottom(true)}\n >\n Charger plus\n \n }\n
    \n
    \n )\n}\n\nexport default AbsenceList;","import React, {useEffect, useState} from \"react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../../adapters/calendar\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport format from \"../../../../utils/locale\";\nimport {renderEvent} from \"../../../../utils/calendar\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {setHours, setMinutes} from \"date-fns\";\n\nconst AbsenceCalendarShow: React.FC = () => {\n\n const [events, setEvents] = useState([]);\n const [viewTitle, setViewTitle] = useState('');\n const state = useSelector((state: RootStateOrAny) => state.absence)\n const calendarRef = React.createRef();\n const [timeRange, setTimeRange] = useState({\n minTime: format(setMinutes(setHours(new Date(), 0), 0), 'HH:mm:ss'),\n maxTime: \"1.\" + format(setMinutes(setHours(new Date(), 0), 0), 'HH:mm:ss'),\n });\n\n useEffect(() => {\n const API = calendarRef.current?.getApi();\n\n let start = new Date(state.single.start);\n let end = new Date(state.single.end);\n end.setDate(end.getDate() + 1)\n\n if (API){\n API.gotoDate(start)\n setViewTitle(API.view.title)\n api.test({\n start: format(start, 'uuuu-MM-dd'),\n end: format(end, 'uuuu-MM-dd'),\n calendar: calendarTypes.CALENDAR_EVENTS_SINGLE,\n options: {\n salary: state.single.salary.id\n }\n }).then((data) => {\n setEvents([...data.data.events || []])\n setTimeRange({\n minTime: format(new Date(data.data.timeRange.minTime), \"HH:mm:ss\"),\n maxTime: (new Date(data.data.timeRange.maxTime).getDate() - new Date(data.data.timeRange.minTime).getDate()) + '.' + format(new Date(data.data.timeRange.maxTime), \"HH:mm:ss\"),\n })\n }).then(() => true)\n }\n\n\n }, [state.single])\n\n const next = () => {\n const API = calendarRef.current?.getApi();\n\n if (API)\n {\n if (API.view.activeEnd < new Date(state.single.end)){\n API.next();\n setViewTitle(API.view.title);\n }\n }\n }\n\n const prev = () => {\n const API = calendarRef.current?.getApi();\n\n if (API)\n {\n if (API.view.activeStart > new Date(state.single.start)){\n API.prev();\n setViewTitle(API.view.title);\n }\n }\n }\n\n return <>\n
    \n \n \n \n
    \n
    \n \n
    \n \n}\n\nexport default AbsenceCalendarShow;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useParams, Link } from \"react-router-dom\";\n\nimport FileSaver from \"file-saver\";\nimport AbsenceCalendarShow from \"./calendar\";\nimport EmptyList from \"../../common/EmptyList\";\n\nimport * as models from \"../../../models/absence\";\nimport * as types from \"../../../constants/absence\";\nimport { FORM_EDIT_ABSENCE, FORM_NEW_ABSENCE_FILE } from \"../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as calendarTypes from \"../../../constants/calendar\";\n\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport * as actions from \"../../../actions/absence\";\nimport { showAlertDanger, showAlertSuccess } from \"../../../actions/alert\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport * as api from \"../../../adapters/absence\";\nimport * as fileApi from \"../../../adapters/absence/file\";\nimport * as absenceApi from \"../../../adapters/absence\";\n\nimport { Granted } from \"../../../security/granted\";\nimport format from \"../../../utils/locale\";\nimport Loader from \"../../../utils/loader\";\nimport BgSingle from \"../../../utils/background/single\";\nimport SmallLoader from \"../../../utils/loader/small\";\n\nexport const AbsenceShow: React.FC = () => {\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n\n const state = useSelector((state: RootStateOrAny) => state.absence)\n const absence: models.Absence = state.single;\n\n const [downloading, setDownloading] = useState();\n const [deleting, setDeleting] = useState();\n const [justificatifUrl, setJustificatifUrl] = useState()\n const [loadingFile, setLoadingFile] = useState(false)\n const [range, setRange] = useState({start: new Date(), end: new Date()})\n\n useEffect(() => {\n if (params.id){\n let single = state.payload.find((a: models.Absence) => a.id!.toString() === params.id)\n if (single){\n dispatch(actions.showAbsenceSuccess(single))\n setRange({start: new Date(single.start), end: new Date(single.end)})\n }else{\n dispatch(actions.showAbsence());\n api.get(params.id)\n .then(data => {\n dispatch(actions.showAbsenceSuccess(data.data))\n setRange({start: new Date(data.data.start), end: new Date(data.data.end)})\n })\n .catch(error => dispatch(axiosError(error)))\n }\n }\n }, [params.id, state.payload])\n\n const [absenceInfoLoading, setAbsenceInfoLoading] = useState(false);\n const [nbDays, setNbDays] = useState()\n const [nextWorkingDay, setNextWorkingDay] = useState()\n\n useEffect(() => {\n setNbDays(undefined);\n setNextWorkingDay(undefined);\n if (params.id){\n setAbsenceInfoLoading(true)\n absenceApi.days(params.id).then(resp => {\n setNbDays(resp.data.nbDays);\n if (resp.data.nextWorkingDay){\n setNextWorkingDay(resp.data.nextWorkingDay);\n }\n\n setAbsenceInfoLoading(false);\n })\n }\n }, [params.id])\n\n const displayFile = (id: number) => {\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file) {\n setLoadingFile(true)\n fileApi.download(absence.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n let url = URL.createObjectURL(newBlob);\n setJustificatifUrl(url)\n setLoadingFile(false)\n\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const downloadJustification = (id: number) => {\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file) {\n setDownloading(id);\n fileApi.download(absence.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n FileSaver.saveAs(newBlob, file!.title)\n setDownloading(undefined)\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const deleteJustification = (id: number) => {\n if (!absence) return false;\n\n let file = absence.files?.find((file => file.id === id))\n if (file) {\n setDeleting(id);\n fileApi.remove(absence.id!, id).then(data => {\n let files = [...absence.files!]\n files.splice(files.findIndex(file => file.id === id), 1);\n absence.files = [...files];\n setDeleting(undefined)\n dispatch(showAlertSuccess('Fichier supprimé'))\n }).catch(error => dispatch(axiosError(error)))\n } else {\n dispatch(showAlertDanger('Une erreur est survenue lors de la supression ! Fichier introuvable.'))\n }\n }\n\n if (!params.id || !absence) {\n return \n }\n\n return (\n
    \n
    \n
    \n \n Retour\n \n
    \n
    \n
    \n
    \n {absence.status === 1 && }\n {absence.status === 2 && }\n {absence.status === 3 && }\n {Granted(accessRights.EDIT_ABSENCE, undefined, absence) && \n Afficher dans le planning\n }\n
    \n {Granted(accessRights.EDIT_ABSENCE, absence.salary.id) &&
    \n \n
    }\n
    \n
    \n
    \n \n {absence.salary.title}\n \n
    \n \n {types.TYPE_NAMES[absence.type]}\n \n
    \n
    \n { format(new Date(absence.start)) } - { format(new Date(absence.end)) }\n
    \n
    \n Nb de jour(s) : {absenceInfoLoading ? : nbDays}\n
    \n {absence.type === types.TYPE_CP &&
    \n Reprise le : {absenceInfoLoading ? : (nextWorkingDay ? format(new Date(nextWorkingDay)) : )}\n
    }\n
    \n
    \n\n
    \n
    \n
    \n
    \n Fichiers\n
    \n
    \n {Granted(accessRights.EDIT_ABSENCE_FILE, undefined, absence) && }\n
    \n
    \n
    \n\n
    \n {absence.files!.length === 0 && }\n {absence.files!.map((file) => (\n
    \n
    \n
    \n {file.title}\n
    \n\n
    \n displayFile(file.id)}\n >\n \n \n\n \n\n {Granted(accessRights.EDIT_ABSENCE, undefined, absence) &&\n deleteJustification(file.id)}\n >\n {deleting === file.id ?\n
    \n Loading...\n
    :\n \n }\n \n }\n
    \n
    \n
    \n ))}\n
    \n
    \n
    \n\n
    \n \n
    \n\n
    \n
    \n
    \n
    \n {loadingFile && }\n {!loadingFile && justificatifUrl && }\n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default AbsenceShow;","import * as React from \"react\";\n\nimport AbsenceList from \"../../components/absence/list\";\nimport AbsenceShow from \"../../components/absence/show\";\n\nconst AbsencePage : React.FC = () => {\n return (\n
    \n \n \n
    \n )\n}\n\nexport default AbsencePage;","export const ADD_JOB = 'ADD_JOB';\nexport const ADD_JOB_SUCCESS = 'ADD_JOB_SUCCESS';\nexport const ADD_JOB_FAILURE = 'ADD_JOB_FAILURE';\n\nexport const EDIT_JOB = 'EDIT_JOB';\nexport const EDIT_JOB_SUCCESS = 'EDIT_JOB_SUCCESS';\nexport const EDIT_JOB_FAILURE = 'EDIT_JOB_FAILURE';\n\nexport const FETCH_JOBS = 'FETCH_JOBS';\nexport const FETCH_JOBS_SUCCESS = 'FETCH_JOBS_SUCCESS';\nexport const FETCH_JOBS_FAILURE = 'FETCH_JOBS_FAILURE';\n\nexport const SHOW_JOB = 'SHOW_JOB';\nexport const SHOW_JOB_SUCCESS = 'SHOW_JOB_SUCCESS';\nexport const SHOW_JOB_FAILURE = 'SHOW_JOB_FAILURE';\n","import * as types from \"../../constants/job\";\nimport * as models from \"../../models/job\";\n\nexport const addJob = () => {\n return {\n type: types.ADD_JOB,\n }\n}\n\nexport const addJobSuccess = (job: models.Job) => {\n return {\n type: types.ADD_JOB_SUCCESS,\n job,\n }\n}\n\nexport const addJobFailure = (error: string) => {\n return {\n type: types.ADD_JOB_FAILURE,\n job: null,\n jobs: null,\n error: error\n }\n}\n\nexport const editJob = (job: models.Job) => {\n return {\n type: types.EDIT_JOB,\n job\n }\n}\n\n\n\nexport const editJobSuccess = (job: models.Job) => {\n return {\n type: types.EDIT_JOB_SUCCESS,\n job: job,\n }\n}\n\nexport const fetchJobs = () => {\n return {\n type: types.FETCH_JOBS,\n }\n}\n\nexport const fetchJobsFailure = (error: string) => {\n return {\n type: types.FETCH_JOBS_FAILURE,\n job: null,\n Jobs: [],\n error\n }\n}\n\nexport const fetchJobsSuccess = (jobs: models.Jobs) => {\n return {\n type: types.FETCH_JOBS_SUCCESS,\n job: null,\n jobs\n }\n}\n\n\nexport const showJob = () => {\n return {\n type: types.SHOW_JOB,\n }\n}\nexport const showJobSuccess = (job: models.Job) => {\n return {\n type: types.SHOW_JOB_SUCCESS,\n job: job\n }\n}\nexport const showJobFailure = (error: string) => {\n return {\n type: types.SHOW_JOB_FAILURE,\n job: null,\n Jobs: null,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {list} from \"../../../adapters/job\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/job\";\nimport '../../../utils/table/index.scss'\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_JOB} from \"../../../constants/rightSidebar\";\nimport * as models from \"../../../models/job\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {PAGINATION} from \"../../../constants/global\";\nimport {Granted} from \"../../../security/granted\";\n\nconst JobList: React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state.job);\n const [isLoading, setIsLoading] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [offset, setOffset] = useState(0);\n const [query, setQuery] = useState();\n const [type, setType] = useState(0);\n const [status, setStatus] = useState(1);\n const [isFiltering, setFiltering] = useState(false)\n const [scrollBottom, setScrollBottom] = useState(false);\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n\n useEffect(() => {\n\n dispatch(setPageTitle('Métiers'))\n dispatch(actions.fetchJobs())\n\n setIsLoading(true);\n\n list({query: query, type: type, status: status, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchJobsSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n\n }, [])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n setFiltering(true);\n setOffset(0)\n list({query: query, type: type, status: status, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchJobsSuccess(data.data))\n setFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query, type, status])\n\n useEffect(() => {\n if(scrollBottom && offset > 0 && !isLast){\n setIsLoading(true)\n list({query: query, type: type, status: status, offset: offset}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchJobsSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setScrollBottom(false)\n setOffset(prevState => prevState + 1)\n }).catch(error => dispatch(axiosError(error)))\n }\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n return () => container.removeEventListener(\"scroll\", onScrollBottom)\n }, [scrollBottom])\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n return <>
    \n
    \n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
    \n
    \n {Granted(accessRights.EDIT_JOB) &&
    \n
    \n \n \n
    \n
    }\n
    \n {state.payload.length ? state.payload.map((job: models.Job, index: number) => ([\n \n
    \n
    \n
    \n {job.title}\n
    \n
    \n {Number(job.type) === 1 ? \"Front Office\" : \"Back Office\"}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n ]))\n :\n !isLoading ? : ''\n }\n {isLoading && }\n\n
    \n
    \n
    \n
    \n
    \n
    Filtrer
    \n \n
    \n
    \n
    \n

    \n Type de métier\n

    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n

    \n Statut\n

    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n\n function handleTypeChange(e: React.ChangeEvent)\n {\n setType(Number(e.target.value))\n }\n\n function handleStatusChange(e: React.ChangeEvent)\n {\n setStatus(Number(e.target.value))\n }\n}\n\nexport default JobList;","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../../adapters/booking/default\";\nimport * as models from \"../../../../models/booking/default\";\nimport format from \"../../../../utils/locale\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport Loader from \"../../../../utils/loader\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {FORM_EDIT_DEFAULT_BOOKING, FORM_NEW_DEFAULT_BOOKING} from \"../../../../constants/rightSidebar\";\n\nconst BookingDefaultList:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const [bookings, setBookings] = useState([])\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n setBookings([...state.job.single.defaultBookings])\n }, [state.job.single])\n\n return
    \n
    \n
    \n

    \n Créneaux template {state.job.single.title}\n

    \n
    \n Modèle de créneaux réutilisables\n
    \n
    \n
    \n \n
    \n
    \n
    \n {!bookings.length ? <> Aucun créneau type : bookings.map(booking =>
    \n
    \n
    \n
    \n

    \n {booking.title}\n

    \n

    \n {format(new Date(booking.beginAt), 'E HH:mm')} {format(new Date(booking.endAt), 'E HH:mm')}\n

    \n

    \n {booking.recurrence.description}\n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    )}\n
    \n
    \n}\n\nexport default BookingDefaultList;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Link, useParams} from \"react-router-dom\";\nimport * as api from \"../../../adapters/job\"\nimport * as actions from \"../../../actions/job\"\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EDIT_JOB} from \"../../../constants/rightSidebar\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {Job} from \"../../../models/job\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {showJob} from \"../../../actions/job\";\nimport BgSingle from \"../../../utils/background/single\";\nimport BookingDefaultList from \"../../booking/default/list\";\nimport {Granted} from \"../../../security/granted\";\n\nconst JobShow:React.FC = () => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const state = useSelector((state: RootStateOrAny) => state.job);\n const job: Job = useSelector((state: RootStateOrAny) => state.job.payload.find((a: Job) => a.id!.toString() === params.id))\n\n useEffect(() => {\n dispatch(showJob());\n if (job){\n dispatch(setPageTitle('Métiers', job.title))\n dispatch(actions.showJobSuccess(job))\n }else if (params.id){\n api.show(params.id).then(data => {\n dispatch(setPageTitle('Métiers', data.data.title))\n dispatch(actions.showJobSuccess(data.data))\n })\n }\n }, [params.id, job])\n\n if (!state.single || !params.id){\n return \n }\n\n return
    \n
    \n
    \n \n Retour\n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Type\n \n {Number(state.single.type) === 1 ? \"Front Office\" : \"Back Office\"}\n
    \n Couleur\n \n\n
    \n Effectif\n \n\n
    \n
    \n
    \n {Granted(accessRights.EDIT_JOB) &&
    \n \n {state.single.activated ? : }\n
    }\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n\n function deactivate(){\n api.deactivate(state.single.id)\n .then((resp) => dispatch(actions.editJobSuccess(resp.data)))\n }\n\n function activate(){\n api.activate(state.single.id)\n .then((resp) => dispatch(actions.editJobSuccess(resp.data)))\n }\n}\n\nexport default JobShow;","import * as React from \"react\";\n\nimport JobList from \"../../components/job/list\";\nimport JobShow from \"../../components/job/show\";\n\nconst JobPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default JobPage;","import React, {useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as API from \"../../../../adapters/companyGroup\"\nimport {TimeClockSettings} from \"../../../../models/companyGroup\";\nimport {editUserCompanyGroupSuccess} from \"../../../../actions/auth\";\n\n\nconst TimeClockConfig:React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state)\n const settings:TimeClockSettings = state.auth.user.currentSalary.companyGroup.timeClockSettings;\n const [isLoading, setIsLoading] = useState(false);\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n API.timeClockSetting({\n setting: setting,\n value: value\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous ne souhaitez pas comptabiliser les arrivées en avance\n
    \n
    \n
    \n
    \n handleChange('before_schedule', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.beforeSchedule} />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous ne souhaitez pas comptabiliser les sorties en retard\n
    \n
    \n
    \n
    \n handleChange('after_schedule', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.afterSchedule} />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n En dessous du seuil, l'arrivée est arrondie à l'heure planifiée.\n
    \n
      \n
    • \n Ex : Si vous séléctionnez 10 minutes.\n
        \n
      • \n Si la personne devait arriver à 8h00 et qu'elle arrive à 8h09, l'heure borné sera 8h00 (inférieur ou égal à 10 min : Bornage)\n
      • \n
      • \n Si la personne devait arriver à 8h00 et qu'elle arrive à 8h11, l'heure borné sera 8h11 (supérieur à 10 min : Pas de bornage)\n
      • \n
      • \n Si la personne devait partir à 19h00 et qu'elle part à 19h09, l'heure borné sera 19h00 (inférieur ou égal à 10 min : Bornage)\n
      • \n
      • \n Si la personne devait partir à 19h00 et qu'elle part à 19h11, l'heure borné sera 19h11 (supérieur à 10 min : Pas de bornage)\n
      • \n
      \n
    • \n
    \n\n
    \n
    \n
    \n
    \n \n minute(s)\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n En dessous du seuil, l'arrivée est arrondie à l'heure planifiée.\n
    \n
      \n
    • \n Ex : Si vous séléctionnez 10 minutes.\n
        \n
      • \n Si la personne devait arriver à 8h00 et qu'elle arrive à 7h51, l'heure borné sera 8h00 (inférieur ou égal à 10 min : Bornage)\n
      • \n
      • \n Si la personne devait arriver à 8h00 et qu'elle arrive à 7h49, l'heure borné sera 7h49 (supérieur à 10 min : Pas de bornage)\n
      • \n
      • \n Si la personne devait partir à 19h00 et qu'elle part à 18h51, l'heure borné sera 19h00 (inférieur ou égal à 10 min : Bornage)\n
      • \n
      • \n Si la personne devait partir à 19h00 et qu'elle part à 18h49, l'heure borné sera 18h49 (supérieur à 10 min : Pas de bornage)\n
      • \n
      \n
    • \n
    \n\n
    \n
    \n
    \n
    \n \n minute(s)\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez badger les pauses\n
    \n
    \n
    \n
    \n handleChange('pointBreak', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.pointBreak} />\n
    \n
    \n
    \n
    \n {settings.pointBreak && <>\n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez activer les paramétrages ci-dessus aux pauses\n
    \n
    \n
    \n
    \n handleChange('break', e.target.checked)}\n className=\"form-check-input\" type=\"checkbox\"\n defaultChecked={settings.break}\n />\n
    \n
    \n
    \n
    \n {settings.break && <>\n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez que le bornage des pauses se fasse par rapport à la durée et non aux heures exactes.\n
    \n
    \n
    \n
    \n handleChange('floatingBreak', e.target.checked)}\n className=\"form-check-input\" type=\"checkbox\"\n defaultChecked={settings.floatingBreak}\n />\n
    \n
    \n
    \n
    \n }\n }\n
    \n
    \n
    \n
    \n \n
    \n Une mise à jour de l'application badgeuse est necessaire pour utiliser cette fonctionnalité.\n
    \n Pour ce faire, merci de nous contacter par mail à l'adresse contact@sivan-gestion.com\n
    \n
    \n Conformément aux dernières recommandations de la CNIL, lorsque cette option est activée, l'employeur s'oblige à traiter la ou les photos prises.\n
    \n Les photos seront conservées 30 jours puis automatiquement supprimées\n
    \n
    \n
    \n
    \n handleChange('should_take_picture', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.shouldTakePicture} />\n
    \n
    \n
    \n {settings.shouldTakePicture &&
    \n
    \n handleChange('picture_frequency', 1)} className=\"form-check-input\" type=\"radio\" name={\"picture_frequency\"} id=\"picture_frequency_1\" />\n \n
    \n
    \n handleChange('picture_frequency', 2)} name={\"picture_frequency\"} id=\"picture_frequency_2\" />\n \n {settings.pictureFrequency === 2 &&
    \n Cette option de controle n'est pas recommandé par la CNIL. Veuillez utiliser cette option en cas de force majeur seulement dans une durée limite de 3 jours.\n
    }\n
    \n
    }\n
    \n
    \n
    \n
    \n \n}\n\nexport default TimeClockConfig;","import React, {useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as API from \"../../../../adapters/companyGroup\"\nimport {AbsenceSettings} from \"../../../../models/companyGroup\";\nimport {editUserCompanyGroupSuccess} from \"../../../../actions/auth\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\n\nconst AbsenceConfig:React.FC = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state);\n const settings:AbsenceSettings = state.auth.user.currentSalary.companyGroup.absenceSettings;\n \n const [isLoading, setIsLoading] = useState(false);\n const [acquisition, setAcquisition] = useState(settings.acquisition);\n const [accountedTime, setAccountedTime] = useState(settings.accountedTime);\n\n const accountedTypeOptions = [\n {label: 'Heures planifiés', value: 1},\n {label: 'Heures total', value: 2},\n {label: 'Heures par jour', value: 3},\n ];\n\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n API.absenceSetting({\n setting: setting,\n value: value\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n \n
    \n Nombre de congés retenus par semaine (5 jours ouvrés, 6 jours ouvrables)\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('return_day', event.target.checked))} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Prendre les congés payés sur les acquis de l'année en cours (N) ou de l'année passé (N-1)\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Nombre de congés payés aquis par mois travaillés\n
    \n
    \n
    \n
    \n setAcquisition(parseFloat(e.target.value))} disabled={isLoading} defaultValue={settings.acquisition} type=\"number\" className=\"form-control\" />\n Jours\n {settings.acquisition !== acquisition && }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('reset_rtt', event.target.checked))} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n o.value === settings.accountedType) : undefined}\n options={[\n {label: 'Heures planifiées', value: 1},\n {label: 'Heures par jour', value: 3},\n ]}\n required={true}\n onChange={(c) => handleChange('accounted_type', c?.value)}\n />\n
    \n
    \n
    \n
    \n {settings.accountedType !== 1 && <>\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n setAccountedTime(parseFloat(e.target.value))} disabled={isLoading} defaultValue={settings.accountedTime} type=\"number\" className=\"form-control\" />\n heures\n {settings.accountedTime !== accountedTime && }\n
    \n
    \n
    \n
    \n }\n
    \n
    \n \n}\n\nexport default AbsenceConfig;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useLocation } from \"react-router-dom\";\n\nimport TimeClockConfig from \"../timeClock\";\n\nimport { AccountingSettings } from \"../../../../models/companyGroup\";\n\nimport { getAvailableFields } from \"../../../../constants/reporting\";\n\nimport * as API from \"../../../../adapters/companyGroup\";\nimport { editUserCompanyGroupSuccess } from \"../../../../actions/auth\";\n\nimport HasModule from \"../../../../security/hasModule\";\n\nconst AccountingConfig:React.FC = () => {\n const dispatch = useDispatch();\n const { pathname } = useLocation();\n \n const state = useSelector((state:RootStateOrAny) => state)\n const settings: AccountingSettings = state.auth.user.currentSalary.companyGroup.accountingSettings;\n \n const [labourDaysWorked, setLabourDaysWorked] = useState(settings.labourDaysWorked || []);\n const [regionalLabourDays, setRegionalLabourDays] = useState(settings.regionalLabourDays || []);\n const [fields, setFields] = useState(settings.fields || []);\n const [absenceTypes, setAbsenceTypes] = useState(settings.accountedAbsenceType || []);\n const [isLoading, setIsLoading] = useState(false);\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n API.accountingSetting({\n setting: setting,\n value: value\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n function handleLabourDayWorkedChange(labourDay: number, worked: boolean)\n {\n if (worked && !labourDaysWorked.includes(labourDay)){\n setLabourDaysWorked(prev => [...prev, labourDay]);\n }else{\n setLabourDaysWorked(prev => [...prev.filter(l => l != labourDay)]);\n }\n }\n\n function handleRegionalLabourDayChange(labourDay: number, checked: boolean)\n {\n if (checked && !regionalLabourDays.includes(labourDay)){\n setRegionalLabourDays(prev => [...prev, labourDay]);\n }else{\n setRegionalLabourDays(prev => [...prev.filter(l => l != labourDay)]);\n }\n }\n\n useEffect(() => {\n handleChange('labour_days_worked', labourDaysWorked)\n }, [labourDaysWorked])\n\n useEffect(() => {\n handleChange('regional_labour_days', regionalLabourDays)\n }, [regionalLabourDays])\n\n useEffect(() => {\n handleChange('fields', fields)\n }, [fields])\n\n useEffect(() => {\n handleChange('accounted_absence_types', absenceTypes)\n }, [absenceTypes])\n\n const absence_types = [\n {\n camelCase: \"paidVacation\",\n name: \"Congés payés\"\n },\n {\n camelCase: \"rtt\",\n name: \"RTT\"\n },\n {\n camelCase: \"unpaidVacation\",\n name: \"Congés sans solde\"\n },\n {\n camelCase: \"recovery\",\n name: \"Repos\"\n },\n {\n camelCase: \"sickLeave\",\n name: \"Arrêt maladie\"\n },\n {\n camelCase: \"specialEvent\",\n name: \"Évènement exceptionnel\"\n },\n {\n camelCase: \"technicalUnemployment\",\n name: \"Chômage technique\"\n },\n {\n camelCase: \"formation\",\n name: \"Formation\"\n },\n {\n camelCase: \"maternityLeave\",\n name: \"Congé maternité\"\n },\n {\n camelCase: \"paternityLeave\",\n name: \"Congé paternité\"\n },\n {\n camelCase: \"parentalLeave\",\n name: \"Congé parental\"\n },\n {\n camelCase: \"childDisease\",\n name: \"Enfant malade\"\n },\n {\n camelCase: \"workAccident\",\n name: \"Accident de travail\"\n },\n {\n camelCase: \"travelAccident\",\n name: \"Accident de trajet\"\n },\n {\n camelCase: \"protectiveLayoff\",\n name: \"Mise à pied conservatoire\"\n },\n {\n camelCase: \"disciplinaryDismissal\",\n name: \"Mise à pied disciplinaire\"\n },\n {\n camelCase: \"unjustified\",\n name: \"Absence non justifiée\"\n }\n ];\n\n const labour_days = [\n { title: \"Jour de l’an\", id: 1 },\n { title: \"Fête du travail\", id: 2 },\n { title: \"Victoire 1945\", id: 3 },\n { title: \"Fete nationale\", id: 4 },\n { title: \"Assomption\", id: 5 },\n { title: \"Toussaint\", id: 6 },\n { title: \"Armistice 1918\", id: 7 },\n { title: \"Noël\", id: 8 },\n { title: \"Lundi de Pâques\", id: 9 },\n { title: \"Ascension\", id: 10 },\n { title: \"Pentecote\", id: 11 }\n ];\n\n const regional_labour_days = [\n {title: \"Saint Étienne\", id: 12},\n {title: \"Vendredi saint\", id: 13},\n {title: \"Journée commémorative du souvenir de l'esclavage et de son abolition\", id: 14},\n {title: \"Journée commémorative du souvenir de l'esclavage et de son abolition (La Réunion)\", id: 15},\n {title: \"Abolition de l'esclavage et la Guerre de Guadeloupe de 1802\", id: 16},\n {title: \"La Sainte Dévote\", id: 17},\n {title: \"La Fête Dieu\", id: 18},\n {title: \"La Fête du Prince (Fête Nationale Monégasque)\", id: 19}\n ];\n\n return (\n <>\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Séléctionnez les champs que vous souhaitez afficher de manière permanente\n
    \n
    \n
    \n {getAvailableFields().map((item) =>\n <>\n

    \n {item.title}\n

    \n\n
      \n {item.fields.map(field =>\n
    • \n
      \n {\n if (e.target.checked && !fields.includes(e.target.value)) {\n setFields([...fields, e.target.value])\n } else if (!e.target.checked && fields.includes(e.target.value)) {\n setFields(\n [...fields.filter(a => a !== e.target.value)]\n )\n }\n }}\n value={field.camelCase}\n />\n\n \n {field.name}\n \n
      \n
    • \n )}\n
    \n \n )}\n
    \n
    \n
    \n
    \n \n {pathname.includes('/settings') &&\n
    \n
    \n
    \n \n
    \n Séléctionnez les absences que vous souhaitez intégrer aux volume d'heure\n
    \n
    \n
    \n {absence_types.map((item) => {\n return
    \n {\n if (e.target.checked){\n setAbsenceTypes([...absenceTypes, e.target.value])\n }else if (!e.target.checked){\n setAbsenceTypes(\n [...absenceTypes.filter(a => a !== e.target.value)]\n )\n }\n }} value={item.camelCase} className=\"form-check-input\" type=\"checkbox\"\n id={`accounted_absence_types_${item.camelCase}`} />\n \n
    \n })}\n
    \n
    \n\n
    \n\n
    \n
    \n \n
    \n Si l'absence est sur une semaine complète, comptabilisez automatiquement le nombre d'heure contrat.\n
    \n
    \n
    \n
    \n handleChange('absence_disabled_counter', e.target.checked)} defaultChecked={settings.absenceDisabledCounter} disabled={isLoading} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n\n
    \n\n
    \n
    \n \n
    \n Cocher pour majorer à 100% les jours fériés travaillés dans les compteurs\n
    \n
    \n
    \n
    \n handleChange('absence_disabled_counter', e.target.checked)} defaultChecked={settings.absenceDisabledCounter} disabled={isLoading} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n\n
    \n\n
    \n
    \n \n
      \n
    • \n En cas de jour férié normalement travaillé, si un congé est posé, il sera décompté.\n
    • \n
    • \n En cas de jour férié travaillé sur base de volontariat, si un congé est posé, il ne sera pas décompté.\n
    • \n
    \n
    \n
      \n {[...labour_days, ...regional_labour_days.filter(d => regionalLabourDays.includes(d.id))].map(l =>
    • \n
      \n \n
      \n
      \n handleLabourDayWorkedChange(l.id, e.currentTarget.checked)} defaultChecked={labourDaysWorked.includes(l.id)} disabled={isLoading} className=\"form-check-input\" type=\"checkbox\" />\n
      \n
      \n
      \n
    • )}\n
    \n
    \n\n
    \n\n
    \n
    \n \n
      \n
    • \n Veuillez cocher les jours fériés exceptionnel s'appliquant sur votre région\n
    • \n
    \n
    \n
      \n {regional_labour_days.map(l =>
    • \n
      \n \n
      \n
      \n handleRegionalLabourDayChange(l.id, e.currentTarget.checked)} defaultChecked={regionalLabourDays.includes(l.id)} disabled={isLoading} className=\"form-check-input\" type=\"checkbox\" />\n
      \n
      \n
      \n
    • )}\n
    \n
    \n
    \n }\n
    \n
    \n
    \n\n {HasModule('timeClock') &&\n <>\n
    \n

    \n Réglages badgeuse\n

    \n
    \n\n \n \n }\n \n )\n}\n\nexport default AccountingConfig;","const HasRole = (role: \"ROLE_USER\"|\"ROLE_ADMIN\"|\"ROLE_SUPER_ADMIN\") => {\n let user = localStorage.getItem('user')\n\n if (user){\n let data = JSON.parse(user)\n return data.roles.includes(role);\n }\n\n return false;\n}\n\nexport default HasRole;","const HasPreviousRole = (role: \"ROLE_USER\"|\"ROLE_ADMIN\"|\"ROLE_SUPER_ADMIN\") => {\n let initialUser = localStorage.getItem('initialUser')\n\n if (initialUser){\n let data = JSON.parse(initialUser)\n return data.roles.includes(role);\n }\n\n return false;\n}\n\nexport default HasPreviousRole;","import React, { useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { ModuleSettings } from \"../../../../models/companyGroup\";\nimport * as API from \"../../../../adapters/companyGroup\";\nimport { editUserCompanyGroupSuccess } from \"../../../../actions/auth\";\nimport { axiosError } from \"../../../../actions/axios\";\nimport HasRole from \"../../../../security/hasRole\";\nimport HasPreviousRole from \"../../../../security/hasPreviousRole\";\nimport HasModule from \"../../../../security/hasModule\";\n\nconst ModuleConfig: React.FC = () => {\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n const settings:ModuleSettings = state.auth.user.currentSalary.companyGroup.modules;\n\n const askedModulesInStorage = localStorage.getItem('askedModules')\n\n const [isLoading, setIsLoading] = useState(false);\n const [askedModules, setAskedModules] = useState(askedModulesInStorage ? JSON.parse(askedModulesInStorage) : null)\n\n const onAskModule = (module: string) => {\n API.requestModule(module)\n .then(data => {\n localStorage.setItem('askedModules', JSON.stringify(askedModules ? [ ...askedModules, module ] : [ module ]))\n setAskedModules(askedModules ? [ ...askedModules, module ] : [ module ])\n })\n .catch(error => dispatch(axiosError(error)))\n }\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n API.modules({\n setting: setting,\n value: value\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez utiliser la badgeuse\n
    \n
    \n
    \n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?\n
    \n handleChange('time_clock', e.target.checked)}\n disabled={isLoading} defaultChecked={settings.timeClock}\n className=\"form-check-input\" type=\"checkbox\"\n />\n
    \n :\n <>\n {!HasModule('timeClock') ?\n onAskModule('time_clock')}\n >\n {askedModules?.includes('time_clock') ? 'Demande envoyée' : 'Demander l’option'}\n \n :\n \n }\n \n }\n
    \n
    \n
    \n {state?.auth?.user?.currentSalary?.companyGroup?.sellsyId &&\n <>\n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez recevoir certaines notifications par SMS (retards, absences)\n
    \n
    \n
    \n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?\n
    \n handleChange('sms_notifications', e.target.checked)}\n disabled={isLoading}\n defaultChecked={settings.smsNotifications}\n className=\"form-check-input\" type=\"checkbox\"\n />\n
    \n :\n <>\n {!HasModule('smsNotifications') ?\n onAskModule('sms_notifications')}\n >\n {askedModules?.includes('sms_notifications') ? 'Demande envoyée' : 'Demander l’option'}\n \n :\n \n Option activé \n \n }\n \n }\n
    \n
    \n
    \n \n }\n
    \n
    \n
    \n
    \n \n
    \n Générez automatiquement tous vos documents légaux\n
    \n
    \n
    \n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?\n
    \n handleChange('document', e.target.checked)}\n disabled={isLoading}\n defaultChecked={settings.document}\n className=\"form-check-input\" type=\"checkbox\"\n />\n
    \n :\n <>\n {!HasModule('document') ?\n onAskModule('document')}\n >\n {askedModules?.includes('document') ? 'Demande envoyée' : 'Demander l’option'}\n \n :\n \n }\n \n }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez proposer des créneaux à une liste de collaborateurs\n
    \n
    \n
    \n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?
    \n handleChange('booking_offer', e.target.checked)} disabled={isLoading} defaultChecked={settings.bookingOffer} className=\"form-check-input\" type=\"checkbox\" />\n
    : <>{!HasModule('bookingOffer') ?\n onAskModule('booking_offer')}\n className={'btn btn-outline-primary'}\n >\n {askedModules?.includes('booking_offer') ? 'Demande envoyée' : 'Demander l’option'}\n : }}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez activer l'échange de créneaux entre collaborateurs\n
    \n
    \n
    \n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?\n
    \n handleChange('slot_exchange', e.target.checked)}\n disabled={isLoading}\n defaultChecked={settings.slotExchange}\n className=\"form-check-input\" type=\"checkbox\"\n />\n
    \n :\n <>\n {!HasModule('slotExchange') ?\n onAskModule('slot_exchange')}\n >\n {askedModules?.includes('slot_exchange') ? 'Demande envoyée' : 'Demander l’option'}\n \n :\n \n }\n \n }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez pouvoir répartir vos collaborateurs par équipes et associer des droits d'accès ciblés\n
    \n
    \n
    \n {/*
    */}\n {/* handleChange('team', e.target.checked)} disabled={isLoading} defaultChecked={settings.team} className=\"form-check-input\" type=\"checkbox\" />*/}\n {/*
    */}\n {(HasRole(\"ROLE_SUPER_ADMIN\") || HasPreviousRole(\"ROLE_SUPER_ADMIN\")) ?
    \n handleChange('team', e.target.checked)} disabled={isLoading} defaultChecked={settings.team} className=\"form-check-input\" type=\"checkbox\" />\n
    : <>{!HasModule(\"team\") ?\n onAskModule('team')}\n >\n {askedModules?.includes('team') ? 'Demande envoyée' : 'Demander l’option'}\n : }}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez accéder au suivi de la masse salariale\n
    \n
    \n
    \n
    \n handleChange('payroll', e.target.checked)} disabled={isLoading} defaultChecked={settings.payroll} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez préciser le lieu et l'activité des collaborateurs durant leurs créneaux\n
    \n
    \n
    \n
    \n handleChange('label', e.target.checked)} disabled={isLoading} defaultChecked={settings.label} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez utiliser les tâches\n
    \n
    \n
    \n
    \n handleChange('task', e.target.checked)} disabled={isLoading} defaultChecked={settings.task} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez accéder aux rapports & exports de temps de travail\n
    \n
    \n
    \n
    \n handleChange('accounting', e.target.checked)} disabled={isLoading} defaultChecked={settings.accounting} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n Activer si vous souhaitez utiliser les notes de frais\n
    \n
    \n
    \n
    \n handleChange('expense', e.target.checked)} disabled={isLoading} defaultChecked={settings.expense} className=\"form-check-input\" type=\"checkbox\" />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n}\n\nexport default ModuleConfig;","import React, {useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as API from \"../../../../adapters/companyGroup\"\nimport {GeneralSettings} from \"../../../../models/companyGroup\";\nimport format from \"../../../../utils/locale\";\nimport {editUserCompanyGroupSuccess} from \"../../../../actions/auth\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {getVisibleUntilOption, getVisibleUntilOptions} from \"../../../../constants/companyGroup\";\nimport getMaxVisibilityDate from \"../../../../security/getMaxDate\";\n\nconst GeneralConfig:React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n const settings:GeneralSettings = state.auth.user.currentSalary.companyGroup.generalSettings;\n const [isLoading, setIsLoading] = useState(false);\n\n\n const handleChange = (setting: string, value: any) => {\n setIsLoading(true);\n API.generalSettings({\n setting: setting,\n value: value\n }).then((data) => {\n dispatch(editUserCompanyGroupSuccess(data.data))\n setIsLoading(false);\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n

    \n Langue\n

    \n handleChange('lang', choice?.value)}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Visibilité du planning\n

    \n

    \n Limiter la visibilité du planning au-delà de la limite précisée ci-dessous\n

    \n handleChange('visibleUntil', choice?.value)}\n />\n {getMaxVisibilityDate() &&
    \n Planning visible jusqu'au {format(getMaxVisibilityDate()!)}\n
    }\n
    \n
    \n
    \n
    \n
    \n
    \n \n}\n\nexport default GeneralConfig;","import React, {useEffect, useState} from \"react\";\nimport * as types from \"../../../../constants/notification\"\nimport {Notifications} from \"../../../../models/companyGroup\";\nimport * as api from \"../../../../adapters/notification\";\nimport * as accessLevelApi from \"../../../../adapters/accessLevel\";\nimport {AxiosResponse} from \"axios\";\nimport {AccessLevels} from \"../../../../models/accessLevel\";\nimport Loader from \"../../../../utils/loader\";\nimport HasModule from \"../../../../security/hasModule\";\n\nconst NotificationSettings:React.FC = () => {\n\n const [disabled, setDisabled] = useState(false);\n const [loading, setLoading] = useState(true);\n\n const [notifications, setNotifications] = useState([]);\n const [accessLevels, setAccessLevels] = useState([]);\n\n useEffect(() => {\n api.list()\n .then(resp => setNotifications(resp.data))\n .then(() => setLoading(false))\n }, [])\n\n useEffect(() => {\n accessLevelApi.select()\n .then(resp => setAccessLevels(resp.data))\n }, [])\n\n function handleChangeSuccess(resp: AxiosResponse){\n setNotifications(prev => [...prev.filter(p => p.id !== resp.data.id), resp.data]);\n setDisabled(false)\n }\n\n function handleActivation(id: number, checked: boolean){\n setDisabled(true)\n if (checked){\n api.activate(id)\n .then(resp => handleChangeSuccess(resp))\n }else{\n api.deactivate(id)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n function handleEmailChange(id: number, checked: boolean){\n setDisabled(true)\n if (checked){\n api.setEmail(id)\n .then(resp => handleChangeSuccess(resp))\n }else{\n api.unsetEmail(id)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n function handlePushNotificationChange(id: number, checked: boolean){\n setDisabled(true)\n if (checked) {\n api.setPushNotification(id)\n .then(resp => handleChangeSuccess(resp))\n } else {\n api.unsetPushNotification(id)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n function handleSmsNotificationChange(id: number, checked: boolean){\n setDisabled(true)\n if (checked) {\n api.setSmsNotification(id)\n .then(resp => handleChangeSuccess(resp))\n } else {\n api.unsetSmsNotification(id)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n function handleManagerChange(id: number, checked: boolean){\n setDisabled(true)\n if (checked){\n api.setManager(id)\n .then(resp => handleChangeSuccess(resp))\n }else{\n api.unsetManager(id)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n function handlePopulationChange(id: number, accessLevelId: number, checked: boolean){\n setDisabled(true)\n if (checked){\n api.addPopulation(id, accessLevelId)\n .then(resp => handleChangeSuccess(resp))\n }else{\n api.removePopulation(id, accessLevelId)\n .then(resp => handleChangeSuccess(resp))\n }\n }\n\n if (loading){\n return \n }\n\n return
    \n
    \n
    \n {types.getAllNotifications().map((g, i) => {g.title})}\n
    \n
    \n
    \n
    \n {types.getAllNotifications().map((g, i) =>
    \n
      \n {g.notifications.map((n: any) => {\n let notification = notifications.find(_n => n.id === _n.underscoreCase)!\n\n if (!notification) {\n return
    • \n {n.id} not found\n
    • \n }\n\n return
    • \n
      \n
      \n handleActivation(notification.id, e.currentTarget.checked)} className=\"form-check-input\" type=\"checkbox\" id={n.id} defaultChecked={notification.activated} disabled={disabled}/>\n \n
      \n\n {notification.activated &&\n <>\n
      \n {n.email &&\n
      \n handleEmailChange(notification.id, e.currentTarget.checked)}\n className=\"form-check-input\"\n type=\"checkbox\"\n id={n.id + \"isEmail\"}\n defaultChecked={notification.isEmail}\n disabled={disabled}\n />\n \n
      \n }\n {n.push &&\n
      \n handlePushNotificationChange(notification.id, e.currentTarget.checked)}\n className=\"form-check-input\"\n type=\"checkbox\"\n id={n.id + \"isPushNotification\"}\n defaultChecked={notification.isPushNotification}\n disabled={disabled}\n />\n \n
      \n }\n {n.sms && HasModule('smsNotifications') &&\n
      \n handleSmsNotificationChange(notification.id, e.currentTarget.checked)}\n className=\"form-check-input\"\n type=\"checkbox\"\n id={n.id + \"isSms\"}\n defaultChecked={notification.isSms}\n disabled={disabled}\n />\n \n
      \n }\n
      \n\n {n.population &&
      \n
      \n

      \n Envoyer aux collaborateurs ayant un des rôles ci-dessous :\n

      \n {accessLevels.map(a =>
      \n handlePopulationChange(notification.id, a.id, e.currentTarget.checked)} className=\"form-check-input\" checked={!!notification.population.find(p => p.id === a.id)} type=\"checkbox\" id={`notification${notification.id}accessLevel${a.id}`} />\n \n
      )}\n
      \n
      \n handleManagerChange(notification.id, e.currentTarget.checked)} className=\"form-check-input\" type=\"checkbox\" id={\"isManager\"+n.id} defaultChecked={notification.isManager} disabled={disabled}/>\n \n
      \n
      }\n \n }\n\n {n.populationDescription &&\n
      \n {n.populationDescription}\n
      \n }\n
      \n
    • \n })}\n
    \n
    )}\n
    \n
    \n
    \n}\n\nexport default NotificationSettings;","import {get} from \"../xhr\";\n\nexport function activate(id: number){\n return get(`notification/${id}/activate`)\n}\n\nexport function deactivate(id: number){\n return get(`notification/${id}/deactivate`)\n}\n\nexport function setEmail(id: number){\n return get(`notification/${id}/set_email`)\n}\n\nexport function unsetEmail(id: number){\n return get(`notification/${id}/unset_email`)\n}\n\nexport function setPushNotification(id: number){\n return get(`notification/${id}/set_push_notification`)\n}\n\nexport function unsetPushNotification(id: number){\n return get(`notification/${id}/unset_push_notification`)\n}\n\nexport function setSmsNotification(id: number){\n return get(`notification/${id}/set_sms_notification`)\n}\n\nexport function unsetSmsNotification(id: number){\n return get(`notification/${id}/unset_sms_notification`)\n}\n\nexport function setManager(id: number){\n return get(`notification/${id}/set_manager`)\n}\n\nexport function unsetManager(id: number){\n return get(`notification/${id}/unset_manager`)\n}\n\nexport function list(){\n return get(`notification/list`)\n}\n\nexport function addPopulation(id: number, accessLevelId: number){\n return get(`notification/${id}/add_population/${accessLevelId}`)\n}\n\nexport function removePopulation(id: number, accessLevelId: number){\n return get(`notification/${id}/remove_population/${accessLevelId}`)\n}","export const EVENT_ADD = \"EVENT_ADD\";\nexport const EVENT_EDIT = \"EVENT_EDIT\";\n\nexport const ABSENCE_REQUEST = \"ABSENCE_REQUEST\";\nexport const ABSENCE_STATUS = \"ABSENCE_STATUS\";\n\nexport const TASK_ADD = \"TASK_ADD\";\nexport const TASK_EDIT = \"TASK_EDIT\";\nexport const TASK_STATUS = \"TASK_STATUS\";\n\nexport const ADD_EVENT_OFFER = \"ADD_EVENT_OFFER\";\nexport const EDIT_EVENT_OFFER = \"EDIT_EVENT_OFFER\";\nexport const APPLY_EVENT_OFFER = \"APPLY_EVENT_OFFER\";\nexport const VALIDATE_EVENT_OFFER = \"VALIDATE_EVENT_OFFER\";\n\nexport const EXPENSE_REQUEST = \"EXPENSE_REQUEST\";\nexport const EXPENSE_STATUS = \"EXPENSE_STATUS\";\n\nexport const TIME_CLOCK_LATE = \"TIME_CLOCK_LATE\";\nexport const TIME_CLOCK_MISSING = \"TIME_CLOCK_MISSING\";\n\n// notifier les modification de planning au fil de l'eau\n\n// TODO : Notifier la messagerie\n// TODO : Notifier les demandes d'échange de créneaux\n\nexport const getAllNotifications = () => {\n return [\n {\n title: \"Créneaux\",\n underscoreCase: 'events',\n module: \"none\",\n notifications: [\n {\n id: EVENT_ADD,\n title: \"Notifier les ajouts\",\n population: false,\n push: true,\n email: true,\n populationDescription: \"Cible le collaborateur assigné au créneau\"\n },\n {\n id: EVENT_EDIT,\n title: \"Notifier les modifications/suppressions\",\n population: false,\n push: true,\n email: true,\n populationDescription: \"Cible le collaborateur assigné au créneau\"\n },\n ]\n },\n {\n title: \"Absences\",\n underscoreCase: 'absence',\n module: \"none\",\n notifications: [\n {\n id: ABSENCE_REQUEST,\n title: \"Notifier les demandes d'absence\",\n push: true,\n email: true,\n population: true\n },\n {\n id: ABSENCE_STATUS,\n title: \"Notifier les changements de statut\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible le collaborateur assigné à l'absence\"\n },\n ]\n },\n {\n title: \"Tâches\",\n module: \"tasks\",\n underscoreCase: 'task',\n notifications: [\n {\n id: TASK_ADD,\n title: \"Notifier les ajouts\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible les collaborateurs assignés à la tâche\"\n },\n {\n id: TASK_EDIT,\n title: \"Notifier les modifications\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible les collaborateurs assignés à la tâche\"\n },\n {\n id: TASK_STATUS,\n title: \"Notifier changements de statut\",\n push: true,\n email: true,\n population: true,\n }\n ]\n },\n {\n title: \"Offre de créneaux\",\n underscoreCase: 'offer',\n notifications: [\n {\n id: ADD_EVENT_OFFER,\n title: \"Notifier les ajouts\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible les collaborateurs assignés à l'offre de créneau\"\n },\n {\n id: EDIT_EVENT_OFFER,\n title: \"Notifier les modifications\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible les collaborateurs assignés à l'offre de créneau\"\n },\n {\n id: APPLY_EVENT_OFFER,\n title: \"Notifier les applications\",\n push: true,\n email: true,\n population: true,\n },\n {\n id: VALIDATE_EVENT_OFFER,\n title: \"Notifier la validation d'une application\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible les collaborateurs ayant postulés à l'offre de créneau\"\n },\n ]\n },\n {\n title: \"Notes de frais\",\n module: \"expense\",\n underscoreCase: 'expense',\n notifications: [\n {\n id: EXPENSE_REQUEST,\n title: \"Notifier les demandes de note de frais\",\n push: true,\n email: true,\n population: true\n },\n {\n id: EXPENSE_STATUS,\n title: \"Notifier les changements de statut\",\n push: true,\n email: true,\n population: false,\n populationDescription: \"Cible le collaborateur assigné aux notes de frais\"\n },\n ]\n },\n {\n title: \"Badgeuse\",\n module: \"timeClock\",\n underscoreCase: 'timeClock',\n notifications: [\n {\n id: TIME_CLOCK_MISSING,\n title: \"Notifier les absences\",\n push: true,\n email: true,\n sms: true,\n population: true,\n },\n {\n id: TIME_CLOCK_LATE,\n title: \"Notifier les retards\",\n push: true,\n email: true,\n sms: true,\n population: true,\n },\n ]\n },\n ]\n}","import React, {useEffect} from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport EmailSettings from \"./email\";\nimport TimeClockConfig from \"./timeClock\";\nimport AbsenceConfig from \"./absence\";\nimport AccountingConfig from \"./accounting\";\nimport ModuleConfig from \"./module\";\nimport GeneralConfig from \"./general\";\nimport HasModule from \"../../../security/hasModule\";\nimport HasRole from \"../../../security/hasRole\";\nimport NotificationSettings from \"./notification\";\n\nconst CompanyGroupSettings:React.FC = () => {\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle('Réglages'))\n }, [])\n\n return
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n {/*
    */}\n {/* */}\n {/*
    */}\n
    \n \n
    \n
    \n
    \n}\n\nexport default CompanyGroupSettings;","import * as React from \"react\";\n\nimport CompanyGroupSettings from \"../../../components/companyGroup/settings\";\n\nconst CompanyGroupSettingsPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default CompanyGroupSettingsPage;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/calendar\"\nimport format from \"../../../utils/locale\"\nimport {setPageTitle} from \"../../../actions/header\";\nimport DatePicker from \"react-datepicker\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport Loader from \"../../../utils/loader\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Company} from \"../../../models/companies\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport { ResponsivePie } from '@nivo/pie'\nimport {Salary} from \"../../../models/salary\";\nimport SalarySelector from \"../../salary/selector\";\nimport {Granted} from \"../../../security/granted\";\nimport getUser from \"../../../security/getUser\";\n\nconst TimeClockList: React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state);\n const [startDate, setStartDate] = useState(new Date());\n const [endDate, setEndDate] = useState(new Date());\n const [loading, setLoading] = useState(false);\n const [salary, setSalary] = useState()\n const [company, setCompany] = useState()\n const [isAnomaly, setIsAnomaly] = useState(true)\n const [filter, setFilter] = useState<'all'|'late'|'missing'>('all')\n const [signed, setSigned] = useState([])\n\n const onChange = (dates: [Date, Date]) => {\n const [start, end] = dates;\n setStartDate(start);\n setEndDate(end);\n if (start && end){\n fetchSigned({start: new Date(start), end: new Date(end)});\n }\n };\n\n useEffect(() => {\n dispatch(setPageTitle('Reporting badgeuse'))\n fetchSigned({start: new Date(), end: new Date()})\n }, [])\n\n return <>\n
    \n
    \n
    \n
    \n
    \n `${a.value}%`}\n colors={{ datum: 'data.color' }}\n data={[\n {\n \"id\": \"late\",\n \"label\": \"Retards\",\n \"value\": Math.round((signed.filter(s => applyChartFilters(s)).filter(s => s.isLate && !s.isAnomaly).length / signed.filter(s => applyChartFilters(s)).length) * 100),\n \"color\": \"hsl(32,93%,59%)\"\n },\n {\n \"id\": \"onTime\",\n \"label\": \"A l'heure\",\n \"value\": Math.round((signed.filter(s => applyChartFilters(s)).filter(s => !s.isLate && !(s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING) && !s.isAnomaly).length / signed.filter(s => applyChartFilters(s)).length) * 100),\n \"color\": \"hsl(123,72%,51%)\"\n },\n {\n \"id\": \"missing\",\n \"label\": \"Absent\",\n \"value\": Math.round((signed.filter(s => applyChartFilters(s)).filter(s => s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING).length / signed.filter(s => applyChartFilters(s)).length) * 100),\n \"color\": \"hsl(351,90%,53%)\"\n },\n {\n \"id\": \"anomaly\",\n \"label\": \"Anomalies\",\n \"value\": Math.round((signed.filter(s => applyChartFilters(s)).filter(s => s.isAnomaly).length / signed.filter(s => applyChartFilters(s)).length) * 100),\n \"color\": \"hsl(0,0%,0%)\"\n },\n ]} />\n
    \n
    \n \n
    \n
    \n setFilter('all')}\n disabled={loading} className=\"form-check-input\" type=\"radio\" value=\"all\" id=\"all\" />\n \n
    \n
    \n setFilter('late')}\n disabled={loading} className=\"form-check-input\" type=\"radio\" value=\"late\" id=\"late\" />\n \n
    \n
    \n setFilter('missing')}\n disabled={loading} className=\"form-check-input\" type=\"radio\" value=\"missing\" id=\"missing\" />\n \n
    \n
    \n
    \n setIsAnomaly(e.target.checked)}\n className=\"form-check-input\" type=\"radio\" value=\"isAnomaly\" id=\"isAnomaly\" />\n \n
    \n
    \n {Granted(accessRights.LIST_SALARY) && setSalary(Number(choice?.id))}\n accessRight={accessRights.LIST_TIME_CLOCK}\n />}\n
    \n ({label: company.title, value: company.id}))}\n label={'Points de vente'}\n onChange={(choice) => setCompany(Number(choice?.value))}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {loading ? :
      \n {signed.filter(s => applyFilters(s)).sort((a,b) => new Date(a.start).getTime() - new Date(b.start).getTime()).map(s =>
    • \n
      \n
      \n

      \n le {format(new Date(s.start))}\n

      \n \n {s.salary.title}\n \n \n {s.salary.information.job.title}\n \n
      \n
      \n {s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING && <>\n
      \n

      \n Absent\n

      \n
      \n \n Prévu à {format(new Date(s.start), 'HH:mm')}\n \n }\n {s.isLate && <>\n

      \n Retard\n

      \n \n Retard de {s.lateOfCaption}\n \n }\n {!(s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING) && !s.isLate && <>\n

      \n Arrivé à {format(new Date(s.start), 'HH:mm')}\n

      \n }\n
      \n
      \n
    • )}\n
    }\n
    \n \n\n function fetchSigned(props: {start: Date, end: Date}){\n\n let _end = props.end;\n _end.setDate(_end.getDate() + 1)\n\n setLoading(true);\n api.test({\n start: format(props.start, 'uuuu-MM-dd'),\n end: format(_end, 'uuuu-MM-dd'),\n calendar: calendarTypes.CALENDAR_SIGNED_REPORTING\n }).then((resp) => {\n setSigned(resp.data.signed)\n setLoading(false);\n })\n }\n\n function applyChartFilters(s: any){\n if (company && company !== s.company.id) return false;\n if (salary && salary !== s.salary.id) return false;\n\n return true;\n }\n\n function applyFilters(s: any){\n\n if (company && company !== s.company.id) return false;\n if (salary && salary !== s.salary.id) return false;\n if ([calendarTypes.EVENT_TYPE_BOOKING, calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION, calendarTypes.EVENT_TYPE_EVENT, calendarTypes.EVENT_TYPE_EVENT_EXCEPTION].includes(s.eventType)) return false;\n if (s.isAnomaly) return isAnomaly;\n\n switch (filter){\n case \"late\":\n return s.isLate;\n case \"missing\":\n return s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING;\n }\n\n return true;\n }\n}\n\nexport default TimeClockList;","import * as React from \"react\";\n\nimport TimeClockList from \"../../components/timeClock/list/test\";\n\nconst TimeClockPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default TimeClockPage;","import React, {useEffect, useState} from \"react\";\nimport {PeriodsReporting} from \"../../../models/reporting\";\nimport {Link} from \"react-router-dom\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {REPORTING_SHOW_WEEK} from \"../../../constants/rightSidebar\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {getAvailableFields} from \"../../../constants/reporting\";\nimport {refreshSingleReporting, showReportingSuccess} from \"../../../actions/reporting\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as counterApi from \"../../../adapters/counter\";\nimport {axiosError} from \"../../../actions/axios\";\nimport * as reportingApi from \"../../../adapters/reporting\";\nimport {AccountingSettings} from \"../../../models/companyGroup\";\nimport {Tooltip} from \"bootstrap\";\nimport {Granted} from \"../../../security/granted\";\n\ninterface ReportingPeriodViewProps {\n displaySalaryColumn: boolean,\n periodsReporting: PeriodsReporting,\n startDate: string,\n endDate: string\n}\n\nconst ReportingPeriodView:React.FC = (props) => {\n\n const {periodsReporting, displaySalaryColumn, startDate, endDate} = props;\n const [timesheetExpanded, setTimesheetExpanded] = useState(false);\n const [absenceExpanded, setAbsenceExpanded] = useState(false);\n const [counterExpanded, setCounterExpanded] = useState(true);\n const [wageExpanded, setWageExpanded] = useState(false);\n const [savingCounter, setSavingCounter] = useState();\n const state = useSelector((state: RootStateOrAny) => state);\n const settings:AccountingSettings = state.auth.user.currentSalary.companyGroup.accountingSettings;\n\n const dispatch = useDispatch();\n\n const saveCounter = (id: number) => {\n setSavingCounter(id)\n counterApi.saveSingle({start: startDate, end: endDate}, id)\n .then(() => {\n reportingApi.fetch({\n start: startDate,\n end: endDate,\n options: {\n salaries: [id]\n }\n }).then(_data => {\n dispatch(refreshSingleReporting(_data.data[0]))\n setSavingCounter(undefined)\n })\n })\n .catch(error => dispatch(axiosError(error)))\n ;\n }\n\n const getCollSpan = (type: \"timesheet\"|\"counter\"|\"absence\"|\"wage\") => {\n let allFields = getAvailableFields();\n\n let typeFields = allFields.find(af => af.camelCase === type)\n\n if (typeFields){\n return typeFields.fields.filter(f => settings.fields.includes(f.camelCase)).length\n }\n\n return 0;\n }\n\n const hasAny = (type: \"timesheet\"|\"counter\"|\"absence\"|\"wage\") => {\n let allFields = getAvailableFields();\n\n let typeFields = allFields.find(af => af.camelCase === type)\n\n if (typeFields){\n return !!typeFields.fields.filter(f => settings.fields.includes(f.camelCase)).length\n }\n\n return false;\n }\n\n useEffect(() => {\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n\n return () => {\n tooltipTriggerList.map(t => Tooltip.getInstance(t).hide())\n }\n }, [settings.fields])\n\n return <>\n \n \n {displaySalaryColumn && }\n {hasAny('timesheet') && }\n {hasAny('counter') && 0 && settings.fields.includes('counterWeek') ? periodsReporting[0].weeks.length - 1 : 0)) : 1}\n style={{backgroundColor: '#cfe2ff'}}/>}\n {hasAny(\"absence\") && }\n {Granted(accessRights.READ_FLAT_RATE) && hasAny('wage') && }\n \n \n \n {displaySalaryColumn && }\n {hasAny('timesheet') && }\n {hasAny('counter') && }\n {hasAny('absence') && }\n {Granted(accessRights.READ_FLAT_RATE) && hasAny('wage') && }\n \n \n {displaySalaryColumn && }\n {hasAny('timesheet') && (timesheetExpanded ?\n <>\n \n {settings.fields.includes('workingTime') && }\n {settings.fields.includes('overTimeLow') && }\n {settings.fields.includes('overTimeHigh') && }\n {settings.fields.includes('overTime') && }\n {settings.fields.includes('delta') && }\n {settings.fields.includes('nightTime') && }\n {settings.fields.includes('sundayWorkingTime') && }\n {settings.fields.includes('labourWorkingTime') && }\n {settings.fields.includes('fullDays') && }\n {settings.fields.includes('shift') && }\n {/*{settings.fields.includes('unaccountedAbsence') && }*/}\n \n : )}\n\n {(counterExpanded ? <>\n {settings.fields.includes('counterInitial') && }\n {settings.fields.includes('counterWeek') && periodsReporting.length > 0 && periodsReporting[0].weeks.map(week => )}\n {settings.fields.includes('counterPeriod') && }\n {settings.fields.includes('counterTotal') && }\n {Granted(accessRights.EDIT_COUNTER) && settings.fields.includes('counterPeriod') && }\n : )}\n\n {hasAny('absence') && (absenceExpanded ? <>\n {settings.fields.includes('paidVacation') && }\n {settings.fields.includes('sickLeave') && }\n {settings.fields.includes('recovery') && }\n {settings.fields.includes('rtt') && }\n {settings.fields.includes('unpaidVacation') && }\n {settings.fields.includes('specialEvent') && }\n : )}\n\n {Granted(accessRights.READ_FLAT_RATE) && hasAny('wage') && (wageExpanded ? <>\n {settings.fields.includes('flatRate') && }\n {settings.fields.includes('monthlyRate') && }\n : )}\n \n \n \n {periodsReporting.map((reporting, index) => <>\n \n {displaySalaryColumn && }\n\n {hasAny('timesheet') && (timesheetExpanded ? <>\n \n {settings.fields.includes('workingTime') && }\n {settings.fields.includes('overTimeLow') && }\n {settings.fields.includes('overTimeHigh') && }\n {settings.fields.includes('overTime') && }\n {settings.fields.includes('delta') && }\n {settings.fields.includes('nightTime') && }\n {settings.fields.includes('sundayWorkingTime') && }\n {settings.fields.includes('labourWorkingTime') && }\n {settings.fields.includes('fullDays') && }\n {settings.fields.includes('shift') && }\n {/*{settings.fields.includes('unaccountedAbsence') && }*/}\n : )}\n\n {hasAny('counter') && (counterExpanded ? <>\n {settings.fields.includes('counterInitial') && }\n {settings.fields.includes('counterWeek') && reporting.weeks.map(week => )}\n {settings.fields.includes('counterPeriod') && }\n {settings.fields.includes('counterTotal') && }\n {settings.fields.includes('counterPeriod') && }\n : )}\n {hasAny('absence') && (absenceExpanded ? <>\n {settings.fields.includes('paidVacation') && }\n {settings.fields.includes('sickLeave') && }\n {settings.fields.includes('recovery') && }\n {settings.fields.includes('rtt') && }\n {settings.fields.includes('unpaidVacation') && }\n {settings.fields.includes('specialEvent') && }\n : )}\n {Granted(accessRights.READ_FLAT_RATE) && hasAny('wage') && (wageExpanded ? <>\n {settings.fields.includes('flatRate') && }\n {settings.fields.includes('monthlyRate') && }\n : )}\n \n )}\n \n
    \n setTimesheetExpanded((prevState => !prevState))}\n style={{backgroundColor: '#f8f9fa'}}\n colSpan={timesheetExpanded ? getCollSpan('timesheet') + 1 : 1}>\n \n Temps de travail\n \n \n setCounterExpanded((prevState => !prevState))}\n style={{backgroundColor: '#cfe2ff'}}\n colSpan={counterExpanded ? (getCollSpan(\"counter\") + ((Granted(accessRights.EDIT_COUNTER) && settings.fields.includes('counterPeriod')) ? 1 : 0) + (settings.fields.includes('counterWeek') && periodsReporting.length > 0 && periodsReporting[0].weeks.length > 0 ? periodsReporting[0].weeks.length - 1 : 0)) : 1}>\n \n Compteur\n \n \n setAbsenceExpanded((prevState => !prevState))}\n style={{backgroundColor: '#cff4fc'}} colSpan={absenceExpanded ? getCollSpan('absence') : 1}>\n \n Absences\n \n \n setWageExpanded((prevState => !prevState))} style={{backgroundColor: '#e2d9f3'}}\n colSpan={wageExpanded ? getCollSpan('wage') : 1}>\n \n Données financière\n \n \n
    \n Collaborateur\n \n Vol. heures contrat \n \n Vol. heures total \n \n Vol. heures supplémentaires {\"<\"} 8h \n \n Vol. heures supplémentaires {\">\"} 8h \n \n Vol. heures supplémentaires \n \n Delta \n \n Vol. heures de nuit \n \n Vol. heures dimanche \n \n Vol. heures jours fériés \n \n Jours complets \n \n Vacations \n */}\n {/* Temps d'absence décompté */}\n {/* \n Compteur début de période \n \n S.{week.weekNumber}\n \n Total période \n \n Total fin de période \n \n Enregistrer\n \n Congés payés \n \n Arrêt maladie \n \n Repos \n \n RTT \n \n Congés sans solde \n \n Évènement exceptionnel \n \n Taux horaire brut € \n \n Salaire brut € \n
    \n \n {reporting.salary.title}\n \n
    \n \n {reporting.salary.information?.job.title}\n \n
    \n {reporting.salary.information?.contractWorkingTime +'h' || }\n \n {reporting.workingTime || }\n \n {reporting.overTimeLow || }\n \n {reporting.overTimeHigh || }\n \n {reporting.overTime || }\n \n {reporting.delta || }\n \n \n 6h 8h | 20h 22h :\n {reporting.nightTime?.low || }\n
    \n \n 22h 6h :\n {reporting.nightTime?.high || }\n
    \n {reporting.sundayWorkingTime || }\n \n {reporting.labourWorkingTime || }\n \n {reporting.fullDays || }\n \n {reporting.shift || }\n */}\n {/* {reporting.unaccountedAbsence || }*/}\n {/* setTimesheetExpanded(prevState => !prevState)}>\n \n {reporting.salary.information?.contractWorkingTime +'h' || }\n \n \n {reporting.counterTotalInitial || }\n \n \n \n {!!reporting.counterSaved ? [ , reporting.counterSaved,\n ] : }\n
    \n {reporting.counterSaved !== reporting.counter && !!reporting.counter && \n à date : {reporting.counter}\n }\n
    \n {reporting.counterSavedTotal ? [ , reporting.counterSavedTotal,\n ] : }\n
    \n {reporting.counterTotal !== reporting.counterSavedTotal && \n à date : {reporting.counterTotal}\n }\n
    \n {Granted(accessRights.EDIT_COUNTER) &&\n }\n setCounterExpanded(prevState => !prevState)}>\n {settings.fields.includes('counterPeriod') && \n {reporting.counter !== '00:00' &&\n } {reporting.counter}\n }\n \n {reporting.paidVacation || }\n \n {reporting.sickLeave || }\n \n {reporting.recovery || }\n \n {reporting.rtt || }\n \n {reporting.unpaidVacation || }\n \n {reporting.specialEvent || }\n setAbsenceExpanded(prevState => !prevState)}> \n {reporting.salary.information?.hourlyRate ? <>{reporting.salary.information.hourlyRate} € :\n }\n \n {reporting.monthlyRate ? <>{reporting.monthlyRate} € :\n }\n setWageExpanded(prevState => !prevState)}>\n {settings.fields.includes('monthlyRate') && <>\n {reporting.monthlyRate ? <>{reporting.monthlyRate} € :\n }\n }\n
    \n \n}\n\nexport default ReportingPeriodView;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/reporting\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport ReportingPeriodView from \"../periodView\";\nimport format from \"../../../utils/locale\";\nimport * as api from \"../../../adapters/reporting\";\nimport * as action from \"../../../actions/reporting\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {AccountingSettings} from \"../../../models/companyGroup\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {ACCOUNTING_SETTINGS, FORM_EXPORT_REPORTING} from \"../../../constants/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport {PAGINATION} from \"../../../constants/global\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport {Granted} from \"../../../security/granted\";\n\nconst ReportingList: React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state.reporting);\n const [offset, setOffset] = useState(0);\n const [scrollBottom, setScrollBottom] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const params: {start?:string, end?:string} = useParams()\n const [query, setQuery] = useState();\n const [company, setCompany] = useState();\n const [isLoading, setIsLoading] = useState(false);\n const [isFiltering, setFiltering] = useState(false);\n const dispatch = useDispatch();\n const accountingSettings: AccountingSettings = useSelector((state:RootStateOrAny) => state.auth.user.currentSalary.companyGroup.accountingSettings)\n\n const [startDate, setStartDate] = useState();\n const [endDate, setEndDate] = useState();\n\n useEffect(() => {\n let start:Date;\n let end:Date;\n\n if (params.start && params.end){\n start = new Date(params.start)\n end = new Date(params.end)\n }else{\n let date = new Date();\n if (!!accountingSettings.closingDay)\n {\n if (date.getDay() <= accountingSettings.closingDay){\n end = new Date();\n end.setFullYear(date.getFullYear(), date.getMonth(), accountingSettings.closingDay);\n\n start = new Date(end);\n start.setMonth(start.getMonth() - 1);\n start.setDate(start.getDate() + 1);\n }else{\n start = new Date();\n start.setFullYear(date.getFullYear(), date.getMonth(), accountingSettings.closingDay);\n start.setDate(start.getDate() + 1);\n\n end = new Date(start);\n end.setMonth(start.getMonth() + 1);\n end.setDate(start.getDate() - 1);\n }\n }else{\n let today = new Date();\n start = new Date(today.getFullYear(), today.getMonth(), 1);\n\n end = new Date(start);\n end.setMonth(start.getMonth() + 1);\n end.setDate(start.getDate() - 1);\n }\n }\n\n setStartDate(start);\n setEndDate(end);\n }, [])\n\n useEffect(() => {\n dispatch(setPageTitle('Synthèse'))\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => {\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }, [])\n\n useEffect(() => {\n if (startDate && endDate){\n dispatch(actions.fetchReporting())\n setIsLoading(true);\n api.fetch({\n start: format(startDate!, 'uuuu-MM-dd'),\n end: format(endDate!, 'uuuu-MM-dd'), options: {query: query, offset: 0, companies: company ? [company] : []}}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchReportingSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [startDate, endDate, company])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setFiltering(true);\n setOffset(0)\n api.fetch({\n start: format(startDate!, 'uuuu-MM-dd'),\n end: format(endDate!, 'uuuu-MM-dd'),\n options: {query: query, offset: 0, companies: company ? [company] : []}\n }).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchReportingSuccess(data.data))\n setFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n if (scrollBottom){\n if(offset > 0 && !isLast){\n setIsLoading(true)\n api.fetch({\n start: format(startDate!, 'uuuu-MM-dd'),\n end: format(endDate!, 'uuuu-MM-dd'),\n options: {\n query: query,\n offset: offset,\n companies: company ? [company] : []\n }\n }).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchReportingSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n }\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => {\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }, [scrollBottom])\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n const goToNextMonth = () => {\n dispatch(action.fetchReporting());\n let start;\n let end;\n\n if (accountingSettings.closingDay){\n start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() + 1);\n end = new Date(endDate!);\n end.setMonth(endDate!.getMonth() + 1);\n }else{\n start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() + 1);\n end = new Date(start);\n end.setMonth(start.getMonth() + 1);\n end.setDate(start.getDate() - 1);\n }\n\n\n setStartDate(start)\n setEndDate(end)\n }\n\n const goToPrevMonth = () => {\n dispatch(action.fetchReporting());\n let start;\n let end;\n if (accountingSettings.closingDay){\n start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() - 1);\n end = new Date(endDate!);\n end.setMonth(endDate!.getMonth() - 1);\n }else{\n start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() - 1);\n end = new Date(start);\n end.setMonth(start.getMonth() + 1);\n end.setDate(start.getDate() - 1);\n }\n\n setStartDate(start)\n setEndDate(end)\n }\n\n return (\n <>\n
    \n
    \n
    \n setCompany(Number(c?.value))}\n />\n
    \n
    \n
    \n setQuery(e.target.value)}\n className=\"form-control\"/>\n \n
    \n
    \n
    \n {startDate && endDate && <>\n \n {format(startDate)} {format(endDate)}\n \n }\n
    \n
    \n {Granted(accessRights.EXPORT_REPORTING) && dispatch(openSidebar(FORM_EXPORT_REPORTING, {start: startDate, end: endDate}))}\n className={'btn bg-white shadow-sm me-2'}>\n \n }\n {Granted(accessRights.EDIT_COMPANY_GROUP) && }\n
    \n
    \n {/*{isLoading && }*/}\n
    \n {startDate && endDate && }\n
    \n {!isLast && <>\n {isLoading ?
    \n
    \n Loading...\n
    Chargement en cours...
    : }\n }\n
    \n \n );\n}\n\nexport default ReportingList;","import * as React from \"react\";\n\nimport ReportingList from \"../../components/reporting/list\";\n\nconst ReportingListPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default ReportingListPage;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {PeriodReporting, WeekReporting, WeeksReporting} from \"../../../models/reporting\";\nimport format from \"../../../utils/locale\"\nimport {AccountingSettings, ModuleSettings, TimeClockSettings} from \"../../../models/companyGroup\";\nimport ReportingPeriodView from \"../periodView\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport * as action from \"../../../actions/reporting\";\nimport * as api from \"../../../adapters/reporting\";\nimport * as actions from \"../../../actions/reporting\";\nimport Loader from \"../../../utils/loader\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport * as counterApi from \"../../../adapters/counter\";\nimport DatePicker from \"react-datepicker\";\nimport DateCustomInput from \"../../../utils/customInput\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport FileSaver from \"file-saver\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EXPORT_REPORTING, REPORTING_SHOW_WEEK, TIME_CLOCK_BOOKING_EDIT} from \"../../../constants/rightSidebar\";\nimport {axiosError} from \"../../../actions/axios\";\nimport * as reportingApi from \"../../../adapters/reporting\";\nimport {refreshSingleReporting, showReportingSuccess} from \"../../../actions/reporting\";\nimport {Granted} from \"../../../security/granted\";\n\nconst ReportingShow:React.FC = () => {\n\n const accountingSettings: AccountingSettings = useSelector((state:RootStateOrAny) => state.auth.user.currentSalary.companyGroup.accountingSettings)\n const moduleSettings: ModuleSettings = useSelector((state: RootStateOrAny) => state.auth.user.currentSalary.companyGroup.modules);\n const params: {id: string, start?: string, end?: string} = useParams();\n const single: PeriodReporting = useSelector((state: RootStateOrAny) => state.reporting.single);\n const [isLoading, setIsLoading] = useState(true);\n const [isDownloading, setIsDownloading] = useState(false);\n const [salaryId, setSalaryId] = useState(Number(params.id));\n const dispatch = useDispatch();\n\n const [counterLoading, setCounterLoading] = useState(false)\n\n const [savingCounter, setSavingCounter] = useState( false);\n const [savingWeekCounter, setSavingWeekCounter] = useState( );\n\n const [startDate, setStartDate] = useState();\n const [endDate, setEndDate] = useState();\n const [pendingStartDate, setPendingStartDate] = useState();\n const [pendingEndDate, setPendingEndDate] = useState();\n\n useEffect(() => {\n let start:Date;\n let end:Date;\n\n if (params.start && params.end){\n start = new Date(params.start)\n end = new Date(params.end)\n }else{\n let date = new Date();\n if (date.getDay() <= accountingSettings.closingDay){\n end = new Date();\n end.setFullYear(date.getFullYear(), date.getMonth(), accountingSettings.closingDay);\n\n start = new Date(end);\n start.setMonth(start.getMonth() - 1);\n start.setDate(start.getDate() + 1);\n }else{\n start = new Date();\n start.setFullYear(date.getFullYear(), date.getMonth(), accountingSettings.closingDay);\n start.setDate(start.getDate() + 1);\n\n end = new Date(start);\n end.setMonth(start.getMonth() + 1);\n end.setDate(start.getDate() - 1);\n }\n }\n\n setStartDate(start);\n setEndDate(end);\n setPendingStartDate(start)\n setPendingEndDate(end)\n }, [])\n\n const saveCounter = (_startDate: Date, _endDate: Date) => {\n if(_startDate && _endDate && startDate && endDate){\n setSavingCounter(true)\n counterApi.saveSingle({start: format(_startDate, \"uuuu-MM-dd\"), end: format(_endDate, \"uuuu-MM-dd\")}, single.salary.id)\n .then(data => {\n reportingApi.fetch({\n start: format(startDate!, \"uuuu-MM-dd\"),\n end: format(endDate!, \"uuuu-MM-dd\"),\n options: {\n salaries: [single.salary.id]\n }\n }).then(_data => {\n dispatch(showReportingSuccess(_data.data[0]))\n setSavingCounter(false)\n setSavingWeekCounter(undefined)\n })\n })\n .catch(error => dispatch(axiosError(error)))\n ;\n }\n\n }\n\n useEffect(() => {\n if (startDate && endDate){\n setIsLoading(true);\n api.fetch({\n start: format(startDate!, 'uuuu-MM-dd'),\n end: format(endDate!, 'uuuu-MM-dd'), options: {salaries: [salaryId]}}).then(data => {\n dispatch(actions.showReportingSuccess(data.data[0]))\n dispatch(setPageTitle('Synthèse', data.data[0].salary.title))\n setIsLoading(false);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [startDate, endDate, salaryId])\n\n const goToNextMonth = () => {\n dispatch(action.fetchReporting());\n let start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() + 1);\n\n let end = new Date(endDate!);\n end.setMonth(endDate!.getMonth() + 1);\n\n setStartDate(start)\n setEndDate(end)\n setPendingStartDate(start)\n setPendingEndDate(end)\n }\n\n const goToPrevMonth = () => {\n dispatch(action.fetchReporting());\n let start = new Date(startDate!);\n start.setMonth(startDate!.getMonth() - 1);\n let end = new Date(endDate!);\n end.setMonth(endDate!.getMonth() - 1);\n\n setStartDate(start)\n setEndDate(end)\n setPendingStartDate(start)\n setPendingEndDate(end)\n }\n\n const onChange = (dates: [Date, Date]) => {\n const [start, end] = dates;\n setStartDate(start);\n setEndDate(end);\n };\n\n return <>\n
    \n
    \n
    \n \n Retour\n \n
    \n
    \n {startDate && endDate && <>\n \n }\n
    \n
    \n\n
    \n
    \n setSalaryId(Number(choice!.value))}\n disabled={isLoading}\n />\n
    \n
    \n \n {Granted(accessRights.EDIT_COUNTER, salaryId) && single && }\n
    \n
    \n {isLoading || !single ?\n :\n <>\n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {single.weeks.map((reporting: WeekReporting, index: number) => <>\n \n \n \n \n \n \n \n \n \n \n \n {!reporting.disabled && \n \n \n }\n )}\n \n
    \n Détail par semaine\n
    \n Semaine\n \n Heures contractuelles\n \n Vol. heures\n \n Heures supplémentaires\n \n Absences\n \n Delta\n \n Compteur semaine\n \n Total compteur\n \n\n
    \n \n {reporting.weekNumber}\n \n \n {!reporting.disabled && single.salary.information?.contractWorkingTime}\n \n {reporting.workingTime}\n \n {reporting.overTime || }\n \n {reporting.unaccountedAbsence || }\n \n {reporting.delta || }\n \n {!reporting.disabled && <>\n {reporting.counterSaved ? [ , reporting.counterSaved, ] : }\n
    \n {reporting.counterSaved !== reporting.counter && \n à date : {reporting.counter}\n }\n }\n
    \n {!reporting.disabled && <>\n {!reporting.disabled && <> {reporting.counterSavedTotal ? [ , reporting.counterSavedTotal, ] : }\n
    \n {reporting.counterTotal !== reporting.counterSavedTotal && \n à date : {reporting.counterTotal}\n }}\n }\n
    \n {!reporting.disabled &&
    \n \n \n {Granted(accessRights.EDIT_COUNTER, salaryId) && single && }\n
    }\n
    \n {reporting.dates.start ? format(new Date(reporting.dates.start), 'dd/MM') : \"no start date\"}\n
    \n \n
    \n {reporting.dates.end ? format(new Date(reporting.dates.end), 'dd/MM') : \"no end date\"}\n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n }\n
    \n\n {single &&
    \n
    \n
    \n
    \n
    Dates
    \n \n
    \n
    \n
    \n }\n selectsStart\n onChange={(dt: Date) => setPendingStartDate(dt)}\n endDate={pendingEndDate}\n minDate={new Date(single.salary.information!.startDate)}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n \n \n \n }\n selectsEnd\n onChange={(dt: Date) => setPendingEndDate(dt)}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    }\n \n}\n\nexport default ReportingShow;","import * as React from \"react\";\n\nimport ReportingShow from \"../../../components/reporting/show\";\n\nconst ReportingShowPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default ReportingShowPage;","import React, {useEffect} from \"react\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {useDispatch} from \"react-redux\";\n\nconst Error403 : React.FC = () => {\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle(\"Erreur 403\"))\n }, [])\n\n return (\n
    \n
    \n \n
    \n

    \n Acces refusé\n

    \n

    \n Vous ne disposez pas des droits necessaires pour accéder à cette page.\n

    \n
    \n );\n}\n\nexport default Error403;","import React from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as actions from \"../../../actions/auth\"\nimport * as api from \"../../../adapters/auth\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport {closeSidebar} from \"../../../actions/rightSidebar\";\nimport {showAlertSuccess} from \"../../../actions/alert\";\n\nconst Password: React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state.auth);\n\n const formik = useFormik({\n initialValues: {\n previousPassword: '',\n password: '',\n repeatPassword: '',\n },\n validationSchema: Yup.object().shape({\n password: Yup.string().required(),\n repeatPassword: Yup.string().required(),\n }),\n onSubmit: (values, formikHelpers) => {\n dispatch(actions.editPassword())\n api.password(values).then(data => {\n dispatch(actions.editPasswordSuccess())\n dispatch(showAlertSuccess('Mot de passe mis à jour'))\n dispatch(closeSidebar());\n }).catch(error => {\n dispatch(actions.editPasswordFailure(error.response.data.message))\n formikHelpers.setSubmitting(false);\n })\n },\n });\n\n return (\n
    \n {state.error &&
    \n {state.error}\n
    }\n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n\n \n
    \n
    \n );\n}\n\nexport default Password;","import * as React from \"react\";\n\nimport Password from \"../../../components/auth/password\";\n\nconst PasswordPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default PasswordPage;","import React, {useEffect} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as api from \"../../../adapters/company\";\nimport * as salaryApi from \"../../../adapters/salary\";\nimport * as actions from \"../../../actions/companies\";\nimport * as authActions from \"../../../actions/auth\";\nimport * as salaryActions from \"../../../actions/salary\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_COMPANY} from \"../../../constants/rightSidebar\";\nimport {Company} from \"../../../models/companies\";\nimport {Salary} from \"../../../models/salary\";\nimport {Granted, GrantedMany} from \"../../../security/granted\";\n\nconst NoCompany:React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state.companies);\n const salary: Salary = useSelector((state: RootStateOrAny) => state.auth.user.currentSalary);\n\n useEffect(() => {\n dispatch(actions.fetchCompanies());\n api.list().then(data => dispatch(actions.fetchCompaniesSuccess(data.data)))\n }, [])\n\n const updateSalary = (id: number) => {\n dispatch(salaryActions.editSalary());\n salaryApi.edit({\n firstname: salary.firstname,\n lastname: salary.lastname,\n tel: salary.tel,\n email: salary.email,\n birthdate: new Date(salary.birthdate),\n companies: [...salary.companies.map(c => c.id!), id],\n address: salary.address!,\n }, salary.id).then(data => {\n dispatch(salaryActions.editSalarySuccess(data.data))\n dispatch(authActions.selectAccount(data.data))\n })\n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n

    \n Aucun point de vente accessible\n

    \n
    \n {Granted(accessRights.EDIT_COMPANY) && <>\n \n }\n
    \n {state.payload.length && GrantedMany([accessRights.EDIT_SALARY, accessRights.LIST_COMPANY]) && <>\n

    \n Veuillez séléctionner un point de vente dans la liste ci-dessous.\n

    \n
      \n {!!state.payload.length && state.payload.map((company: Company, index: number) => \n
      \n
      \n \n
      \n
      \n
      \n updateSalary(company.id!)}\n className=\"form-check-input\"\n type=\"checkbox\"\n id={`flexSwitchCheck${index}`}/>\n
      \n
      \n
      \n )}\n
    }\n
    \n
    \n
    \n \n}\n\nexport default NoCompany;","import React, {useEffect} from \"react\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {useDispatch} from \"react-redux\";\n\nconst Error500 : React.FC = () => {\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle(\"Erreur 500\"))\n }, [])\n\n return (\n
    \n
    \n \n
    \n

    \n Une erreur est survenue.\n

    \n

    \n Si l'erreur persiste, contactez nous sur contact@sivan.io\n

    \n
    \n );\n}\n\nexport default Error500;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport {useParams} from \"react-router-dom\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../adapters/auth\";\nimport FormError from \"../../../utils/formError\";\nimport {AxiosError} from \"axios\";\nimport * as actions from \"../../../actions/auth\";\nimport {showAlertSuccess} from \"../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\n\nconst PasswordRequest:React.FC = () => {\n\n const params: {email?: string} = useParams()\n const [confirmEmail, setConfirmEmail] = useState(false)\n const [confirmedEmail, setConfirmedEmail] = useState()\n const [error, setError] = useState()\n const [code, setCode] = useState(\"\")\n const [currentKey, setCurrentKey] = useState(0)\n const [isValidating, setIsValidating] = useState(false)\n const [isValidated, setIsValidated] = useState(false)\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (code.length){\n let next = document.getElementById(\"digit-\" + code.length) as HTMLInputElement\n\n if (next){\n next.focus()\n }\n\n if (code.length === 6){\n verifyCode();\n }\n }\n\n }, [code])\n\n const verifyCode = () => {\n setIsValidating(true)\n setError(\"\");\n api.requestPasswordValidation({\n code: code,\n email: confirmedEmail!,\n })\n .then(data => {\n setIsValidating(false);\n if (data.data.success){\n setIsValidated(true)\n }else{\n setIsValidating(false);\n setIsValidated(false);\n setCode(\"\")\n setError(data.data.message);\n if (data.data.code === \"expired\"){\n setConfirmEmail(false)\n setConfirmedEmail(undefined)\n }\n }\n }).catch(error => {\n if (error.response){\n setError(error.response.data.message);\n setIsValidating(false);\n setIsValidated(false);\n setCode(\"\")\n }\n })\n }\n\n const formik = useFormik({\n initialValues: {email: params.email || \"\"},\n validationSchema: Yup.object().shape({\n email: Yup.string().email('Email non valide').required('Veuillez renseigner votre email')\n }),\n onSubmit: (values, formikHelpers) => {\n setError(\"\");\n api.requestPassword(values)\n .then(data => {\n setConfirmedEmail(values.email)\n setConfirmEmail(true)\n formikHelpers.setSubmitting(false);\n }).catch((error: AxiosError) => {\n if (error.response?.status === 400){\n setError(error.response.data.message);\n }\n formikHelpers.setSubmitting(false);\n })\n }\n });\n\n const formikPwd = useFormik({\n initialValues: {\n password: '',\n repeatPassword: '',\n },\n validationSchema: Yup.object().shape({\n password: Yup.string().min(6, '6 caractères minimum').required(\"Champs requis\"),\n repeatPassword: Yup.string().min(6, '6 caractères minimum').required(\"Champs requis\"),\n }),\n onSubmit: (values, formikHelpers) => {\n api.passwordReset({...values, ...{code: code!, email: confirmedEmail!}})\n .then(data => {\n if (data.data.success){\n dispatch(actions.loginSuccess(data.data.auth));\n dispatch(showAlertSuccess('Mot de passe mis à jour'));\n }else{\n setError(data.data.message);\n formikHelpers.setSubmitting(false)\n if (data.data.code === \"expired\"){\n setConfirmEmail(false)\n setConfirmedEmail(undefined)\n }\n }\n }).catch((error: AxiosError) => {\n if (error.response?.status){\n setError(error.response.data.message)\n }\n formikHelpers.setSubmitting(false)\n })\n },\n });\n\n const onKeyPress = (e: any, index: number) => {\n\n e.preventDefault();\n\n if ([0,1,2,3,4,5,6,7,8,9].includes(Number(e.key))){\n if (code.length === index){\n setCode(code + e.key)\n }else if(code.length > index){\n let _array = code.split('');\n _array[index] = e.key;\n setCode(_array.join(''))\n }\n }\n }\n\n return <>\n
    \n
    \n
    \n

    \n Mot de passe oublié\n

    \n \"\"/\n
    \n
    \n {error &&
    \n {error}\n
    }\n {!confirmEmail ?
    \n\n
    \n \n \n \n
    \n \n
    : (!isValidated ? <>\n

    \n Un code de confirmation vous à été envoyé sur {confirmedEmail}\n \n Veuillez le saisir dans les cases ci-dessous.\n

    \n
    \n
    \n onKeyPress(e, 0)}\n />\n onKeyPress(e, 1)}\n />\n onKeyPress(e, 2)}\n />\n
    \n \n
    \n onKeyPress(e, 3)}\n />\n onKeyPress(e, 4)}\n />\n onKeyPress(e, 5)}\n />\n {isValidating &&
    \n
    \n Loading...\n
    Validation en cours...\n
    }\n
    \n
    \n : <>\n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n \n
    \n )}\n
    \n
    \n
    \n \n}\n\nexport default PasswordRequest;","import * as React from \"react\";\n\nimport PasswordRequest from \"../../../components/auth/passwordRequest\";\n\nconst PasswordRequestPage : React.FC = () => {\n return (\n \n )\n}\n\nexport default PasswordRequestPage;","import * as xhr from \"../xhr\";\n\ninterface listPayload {\n offset : number,\n role : string,\n query? : string,\n}\n\nexport function list(requestData: listPayload, signal: AbortSignal){\n return xhr.post('user/list', requestData, {signal: signal});\n}\nexport function show(id: number, signal?: AbortSignal){\n return xhr.get('user/show/' + id, {signal: signal});\n}","export const ADD_USER = 'ADD_USER';\nexport const ADD_USER_SUCCESS = 'ADD_USER_SUCCESS';\nexport const ADD_USER_FAILURE = 'ADD_USER_FAILURE';\n\nexport const EDIT_USER = 'EDIT_USER';\nexport const EDIT_USER_SUCCESS = 'EDIT_USER_SUCCESS';\nexport const EDIT_USER_FAILURE = 'EDIT_USER_FAILURE';\n\nexport const FETCH_USERS = 'FETCH_USERS';\nexport const FETCH_USERS_SUCCESS = 'FETCH_USERS_SUCCESS';\nexport const FETCH_USERS_FAILURE = 'FETCH_USERS_FAILURE';\n\nexport const SHOW_USER = 'SHOW_USER';\nexport const SHOW_USER_SUCCESS = 'SHOW_USER_SUCCESS';\nexport const SHOW_USER_FAILURE = 'SHOW_USER_FAILURE';\n","import * as types from \"../../../constants/admin/user\";\nimport * as models from \"../../../models/auth\";\n\nexport const addUser = () => {\n return {\n type: types.ADD_USER,\n }\n}\n\nexport const addUserSuccess = (user: models.User) => {\n return {\n type: types.ADD_USER_SUCCESS,\n user: user,\n }\n}\n\nexport const addUserFailure = (error: string) => {\n return {\n type: types.ADD_USER_FAILURE,\n error: error\n }\n}\n\nexport const editUser = () => {\n return {\n type: types.EDIT_USER,\n }\n}\n\nexport const editUserSuccess = (user: models.User) => {\n return {\n type: types.EDIT_USER_SUCCESS,\n user: user\n }\n}\n\nexport const editUserFailure = (error: string) => {\n return {\n type: types.EDIT_USER_FAILURE,\n user: error\n }\n}\n\nexport const fetchUsers = () => {\n return {\n type: types.FETCH_USERS,\n }\n}\n\nexport const fetchUsersFailure = (error: string) => {\n return {\n type: types.FETCH_USERS_FAILURE,\n error: error\n }\n}\n\nexport const fetchUsersSuccess = (users: models.Users) => {\n return {\n type: types.FETCH_USERS_SUCCESS,\n users: users\n }\n}\n\n\nexport const showUser = () => {\n return {\n type: types.SHOW_USER,\n }\n}\nexport const showUserSuccess = (user: models.User) => {\n return {\n type: types.SHOW_USER_SUCCESS,\n user: user\n }\n}\n\nexport const showUserFailure = (error: string) => {\n return {\n type: types.SHOW_USER_FAILURE,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../../actions/header\";\nimport LoaderList from \"../../../../utils/loaderList\";\nimport * as api from \"../../../../adapters/user\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {User, Users} from \"../../../../models/auth\";\nimport * as actions from \"../../../../actions/admin/user\";\nimport {PAGINATION} from \"../../../../constants/global\";\n\nconst UserList: React.FC = () => {\n\n const [role, setRole] = useState(\"ROLE_ADMIN\")\n const [offset, setOffset] = useState(0);\n const [scrollBottom, setScrollBottom] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [query, setQuery] = useState();\n const [isLoading, setIsLoading] = useState(false);\n const [isFiltering, setFiltering] = useState(false);\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const users: Users = useSelector((state: RootStateOrAny) => state.user.payload);\n\n useEffect(() => {\n dispatch(setPageTitle('Admin', 'utilisateurs'))\n let abortController = new AbortController();\n\n setIsLoading(true);\n api.list({query: query, offset: 0, role: role}, abortController.signal).then(data => { \n setIsLast(data.data.length < PAGINATION);\n setIsLoading(false);\n setOffset( 1);\n dispatch(actions.fetchUsersSuccess(data.data));\n }).catch(error => dispatch(axiosError(error)))\n\n return () => abortController.abort();\n }, [])\n\n useEffect(() => {\n let controller = new AbortController();\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setFiltering(true);\n setOffset(0)\n api.list({query: query, offset: 0, role: role}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchUsersSuccess(data.data));\n setFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, 1000);\n\n return () => {\n clearTimeout(timer)\n controller.abort()\n }\n }, [query])\n\n useEffect(() => {\n const controller = new AbortController();\n\n if(scrollBottom && offset > 0 && !isLast){\n setIsLoading(true)\n api.list({query: query, offset: offset, role: role}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchUsersSuccess([...users, ...data.data]));\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => {\n container.removeEventListener(\"scroll\", onScrollBottom)\n controller.abort();\n }\n\n }, [scrollBottom])\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n return (\n <>\n
    \n
    \n
    \n
    \n
    \n \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n \n \n \n
    \n
    \n
    \n {!!users.length ? users.map((user: User, index: number) => ([\n \n
    \n
    \n

    {user.information?.firstname} {user.information?.lastname}

    \n
    \n

    \n {user.email}\n

    \n
    \n
    \n \n ]))\n :\n !isLoading ? : ''}\n {!isLoading && !isLast && users.length && }\n {isLoading && !users.length && }\n {isLoading && !!users.length && }\n
    \n
    \n
    \n
    \n
    \n
    \n
    Filtrer les utilisateurs
    \n \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default UserList;","import React from \"react\";\nimport { RootStateOrAny, useSelector } from \"react-redux\";\n\nimport { User } from \"../../../../../models/auth\";\n\nexport const UserInformationShow:React.FC = () => {\n const user: User = useSelector((state: RootStateOrAny) => state.user.single);\n \n return (\n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Nom\n \n {user.information?.lastname}\n
    \n Prénom\n \n {user.information?.firstname}\n
    \n Tél\n \n {user.information?.tel}\n
    \n Email\n \n {user.email}\n
    \n Date de création\n \n {user.createdAt}\n
    \n
    \n
    \n )\n}\n\nexport default UserInformationShow;","import React, {useEffect, useState} from \"react\";\nimport {CompanyGroup} from \"../../../../../../models/companyGroup\";\nimport {Company} from \"../../../../../../models/companies\";\nimport format from \"../../../../../../utils/locale\";\nimport * as salaryApi from \"../../../../../../adapters/salary\";\nimport * as salaryActions from \"../../../../../../actions/salary\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport SmallLoader from \"../../../../../../utils/loader/small\";\nimport {Salary} from \"../../../../../../models/salary\";\nimport {SWITCH_USER} from \"../../../../../../adapters/xhr\";\nimport * as authActions from \"../../../../../../actions/auth\";\nimport * as userApi from \"../../../../../../adapters/user\";\n\ninterface UserCompanyGroupShowInterface {\n single: CompanyGroup,\n setSingle: (companyGroup?: CompanyGroup) => void;\n}\n\nconst UserCompanyGroupShow:React.FC = (props) => {\n\n const {single, setSingle} = props;\n const state = useSelector((state: RootStateOrAny) => state);\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(salaryActions.fetchSalaries())\n salaryApi.list({}, {headers: [JSON.stringify({'x-switch-user': state.user.single.email})]})\n .then(data => dispatch(salaryActions.fetchSalariesSuccess(data.data)))\n }, [single])\n\n return <>\n
    \n
    \n
    \n

    \n {single.id} - {single.title}\n

    \n
    \n
    \n \n
    \n
    \n
    \n

    \n {single.companies?.length} Points de vente\n

    \n \n \n \n \n \n \n \n \n \n \n \n {single.companies?.map((company: Company) => \n \n \n \n \n \n )}\n \n
    \n Nom\n \n Date de création\n \n Ville\n \n CP\n \n Adresse\n
    {company.title} {company.createdAt} {company?.address?.city} {company?.address?.zip} {company?.address?.address}
    \n
    \n
    \n

    \n {single.salariesCount} Collaborateurs\n

    \n
    \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {state.salary.isLoading && }\n {state.salary.payload.map((salary: Salary) => \n \n \n \n \n \n \n \n \n \n )}\n \n
    \n #\n \n Métier\n \n Role\n \n Date d'ajout\n \n Actif\n \n Compte\n \n Email\n \n Tél\n \n\n
    Chargement en cours...
    {salary.title} {salary.information?.job.title} {salary.accessLevel.title} {salary.createdAt} {salary.activated ? : } {salary.user ? : }\n \n {salary.tel}\n {salary.user?.activated}\n
    \n
    \n
    \n\n
    \n\n \n}\n\nexport default UserCompanyGroupShow;","import React, {useState} from \"react\";\nimport {RootStateOrAny, useSelector} from \"react-redux\";\nimport {User} from \"../../../../../../models/auth\";\nimport {CompanyGroup} from \"../../../../../../models/companyGroup\";\nimport format from \"../../../../../../utils/locale\";\nimport UserCompanyGroupShow from \"../show\";\n\n\nconst UserCompanyGroupList:React.FC = () => {\n\n const user:User = useSelector((state: RootStateOrAny) => state.user.single)\n const [single, setSingle] = useState();\n\n if (single){\n return \n }\n\n return <>\n
    \n {user.companyGroups.map((companyGroup: CompanyGroup) =>
    \n
    \n
    \n

    \n {companyGroup.title}\n

    \n
    \n {companyGroup.activated ? <> Activé : <> Désactiver }\n
    \n
    \n

    \n {companyGroup.companies?.length} Points de ventes\n

    \n

    \n {companyGroup.salariesCount || 0} Collaborateurs\n

    \n

    \n Créé le {companyGroup.createdAt}\n

    \n \n
    \n
    )}\n
    \n \n}\n\nexport default UserCompanyGroupList;","import { get, post } from \"../../xhr\"\n\nexport function show(id: number) {\n return get(`admin/billing/${id}`);\n}\n\nexport function linkSellsyIdToCompanyGroup(companyGroupId: number, data: { sellsyId: number }) {\n return post(`admin/billing/link_sellsy_id/company_group/${companyGroupId}`, data);\n}\n\nexport function linkSellsyIdToCompany(companyId: number, data: { sellsyId: number }) {\n return post(`admin/billing/link_sellsy_id/company/${companyId}`, data);\n}\n\nexport function createCompanySubscription(companyId: number, data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) {\n return post(`admin/billing/subscriptions/create/${companyId}`, data);\n}\n\nexport function updateCompanySubscription(companyId: number, data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) {\n return post(`admin/billing/subscriptions/update/${companyId}`, data);\n}\n\nexport function linkBillingCompanyToSalary(salaryId: number, companyId: number) {\n return get(`admin/billing/salaries/${salaryId}/link_billing_company/${companyId}`);\n}","import React, { useState, useEffect } from 'react'\nimport { useDispatch } from \"react-redux\"\n\nimport Loading from \"../../../../../../components/common/Loading\"\nimport EmptyList from \"../../../../../../components/common/EmptyList\"\n\nimport { ISellsyContact } from '../../../../../../@types/models/Sellsy/ISellsyContact'\n\nimport { list, getContactById } from \"../../../../../../adapters/sellsy\"\nimport { linkSellsyIdToCompanyGroup } from \"../../../../../../adapters/admin/billing\"\n\nimport { showAlertSuccess, showAlertDanger } from \"../../../../../../actions/alert\"\nimport moment from \"moment\"\n\ninterface IProps {\n selectedCompanyGroupId: number;\n companyGroupSellsyId?: number;\n userEmail: string;\n data: ISellsyContact|undefined|null;\n setSellsyContact: (data: ISellsyContact|undefined|null) => void;\n onRefresh: (noLoading?: string) => void;\n}\n\nconst SellsyContactCard: React.FC = ({ selectedCompanyGroupId, companyGroupSellsyId, userEmail, data, setSellsyContact, onRefresh }) => {\n const dispatch = useDispatch()\n\n const [selectedTab, setSelectedTab] = useState(1)\n const [companyGroupIsLoading, setCompanyGroupIsLoading] = useState(false)\n const [associatedSellsyContact, setAssociatedSellsyContact] = useState(undefined)\n const [query, setQuery] = useState(userEmail || '')\n\n const onFetchAssociatedSellsyContactData = async () => {\n try {\n if (companyGroupSellsyId) {\n setCompanyGroupIsLoading(true)\n const { data } = await getContactById({ sellsyId: companyGroupSellsyId })\n setAssociatedSellsyContact(data)\n }\n } catch (error) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n } finally {\n setCompanyGroupIsLoading(false)\n }\n }\n\n const onSearchSellsyContactData = async () => {\n try {\n if (query.length === 0) {\n setSellsyContact(undefined)\n return\n }\n\n setCompanyGroupIsLoading(true)\n const { data } = await list({ query, offset: 0 })\n\n if (data.data.length > 0) {\n setSellsyContact(data.data[0])\n } else {\n setSellsyContact(null)\n }\n } catch (error) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n } finally {\n setCompanyGroupIsLoading(false)\n }\n }\n\n const onLinkSellsyId = async (sellsyId: number) => {\n try {\n await linkSellsyIdToCompanyGroup(selectedCompanyGroupId, { sellsyId: sellsyId })\n onRefresh('noLoading')\n dispatch(showAlertSuccess('Groupement lié à Sellsy avec succès'))\n } catch (error) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n }\n }\n\n useEffect(() => {\n if (companyGroupSellsyId) {\n onFetchAssociatedSellsyContactData()\n }\n }, [companyGroupSellsyId])\n\n return (\n
    \n setSelectedTab(1)}\n >\n Contact Sellsy associé\n \n setSelectedTab(2)}\n >\n Rechercher contact Sellsy\n \n\n {selectedTab === 1 &&\n
    \n
    \n
    \n

    \n Informations du contact Sellsy associé\n

    \n
    \n
    \n\n {companyGroupIsLoading &&\n \n }\n\n {!companyGroupIsLoading &&\n
    \n {!associatedSellsyContact &&\n \n }\n\n {associatedSellsyContact &&\n
    \n
    \n

    \n ID: {associatedSellsyContact.id}\n

    \n

    \n civilité: {associatedSellsyContact?.civility || '-'}\n

    \n

    \n nom: {`${associatedSellsyContact?.first_name} ${associatedSellsyContact?.last_name}`}\n

    \n

    \n position: {associatedSellsyContact?.position || '-'}\n

    \n
    \n\n
    \n

    \n email: {associatedSellsyContact?.email || '-'}\n

    \n

    \n téléphone: {associatedSellsyContact?.phone_number || '-'}\n

    \n

    \n mobile: {associatedSellsyContact?.mobile_number || '-'}\n

    \n

    \n fax: {associatedSellsyContact?.fax_number || '-'}\n

    \n
    \n\n
    \n

    \n crée le: {associatedSellsyContact?.created ? moment(associatedSellsyContact.created).format('DD MMMM YYYY') : '-'}\n

    \n

    \n mis à jour le: {associatedSellsyContact?.updated ? moment(associatedSellsyContact.updated).format('DD MMMM YYYY') : '-'}\n

    \n

    \n archivé: {associatedSellsyContact?.is_archived ? 'Archivé' : 'Non'}\n

    \n
    \n
    \n }\n
    \n }\n
    \n }\n\n {selectedTab === 2 &&\n
    \n
    \n
    \n

    \n Rechercher un contact Sellsy\n

    \n
    \n\n
    \n setQuery(e.target.value)}\n />\n \n \n \n
    \n
    \n\n {companyGroupIsLoading &&\n \n }\n\n {!companyGroupIsLoading &&\n
    \n {!data &&\n \n }\n\n {data &&\n
    \n
    \n

    \n ID: {data.id}\n

    \n

    \n civilité: {data?.civility || '-'}\n

    \n

    \n nom: {`${data?.first_name} ${data?.last_name}`}\n

    \n

    \n position: {data?.position || '-'}\n

    \n
    \n\n
    \n

    \n email: {data?.email || '-'}\n

    \n

    \n téléphone: {data?.phone_number || '-'}\n

    \n

    \n mobile: {data?.mobile_number || '-'}\n

    \n

    \n fax: {data?.fax_number || '-'}\n

    \n
    \n\n
    \n

    \n crée le: {data?.created ? moment(data.created).format('DD MMMM YYYY') : '-'}\n

    \n

    \n mis à jour le: {data?.updated ? moment(data.updated).format('DD MMMM YYYY') : '-'}\n

    \n

    \n archivé: {data?.is_archived ? 'Archivé' : 'Non'}\n

    \n
    \n\n
    \n onLinkSellsyId(data.id)}\n >\n Lier ce contact au groupement\n \n
    \n
    \n }\n
    \n }\n
    \n }\n
    \n )\n}\n\nexport default SellsyContactCard","import { ISubscriptionModel } from \"../../models/subscriptions\"\n\nexport const SUBSCRIPTIONS_MODELS_NORMAL_RATE: ISubscriptionModel[] = [\n //First one of this list is for testing subscription\n {\n 'min': 1,\n 'max': 2,\n 'amount': 0.0,\n 'tax_rate': 20,\n 'model_id': 46165012,\n },\n {\n 'min': 1,\n 'max': 8,\n 'amount': 49.90,\n 'tax_rate': 20,\n 'model_id': 46009113\n },\n {\n 'min': 9,\n 'max': 16,\n 'amount': 69.99,\n 'tax_rate': 20,\n 'model_id': 46009190\n },\n {\n 'min': 17,\n 'max': 24,\n 'amount': 89.99,\n 'tax_rate': 20,\n 'model_id': 46009244\n },\n {\n 'min': 25,\n 'max': 32,\n 'amount': 109.99,\n 'tax_rate': 20,\n 'model_id': 46009313\n },\n {\n 'min': 33,\n 'max': 40,\n 'amount': 129.99,\n 'tax_rate': 20,\n 'model_id': 46009339\n },\n {\n 'min': 41,\n 'max': 48,\n 'amount': 149.99,\n 'tax_rate': 20,\n 'model_id': 46009381\n },\n];\n\nexport const SUBSCRIPTIONS_MODELS_REDUCED_RATE: ISubscriptionModel[] = [\n //First one of this list is for testing subscription\n {\n 'min': 1,\n 'max': 2,\n 'amount': 0.0,\n 'tax_rate': 20,\n 'model_id': 46165012,\n },\n {\n 'min': 1,\n 'max': 8,\n 'amount': 45.90,\n 'tax_rate': 20,\n 'model_id': 48841273\n },\n {\n 'min': 9,\n 'max': 16,\n 'amount': 62.99,\n 'tax_rate': 20,\n 'model_id': 48868467\n },\n {\n 'min': 17,\n 'max': 24,\n 'amount': 80.99,\n 'tax_rate': 20,\n 'model_id': 48868480\n },\n {\n 'min': 25,\n 'max': 32,\n 'amount': 99.99,\n 'tax_rate': 20,\n 'model_id': 48868545\n },\n {\n 'min': 33,\n 'max': 40,\n 'amount': 117.99,\n 'tax_rate': 20,\n 'model_id': 48868681\n },\n {\n 'min': 41,\n 'max': 48,\n 'amount': 135.99,\n 'tax_rate': 20,\n 'model_id': 48868728\n },\n];","import React, { useState } from 'react'\n\nimport EmptyList from \"../../../../../common/EmptyList\"\nimport DatePicker from \"react-datepicker\"\n\nimport { Subscription } from '../../../../../../models/companies'\n\nimport { SUBSCRIPTIONS_MODELS_NORMAL_RATE, SUBSCRIPTIONS_MODELS_REDUCED_RATE } from \"../../../../../../constants/subscriptions\"\n\nimport DateCustomInput from \"../../../../../../utils/customInput\"\nimport moment from \"../../../../../../utils/moment.utils\"\n\ninterface IProps {\n subscriptions: Subscription[];\n companyGroupBillingRate: number|null;\n subscriptionIsLoading: boolean;\n onCreateSubscription: (data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => void;\n onUpdateSubscription: (data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => void;\n}\n\nconst CompanySubscriptionsItem: React.FC = ({ subscriptions, companyGroupBillingRate, subscriptionIsLoading, onCreateSubscription, onUpdateSubscription }) => { \n const [selectedSubscriptionModel, setSelectedSubscriptionModel] = useState(undefined)\n const [subscriptionStartDate, setSubsciptionStartDate] = useState(new Date())\n const [billingStartDate, setBillingStartDate] = useState(new Date())\n const [showUpdateSubscription, setShowUpdateSubscription] = useState(undefined)\n const [selectedToUpdateSubscriptionModel, setSelectedToUpdateSubscriptionModel] = useState(undefined)\n\n const subscriptionModelsOptions = companyGroupBillingRate === 2 ? SUBSCRIPTIONS_MODELS_REDUCED_RATE : SUBSCRIPTIONS_MODELS_NORMAL_RATE;\n const hasActiveSubscription = subscriptions.findIndex(sub => !sub.canceled) !== -1\n\n const onSubmit = async () => { \n if (selectedSubscriptionModel && subscriptionStartDate) {\n onCreateSubscription({\n subscriptionModelId: selectedSubscriptionModel,\n subscriptionStartDate,\n billingStartDate\n })\n }\n }\n\n return (\n
    \n
    \n {subscriptions.length === 0 &&\n \n }\n\n {subscriptions.map(subscription => {\n const model = SUBSCRIPTIONS_MODELS_NORMAL_RATE.concat(SUBSCRIPTIONS_MODELS_REDUCED_RATE).find(model => model.model_id === subscription.modelId)\n\n return (\n
    \n
    \n
    \n

    \n {model ? `${subscription.amount.toFixed(2)}€ (entre ${model.min} et ${model.max} salariés)` : '???'}\n

    \n

    \n {subscription?.capacity?.used} comptes utilisés sur {subscription?.capacity?.max} max \n

    \n {!subscription?.canceled &&\n
    \n

    setShowUpdateSubscription(showUpdateSubscription ? undefined : subscription.id)}>\n Modifier l’abonnement\n

    \n
    \n }\n
    \n\n
    \n

    \n Début: {moment(subscription.startDate).format('DD MMMM YYYY')}\n

    \n

    \n Fin: {moment(subscription?.endDate).format('DD MMMM YYYY')}\n

    \n
    \n\n
    \n \n {subscription?.canceled ? 'Annulé' : 'Actif'}\n \n
    \n
    \n\n {showUpdateSubscription === subscription.id &&\n
    \n

    \n Modifier l’abonnement en cours\n

    \n \n
    \n
    \n { \n setSelectedToUpdateSubscriptionModel(e.target.value === \"0\" ? undefined : parseInt(e.target.value))\n }}\n >\n \n {subscriptionModelsOptions.map(subscriptionModel => (\n \n ))}\n \n
    \n\n
    \n }\n className={\"form-control\"}\n onChange={(date: Date) => {\n setSubsciptionStartDate(date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={subscriptionStartDate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={subscriptionStartDate}\n />\n
    \n\n
    \n }\n className={\"form-control\"}\n onChange={(date: Date) => {\n setBillingStartDate(date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={billingStartDate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={billingStartDate}\n />\n
    \n \n
    \n {\n if (selectedToUpdateSubscriptionModel && subscriptionStartDate) {\n onUpdateSubscription({\n subscriptionModelId: selectedToUpdateSubscriptionModel,\n subscriptionStartDate,\n billingStartDate\n })\n setShowUpdateSubscription(undefined)\n }\n }}\n >\n Valider\n \n
    \n
    \n
    \n }\n
    \n )\n })}\n
    \n\n {!hasActiveSubscription &&\n
    \n

    \n Ajouter un nouvel abonnement\n

    \n\n
    \n
    \n { \n setSelectedSubscriptionModel(e.target.value === \"0\" ? undefined : parseInt(e.target.value))\n }}\n >\n \n {subscriptionModelsOptions.map(subscriptionModel => (\n \n ))}\n \n
    \n\n
    \n }\n className={\"form-control\"}\n onChange={(date: Date) => {\n setSubsciptionStartDate(date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={subscriptionStartDate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={subscriptionStartDate}\n />\n
    \n\n
    \n }\n className={\"form-control\"}\n onChange={(date: Date) => {\n setBillingStartDate(date)\n }}\n dateFormat={\"E dd MMM uuuu\"}\n selected={billingStartDate}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={billingStartDate}\n />\n
    \n\n
    \n \n Valider\n \n
    \n
    \n
    \n }\n
    \n )\n}\n\nexport default CompanySubscriptionsItem","import React, { useState } from 'react'\n\nimport CompanySubscriptionsItem from \"./CompanySubscriptionsItem\"\n\nimport { Company } from '../../../../../../models/companies'\nimport { ISellsyContactCompany } from '../../../../../../@types/models/Sellsy/ISellsyContactCompany'\n\ninterface IProps {\n company: Company;\n sellsyCompanies: ISellsyContactCompany[];\n companyGroupBillingRate: number|null;\n subscriptionIsLoading: boolean;\n onLink: (sellsyId: number) => void;\n onCreateSubscription: (data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => void;\n onUpdateSubscription: (data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => void;\n}\n\nconst CompanyLinkItem: React.FC = ({ company, sellsyCompanies, companyGroupBillingRate, subscriptionIsLoading, onLink, onCreateSubscription, onUpdateSubscription }) => { \n const [selectedSellsyCompanyId, setSelectedSellsyCompanyId] = useState(undefined)\n const [showSubscriptions, setShowSubscriptions] = useState(false)\n \n return (\n
    \n
    \n
    \n \n {company?.sellsyId ? 'Liée à Sellsy' : 'Non liée à Sellsy'}\n \n

    \n {company?.title}\n

    \n
    \n

    setShowSubscriptions(!showSubscriptions)}>\n Gérer les abonnements\n

    \n
    \n
    \n\n
    \n { \n setSelectedSellsyCompanyId(e.target.value === \"0\" ? undefined : parseInt(e.target.value))\n }}\n >\n \n {sellsyCompanies.map(sellsyCompany => (\n \n ))}\n \n
    \n\n
    \n {\n if (selectedSellsyCompanyId) {\n onLink(selectedSellsyCompanyId)\n }\n }}\n >\n Lier à Sellsy\n \n
    \n
    \n\n {showSubscriptions &&\n \n }\n
    \n )\n}\n\nexport default CompanyLinkItem","import React, { useState, useEffect } from 'react'\nimport { useDispatch } from \"react-redux\"\n\nimport EmptyList from \"../../../../../common/EmptyList\"\nimport CompanyLinkItem from \"./CompanyLinkItem\"\n\nimport { CompanyGroup } from '../../../../../../models/companyGroup'\nimport { Company } from \"../../../../../../models/companies\"\nimport { ISellsyContactCompany } from '../../../../../../@types/models/Sellsy/ISellsyContactCompany'\n\nimport { BILLING_RATE_OPTIONS } from '../../../../../../constants/companyGroup'\n\nimport { updateCompanyGroup } from '../../../../../../adapters/admin/companyGroup'\nimport { listContactCompanies } from \"../../../../../../adapters/sellsy\"\nimport { linkSellsyIdToCompany, createCompanySubscription, updateCompanySubscription } from \"../../../../../../adapters/admin/billing\"\nimport { showAlertSuccess, showAlertInfo, showAlertDanger } from \"../../../../../../actions/alert\"\n\ninterface IProps {\n selectedCompanyGroup: CompanyGroup;\n setSelectedCompanyGroup: (data: CompanyGroup) => void;\n companies: Company[];\n sellsyContactId: number;\n companyGroupBillingRate: number|null;\n onRefresh: (noLoading?: string) => void;\n}\n\nconst CompanyGroupCompaniesCard: React.FC = ({ selectedCompanyGroup, setSelectedCompanyGroup, companies, sellsyContactId, companyGroupBillingRate, onRefresh }) => {\n const dispatch = useDispatch()\n \n const [sellsyCompanies, setSellsyCompanies] = useState([])\n const [subscriptionIsLoading, setSubscriptionIsLoading] = useState(false)\n\n const onFetchContactCompanies = async () => {\n try {\n const { data } = await listContactCompanies({ contactId: sellsyContactId })\n \n if (data.data.length === 0) {\n dispatch(showAlertInfo('Aucune entreprise associée à ce contact côté Sellsy'))\n return\n }\n\n setSellsyCompanies(data.data)\n } catch (error: any) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n }\n }\n\n const onLinkCompanySellsyId = async (companyId: number, sellsyId: number) => {\n try {\n await linkSellsyIdToCompany(companyId, { sellsyId: sellsyId })\n onRefresh('noLoading')\n dispatch(showAlertSuccess('L’entreprise a été liée à Sellsy'))\n } catch (error: any) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n }\n }\n\n const onCreateCompanySubscription = async (companyId: number, data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => {\n try {\n setSubscriptionIsLoading(true)\n await createCompanySubscription(companyId, data)\n onRefresh('noLoading')\n dispatch(showAlertSuccess('Nouvel abonnement ajouté'))\n setSubscriptionIsLoading(false)\n } catch (error: any) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n } finally {\n setSubscriptionIsLoading(false)\n }\n }\n\n const onUpdateCompanySubscription = async (companyId: number, data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => {\n try {\n setSubscriptionIsLoading(true)\n await updateCompanySubscription(companyId, data)\n onRefresh('noLoading')\n dispatch(showAlertSuccess('L’abonnement a été modifié'))\n setSubscriptionIsLoading(false)\n } catch (error: any) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n } finally {\n setSubscriptionIsLoading(false)\n }\n }\n\n useEffect(() => {\n onFetchContactCompanies()\n }, [])\n\n return (\n
    \n
    \n

    \n Entreprises du compte\n

    \n\n
    \n el.value === selectedCompanyGroup.billingRate)?.value}\n onChange={async (e: any) => { \n const response = await updateCompanyGroup(selectedCompanyGroup.id, { billingRate: e.target.value })\n setSelectedCompanyGroup(response.data)\n }}\n >\n \n {BILLING_RATE_OPTIONS.map(option => (\n \n ))}\n \n
    \n
    \n\n {companies.length === 0 &&\n \n }\n\n {companies.length > 0 &&\n
    \n {companies.map(company => (\n {\n if (company?.id) {\n onLinkCompanySellsyId(company.id, sellsyId)\n }\n }}\n onCreateSubscription={(data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => {\n if (company?.id) {\n onCreateCompanySubscription(company.id, data)\n }\n }}\n onUpdateSubscription={(data: { subscriptionModelId: number, subscriptionStartDate: Date, billingStartDate: Date }) => {\n if (company?.id) {\n onUpdateCompanySubscription(company.id, data)\n }\n }}\n />\n ))}\n
    \n }\n
    \n )\n}\n\nexport default CompanyGroupCompaniesCard","import { get, post } from \"../../xhr\"\n\nexport function updateCompanyGroup(companyGroupId: number, data: { billingRate: number }) {\n return post(`admin/company_group/edit/${companyGroupId}`, data);\n}","import React, { useState } from 'react'\nimport { Company } from '../../../../../../models/companies'\n\nimport { Salary } from '../../../../../../models/salary'\n\ninterface IProps {\n salary: Salary;\n companies: Company[];\n onLink: (salaryId: number, companyId: number) => void;\n}\n\nconst CompanySalaryLinkItem: React.FC = ({ salary, companies, onLink }) => {\n const [selectedCompanyId, setSelectedCompanyId] = useState(undefined)\n\n return (\n
    \n
    \n

    \n {`${salary?.firstname} ${salary?.lastname}`}\n

    \n
    \n\n
    \n \n {salary?.billingCompany ? `${salary.billingCompany?.title}` : 'Aucune entreprise de facturation'}\n \n
    \n\n
    \n { \n setSelectedCompanyId(e.target.value === \"0\" ? undefined : parseInt(e.target.value))\n }}\n >\n \n {companies.map(company => (\n \n ))}\n \n
    \n\n
    \n {\n if (selectedCompanyId) {\n onLink(salary.id, selectedCompanyId)\n }\n }}\n >\n Lier pour facturation\n \n
    \n
    \n )\n}\n\nexport default CompanySalaryLinkItem","import React from 'react'\nimport { useDispatch } from \"react-redux\"\n\nimport EmptyList from \"../../../../../common/EmptyList\"\nimport CompanySalaryLinkItem from \"./CompanySalaryLinkItem\"\n\nimport { Salary } from \"../../../../../../models/salary\"\nimport { Company } from '../../../../../../models/companies'\n\nimport { linkBillingCompanyToSalary } from \"../../../../../../adapters/admin/billing\"\nimport { showAlertSuccess, showAlertInfo, showAlertDanger } from \"../../../../../../actions/alert\"\n\ninterface IProps {\n salaries: Salary[];\n companies: Company[];\n onRefresh: (noLoading?: string) => void;\n}\n\nconst CompanySalariesCard: React.FC = ({ salaries, companies, onRefresh }) => {\n const dispatch = useDispatch()\n\n const onLinkSalaryToBillingCompany = async (salaryId: number, companyId: number) => {\n try {\n await linkBillingCompanyToSalary(salaryId, companyId)\n onRefresh('noLoading')\n dispatch(showAlertSuccess('L’entreprise a été liée au salarié'))\n } catch (error) {\n dispatch(showAlertDanger(error?.response?.data?.message))\n }\n }\n\n return (\n
    \n
    \n

    \n Salariés du compte\n

    \n
    \n\n {salaries.length === 0 &&\n \n }\n\n {salaries.length > 0 &&\n
    \n {salaries.map(salary => (\n \n ))}\n
    \n }\n
    \n )\n}\n\nexport default CompanySalariesCard","import React, { useState, useEffect } from \"react\"\nimport { useDispatch } from \"react-redux\"\n\nimport Loading from \"../../../../../components/common/Loading\"\nimport EmptyList from \"../../../../../components/common/EmptyList\"\nimport SellsyContactCard from \"./_components/SellsyContactCard\"\nimport CompanyGroupCompaniesCard from \"./_components/CompanyGroupCompaniesCard\"\nimport CompanySalariesCard from \"./_components/CompanySalariesCard\"\n\nimport { User } from \"../../../../../models/auth\";\nimport { CompanyGroup } from \"../../../../../models/companyGroup\"\nimport { ISellsyContact } from '../../../../../@types/models/Sellsy/ISellsyContact'\n\nimport { show } from \"../../../../../adapters/user\"\nimport { showAlertDanger } from \"../../../../../actions/alert\";\n\ninterface IProps {\n userId: number;\n}\n\nconst UserBilling: React.FC = ({ userId }) => {\n const dispatch = useDispatch()\n\n const [userIsLoading, setUserIsLoading] = useState(false)\n const [userData, setUserData] = useState(undefined) \n const [selectedCompanyGroup, setSelectedCompanyGroup] = useState(undefined)\n const [sellsyContact, setSellsyContact] = useState(undefined)\n \n const onFetchUserData = async (noLoading?: string) => {\n try {\n if (!noLoading) {\n setUserIsLoading(true)\n }\n const { data } = await show(userId)\n \n setUserData({\n ...data.user,\n companyGroupSalaries: data.salaries\n })\n } catch (error) {\n dispatch(showAlertDanger('Impossible de récupérer les données de l’utilisateur'))\n } finally {\n setUserIsLoading(false)\n }\n }\n\n useEffect(() => {\n if (userId) {\n onFetchUserData()\n }\n }, [userId])\n\n return (\n
    \n {userIsLoading &&\n \n }\n\n {!userIsLoading && userData &&\n
    \n
    \n {userData?.companyGroups.map(companyGroup => (\n {\n setSelectedCompanyGroup(companyGroup)\n }}\n >\n

    \n {companyGroup?.title || '???'}\n

    \n \n {companyGroup?.sellsyId ? 'Lié à Sellsy' : 'Non lié à Sellsy'}\n \n

    \n SellsyId : {companyGroup?.sellsyId || '-'}\n

    \n

    \n Nb Salariés : {userData?.companyGroupSalaries?.filter(salary => salary.activated)?.length || \"-\"}\n

    \n

    \n Version plateforme : {companyGroup?.version || '-'}\n

    \n

    \n Version abonnement : {companyGroup?.billingVersion || '-'}\n

    \n \n ))}\n
    \n\n
    \n
    \n {!selectedCompanyGroup &&\n \n }\n\n {selectedCompanyGroup?.id &&\n
    \n onFetchUserData(noLoading)}\n />\n\n {selectedCompanyGroup?.sellsyId &&\n
    \n group.id === selectedCompanyGroup.id)?.companies || []}\n sellsyContactId={selectedCompanyGroup.sellsyId}\n companyGroupBillingRate={selectedCompanyGroup?.billingRate}\n onRefresh={onFetchUserData}\n />\n\n salary.activated) || []}\n companies={userData.companyGroups.find(group => group.id === selectedCompanyGroup.id)?.companies || []}\n onRefresh={onFetchUserData}\n />\n
    \n }\n
    \n }\n
    \n
    \n
    \n }\n
    \n )\n}\n\nexport default UserBilling;","import React, { useEffect, useState } from \"react\";\nimport { useParams, Link } from \"react-router-dom\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport UserInformationShow from \"./information\";\nimport UserCompanyGroupList from \"./companyGroup/list\";\nimport UserBilling from \"./billing\";\n\nimport { User } from \"../../../../models/auth\";\n\nimport * as api from \"../../../../adapters/user\";\nimport * as actions from \"../../../../actions/admin/user\";\nimport * as authActions from \"../../../../actions/auth\";\nimport { setPageTitle } from \"../../../../actions/header\";\nimport { axiosError } from \"../../../../actions/axios\";\n\nimport BgSingle from \"../../../../utils/background/single\";\n\nconst UserShow: React.FC = () => {\n const params:{id: string} = useParams();\n const dispatch = useDispatch();\n\n const user: User = useSelector((state: RootStateOrAny) => state.user.payload.find((a: User) => String(a.id) === params.id))\n const state = useSelector((state: RootStateOrAny) => state.user) \n const auth = useSelector((state: RootStateOrAny) => state.auth)\n \n const [tab, setTab] = useState(\"information\");\n\n useEffect(() => {\n let controller = new AbortController();\n\n dispatch(actions.showUser());\n\n if (user && params.id) { \n dispatch(actions.showUserSuccess(user));\n dispatch(setPageTitle('Admin / Utilisateurs', user.information?.firstname + ' ' + user.information?.lastname))\n } else if (!user && params.id) {\n api.show(Number(params.id), controller.signal).then(data => { \n dispatch(actions.showUserSuccess(data.data))\n dispatch(setPageTitle('Admin / Utilisateurs', data.data.information?.firstname + ' ' + data.data.information?.lastname))\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [params.id])\n\n if (!state.single) {\n return (\n \n )\n }\n\n const Nav = () => {\n return (\n
    \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n\n \n Retour\n \n
    \n )\n }\n\n return (\n
    \n
    \n \n\n
    \n\n {tab === \"information\" && }\n {tab === \"account\" && }\n {tab === \"billing\" && user?.id &&\n \n }\n
    \n )\n}\n\nexport default UserShow;\n\n","import * as React from \"react\";\n\nimport UserList from \"../../../components/admin/user/list\";\nimport UserShow from \"../../../components/admin/user/show\";\n\nconst UserPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default UserPage;","export const ADD_ACTIVITY = 'ADD_ACTIVITY';\nexport const ADD_ACTIVITY_SUCCESS = 'ADD_ACTIVITY_SUCCESS';\nexport const ADD_ACTIVITY_FAILURE = 'ADD_ACTIVITY_FAILURE';\n\nexport const EDIT_ACTIVITY = 'EDIT_ACTIVITY';\nexport const EDIT_ACTIVITY_SUCCESS = 'EDIT_ACTIVITY_SUCCESS';\nexport const EDIT_ACTIVITY_FAILURE = 'EDIT_ACTIVITY_FAILURE';\n\nexport const FETCH_ACTIVITIES = 'FETCH_ACTIVITIES';\nexport const FETCH_ACTIVITIES_SUCCESS = 'FETCH_ACTIVITIES_SUCCESS';\nexport const FETCH_ACTIVITIES_FAILURE = 'FETCH_ACTIVITIES_FAILURE';\n\nexport const SHOW_ACTIVITY = 'SHOW_ACTIVITY';\nexport const SHOW_ACTIVITY_SUCCESS = 'SHOW_ACTIVITY_SUCCESS';\nexport const SHOW_ACTIVITY_FAILURE = 'SHOW_ACTIVITY_FAILURE';\n","import * as types from \"../../constants/activity\";\nimport * as models from \"../../models/activity\";\n\nexport const addActivity = () => {\n return {\n type: types.ADD_ACTIVITY,\n }\n}\n\nexport const addActivitySuccess = (activity: models.Activity) => {\n return {\n type: types.ADD_ACTIVITY_SUCCESS,\n activity: activity,\n }\n}\n\nexport const addActivityFailure = (error: string) => {\n return {\n type: types.ADD_ACTIVITY_FAILURE,\n activity: null,\n activities: null,\n error: error\n }\n}\n\nexport const editActivity = () => {\n return {\n type: types.EDIT_ACTIVITY,\n }\n}\nexport const editActivitySuccess = (activity: models.Activity) => {\n return {\n type: types.EDIT_ACTIVITY_SUCCESS,\n activity: activity\n }\n}\nexport const editActivityFailure = (error: string) => {\n return {\n type: types.EDIT_ACTIVITY,\n activity: null,\n activities: null,\n error: error\n }\n}\n\nexport const fetchActivities = () => {\n return {\n type: types.FETCH_ACTIVITIES,\n }\n}\n\nexport const fetchActivitiesFailure = (error: string) => {\n return {\n type: types.FETCH_ACTIVITIES_FAILURE,\n activity: null,\n activities: [],\n error: error\n }\n}\n\nexport const fetchActivitiesSuccess = (activities: models.Activities) => {\n return {\n type: types.FETCH_ACTIVITIES_SUCCESS,\n activity: null,\n activities: activities\n }\n}\n\n\nexport const showActivity = () => {\n return {\n type: types.SHOW_ACTIVITY,\n }\n}\nexport const showActivitySuccess = (activity: models.Activity) => {\n return {\n type: types.SHOW_ACTIVITY_SUCCESS,\n activity: activity\n }\n}\nexport const showActivityFailure = (error: string) => {\n return {\n type: types.SHOW_ACTIVITY_FAILURE,\n activity: null,\n activities: null,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/activity\";\nimport * as actions from \"../../../actions/activity\";\nimport * as models from \"../../../models/activity\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_NEW_ACTIVITY} from \"../../../constants/rightSidebar\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {Granted} from \"../../../security/granted\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\n\nconst ActivityList: React.FC = () => {\n const state = useSelector((state: RootStateOrAny) => state.activity); \n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const [query, setQuery] = useState();\n\n useEffect(() => {\n\n dispatch(setPageTitle('Activités'))\n\n api.select().then(data => {\n dispatch(actions.fetchActivitiesSuccess(data.data))\n }).catch(error => dispatch(axiosError(error)))\n }, [])\n\n return
    \n
    \n
    \n
    \n
    \n \n \n \n {\n setQuery(e.target.value)\n }} className=\"form-control bg-white border-0\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
    \n
    \n
    \n {Granted(accessRights.EDIT_ACTIVITY) &&
    \n \n
    }\n
    \n {state.payload.length ? state.payload.filter((Activity: models.Activity) => !query || Activity.title.toLowerCase().includes(query.toLowerCase())).map((Activity: models.Activity, index: number) => ([\n \n
    \n
    \n {Activity.title}\n
    \n
    \n {Activity.company.title}\n
    \n
    \n
    \n
    \n
    \n {Activity.icon ? : ''}\n
    \n
    \n
    \n
    \n
    \n
    \n \n ]))\n :\n \n }\n
    \n}\n\nexport default ActivityList;","import {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Activity, ActivityNeed, ActivityNeeds} from \"../../../../models/activity\";\nimport * as api from \"../../../../adapters/activity/needs\";\nimport React, {BaseSyntheticEvent, useEffect, useState} from \"react\";\nimport Loader from \"../../../../utils/loader\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {editActivitySuccess} from \"../../../../actions/activity\";\nimport {Job} from \"../../../../models/job\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {ACTIVITY_NEED_ADD} from \"../../../../constants/rightSidebar\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport {axiosError} from \"../../../../actions/axios\";\n\nconst ActivityNeedTable = () => {\n\n const dispatch = useDispatch();\n let activity: Activity = useSelector((state: RootStateOrAny) => state.activity.single)\n const [needs, setNeeds] = useState([...activity.needs!]);\n const [dateRange, setDateRange] = useState<[Date|null, Date|null]>([null, null])\n const [start, end] = dateRange;\n\n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n let _start = new Date(activity.company.timesheet.openAt)\n let _end = new Date(activity.company.timesheet.closeAt)\n setDateRange([_start, _end])\n setNeeds([...activity.needs!])\n\n return () => {\n setDateRange([null,null]);\n }\n }, [activity])\n\n const getTimeOccurrences = (includeLastSlot?: boolean) => {\n let times = [];\n\n if (start && end){\n let _start = new Date(),\n _end = new Date();\n\n _start.setTime(start.getTime())\n _end.setTime(end.getTime())\n\n do {\n times.push(_start.getHours().toLocaleString('fr', {minimumIntegerDigits:2}) + ':' + _start.getMinutes().toLocaleString('fr', {minimumIntegerDigits:2}))\n _start.setTime(_start.getTime() + (30*60000));\n } while (includeLastSlot ? _start <= _end : _start < _end)\n\n }\n\n return times;\n }\n\n function arraySearch(arr: ActivityNeeds, day: number, time: string, job?: Job) {\n for (let i=0; i {\n\n let key = arraySearch(needs, day, time, job)\n if (key !== false){\n needs[key].val = val\n }else{\n needs.push({day: day, time: time, val: val, job: job})\n }\n\n setNeeds([...needs]);\n\n api.posts(activity.id!, {day: day, job: job?.id, val: val, time: time})\n }\n\n const handleTypeChange = (e: BaseSyntheticEvent) => {\n setIsLoading(true)\n api.type(activity.id!, e.target.value).then(data => {\n dispatch(editActivitySuccess(data.data))\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)));\n }\n\n if (!start || !end){\n return \n }\n\n return (\n <>\n
    \n
    \n {Granted(accessRights.EDIT_ACTIVITY) &&
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    }\n {Granted(accessRights.EDIT_ACTIVITY) &&
    \n \n
    }\n {Granted(accessRights.EDIT_ACTIVITY) && activity.needType === 2 &&
    \n {\n setIsLoading(true)\n api.jobs(activity.id!, choices).then(data => {\n dispatch(editActivitySuccess(data.data))\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n }}\n values={activity.needJobs ? activity.needJobs.map(job => ({label: job.title, value: job.id!})) : []}\n />\n
    }\n
    \n
    \n {isLoading ? :\n
    \n \n \n \n \n {activity.needType === 2 && }\n \n \n \n \n \n \n \n \n \n \n\n {getTimeOccurrences().map((time: string) => {\n\n switch (activity.needType){\n case 1:\n return (\n \n \n {[1,2,3,4,5,6,7].map((day: number) => {\n\n let item = needs.find((need: ActivityNeed) => (need.day === day && need.time === time && !need.job))\n let val = item?.val;\n\n return (\n \n )\n })}\n \n )\n case 2:\n return (\n \n \n \n\n {[1,2,3,4,5,6,7].map((day: number) => {\n\n let items = needs.filter((need: ActivityNeed) => (need.day === day && need.time === time))\n\n return (\n )}\n )}\n \n )\n }\n\n return <> \n })}\n \n
    HeureMétiersLun.Mar.Mer.Jeu.Ven.Sam.Dim.
    \n \n {time}\n \n \n
    \n {Granted(accessRights.EDIT_ACTIVITY) && addOrEdit(day, time, (val || 0) - 1)}\n // onClick={() => handleChange(day + '_' + time, (val || 0) - 1)}\n className={'d-none d-md-block btn' + (val && val > 0 ? \" text-danger\" : ' text-light')}>\n \n }\n \n {val ? val : }\n \n {Granted(accessRights.EDIT_ACTIVITY) && addOrEdit(day, time, (val || 0) + 1)}\n className={'d-none d-md-block btn text-success'}>\n \n }\n
    \n
    \n \n {time}\n \n \n \n \n {activity.needJobs?.map(job => \n \n )}\n \n\n
    \n {job.title}\n
    \n
    \n \n \n {activity.needJobs?.map(job => {\n\n let val = items.find(item => item.job?.id === job.id!)?.val || 0\n\n return <>\n \n addOrEdit(day, time, (val || 0) - 1, job)}\n // onClick={() => handleChange(day + '_' + time, (val || 0) - 1, job)}\n className={'d-none d-md-block ' + (val && val > 0 ? \" text-danger\" : ' text-light')}>\n \n \n \n addOrEdit(day, time, (val || 0) + 1, job)}\n // onClick={() => handleChange(day + '_' + time, (val || 0) + 1, job)}\n className={'d-none d-md-block text-success'}>\n \n \n \n \n })}\n \n
    \n {val ? val : }\n
    \n
    }\n \n )\n}\n\nexport default ActivityNeedTable;","import * as xhr from \"../../xhr\";\nimport {Choices} from \"../../../utils/bootstrapSelect\";\n\nexport function posts(id: number, requestData: {day: number, time: string, val: number, job?: number}){\n return xhr.post('activity/'+ id +'/need', requestData);\n}\n\nexport function postsMany(id: number, requestData: {days: number[], start: string, end: string, val: number, job?: number}){\n return xhr.post('activity/'+ id +'/many_needs', requestData);\n}\n\nexport function jobs(id: number, requestData: Choices){\n return xhr.post('activity/'+ id +'/need_jobs', requestData);\n}\n\nexport function type(id: number, type: number){\n return xhr.get('activity/'+ id +'/need_type/' + type);\n}\n\n","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/activity\";\nimport * as api from \"../../../adapters/activity\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EDIT_ACTIVITY} from \"../../../constants/rightSidebar\";\nimport ActivityNeedTable from \"./need\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {Activity} from \"../../../models/activity\";\nimport {Granted} from \"../../../security/granted\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BgSingle from \"../../../utils/background/single\";\n\nexport const ActivityShow: React.FC = () => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const state = useSelector((state: RootStateOrAny) => state.activity)\n\n useEffect(() => {\n dispatch(actions.showActivity())\n if (state.payload.find((l: Activity) => l.id === Number(params.id)) && params.id){\n dispatch(actions.showActivitySuccess(state.payload.find((l: Activity) => l.id === Number(params.id))))\n dispatch(setPageTitle('Activité', state.payload.find((l: Activity) => l.id === Number(params.id)).title))\n }else if(params.id){\n api.get(params.id).then(data => {\n dispatch((actions.showActivitySuccess(data.data)))\n dispatch(setPageTitle('Activité', data.data.title))\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [params.id])\n\n function activate(){\n api.activate(Number(params.id)).then(resp => dispatch((actions.showActivitySuccess(resp.data))))\n }\n function deactivate(){\n api.deactivate(Number(params.id)).then(resp => dispatch((actions.showActivitySuccess(resp.data))))\n }\n\n if (!state.single || !params.id){\n return \n }\n\n return
    \n
    \n
    \n
    \n
    \n
    \n \n {state.single.company.title}\n \n
    \n \n {state.single.description}\n \n
    \n {Granted(accessRights.EDIT_ACTIVITY) &&
    \n \n
    }\n {Granted(accessRights.DELETE_ACTIVITY) &&
    \n {state.single.activated ? :\n }\n
    }\n
    \n
    \n
    \n \n
    \n
    \n}\n\nexport default ActivityShow;","import * as React from \"react\";\n\nimport ActivityList from \"../../components/activity/list\";\nimport ActivityShow from \"../../components/activity/show\";\n\nconst ActivityPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default ActivityPage;","export const ADD_TASK_GROUP = 'ADD_TASK_GROUP';\nexport const ADD_TASK_GROUP_SUCCESS = 'ADD_TASK_GROUP_SUCCESS';\nexport const ADD_TASK_GROUP_FAILURE = 'ADD_TASK_GROUP_FAILURE';\n\nexport const EDIT_TASK_GROUP = 'EDIT_TASK_GROUP';\nexport const EDIT_TASK_GROUP_SUCCESS = 'EDIT_TASK_GROUP_SUCCESS';\nexport const EDIT_TASK_GROUP_FAILURE = 'EDIT_TASK_GROUP_FAILURE';\n\nexport const FETCH_TASK_GROUPS = 'FETCH_TASK_GROUPS';\nexport const FETCH_TASK_GROUPS_SUCCESS = 'FETCH_TASK_GROUPS_SUCCESS';\nexport const FETCH_TASK_GROUPS_FAILURE = 'FETCH_TASK_GROUPS_FAILURE';\n\nexport const SHOW_TASK_GROUP = 'SHOW_TASK_GROUP';\nexport const SHOW_TASK_GROUP_SUCCESS = 'SHOW_TASK_GROUP_SUCCESS';\nexport const SHOW_TASK_GROUP_FAILURE = 'SHOW_TASK_GROUP_FAILURE';\n\nexport const CANCEL_TASK_GROUP_SUCCESS = 'CANCEL_TASK_GROUP_SUCCESS';\n\n\n\n","import * as types from \"../../constants/taskGroup\";\nimport * as models from \"../../models/taskGroup\";\n\nexport const addTaskGroup = () => {\n return {\n type: types.ADD_TASK_GROUP,\n }\n}\n\nexport const addTaskGroupInformation = () => {\n return {\n type: types.ADD_TASK_GROUP,\n }\n}\n\nexport const addTaskGroupSuccess = (taskGroup: models.TaskGroup) => {\n return {\n type: types.ADD_TASK_GROUP_SUCCESS,\n taskGroup: taskGroup,\n }\n}\n\nexport const addTaskGroupFailure = (error: string) => {\n return {\n type: types.ADD_TASK_GROUP_FAILURE,\n taskGroup: null,\n taskGroups: null,\n error: error\n }\n}\n\nexport const editTaskGroup = () => {\n return {\n type: types.EDIT_TASK_GROUP,\n }\n}\n\nexport const editTaskGroupSuccess = (taskGroup: models.TaskGroup) => {\n return {\n type: types.EDIT_TASK_GROUP_SUCCESS,\n taskGroup: taskGroup,\n }\n}\n\nexport const fetchTaskGroups = () => {\n return {\n type: types.FETCH_TASK_GROUPS,\n }\n}\n\nexport const fetchTaskGroupsFailure = (error: string) => {\n return {\n type: types.FETCH_TASK_GROUPS_FAILURE,\n taskGroup: null,\n taskGroups: [],\n error: error\n }\n}\n\nexport const fetchTaskGroupsSuccess = (taskGroups: models.TaskGroups) => {\n return {\n type: types.FETCH_TASK_GROUPS_SUCCESS,\n taskGroup: null,\n taskGroups: taskGroups\n }\n}\n\n\nexport const showTaskGroup = () => {\n return {\n type: types.SHOW_TASK_GROUP,\n }\n}\nexport const showTaskGroupSuccess = (taskGroup: models.TaskGroup) => {\n return {\n type: types.SHOW_TASK_GROUP_SUCCESS,\n taskGroup: taskGroup\n }\n}\nexport const cancelTaskGroupSuccess = (taskGroup: models.TaskGroup) => {\n return {\n type: types.CANCEL_TASK_GROUP_SUCCESS,\n taskGroup: taskGroup\n }\n}\nexport const showTaskGroupFailure = (error: string) => {\n return {\n type: types.SHOW_TASK_GROUP_FAILURE,\n taskGroup: null,\n taskGroups: null,\n error: error\n }\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport * as models from \"../../../models/taskGroup\";\n\nimport * as accessRights from \"../../../constants/accessRight\";\nimport { FORM_EDIT_TASK_GROUP, FORM_NEW_TASK_GROUP } from \"../../../constants/rightSidebar\";\nimport { PAGINATION } from \"../../../constants/global\";\n\nimport * as api from \"../../../adapters/taskGroup\";\nimport * as actions from \"../../../actions/taskGroup\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { showAlertSuccess } from \"../../../actions/alert\";\n\nimport IsGranted from \"../../../security/isGranted\";\nimport Loader from \"../../../utils/loader\";\n\nconst TaskGroupList: React.FC = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.taskGroup);\n\n const [isLoading, setIsLoading] = useState(true);\n const [query, setQuery] = useState()\n const [offset, setOffset] = useState(0)\n const [isLast, setIsLast] = useState(false)\n const [scrollBottom, setScrollBottom] = useState(false)\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n const deactivate = (group: models.TaskGroup) => {\n api.deactivate(group.id!).then(() => {\n dispatch(actions.cancelTaskGroupSuccess(group));\n dispatch(showAlertSuccess('Groupe de tâche désactivé'));\n })\n }\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n dispatch(actions.fetchTaskGroups())\n setIsLoading(true);\n setOffset(0)\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchTaskGroupsSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => {\n dispatch(actions.fetchTaskGroupsFailure(error.response.data.message))\n })\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n\n if(scrollBottom && offset > 0 && !isLast){\n setIsLoading(true)\n api.list({query: query, offset: offset}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchTaskGroupsSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setScrollBottom(false);\n setOffset(prevState => prevState + 1)\n }).catch(error => {\n dispatch(actions.fetchTaskGroupsFailure(error.response.data.message))\n })\n }\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => container.removeEventListener(\"scroll\", onScrollBottom)\n }, [scrollBottom])\n\n useEffect(() => {\n dispatch(setPageTitle('Tâches'))\n dispatch(setHelpProductSheetIds([7]))\n\n dispatch(actions.fetchTaskGroups());\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchTaskGroupsSuccess(data.data))\n if (!state.single && !!data.data.length){\n dispatch(actions.showTaskGroupSuccess(data.data[0]))\n }\n\n setOffset( 1);\n }).catch(error => {\n dispatch(actions.fetchTaskGroupsFailure(error.response.data.message))\n })\n\n return () => {\n dispatch(setHelpProductSheetIds([]))\n }\n }, [])\n\n return (\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n setQuery(e.target.value)\n }} type=\"search\" className={'form-control border-0'}/>\n
    \n
    \n\n
    \n {IsGranted(accessRights.EDIT_TASK_GROUP) &&\n dispatch(openSidebar(FORM_NEW_TASK_GROUP))}\n >\n Ajouter\n \n }\n
    \n
    \n\n {state.isLoading ?\n \n :\n
    \n {!!state.payload.length && state.payload.map((taskGroup: models.TaskGroup, index: number) =>\n
    \n
    \n\n
    \n
    \n
    \n
    {taskGroup.title}
    \n
    \n
    \n\n
    \n {IsGranted(accessRights.EDIT_TASK_GROUP) &&\n dispatch(openSidebar(FORM_EDIT_TASK_GROUP, {...taskGroup}))}\n >\n \n \n }\n\n {IsGranted(accessRights.DELETE_TASK_GROUP) &&\n deactivate(taskGroup)}\n >\n \n \n }\n
    \n
    \n
    \n
    \n )}\n
    \n }\n
    \n )\n}\n\nexport default TaskGroupList;","import * as React from \"react\";\n\nimport TaskGroupList from \"../../../components/taskGroup/list\";\n\nconst TaskGroupListPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default TaskGroupListPage;","import * as types from \"../../constants/task\";\nimport * as models from \"../../models/task\";\n\nexport const addTask = () => {\n return {\n type: types.ADD_TASK,\n }\n}\n\nexport const addTaskInformation = () => {\n return {\n type: types.ADD_TASK,\n }\n}\n\nexport const addTaskSuccess = (task: models.Task) => {\n return {\n type: types.ADD_TASK_SUCCESS,\n task: task,\n }\n}\n\nexport const addTaskFailure = (error: string) => {\n return {\n type: types.ADD_TASK_FAILURE,\n task: null,\n tasks: null,\n error: error\n }\n}\n\nexport const editTask = () => {\n return {\n type: types.EDIT_TASK,\n }\n}\n\nexport const editTaskSuccess = (task: models.Task) => {\n return {\n type: types.EDIT_TASK_SUCCESS,\n task: task,\n }\n}\n\nexport const deleteTaskSuccess = (task: models.Task) => {\n return {\n type: types.DELETE_TASK_SUCCESS,\n task: task,\n }\n}\n\nexport const editTaskStatusSuccess = (status: models.TaskStatus) => {\n return {\n type: types.EDIT_TASK_STATUS_SUCCESS,\n status: status,\n }\n}\n\nexport const fetchTasks = () => {\n return {\n type: types.FETCH_TASKS,\n }\n}\n\nexport const fetchTasksFailure = (error: string) => {\n return {\n type: types.FETCH_TASKS_FAILURE,\n task: null,\n tasks: [],\n error: error\n }\n}\n\nexport const fetchTasksSuccess = (tasks: models.Tasks) => {\n return {\n type: types.FETCH_TASKS_SUCCESS,\n task: null,\n tasks: tasks\n }\n}\n\n\nexport const showTask = () => {\n return {\n type: types.SHOW_TASK,\n }\n}\nexport const showTaskSuccess = (task: models.Task) => {\n return {\n type: types.SHOW_TASK_SUCCESS,\n task: task\n }\n}\nexport const showTaskFailure = (error: string) => {\n return {\n type: types.SHOW_TASK_FAILURE,\n task: null,\n tasks: null,\n error: error\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport * as api from \"../../../adapters/task\"\nimport * as taskGroupApi from \"../../../adapters/taskGroup\"\nimport {FORM_EDIT_TASK, FORM_NEW_TASK, FORM_NEW_TASK_GROUP_CUSTOM_FIELD} from \"../../../constants/rightSidebar\";\nimport {TaskGroupCustomField} from \"../../../models/taskGroup/customField\";\nimport * as taskModels from \"../../../models/task\";\nimport format from \"../../../utils/locale\";\nimport {Salary} from \"../../../models/salary\";\nimport {CustomFieldValue} from \"../../../constants/taskGroup/customField\";\nimport {Link, useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/task\";\nimport {showTaskGroup, showTaskGroupSuccess} from \"../../../actions/taskGroup\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {TaskGroup} from \"../../../models/taskGroup\";\nimport {Tooltip} from \"bootstrap\"\nimport {Task} from \"../../../models/task\";\nimport * as statusApi from \"../../../adapters/task/status\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport BgSingle from \"../../../utils/background/single\";\nimport {Granted, GrantedAny} from \"../../../security/granted\";\n\nconst TaskGroupShow:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state)\n const dispatch = useDispatch();\n const [isLoading, setIsLoading] = useState(true);\n const [isFiltering, setIsFiltering] = useState(false);\n const [query, setQuery] = useState();\n const params: {id: string} = useParams();\n const taskGroup = useSelector((state:RootStateOrAny) => state.taskGroup.payload.find((a: TaskGroup) => a.id!.toString() === params.id))\n const [currentTab, setCurrentTab] = useState('single')\n const [statusUpdating, setStatusUpdating] = useState(false)\n\n useEffect(() => {\n setIsLoading(true)\n dispatch(showTaskGroup());\n if (params.id){\n if (taskGroup){\n dispatch(showTaskGroupSuccess(taskGroup))\n dispatch(setPageTitle('Tâches', taskGroup.title))\n }else if(!taskGroup){\n taskGroupApi.show(params.id).then(data => {\n dispatch(showTaskGroupSuccess(data.data))\n dispatch(setPageTitle('Tâches', data.data.title))\n })\n }\n }\n\n api.list({}, params.id).then(data => {\n dispatch(actions.fetchTasksSuccess(data.data))\n setIsLoading(false)\n }).catch(error => {\n dispatch(actions.fetchTasksFailure(error.response.data.message))\n })\n\n }, [params.id])\n\n useEffect(() => {\n let tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n tooltipTriggerList.map(function (tooltipTriggerEl) {\n return new Tooltip(tooltipTriggerEl)\n })\n }, [state.task.payload])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setIsFiltering(true);\n api.list({}, params.id).then(data => {\n dispatch(actions.fetchTasksSuccess(data.data))\n setIsFiltering(false);\n }).catch(error => {\n dispatch(actions.fetchTasksFailure(error.response.data.message))\n })\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n const removeTask = (task: taskModels.Task) => {\n api.cancel(String(task.id!)).then(() => dispatch(actions.deleteTaskSuccess(task)))\n }\n\n if (!taskGroup || !params.id) {\n return \n }\n\n const updateStatus = (task: Task, status: number) => {\n setStatusUpdating(task.exDate)\n if (task.status){\n statusApi.edit({exDate: task.exDate, status: status}, task.status.id, task.id!).then((data) => {\n task.status = data.data;\n dispatch(actions.editTaskSuccess(task))\n setStatusUpdating(false)\n })\n }else{\n statusApi.create({exDate: task.exDate, status: status}, task.id!).then((data) => {\n task.status = data.data;\n dispatch(actions.editTaskSuccess(task))\n setStatusUpdating(false)\n })\n }\n }\n\n const NavMenu = () => {\n return
    \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n }\n\n return
    \n
    \n
    \n
    \n
    \n \n Retour\n \n
    \n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-light\" placeholder=\"Rechercher une tâche\" aria-describedby=\"search-addon\" />\n
    \n
    \n {GrantedAny([\n accessRights.EDIT_TASK,\n accessRights.EDIT_TASK_GROUP,\n accessRights.DELETE_TASK_GROUP\n ]) &&
    \n
    \n \n
      \n {Granted(accessRights.EDIT_TASK) &&
    • \n {\n dispatch(openSidebar(FORM_NEW_TASK))\n }} className=\"dropdown-item\">\n Ajouter une tâche\n \n
    • }\n {Granted(accessRights.EDIT_TASK_GROUP) &&
    • \n {\n dispatch(openSidebar(FORM_NEW_TASK_GROUP_CUSTOM_FIELD))\n }} className=\"dropdown-item\">\n Ajouter un champ personalisé\n \n
    • }\n
    \n
    \n
    }\n
    \n \n
    \n {currentTab === 'multiple' &&
    \n \n \n \n \n \n \n \n \n \n {!isLoading && state.task.payload.filter((task: Task) => task.recurrence.type > 1).length ? state.task.payload.filter((task: Task) => task.recurrence.type > 1).map((task: taskModels.Task, index: number) => ([\n \n \n \n \n {Granted(accessRights.EDIT_TASK, undefined, task) && }\n \n ]))\n :\n \n \n \n }\n
    \n Titre\n \n recurrence\n \n Collaborateurs\n
    \n \n {task.title}\n \n
    \n \n \n {task.description}\n \n \n
    \n {task.recurrence.description}\n {/*{task.beginAt} - {task.endAt}*/}\n {format(new Date(task.beginAt), 'HH:mm')} {task.endAt && <> {format(new Date(task.endAt), 'HH:mm')}}\n \n {task.salaries?.map((salary: Salary, index) => {\n return (\n \n {salary.firstname} {salary.lastname[0]}.{index + 1 < task.salaries.length && ', '}\n \n )\n })}\n \n
    \n \n \n \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n
    \n {isLoading ?\n \n :\n }\n
    \n
    }\n\n {currentTab === 'single' &&
    \n \n \n \n \n \n \n \n {taskGroup.customFields && taskGroup.customFields.map((customField: TaskGroupCustomField, index: number) => (\n \n ))}\n \n \n \n {!isLoading && state.task.payload.filter((task: Task) => task.recurrence.type === 1).length ? state.task.payload.filter((task: Task) => task.recurrence.type === 1).map((task: taskModels.Task, index: number) => ([\n \n \n \n \n \n {taskGroup.customFields && taskGroup.customFields.map((customField: TaskGroupCustomField, index: number) =>\n \n )}\n {Granted(accessRights.EDIT_TASK, undefined, task) && }\n \n ]))\n :\n \n \n }\n \n
    \n Titre\n \n Dates\n \n Collaborateurs\n \n Statut\n \n {customField.title}\n
    \n \n {task.title}\n \n
    \n \n \n {task.description}\n \n \n
    \n {task.allDay ? format(new Date(task.beginAt), 'E dd/MM') : format(new Date(task.beginAt), 'E dd/MM HH:mm')}\n {!task.allDay && task.endAt && ' - ' + format(new Date(task.endAt), 'HH:mm')}\n
    \n {task.allDay && 'Toute la journée'}\n
    \n {task.salaries?.map((salary: Salary, index) => {\n return (\n \n {salary.firstname} {salary.lastname[0]}.{index + 1 < task.salaries.length && ', '}\n \n )\n })}\n \n
    \n \n
      \n {task.status?.val && task.status.val !== 1 &&
    • \n \n
    • }\n {task.status?.val !== 2 &&
    • \n \n
    • }\n {task.status?.val !== 3 &&
    • \n \n
    • }\n
    \n
    \n
    \n \n \n
    \n \n \n \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n
    \n {isLoading ?\n \n :\n }\n
    \n
    }\n
    \n
    \n
    \n
    \n}\n\nexport default TaskGroupShow;","import * as React from \"react\";\n\nimport TaskGroupShow from \"../../../components/taskGroup/show\";\n\nconst TaskGroupShowPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default TaskGroupShowPage;","import React from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport { FORM_NEW_TEAM } from \"../../../constants/rightSidebar\";\nimport { Team } from \"../../../models/team\";\n\nimport { openSidebar } from \"../../../actions/rightSidebar\";\n\nimport LoaderList from \"../../../utils/loaderList\";\n\ninterface IProps {\n isLoading: boolean;\n list: Team[];\n query: string;\n setQuery: (text: string) => void;\n}\n\nconst TeamList:React.FC = ({ isLoading, list, query, setQuery }) => {\n const dispatch = useDispatch()\n const params: { id: string } = useParams();\n\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n {isLoading ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
    \n
    \n
    \n\n {list.length ? list.filter((t: Team) => !query || t.title.toLowerCase().includes(query.toLowerCase())).map((item: Team, index: number) => ([\n \n
    \n
    \n

    {item.title}

    \n
    \n

    \n {item.salaries.length}\n

    \n
    \n
    \n \n ]))\n :\n !isLoading ? : ''}\n {isLoading && !list.length && }\n {isLoading && !!list.length && }\n
    \n
    \n );\n}\n\nexport default TeamList;","\nexport const ADD_TEAM = 'ADD_TEAM';\nexport const ADD_TEAM_SUCCESS = 'ADD_TEAM_SUCCESS';\nexport const ADD_TEAM_FAILURE = 'ADD_TEAM_FAILURE';\n\nexport const ADD_TEAM_INFORMATION = 'ADD_TEAM_INFORMATION';\nexport const ADD_TEAM_INFORMATION_SUCCESS = 'ADD_TEAM_INFORMATION_SUCCESS';\nexport const ADD_TEAM_INFORMATION_FAILURE = 'ADD_TEAM_INFORMATION_FAILURE';\n\nexport const EDIT_TEAM = 'EDIT_TEAM';\nexport const EDIT_TEAM_SUCCESS = 'EDIT_TEAM_SUCCESS';\nexport const EDIT_TEAM_FAILURE = 'EDIT_TEAM_FAILURE';\n\nexport const FETCH_TEAMS = 'FETCH_TEAMS';\nexport const FETCH_TEAMS_SUCCESS = 'FETCH_TEAMS_SUCCESS';\nexport const FETCH_TEAMS_FAILURE = 'FETCH_TEAMS_FAILURE';\n\nexport const SHOW_TEAM = 'SHOW_TEAM';\nexport const SHOW_TEAM_SUCCESS = 'SHOW_TEAM_SUCCESS';\nexport const SHOW_TEAM_FAILURE = 'SHOW_TEAM_FAILURE';\n\n\nexport const accessRights = () => [\n\n {underscoreCase: 'LIST_SALARY', description: 'Lister les collaborateurs'},\n {underscoreCase: 'EDIT_SALARY', description: 'Modifier les collaborateurs'},\n {underscoreCase: 'DELETE_SALARY', description: 'Archiver les collaborateurs'},\n\n {underscoreCase: 'LIST_BOOKING', description: 'Afficher les plannings'},\n {underscoreCase: 'LIST_BOOKING_OFFER', description: 'Afficher les offres de créneaux'},\n {underscoreCase: 'EDIT_BOOKING', description: 'Modifier les créneaux'},\n {underscoreCase: 'DELETE_BOOKING', description: 'Archiver les créneaux'},\n\n {underscoreCase: 'LIST_TIME_CLOCK', description: 'Lister les badgeages'},\n {underscoreCase: 'EDIT_TIME_CLOCK', description: 'Modifier les badgeages'},\n {underscoreCase: 'DELETE_TIME_CLOCK', description: 'Archiver les badgeages'},\n\n {underscoreCase: 'LIST_ABSENCE', description: 'Lister les absences'},\n {underscoreCase: 'EDIT_ABSENCE', description: 'Modifier les absences'},\n {underscoreCase: 'DELETE_ABSENCE', description: 'Archiver les absences'},\n\n {underscoreCase: 'LIST_TASK_GROUP', description: 'Lister les groupes de tâches'},\n {underscoreCase: 'EDIT_TASK', description: 'Modifier les tâches'},\n\n {underscoreCase: 'LIST_COUNTER', description: 'Lister les compteurs'},\n {underscoreCase: 'EDIT_COUNTER', description: 'Modifier les compteure'},\n {underscoreCase: 'DELETE_COUNTER', description: 'Archiver les compteurs'},\n\n {underscoreCase: 'LIST_REPORTING', description: 'Lister les rapports'},\n {underscoreCase: 'EXPORT_REPORTING', description: 'Exporter les rapports'},\n]","import * as types from \"../../constants/team\";\nimport * as models from \"../../models/team\";\n\nexport const addTeam = () => {\n return {\n type: types.ADD_TEAM,\n }\n}\n\nexport const addTeamInformation = () => {\n return {\n type: types.ADD_TEAM,\n }\n}\n\nexport const addTeamSuccess = (team: models.Team) => {\n return {\n type: types.ADD_TEAM_SUCCESS,\n team: team,\n }\n}\n\nexport const addTeamInformationSuccess = (team: models.Team) => {\n return {\n type: types.ADD_TEAM_INFORMATION_SUCCESS,\n team: team,\n }\n}\n\nexport const addTeamFailure = (error: string) => {\n return {\n type: types.ADD_TEAM_FAILURE,\n team: null,\n teams: null,\n error: error\n }\n}\n\nexport const editTeam = () => {\n return {\n type: types.EDIT_TEAM,\n }\n}\n\nexport const editTeamSuccess = (team: models.Team) => {\n return {\n type: types.EDIT_TEAM_SUCCESS,\n team: team,\n }\n}\n\nexport const fetchTeams = () => {\n return {\n type: types.FETCH_TEAMS,\n }\n}\n\nexport const fetchTeamsFailure = (error: string) => {\n return {\n type: types.FETCH_TEAMS_FAILURE,\n team: null,\n teams: [],\n error: error\n }\n}\n\nexport const fetchTeamsSuccess = (teams: models.Teams) => {\n return {\n type: types.FETCH_TEAMS_SUCCESS,\n team: null,\n teams: teams\n }\n}\n\n\nexport const showTeam = () => {\n return {\n type: types.SHOW_TEAM,\n }\n}\nexport const showTeamSuccess = (team: models.Team|null) => {\n return {\n type: types.SHOW_TEAM_SUCCESS,\n team: team\n }\n}\nexport const showTeamFailure = (error: string) => {\n return {\n type: types.SHOW_TEAM_FAILURE,\n team: null,\n teams: null,\n error: error\n }\n}","import React, { useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { Link, useHistory } from \"react-router-dom\";\n\nimport EmptyList from \"../../common/EmptyList\";\n\nimport { Team } from \"../../../models/team\";\nimport { FORM_TEAM_SALARY } from \"../../../constants/rightSidebar\";\n\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { editTeamSuccess } from \"../../../actions/team\";\n\nimport * as api from '../../../adapters/team';\n\nimport { showAlertDanger } from \"../../../actions/alert\";\n\ninterface IProps {\n teamData: Team;\n fetchTeamsList: () => void;\n}\n\nconst TeamShow:React.FC = ({ teamData, fetchTeamsList }) => {\n const dispatch = useDispatch();\n const { replace } = useHistory();\n\n const [isDeleting, setIsDeleting] = useState(false)\n\n const onRemoveSalary = (id: number) => {\n setIsDeleting(true)\n api.removeSalary(teamData.id, id).then(data => {\n dispatch(editTeamSuccess(data.data));\n setIsDeleting(false);\n });\n }\n\n const onRemoveTeam = async () => { \n try {\n setIsDeleting(true)\n await api.remove(teamData.id)\n fetchTeamsList()\n replace('/team')\n } catch (error) {\n showAlertDanger(error?.response?.data?.message)\n } finally {\n setIsDeleting(false)\n }\n }\n\n return (\n
    \n
    \n \n Retour\n \n
    \n\n
    \n
    \n
    \n

    \n Collaborateurs\n

    \n
    \n\n
    \n dispatch(openSidebar(FORM_TEAM_SALARY, { ...teamData }))}\n >\n Ajouter\n \n \n Supprimer l’équipe\n \n
    \n
    \n\n {teamData.salaries!.length === 0 && }\n {teamData.salaries!.length > 0 &&\n
    \n {teamData.salaries.map((salary) => (\n
    \n
    \n
    \n \n {salary.title}\n \n {salary?.information?.job?.title}\n
    \n\n
    \n \n
    \n
    \n
    \n ))}\n
    \n }\n
    \n
    \n )\n}\n\nexport default TeamShow;","import React, { useState, useEffect } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\n\nimport TeamList from \"../../components/team/list\";\nimport TeamShow from \"../../components/team/show\";\nimport BgSingle from \"../../utils/background/single\";\n\nimport { Team } from \"../../models/team\";\n\nimport { setPageTitle } from \"../../actions/header\";\nimport * as actions from \"../../actions/team\";\nimport { axiosError } from \"../../actions/axios\";\n\nimport * as api from \"../../adapters/team\";\n\n\nconst TeamPage : React.FC = () => {\n const dispatch = useDispatch()\n const params: { id: string } = useParams();\n\n const { payload } = useSelector((state: RootStateOrAny) => state.team)\n \n const [loading, setLoading] = useState(false)\n const [query, setQuery] = useState('')\n const [teamData, setTeamData] = useState(null)\n\n const fetchTeamsList = () => {\n dispatch(setPageTitle('Équipes'))\n dispatch(actions.fetchTeams())\n setLoading(true);\n\n api.list(query?.length > 0 ? { query } : {}).then(data => {\n dispatch(actions.fetchTeamsSuccess(data.data))\n setLoading(false);\n }).catch(error => dispatch(axiosError(error)))\n }\n\n useEffect(() => {\n fetchTeamsList()\n }, [query])\n\n useEffect(() => {\n if (params?.id) {\n setTeamData(payload.find((team: Team) => team.id === parseInt(params.id)))\n } else {\n setTeamData(null)\n }\n }, [params])\n\n return (\n
    \n \n {!teamData &&\n \n }\n {teamData &&\n \n }\n
    \n );\n}\n\nexport default TeamPage;","import {get} from \"../../../xhr\";\n\nexport function apply(offerId: number){\n return get(`booking/offer/${offerId}/applicant/apply`);\n}\n\nexport function cancel(offerId: number, applicantId: number){\n return get(`booking/offer/${offerId}/applicant/${applicantId}/cancel`);\n}\n\nexport function validate(offerId: number, applicantId: number){\n return get(`booking/offer/${offerId}/applicant/${applicantId}/validate`);\n}\n\nexport function invalidate(offerId: number, applicantId: number){\n return get(`booking/offer/${offerId}/applicant/${applicantId}/invalidate`);\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {BookingOffer, BookingOfferApplicant, BookingOffers} from \"../../../../models/booking/offer\";\nimport format from \"../../../../utils/locale\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\"\nimport * as api from \"../../../../adapters/booking/offer/applicant\"\nimport * as bookingOfferApi from \"../../../../adapters/booking/offer\"\nimport {editBookingOfferSuccess, showBookingOfferSuccess} from \"../../../../actions/booking/offer\";\nimport {refresh} from \"../../../../actions/calendar\";\nimport Loader from \"../../../../utils/loader\";\nimport {useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../../actions/header\";\n\nconst BookingOfferShow:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const [offer, setOffer] = useState()\n const [isLoading, setIsLoading] = useState(true)\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle('Offre de créneau'))\n bookingOfferApi.show(Number(params.id)).then(data => {\n setOffer(data.data)\n dispatch(showBookingOfferSuccess(data.data))\n setIsLoading(false)\n })\n }, [])\n\n const _apply = (offer: BookingOffer) => {\n api.apply(offer.id).then((data) => {\n setOffer(data.data);\n dispatch(editBookingOfferSuccess(data.data))\n })\n }\n const _cancel = (offer: BookingOffer, applicant: BookingOfferApplicant) => {\n api.cancel(offer.id, applicant.id).then((data) => {\n setOffer(data.data);\n dispatch(editBookingOfferSuccess(data.data))\n })\n }\n const _validate = (applicant: BookingOfferApplicant) => {\n api.validate(offer!.id, applicant.id).then(data => {\n setOffer(data.data);\n dispatch(editBookingOfferSuccess(data.data))\n dispatch(refresh())\n })\n }\n const _invalidate = (applicant: BookingOfferApplicant) => {\n api.invalidate(offer!.id, applicant.id).then(data => {\n setOffer(data.data);\n dispatch(editBookingOfferSuccess(data.data))\n dispatch(refresh())\n })\n }\n\n if (isLoading){\n return \n }\n\n if (!offer){\n return Offre non trouvé \n }\n\n return
    \n
    \n
    \n
    \n

    \n {offer.applicants.find(a => a.validated) ? Créneau attribué à {offer.applicants.find(a => a.validated)!.salary.title} : Créneau non attribué}\n

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n

    \n {format(new Date(offer.beginAt), 'E dd MMMM uuuu HH:mm')} {format(new Date(offer.endAt), 'HH:mm')}\n

    \n
    \n {offer.activity &&

    \n {offer.activity.title}\n

    }\n
    \n {offer.localisation &&

    \n {offer.localisation.title}\n

    }\n
    \n

    \n {offer.company.title}\n

    \n
    \n

    \n {offer.description}\n

    \n {Granted(accessRights.APPLY_BOOKING_OFFER) &&
    \n {offer.salaries.find(s => s.id === state.auth.user.currentSalary.id) && !offer.applicants.find(a => a.validated) && (!offer.applicants.find(a => a.salary.id === state.auth.user.currentSalary.id) ?\n : _cancel(offer, offer.applicants.find(a => a.salary.id === state.auth.user.currentSalary.id)!)}\n className={'btn flex-grow-1 btn-primary'}>\n Déjà postulé\n )}\n
    }\n
    \n {Granted(accessRights.EDIT_BOOKING_OFFER) && <>\n

    \n Postulants\n

    \n
      \n {!!offer.applicants.length ? offer.applicants.map((applicant, index) =>
    • \n
      \n {applicant.validated &&
      \n \n
      }\n
      \n

      \n {applicant.salary.title} | {applicant.salary.information?.job.title}\n

      \n
      \n \n Participation le {format(new Date(applicant.createdAt), \"E dd MMMM uuuu\")} à {format(new Date(applicant.createdAt), \"HH:mm\")}\n \n
      \n
      \n {!applicant.validated ?\n : <>\n \n }\n
      \n
      \n
    • ) :
    • Aucun postulants
    • }\n
    \n

    \n Participants\n

    \n
      \n {offer.salaries.map(s =>
    • \n
      \n
      \n {s.title}\n
      \n
      \n {offer?.applicants.find(a => a.id === s.id) && <> A postulé}\n
      \n
      \n
    • )}\n
    \n }\n
    \n}\n\nexport default BookingOfferShow;","import * as React from \"react\";\n\nimport BookingOfferShow from \"../../../components/booking/offer/show\";\n\nconst BookingOfferPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default BookingOfferPage;","import React, {forwardRef, useEffect, useState} from \"react\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport DatePicker from \"react-datepicker\";\nimport * as actions from \"../../../actions/timeClock\";\nimport resourceTimelinePlugin from \"@fullcalendar/resource-timeline\";\nimport listPlugin from \"@fullcalendar/list\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../adapters/timeClock\";\nimport format from \"../../../utils/locale\";\nimport {renderEvent} from \"../../../utils/calendar\";\nimport Loader from \"../../../utils/loader\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {\n TIME_CLOCK_BOOKING_ADD,\n TIME_CLOCK_LIST, TIME_CLOCK_SETTINGS,\n TIME_CLOCK_SHOW\n} from \"../../../constants/rightSidebar\";\nimport {TimeClockGenerated} from \"../../../models/timeClock\";\nimport {Link} from \"react-router-dom\";\nimport {Salary} from \"../../../models/salary\";\nimport {ResourceLabelContentArg} from \"../../../models/calendar\";\nimport IsGranted from \"../../../security/isGranted\";\nimport * as accessRights from \"../../../constants/accessRight\";\n\nconst TimeCLockCalendar:React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state)\n const timeCLock = useSelector((state: RootStateOrAny) => state.timeClock)\n const [company, setCompany] = useState(state.auth.user.currentSalary.companies[0].id);\n const [resources, setResources] = useState([]);\n const calendarRef = React.createRef();\n const [isAnomaly, setIsAnomaly] = useState(true);\n const [isAbsent, setIsAbsent] = useState(true);\n const [isLate, setIsLate] = useState(true);\n const [isMissing, setIsMissing] = useState(true);\n const [pickerDate, setPickerDate] = useState(new Date());\n const [title, setTitle] = useState(\"\");\n const [view, setView] = useState(\"resourceTimelineWeek\");\n const [reload, setReload] = useState(true);\n const [workingTimes, setWorkingTimes] = useState<{diffInterval: string, diffTimestamp: number, interval: string, resource: null, salary: Salary, timeCaption: string, timestamp: number}[]>([]);\n\n useEffect(() => {\n dispatch(setPageTitle('Badgeuse', 'Planning'))\n }, [])\n\n useEffect(() => {\n const controller = new AbortController();\n\n let API = calendarRef.current?.getApi()\n if (API && reload){\n setTitle(API.view.title)\n dispatch(actions.fetchTimeClocks());\n let endDate = API.view.currentEnd\n endDate.setDate(endDate.getDate() - 1)\n api.fetch({\n start: format(API.view.currentStart, 'uuuu-MM-dd'), end: format(endDate, 'uuuu-MM-dd'),\n options: {isResource: true, companies: [company], workingTime: true}\n }, controller.signal).then(data => {\n dispatch(actions.fetchTimeClocksSuccess(data.data.events))\n setWorkingTimes(data.data.workingTime)\n setResources(data.data.resources)\n setReload(false)\n })\n }\n\n return () => controller.abort()\n }, [reload])\n\n type ButtonProps = JSX.IntrinsicElements[\"button\"];\n const ViewTitleContainer = forwardRef((props, ref) => {\n const {onClick} = props;\n return \n });\n\n const CalendarTitle = () => {\n return {\n if (date instanceof Date){\n setPickerDate(date)\n let API = calendarRef.current?.getApi()\n if (API){\n API.gotoDate(date)\n setTitle(API.view.title)\n }\n }\n }}\n customInput={}\n />\n }\n\n const calendarApiNavActions = (action: string) => {\n\n let API = calendarRef.current?.getApi()\n if (API){\n switch (action) {\n case 'prev':\n API.prev();\n break;\n case 'next':\n API.next();\n break;\n case 'resourceTimelineDay':\n API.changeView(action)\n setView(action)\n break;\n case 'resourceTimelineWeek':\n API.changeView(action)\n setView(action)\n break;\n case 'resourceTimelineMonth':\n API.changeView(action)\n setView(action)\n break;\n }\n\n setView(API.view.type)\n setTitle(API.view.title)\n setReload(true);\n }\n }\n\n const resourceAreaHeaderContent = (e: any) => {\n return <>\n
    \n \n
      \n
    • \n
    • \n
    • \n
    • \n
    \n
    \n \n }\n\n const renderResource = (arg: ResourceLabelContentArg) => {\n\n let workingTime = workingTimes.find(w => w.resource === arg.resource.id)\n\n return <>\n \n
    \n \n \n {arg.resource.title}\n \n \n {IsGranted(accessRights.EDIT_TIME_CLOCK) && workingTime && \n \n \n \n {workingTime?.timeCaption || '00:00'}\n {/*{workingTime.time || '00:00'}*/}\n \n {arg.view.type === 'resourceTimelineWeek' && (!!workingTime?.diffTimestamp ?\n \n {workingTime.diffTimestamp > 0 ? :\n } {workingTime.diffInterval}\n : )}\n \n }\n \n
    \n
    \n \n }\n\n return
    \n
    \n
    \n
    \n \n Liste\n \n
    \n
    \n {\n setCompany(Number(choice!.value))\n setReload(true)\n }}\n />\n
    \n
    \n \n
      \n
    • \n calendarApiNavActions('resourceTimelineDay')}>\n Jour\n \n
    • \n
    • \n calendarApiNavActions('resourceTimelineWeek')}>\n Semaine\n \n
    • \n
    • \n calendarApiNavActions('resourceTimelineMonth')}>\n Mois\n \n
    • \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n\n
    \n
    \n \n \n \n {IsGranted(accessRights.EDIT_TIME_CLOCK) && <>\n
    \n \n \n {IsGranted(accessRights.EDIT_TIME_CLOCK) && }\n }\n
    \n
    \n
    \n
    \n {\n if (!IsGranted(accessRights.EDIT_TIME_CLOCK)) return false;\n\n let item = timeCLock.payload.find((t: TimeClockGenerated) => t.id === e.event.id);\n\n dispatch(openSidebar(TIME_CLOCK_SHOW, {...item}))\n }}\n eventContent={renderEvent}\n resourceLabelContent={renderResource}\n initialView={view}\n headerToolbar={false}\n stickyFooterScrollbar={true}\n stickyHeaderDates={true}\n events={[...timeCLock.payload.filter((e: any) => {\n\n if (!isLate && e.isLate) return false;\n if (!isMissing && e.isMissing) return false;\n if (!isAbsent && e.isAbsent) return false;\n if (!isAnomaly && e.isAnomaly) return false;\n\n return true;\n })]}\n resources={[...resources]}\n slotDuration={{day: 1}}\n contentHeight={'parent'}\n schedulerLicenseKey={'GPL-My-Project-Is-Open-Source'}\n displayEventTime={true}\n locales={allLocales}\n locale={'fr'}\n resourceGroupField={\"groupId\"}\n />\n
    \n {reload && }\n \n}\n\nexport default TimeCLockCalendar;","import * as React from \"react\";\n\nimport TimeCLockCalendar from \"../../../components/timeClock/calendar\";\n\nconst TimeClockCalendarPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default TimeClockCalendarPage;","export const ADD_DOCUMENT = 'ADD_DOCUMENT';\nexport const ADD_DOCUMENT_SUCCESS = 'ADD_DOCUMENT_SUCCESS';\nexport const ADD_DOCUMENT_FAILURE = 'ADD_DOCUMENT_FAILURE';\n\nexport const EDIT_DOCUMENT = 'EDIT_DOCUMENT';\nexport const EDIT_DOCUMENT_SUCCESS = 'EDIT_DOCUMENT_SUCCESS';\nexport const EDIT_DOCUMENT_FAILURE = 'EDIT_DOCUMENT_FAILURE';\n\nexport const FETCH_DOCUMENTS = 'FETCH_DOCUMENTS';\nexport const FETCH_DOCUMENTS_SUCCESS = 'FETCH_DOCUMENTS_SUCCESS';\nexport const FETCH_DOCUMENTS_FAILURE = 'FETCH_DOCUMENTS_FAILURE';\n\nexport const SHOW_DOCUMENT = 'SHOW_DOCUMENT';\nexport const SHOW_DOCUMENT_SUCCESS = 'SHOW_DOCUMENT_SUCCESS';\nexport const SHOW_DOCUMENT_FAILURE = 'SHOW_DOCUMENT_FAILURE';\n\nexport const CANCEL_DOCUMENT_SUCCESS = 'CANCEL_DOCUMENT_SUCCESS';\n","import * as types from \"../../constants/document\";\nimport * as models from \"../../models/document\";\n\nexport const addDocument = () => {\n return {\n type: types.ADD_DOCUMENT,\n }\n}\n\nexport const addDocumentSuccess = (document: models.Document) => {\n return {\n type: types.ADD_DOCUMENT_SUCCESS,\n document: document,\n }\n}\n\nexport const addDocumentFailure = (error: string) => {\n return {\n type: types.ADD_DOCUMENT_FAILURE,\n document: null,\n documents: null,\n error: error\n }\n}\n\nexport const editDocument = () => {\n return {\n type: types.EDIT_DOCUMENT,\n }\n}\n\nexport const cancelDocumentSuccess = (document: models.Document) => {\n return {\n type: types.CANCEL_DOCUMENT_SUCCESS,\n document: document\n }\n}\n\nexport const editDocumentSuccess = (document: models.Document) => {\n return {\n type: types.EDIT_DOCUMENT_SUCCESS,\n document: document\n }\n}\n\nexport const editDocumentFailure = (error: string) => {\n return {\n type: types.EDIT_DOCUMENT_FAILURE,\n document: null,\n documents: null,\n error: error\n }\n}\n\nexport const fetchDocuments = () => {\n return {\n type: types.FETCH_DOCUMENTS,\n }\n}\n\nexport const fetchDocumentsFailure = (error: string) => {\n return {\n type: types.FETCH_DOCUMENTS_FAILURE,\n document: null,\n documents: [],\n error: error\n }\n}\n\nexport const fetchDocumentsSuccess = (documents: models.Documents) => {\n return {\n type: types.FETCH_DOCUMENTS_SUCCESS,\n document: null,\n documents: documents\n }\n}\n\nexport const showDocument = () => {\n return {\n type: types.SHOW_DOCUMENT,\n }\n}\n\nexport const showDocumentSuccess = (document: models.Document) => {\n return {\n type: types.SHOW_DOCUMENT_SUCCESS,\n document: document\n }\n}\n\nexport const showDocumentFailure = (error: string) => {\n return {\n type: types.SHOW_DOCUMENT_FAILURE,\n document: null,\n documents: null,\n error: error\n }\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport * as models from \"../../../models/document\";\n\nimport { PAGINATION } from \"../../../constants/global\";\n\nimport { list } from \"../../../adapters/document\";\nimport * as actions from \"../../../actions/document\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport LoaderList from \"../../../utils/loaderList\";\n\nconst DocumentList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.document);\n\n const [isLoading, setIsLoading] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [offset, setOffset] = useState(0);\n const [query, setQuery] = useState();\n const [isFiltering, setFiltering] = useState(false)\n const [scrollBottom, setScrollBottom] = useState(false);\n\n const onScrollBottom = (e: Event) => {\n let elem = e.target as HTMLElement;\n if (Math.ceil(elem.clientHeight + elem.scrollTop) >= elem.scrollHeight) {\n setScrollBottom(true)\n }\n }\n\n useEffect(() => {\n let controller = new AbortController();\n\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n dispatch(actions.fetchDocuments())\n setIsLoading(true);\n setOffset(0)\n list({query: query, offset: 0}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchDocumentsSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n setFiltering(false)\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }\n }, 1000);\n\n return () => {\n controller.abort();\n clearTimeout(timer)\n }\n }, [query])\n\n useEffect(() => {\n let controller = new AbortController();\n if(scrollBottom){\n if (offset && !isLast){\n setIsLoading(true)\n list({query: query, offset: offset}, controller.signal).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchDocumentsSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }else{\n setScrollBottom(false);\n }\n }\n\n let container = document.getElementById('listContainer')!\n container.addEventListener(\"scroll\", onScrollBottom)\n\n return () => {\n controller.abort()\n container.removeEventListener(\"scroll\", onScrollBottom)\n }\n }, [scrollBottom])\n\n useEffect(() => {\n dispatch(setPageTitle('Document'))\n dispatch(setHelpProductSheetIds([18]))\n\n setIsLoading(true);\n\n let controller = new AbortController();\n dispatch(actions.fetchDocuments())\n list({offset: 0}, controller.signal).then(data => {\n dispatch(actions.fetchDocumentsSuccess(data.data))\n setIsLast(data.data.length < PAGINATION);\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => {\n dispatch(axiosError(error))\n })\n\n return () => {\n dispatch(setHelpProductSheetIds([]))\n controller.abort();\n }\n }, [])\n\n return (\n
    \n
    \n \n Ajouter\n \n
    \n\n
      \n {!!state.payload.length && state.payload.map((document: models.Document, index: number) => ([\n \n {document.title}\n \n ]))}\n\n {isLoading ? :\n (!state.payload.length ?
    • \n Aucun document\n
    • : '')}\n \n {!isLoading && !isLast && state.payload.length && }\n
    \n
    \n )\n}\n\n\nexport default DocumentList;","/**\n * Helper functions for the SlateEditor component.\n */\nimport { BaseEditor, Editor, Transforms, Range} from \"slate\";\nimport {ReactEditor} from \"slate-react\";\nimport {HistoryEditor} from \"slate-history\";\n\nexport const LIST_TYPES = [\"numbered-list\", \"bulleted-list\"];\nexport const ALIGNMENT_TYPES = [\"start\", \"end\", \"center\"];\n\n/**\n * Checks whether a format block is active or not in the editor.tsx.\n * @param editor The current Slate editor.tsx\n * @param format The format block that is being checked\n */\nexport const isBlockActive = (editor: BaseEditor & ReactEditor & HistoryEditor, format: any) => {\n\n const _it = Editor.nodes(editor, {\n match: (n: any) => {\n return n.type === format\n }\n })[Symbol.iterator]().next();\n\n const match = _it.done ? undefined : _it.value;\n\n return !!match;\n};\n\n/**\n * Toggles a format block to be on / off.\n * @param editor The current Slate editor.tsx\n * @param format The format block that is being checked\n */\nexport const toggleBlock = (editor: BaseEditor & ReactEditor & HistoryEditor, format: string) => {\n const isActive = isBlockActive(editor, format);\n const isList = LIST_TYPES.includes(format);\n const isAlignment = ALIGNMENT_TYPES.includes(format);\n\n Transforms.unwrapNodes(editor, {\n match: (n: any) => {\n return LIST_TYPES.includes(n.type) || (ALIGNMENT_TYPES.includes(n.type) && ALIGNMENT_TYPES.includes(format))\n },\n split: true\n });\n\n Transforms.setNodes(editor, {\n type: isActive ? \"paragraph\" : isList ? \"list-item\" : format\n });\n\n if (!isActive && (isList || isAlignment)) {\n const block = { type: format, children: [] };\n Transforms.wrapNodes(editor, block);\n }\n};\n\n/**\n * Checks whether a format mark is active or not in the editor.tsx.\n * @param editor The current Slate editor.tsx\n * @param format The format mark that is being checked\n */\nexport const isMarkActive = (editor: BaseEditor & ReactEditor & HistoryEditor, format: string | number) => {\n const marks: any = Editor.marks(editor);\n return marks ? marks[format] === true : false;\n};\n\n/**\n * Toggles a format mark to be on / off.\n * @param editor The current Slate editor.tsx\n * @param format The format mark that is being checked\n */\nexport const toggleMark = (editor: BaseEditor & ReactEditor & HistoryEditor, format: string) => {\n const isActive = isMarkActive(editor, format);\n\n if (isActive) {\n Editor.removeMark(editor, format);\n } else {\n Editor.addMark(editor, format, true);\n }\n};\n\n/**\n * Check whether the link button is active or not in the editor.tsx.\n * @param editor The current Slate editor.tsx\n */\nexport const isLinkActive = (editor: BaseEditor & ReactEditor & HistoryEditor) => {\n const _it = Editor.nodes(editor, { match: (n: any) => n.type === \"link\" })[Symbol.iterator]().next();\n const match = _it.done ? undefined : _it.value;\n\n return !!match;\n};\n\n/**\n * Unwraps a link node from the editor.tsx.\n * @param editor The current Slate editor.tsx\n */\nexport const unwrapLink = (editor: BaseEditor & ReactEditor & HistoryEditor) => {\n Transforms.unwrapNodes(editor, { match: (n: any) => n.type === \"link\" });\n};\n\n/**\n * Wraps a link node to the editor.tsx.\n * @param editor The current Slate editor.tsx\n * @param url The url to wrap into a node\n */\nexport const wrapLink = (editor: BaseEditor & ReactEditor & HistoryEditor, url: string) => {\n if (isLinkActive(editor)) {\n unwrapLink(editor);\n }\n\n const { selection } = editor;\n const isCollapsed = selection && Range.isCollapsed(selection);\n const link = {\n type: \"link\",\n url,\n children: isCollapsed ? [{ text: url }] : []\n };\n\n if (isCollapsed) {\n Transforms.insertNodes(editor, link);\n } else {\n Transforms.wrapNodes(editor, link, { split: true });\n Transforms.collapse(editor, { edge: \"end\" });\n }\n};\n\n/**\n * This will insert a link into the Slate editor.tsx.\n * @param editor The current Slate editor.tsx\n * @param url The url to insert\n */\nexport const insertLink = (editor: BaseEditor & ReactEditor & HistoryEditor, url: any) => {\n if (editor.selection) {\n wrapLink(editor, url);\n }\n};\n","/* eslint-disable no-param-reassign */\n// import isUrl from \"is-url\";\nimport {BaseEditor, Editor, Element} from \"slate\";\n\nimport { wrapLink } from \"./helpers\";\nimport {ReactEditor} from \"slate-react\";\nimport {HistoryEditor} from \"slate-history\";\n\nexport function withLinks(editor: BaseEditor & ReactEditor & HistoryEditor): Editor {\n const { insertData, insertText, isInline } = editor;\n\n editor.isInline = (element: Element): boolean => {\n return element.type === \"link\" ? true : isInline(element);\n };\n\n editor.insertText = (text: string): void => {\n if (text && validURL(text)) {\n wrapLink(editor, text);\n } else {\n insertText(text);\n }\n };\n\n editor.insertData = (data: DataTransfer): void => {\n const text = data.getData(\"text/plain\");\n\n if (text && validURL(text)) {\n wrapLink(editor, text);\n } else {\n insertData(data);\n }\n };\n\n return editor;\n}\n\nfunction validURL(str: string) {\n let pattern = new RegExp('^(https?:\\\\/\\\\/)?'+ // protocol\n '((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|'+ // domain name\n '((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))'+ // OR ip (v4) address\n '(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*'+ // port and path\n '(\\\\?[;&a-z\\\\d%_.~+=-]*)?'+ // query string\n '(\\\\#[-a-z\\\\d_]*)?$','i'); // fragment locator\n\n return pattern.test(str);\n}\n","/**\n * Base components for the SlateEditor component.\n */\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { useSlate } from \"slate-react\";\nimport {\n isBlockActive,\n toggleBlock,\n isMarkActive,\n toggleMark,\n isLinkActive,\n insertLink\n} from \"./helpers\";\n\nexport const Button = React.forwardRef(\n (props: any, ref) => (\n \n )\n);\n\nexport const Icon = React.forwardRef((props: any, ref) => (\n \n));\n\nexport const Menu = React.forwardRef((props: any, ref) => (\n \n));\n\nexport const Portal = (props: any) => {\n return ReactDOM.createPortal(props.children, document.body);\n};\n\nexport const Toolbar = React.forwardRef((props: any, ref) => (\n \n));\n\nexport const BlockButton = (props: any) => {\n const editor = useSlate();\n return (\n {\n event.preventDefault();\n toggleBlock(editor, props.format);\n }}\n >\n \n \n );\n};\n\nexport const MarkButton = (props: any) => {\n const editor = useSlate();\n return (\n {\n event.preventDefault();\n toggleMark(editor, props.format);\n }}\n >\n \n \n );\n};\n\nexport const LinkButton = (props: any) => {\n const editor = useSlate();\n return (\n {\n event.preventDefault();\n const url = window.prompt(\"Enter the URL of the link:\");\n if (!url) return;\n insertLink(editor, url);\n }}\n >\n \n \n );\n};\n","/**\n * Keyboard shortcut related logic for the SlateEditor component\n */\nimport { isHotkey } from \"is-hotkey\";\nimport { BaseEditor } from \"slate\";\nimport { ReactEditor } from \"slate-react\";\nimport {toggleMark} from \"./helpers\";\nimport {HistoryEditor} from \"slate-history\";\n\nexport const HOTKEYS: any = {\n \"ctrl+b\": \"bold\",\n \"mod+b\": \"bold\",\n \"ctrl+i\": \"italic\",\n \"mod+i\": \"italic\",\n \"ctrl+u\": \"underline\",\n \"mod+u\": \"underline\",\n \"ctrl+shift+enter\": \"code\",\n \"mod+shift+enter\": \"code\"\n};\n\nexport const toggleKeyboardShortcut = (event: KeyboardEvent, editor: BaseEditor & ReactEditor & HistoryEditor) => {\n for (const hotkey in HOTKEYS) {\n if (isHotkey(hotkey, event)) {\n event.preventDefault();\n const mark = HOTKEYS[hotkey];\n toggleMark(editor, mark);\n }\n }\n};\n","/**\n * Toolbar elements that modify the look and formatting\n * of the text in the SlateEditor component.\n */\nimport React from \"react\";\n\nexport function Element(props: any){\n switch (props.element.type) {\n case \"block-quote\":\n return
    {props.children}
    ;\n\n case \"bulleted-list\":\n return
      {props.children}
    ;\n\n case \"heading-one\":\n return

    {props.children}

    ;\n\n case \"heading-two\":\n return

    {props.children}

    ;\n\n case \"heading-three\":\n return

    {props.children}

    ;\n\n case \"link\":\n return (\n \n {props.children}\n \n );\n\n case \"break\":\n return
    {props.children}
    ;\n\n case \"list-item\":\n return
  • {props.children}
  • ;\n\n case \"numbered-list\":\n return
      {props.children}
    ;\n\n case \"start\":\n return
    {props.children}
    ;\n\n case \"end\":\n return
    {props.children}
    ;\n\n case \"center\":\n return
    {props.children}
    ;\n\n default:\n return

    {props.children}

    ;\n }\n}\n\nexport function Leaf(props: any) {\n let children = props.children\n\n if (props.leaf.bold) {\n children = {props.children};\n }\n\n if (props.leaf.italic) {\n children = {props.children};\n }\n\n if (props.leaf.underline) {\n children = {props.children};\n }\n\n return {children};\n}\n","import React, {useCallback, useEffect, useMemo, useRef, useState} from \"react\";\nimport {BaseEditor, createEditor, Descendant, Editor, Transforms} from \"slate\";\nimport {Slate, Editable, withReact, ReactEditor} from \"slate-react\";\nimport { withHistory, HistoryEditor } from \"slate-history\";\nimport { withLinks } from \"./plugins\";\nimport { BlockButton, LinkButton, MarkButton, Toolbar } from \"./components\";\nimport { toggleKeyboardShortcut } from \"./keyboardShortcuts\";\nimport { Element, Leaf } from \"./toolbarElements\";\n\nconst SlateEditor:React.FC<{initialValue?: any, onChange: (value: Descendant[]) => void, setValue: any, value: any, isSubmitting?: boolean, disabled: boolean, toolbar?: boolean, toolbarSubmit?: boolean}> = (props) => {\n\n const {initialValue, onChange, disabled, toolbar, toolbarSubmit, isSubmitting, setValue, value} = props;\n\n // Create a Slate editor.tsx object that won't change across renders.\n const editor = useRef(\n withLinks(withHistory(withReact(createEditor())))\n );\n\n useEffect(() => {\n // Get initial total nodes to prevent deleting affecting the loop\n let totalNodes = editor.current.children.length;\n\n // Remove every node except the last one\n // Otherwise SlateJS will return error as there's no content\n\n Transforms.insertNodes(editor.current, [\n {\n type: \"paragraph\",\n children: [{ text: \"\" }]\n }], {\n at: [editor.current.children.length],\n });\n\n for (let i = 0; i < totalNodes; i++) {\n Transforms.removeNodes(editor.current, {\n at: [totalNodes-i-1],\n });\n }\n\n // No saved content, don't delete anything to prevent errors\n if (!initialValue || initialValue.length <= 0) return;\n\n // Add content to SlateJS\n for (const value of initialValue ) {\n Transforms.insertNodes(editor.current, value, {\n at: [editor.current.children.length],\n });\n }\n\n // Remove the last node that was leftover from before\n Transforms.removeNodes(editor.current, {\n at: [0],\n });\n }, [initialValue])\n\n // Keep track of state for the value of the editor.tsx.\n // const [value, setValue] = useState(\n // ]); // Use type any for now. Initial state for an app would be the data passed to the component.\n\n // Define a rendering function based on the element passed to `props`. We use\n // `useCallback` here to memoize the function for subsequent renders.\n const renderElement = useCallback(props => , []);\n const RenderLeaf = useCallback(props => , []);\n const addVariable = (variable: string) => {\n editor.current.insertText(`[#${variable}]`)\n }\n\n return (\n
    \n
    \n onChange && onChange(value)}>\n
    \n {toolbar && \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n {toolbarSubmit && }\n
    \n \n
      \n
    • addVariable('firstname')}>\n Prénom\n
    • \n
    • addVariable('lastname')}>\n Nom\n
    • \n
    • addVariable('birthdate')}>\n Date de naissance\n
    • \n
    • addVariable('email')}>\n Email\n
    • \n
    • addVariable('tel')}>\n Tel\n
    • \n
    • addVariable('address')}>\n Adresse\n
    • \n
    • addVariable('city')}>\n Ville\n
    • \n
    • addVariable('zip')}>\n Code postal\n
    • \n
    • addVariable('job')}>\n Métier\n
    • \n
    • addVariable('contract')}>\n Contrat\n
    • \n
    • addVariable('contractWorkingTime')}>\n Volume d'heure contrat\n
    • \n
    • addVariable('contract_start')}>\n Date de début de contrat\n
    • \n
    • addVariable('contract_end')}>\n Date de fin de contrat\n
    • \n
    \n
    \n
    }\n
    \n {\n toggleKeyboardShortcut(event, editor.current);\n }}\n renderElement={renderElement}\n renderLeaf={(props) => }\n />\n
    \n
    \n
    \n
    \n
    \n );\n}\n\nexport default SlateEditor;\n","import SlateEditor from \"./SlateEditor\";\nimport {BaseEditor} from \"slate\";\nimport {ReactEditor} from \"slate-react\";\nimport {HistoryEditor} from \"slate-history\";\n\nexport * from \"./SlateEditor\";\nexport default SlateEditor;\n\n\ntype CustomElement = { type: string; children: CustomText[] }\ntype CustomText = { text: string; bold?: true, italic?: boolean, variable?: boolean }\n\ndeclare module 'slate' {\n interface CustomTypes {\n Editor: BaseEditor & ReactEditor & HistoryEditor\n Element: CustomElement\n Text: CustomText\n }\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\nimport * as actions from \"../../../actions/document\";\nimport * as models from \"../../../models/document\";\nimport * as api from \"../../../adapters/document\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {Link} from \"react-router-dom\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BgSingle from \"../../../utils/background/single\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport SlateEditor from \"../editor\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport {showAlertSuccess} from \"../../../actions/alert\";\nimport {Granted} from \"../../../security/granted\";\nimport {editDocumentSuccess} from \"../../../actions/document\";\n\nexport const DocumentShow: React.FC = () => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const doc: models.Document|undefined = useSelector((state: RootStateOrAny) => state.document.payload.find((a: models.Document) => a.id!.toString() === params.id))\n const [hasChanged, setHasChanged] = useState(false)\n const [isLoading, setIsLoading] = useState(false);\n const [initialValue, setInitialValue] = useState([]);\n\n useEffect(() => {\n let controller = new AbortController();\n dispatch(actions.showDocument());\n setIsLoading(!!params.id)\n if (doc){\n dispatch(actions.showDocumentSuccess(doc))\n setInitialValue(JSON.parse(doc.value))\n setHasChanged(false)\n dispatch(setPageTitle(\"Document\", doc.title))\n setIsLoading(false)\n }else if(params.id){\n api.show(Number(params.id), controller.signal)\n .then(data => {\n setHasChanged(false)\n setIsLoading(false)\n dispatch(actions.showDocumentSuccess(data.data))\n setInitialValue(JSON.parse(data.data.value))\n dispatch(setPageTitle(\"Document\", data.data.title))\n })\n .catch(error => dispatch(axiosError(error)))\n }\n\n return () => controller.abort()\n }, [params.id])\n\n const formik = useFormik({\n initialValues: {\n title: doc?.title,\n value: doc ? JSON.parse(doc.value) : []\n },\n validationSchema: Yup.object().shape({\n title: Yup.string().required(),\n value: Yup.array().of(Yup.object()).required()\n }),\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.edit(values, doc!.id)\n .then(data => dispatch(editDocumentSuccess(data.data)))\n .then(() => dispatch(showAlertSuccess('Document mis à jour')))\n .then(() => formikHelpers.setSubmitting(false))\n }\n })\n\n if (!params.id || !doc) {\n return \n }\n\n return
    \n
    \n
    \n \n Retour\n \n
    \n
    \n
    \n {\n if(Granted(accessRights.EDIT_DOCUMENT)){\n formik.setFieldValue('value', value)\n }\n })}\n setValue={formik.setFieldValue}\n value={formik.values.value}\n />\n \n
    \n
    \n
    \n}\n\nexport default DocumentShow;","import * as React from \"react\";\n\nimport DocumentList from \"../../components/document/list\";\nimport DocumentShow from \"../../components/document/show\";\n\nconst DocumentPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default DocumentPage;","import React, { useEffect } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { useFormik } from \"formik\";\nimport * as Yup from \"yup\";\n\nimport SlateEditor from \"../editor\";\n\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport * as api from \"../../../adapters/document\";\nimport FormError from \"../../../utils/formError\";\nimport { showAlertSuccess } from \"../../../actions/alert\";\n\nconst DocumentAdd:React.FC = () => {\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle(\"Document\", \"Nouveau document\"))\n dispatch(setHelpProductSheetIds([18]))\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n const formik = useFormik({\n initialValues: {\n title: \"\",\n value: []\n },\n validationSchema: Yup.object().shape({\n title: Yup.string().required(),\n value: Yup.array().of(Yup.object()).required()\n }),\n onSubmit: values => {\n api.create(values).then(() => {\n dispatch(showAlertSuccess('Document Ajouté'))\n window.location.href = \"#/document\"\n });\n }\n })\n\n return (\n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n\n
    \n {\n formik.setFieldValue('value', value)\n })}\n />\n \n
    \n\n \n
    \n
    \n )\n}\n\nexport default DocumentAdd;","import * as React from \"react\";\n\nimport DocumentAdd from \"../../../components/document/add\";\n\nconst DocumentAddPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default DocumentAddPage;","import React, {useEffect} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {setPageTitle} from \"../../../actions/header\";\n\nconst SponsorshipShow:React.FC = () => {\n\n const dispatch = useDispatch();\n const state = useSelector((state: RootStateOrAny) => state)\n\n useEffect(() => {\n dispatch(setPageTitle('Parrainage'))\n }, [])\n\n return <>\n
    \n
    \n
    \n

    \n Gagnez deux mois offerts ! \n

    \n

    \n + Un mois offert pour le parrainé\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n\n \n
    \n

    \n Partagez votre code\n

    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n\n \n
    \n

    \n Générez un abonnement\n

    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n\n \n
    \n

    \n Gagnez 2 mois offerts !\n

    \n\n
    \n
    \n
    \n
    \n
    \n

    \n Quels sont les avantages ?\n

    \n

    \n Bénéficiez de 2 mois offerts sur SIVAN si la personne parrainée adhère à SIVAN.\n \n La personne parrainée quant à elle, bénéficiera d’un mois offert sur SIVAN.\n

    \n

    \n Comment parrainer quelqu’un ?\n

    \n

    \n Partagez votre code ci-dessous à la personne que vous souhaitez parrainer.\n \n Elle n’aura plus qu’à renseigner votre code lors de la demande de démo SIVAN sur le site sivan.io.\n \n Le parrainage sera immédiatement pris en compte et validé dès la signature.\n

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Mon code de parainnage\n

    \n
    \n

    \n SIV{state.auth.user.id}\n

    \n
    \n
    \n
    \n
    \n

    \n Partager\n

    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n}\n\nexport default SponsorshipShow;","import * as React from \"react\";\n\nimport SponsorshipShow from \"../../../components/sponsorship/show\";\n\nconst SponsorshipShowPage : React.FC = () => {\n return (\n
    \n \n
    \n);\n}\n\nexport default SponsorshipShowPage;","import React from \"react\";\n\nimport { Link } from \"react-router-dom\";\n\nconst Admin: React.FC = () => {\n return (\n
    \n
    \n
    \n \n \n
    \n

    \n Utilisateurs\n

    \n \n
    \n \n
    \n \n \n
    \n

    \n Collaborateurs\n

    \n \n
    \n
    \n
    \n )\n}\n\nexport default Admin;","import * as React from \"react\";\n\nimport Admin from \"../../components/admin\";\n\nconst AdminPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default AdminPage;","import {get, Options, post} from \"../../xhr\";\n\nexport interface requestPayload {\n query?: string,\n offset?: number\n}\n\nexport function list(requestData?: requestPayload, optionalHeader?: Options){\n return post('admin/salary/list', requestData || {}, optionalHeader);\n}\n\nexport function show(id: number, optionalHeader?: Options){\n return get(`admin/salary/show/${id}`, optionalHeader);\n}\n\nexport function sendConfirmation(id: number, optionalHeader?: Options){\n return get(`admin/salary/user/confirm/${id}`, optionalHeader);\n}\n\nexport function enable(id: number, optionalHeader?: Options){\n return get(`admin/salary/user/enable/${id}`, optionalHeader);\n}\n\nexport function removeUser(id: number, optionalHeader?: Options){\n return get(`admin/salary/user/remove/${id}`, optionalHeader);\n}\n\nexport function disable(id: number, optionalHeader?: Options){\n return get(`admin/salary/user/disable/${id}`, optionalHeader);\n}\n\nexport function updatePwd(id: number, requestData: {pwd: string}, optionalHeader?: Options){\n return post(`admin/salary/update_pwd/${id}`, requestData, optionalHeader);\n}\n\nexport function addUser(id: number, optionalHeader?: Options){\n return get(`admin/salary/user/create/${id}`, optionalHeader);\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as api from \"../../../../adapters/admin/salary\";\nimport * as actions from \"../../../../actions/salary\";\nimport * as models from \"../../../../models/salary\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../../actions/header\";\nimport LoaderList from \"../../../../utils/loaderList\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport {PAGINATION} from \"../../../../constants/global\";\n\nconst AdminSalaryList: React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state.salary);\n const [offset, setOffset] = useState(0);\n const [scrollBottom, setScrollBottom] = useState(false);\n const [isLast, setIsLast] = useState(false);\n const [query, setQuery] = useState();\n const [isLoading, setIsLoading] = useState(false);\n const [isFiltering, setFiltering] = useState(false);\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n\n useEffect(() => {\n dispatch(setPageTitle('Admin', 'Collaborateurs'))\n\n dispatch(actions.fetchSalaries())\n setIsLoading(true);\n\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess(data.data))\n setIsLoading(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n return () => {\n\n }\n }, [])\n\n useEffect(() => {\n let timer = setTimeout(() => {\n if (typeof query != \"undefined\"){\n setFiltering(true);\n setOffset(0)\n api.list({query: query, offset: 0}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess(data.data))\n setFiltering(false);\n setOffset( 1);\n }).catch(error => dispatch(axiosError(error)))\n }\n }, 1000);\n\n return () => clearTimeout(timer)\n }, [query])\n\n useEffect(() => {\n if(scrollBottom){\n if (offset && !isLast){\n setIsLoading(true)\n api.list({query: query, offset: offset}).then(data => {\n setIsLast(data.data.length < PAGINATION);\n dispatch(actions.fetchSalariesSuccess([...state.payload, ...data.data]))\n setIsLoading(false)\n setOffset(prevState => prevState + 1)\n setScrollBottom(false)\n }).catch(error => dispatch(axiosError(error)))\n }\n\n setScrollBottom(false);\n }\n\n // let container = document.getElementById('listContainer')!\n // container.addEventListener(\"scroll\", onScrollBottom)\n\n // return () => container.removeEventListener(\"scroll\", onScrollBottom)\n\n }, [scrollBottom])\n\n return (\n <>\n
    \n
    \n
    \n
    \n
    \n \n {isFiltering ?
    \n Loading...\n
    : }\n
    \n {\n setQuery(e.target.value)\n }} className=\"form-control border-0 bg-white\" placeholder=\"Rechercher...\" aria-describedby=\"search-addon\" />\n
    \n
    \n
    \n {state.payload.length ? state.payload.map((salary: models.Salary, index: number) => ([\n \n
    \n
    \n

    {salary.title}

    \n
    \n \n {salary.information?.job.title}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n ]))\n :\n !isLoading ? : ''}\n {!isLoading && !isLast && state.payload.length && }\n {isLoading && !state.payload.length && }\n {isLoading && !!state.payload.length && }\n
    \n
    \n \n );\n}\n\nexport default AdminSalaryList;","import React, {useEffect, useState} from \"react\";\nimport {Link, useParams} from \"react-router-dom\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as actions from \"../../../../actions/salary\";\nimport {setPageTitle} from \"../../../../actions/header\";\nimport * as api from \"../../../../adapters/admin/salary\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport BgSingle from \"../../../../utils/background/single\";\nimport {showAlertDanger, showAlertSuccess} from \"../../../../actions/alert\";\nimport {Company} from \"../../../../models/companies\";\n\nconst AdminSalaryShow: React.FC = () => {\n\n\n const params: {id: string} = useParams();\n const [pwd, setPwd] = useState('');\n const salary: Salary = useSelector((state: RootStateOrAny) => state.salary.payload.find((a: Salary) => a.id!.toString() === params.id))\n const state = useSelector((state: RootStateOrAny) => state.salary)\n const dispatch = useDispatch();\n const [disable, setDisable] = useState(false);\n\n useEffect(() => {\n dispatch(actions.showSalary());\n if (salary && params.id){\n dispatch(actions.showSalarySuccess(salary));\n dispatch(setPageTitle('Admin > Collaborateurs', salary.firstname + ' ' + salary.lastname))\n }else if(!salary && params.id){\n api.show(Number(params.id)).then(data => {\n dispatch(actions.showSalarySuccess(data.data))\n dispatch(setPageTitle('Admin > Collaborateurs', data.data.firstname + ' ' + data.data.lastname))\n }).catch(error => dispatch(axiosError(error)))\n }\n }, [params.id])\n\n if (!state.single){\n return \n }\n\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Informations\n

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {state.single.user ? <>\n \n \n \n \n \n \n \n \n \n :\n <>\n \n \n \n }\n \n
    #{state.single.title}
    Email{state.single.email}
    Point de vente\n {state.single.companies.map((c: Company, i: number) => <>{c.title} {i < state.single.companies.length - 1 && \",\"})}\n
    \n Utilisateur activé\n \n {state.single.user.activated ? \"Oui\" : \"Non\"}\n
    \n Email\n \n {state.single.user.email}\n
    Pas de compte associé
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Actions\n

    \n
    \n
    \n

    \n Modifier le mot de passe\n

    \n
    \n 6 caractères minimum\n
    \n
    \n
    \n setPwd(e.target.value)}/>\n {!!pwd && pwd.length >= 6 && {\n setDisable(true)\n api.updatePwd(state.single.id, {pwd: pwd}).then(() => {\n dispatch(showAlertSuccess('Mot de passe modifié'))\n setDisable(false)\n })\n }}\n >Valider}\n
    \n
    \n
    \n {state.single.user ? <>\n
    \n
    \n

    \n {state.single.user?.activated ? \"Désactiver le compte\" : \"Activer le compte\"}\n

    \n
    \n
    \n {\n setDisable(true)\n if (state.single.user?.activated){\n api.disable(state.single.id).then((data) => {\n dispatch(actions.editSalarySuccess(data.data))\n dispatch(showAlertSuccess('Compte désactivé'))\n setDisable(false)\n })\n }else{\n api.enable(state.single.id).then((data) => {\n dispatch(actions.editSalarySuccess(data.data))\n dispatch(showAlertSuccess('Compte activé'))\n setDisable(false)\n })\n }\n }}\n >{state.single.user?.activated ? \"Désactiver\" : \"Activer\"}\n
    \n
    \n
    \n
    \n
    \n

    \n Dissocier un compte\n

    \n
    \n
    \n {\n setDisable(true)\n api.removeUser(state.single.id).then((data) => {\n dispatch(actions.editSalarySuccess(data.data))\n dispatch(showAlertSuccess('Compte dissocié'))\n setDisable(false)\n })\n }}\n >Dissocier\n
    \n
    \n
    \n
    \n
    \n

    \n Renvoyer le mail de confirmation\n

    \n
    \n
    \n {\n setDisable(true)\n api.sendConfirmation(state.single.id).then((data) => {\n dispatch(showAlertSuccess('Email envoyé'))\n setDisable(false)\n })\n }}>\n Envoyer\n \n
    \n
    \n
    \n : <>\n
    \n
    \n

    \n Associer/créer un compte\n

    \n
    \n
    \n {\n setDisable(true)\n api.addUser(state.single.id).then((data) => {\n dispatch(actions.editSalarySuccess(data.data))\n dispatch(showAlertSuccess('Compte associé'))\n setDisable(false)\n })\n }}>\n Associer\n \n
    \n
    \n
    \n }\n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default AdminSalaryShow;","import * as React from \"react\";\n\nimport AdminSalaryList from \"../../../components/admin/salary/list\";\nimport AdminSalaryShow from \"../../../components/admin/salary/show\";\n\nconst AdminSalaryPage : React.FC = () => {\n return (\n
    \n \n \n
    \n );\n}\n\nexport default AdminSalaryPage;","import React, {useEffect} from \"react\";\nimport {Counter, CounterWithdrawn} from \"../../../../models/counter\";\nimport format from \"../../../../utils/locale\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {FORM_COUNTER_SHOW} from \"../../../../constants/rightSidebar\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\n\n\nconst CounterTableSingle:React.FC = (props) => {\n\n const single = useSelector((state: RootStateOrAny) => state.counter.single);\n const dispatch = useDispatch();\n\n if (!single) return <>\n\n return \n \n \n \n \n \n \n \n \n \n \n \n {single.counters.map((c: Counter) => \n \n \n \n \n \n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Année\n \n Semaine\n \n Dates\n \n Valeur\n \n Retiré\n \n #\n
    \n {c.year}\n \n {c.weekNumber}\n \n {format(new Date(c.weekStart))} {format(new Date(c.weekEnd))}\n \n {c.time} {!!c.value && <>{c.value > 0 ? : }}\n \n {single.countersWithdrawn.find((w: CounterWithdrawn) => w.weekNumber === c.weekNumber && w.year === c.year)?.time}\n \n dispatch(openSidebar(FORM_COUNTER_SHOW, {...c, ...{salary: single.salary}}))}\n >\n \n \n
    \n

    \n Compteur\n

    \n
    \n {single.totalCounter}\n
    \n

    \n Retiré\n

    \n
    \n {single.totalWithdrawn}\n
    \n

    \n Payé\n

    \n
    \n {single.totalPaid}\n
    \n

    \n Total\n

    \n
    \n {single.total}\n
    \n}\n\nexport default CounterTableSingle;","import React from \"react\";\nimport { useDispatch } from \"react-redux\";\n\nimport { TotalCounters } from \"../../../../models/counter\";\n\nimport { showCounterSuccess } from \"../../../../actions/counter\";\n\nconst CounterTableMultiple: React.FC<{payload: TotalCounters}> = (props) => {\n const { payload } = props;\n const dispatch = useDispatch();\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n\n \n {payload.map((item) =>\n \n \n \n \n \n \n \n \n )}\n \n
    \n Collaborateur\n \n Compteur\n \n Retiré\n \n Payé\n \n Valeur\n \n #\n
    \n {item.salary.title}\n \n {item.totalCounter || }\n \n {item.totalWithdrawn || }\n \n {item.totalPaid || }\n \n {item.total} {!!item.total && 0 ? \"bi bi-arrow-up text-success\" : \"bi bi-arrow-down text-danger\"}>}\n \n \n
    \n )\n}\n\nexport default CounterTableMultiple;","import React from \"react\";\nimport { RootStateOrAny, useSelector } from \"react-redux\";\n\nimport CounterTableSingle from \"./single\";\nimport CounterTableMultiple from \"./multiple\";\n\nimport { TotalCounters } from \"../../../models/counter\";\n\nconst CounterTable: React.FC<{payload: TotalCounters}> = (props) => {\n const { payload } = props;\n\n const single = useSelector((state: RootStateOrAny) => state.counter.single);\n\n return (\n <>\n
    \n \n
    \n\n
    \n
    \n
    \n
    \n
    Compteurs {single?.salary?.title}
    \n \n
    \n\n
    \n \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n \n )\n}\n\nexport default CounterTable;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport * as action from \"../../../../actions/counter\";\nimport { ResponsiveBar } from '@nivo/bar'\nimport {Modal} from \"bootstrap\";\n\nconst CounterChartMultiple:React.FC<{payload: any[]}> = (props) => {\n\n const {payload} = props;\n const dispatch = useDispatch();\n const auth = useSelector((state: RootStateOrAny) => state.auth)\n const [barContainerHeight, setBarContainerHeight] = useState(0)\n\n useEffect(() => {\n let container = document.getElementById('barContainer')!\n setBarContainerHeight(container.clientHeight - 30);\n }, [])\n\n return <>\n
    \n
    payload.length * 40 ? barContainerHeight : payload.length * 40)}}\n >\n {\n dispatch(action.showCounterSuccess(data.data))\n let modalEl = document.getElementById('exampleModal')!\n let modal = new Modal(modalEl);\n modal.toggle();\n }}\n groupMode={\"stacked\"}\n keys={[auth.user.currentSalary.companyGroup.accountingSettings.overtimeMarkUp ? 'totalMarkUp' : 'total', 'totalWithdrawn']}\n indexBy={'salary.title'}\n margin={{top: 50, right: 15, bottom: 15, left: 150}}\n padding={0.1}\n innerPadding={0}\n valueScale={{type: 'linear'}}\n indexScale={{type: 'band', round: true}}\n colors={['#727cf5', '#20c997']}\n labelTextColor={'#fff'}\n borderColor={{from: 'color', modifiers: [['darker', 1.6]]}}\n axisBottom={null}\n axisLeft={{\n tickRotation: 0,\n legend: null,\n ticksPosition: 'before',\n tickPadding: 10,\n // renderTick: CustomTopTick\n }}\n axisTop={{\n tickSize: 5,\n tickPadding: 5,\n tickRotation: 0,\n legend: null,\n }}\n labelSkipWidth={25}\n labelSkipHeight={15}\n tooltip={({id, value, color, data}) => (\n
    \n {data.salary.title}\n
    \n \n \n Compteur : {auth.user.currentSalary.companyGroup.accountingSettings.overtimeMarkUp ? data.totalMarkUp : data.total}\n \n \n {data.totalWithdrawn && \n Retiré : {data.totalWithdrawn}\n }\n \n
    \n )}\n valueFormat={(value) => `${value}`}\n />\n
    \n
    \n \n}\n\nexport default CounterChartMultiple;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport { ResponsiveBar } from '@nivo/bar'\nimport {Counter, CounterWithdrawn} from \"../../../../models/counter\";\nimport {openSidebar} from \"../../../../actions/rightSidebar\";\nimport {FORM_COUNTER_SHOW, FORM_COUNTER_WITHDRAWN_EDIT} from \"../../../../constants/rightSidebar\";\nimport format from \"../../../../utils/locale\";\n\nconst CounterSingleChart:React.FC = () => {\n\n const dispatch = useDispatch();\n const single = useSelector((state: RootStateOrAny) => state.counter.single)\n const auth = useSelector((state: RootStateOrAny) => state.auth)\n const [barContainerWidth, setBarContainerWidth] = useState(0)\n\n useEffect(() => {\n let container = document.getElementById('barContainer')!\n setBarContainerWidth(container.clientWidth);\n }, [])\n\n if (!single) return <>\n\n return <>\n {
    \n
    \n
    single.counters?.length * 30 ? barContainerWidth : single.counters?.length * 30}}>\n ({\n id: c.id,\n value: c.value,\n salary: c.salary,\n yearWeek: c.yearWeek,\n withdrawnDecimal: c.decimal,\n withdrawnTime: c.time,\n year: c.year,\n weekNumber: c.weekNumber,\n description: c.description,\n weekStart: c.weekStart,\n weekEnd: c.weekEnd,\n })),\n ...single.counters.map((c: Counter) => ({\n id: c.id,\n value: c.value,\n salary: single.salary,\n yearWeek: c.yearWeek,\n markUpDecimal: c.markUpDecimal,\n markUpTime: c.markUpTime,\n decimal: c.decimal,\n time: c.time,\n year: c.year,\n weekNumber: c.weekNumber,\n weekStart: c.weekStart,\n weekEnd: c.weekEnd,\n }))].sort((a, b) => {\n if (a.year !== b.year) return a.year - b.year;\n\n return a.weekNumber - b.weekNumber;\n })}\n enableGridY={true}\n enableGridX={true}\n onClick={(data) => {\n switch (data.id)\n {\n case \"withdrawnDecimal\":\n dispatch(openSidebar(FORM_COUNTER_WITHDRAWN_EDIT, {...data.data}))\n break;\n case \"markUpDecimal\":\n case \"decimal\":\n dispatch(openSidebar(FORM_COUNTER_SHOW, {...data.data}))\n break;\n }\n }}\n groupMode={\"stacked\"}\n keys={[auth.user.currentSalary.companyGroup.accountingSettings.overtimeMarkUp ? 'markUpDecimal' : 'decimal', 'withdrawnDecimal']}\n indexBy={'yearWeek'}\n margin={{top: 60, right: 15, bottom: 15, left: 35}}\n padding={0.1}\n innerPadding={0}\n valueScale={{type: 'linear'}}\n indexScale={{type: 'band', round: true}}\n colors={['#727cf5', '#20c997']}\n labelTextColor={'#fff'}\n borderColor={{from: 'color', modifiers: [['darker', 1.6]]}}\n axisBottom={null}\n axisTop={{\n tickRotation: 45,\n legend: null,\n ticksPosition: 'after',\n }}\n axisLeft={{\n tickSize: 5,\n tickPadding: 5,\n tickRotation: 0,\n legend: null,\n }}\n labelSkipWidth={25}\n labelSkipHeight={15}\n tooltip={({id, value, color, data}) => {\n switch (id) {\n case \"withdrawnDecimal\":\n return
    \n
    Semaine {data.weekNumber} / Année {data.year}
    \n
    \n Retiré : {data.withdrawnTime}\n
    \n
    \n {data.description}\n
    \n
    \n case \"markUpDecimal\":\n case \"decimal\":\n return
    \n Semaine {data.weekNumber} / Année {data.year}\n
    \n
    \n {format(new Date(data.weekStart))} {format(new Date(data.weekEnd))}\n
    \n
    \n \n Compteur : {data.time}\n \n {data.value > 0 && auth.user.currentSalary.companyGroup.accountingSettings.overtimeMarkUp && <>\n
    \n \n Compteur majoré : {data.markUpTime}\n \n }\n
    \n default:\n return <>\n }\n }}\n valueFormat={(decimal) => `${decimal}`}\n />\n
    \n
    \n
    }\n \n}\n\nexport default CounterSingleChart;","import React from \"react\";\nimport {RootStateOrAny, useSelector} from \"react-redux\";\nimport CounterMultipleCharts from \"./multiple\";\nimport CounterSingleChart from \"./single\";\nimport {TotalCounters} from \"../../../models/counter\";\nconst CounterChart:React.FC<{payload: TotalCounters}> = (props) => {\n\n const {payload} = props;\n const single = useSelector((state: RootStateOrAny) => state.counter.single);\n\n return <>\n
    \n \n
    \n
    \n
    \n
    \n
    \n
    Compteurs {single?.salary?.title}
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n}\n\nexport default CounterChart;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport CounterTable from \"./table\";\nimport CounterChart from \"./chart\";\n\nimport * as api from \"../../adapters/chart\";\nimport { setPageTitle } from \"../../actions/header\";\nimport { fetchCountersSuccess } from \"../../actions/counter\";\nimport {axiosError } from \"../../actions/axios\";\n\nconst Counter: React.FC = () => {\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.counter)\n\n const [view, setView] = useState('table');\n const [isLoading, setIsLoading] = useState(true);\n const [query, setQuery] = useState('')\n const [payload, setPayload] = useState([]);\n \n useEffect(() => {\n dispatch(setPageTitle('Compteurs'))\n let controller = new AbortController();\n api.counters().then(data => {\n setPayload(data.data)\n dispatch(fetchCountersSuccess(data.data))\n setIsLoading(false)\n }).catch(error => dispatch(axiosError(error)))\n return () => controller.abort();\n }, [isLoading])\n\n useEffect(() => {\n if (!query){\n setPayload([...state.payload])\n }else{\n setPayload([...state.payload.filter((c: any) => c.salary.title.toLowerCase().includes(query.toLowerCase()))])\n }\n }, [query])\n\n return (\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n setQuery(e.target.value)} placeholder={'Rechercher un collaborateur'} type=\"search\" className=\"form-control\"/>\n
    \n
    \n
    \n\n {view === 'table' && }\n {view === 'chart' && }\n
    \n )\n}\n\nexport default Counter;","import {get, post} from \"../xhr\";\n\nexport function rate(signal: AbortSignal){\n return get(`chart/rate`, {signal: signal})\n}\n\nexport function sum(requestData?: {date?: string}){\n return post(`counter/sum`, requestData || {})\n}\n\nexport function sales(requestData: {year: \"current\"|\"last\"},companyId: number){\n return post(`chart/sales/${companyId}`, requestData)\n}\n\nexport function counters(){\n return get(`chart/counter`)\n}\n\nexport function edit(requestData: {signe: string, valueHour: number, valueMin: number, paidOverTimeHour: number, paidOverTimeMin: number}, id: number){\n return post(`counter/edit/${id}`, requestData)\n}","import * as React from \"react\"\n\nimport Counter from \"../../components/counter\";\n\nconst CounterPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default CounterPage;","import React, {useEffect, useState} from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport DatePicker from \"react-datepicker\";\nimport DateCustomInput from \"../../../utils/customInput\";\nimport * as api from \"../../../adapters/reporting\";\nimport format from \"../../../utils/locale\";\nimport FileSaver from \"file-saver\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport {Choice} from \"../../../utils/form/model\";\n\nconst ExportSilae:React.FC = () => {\n\n const dispatch = useDispatch();\n let now = new Date()\n now.setDate(now.getDate() - 30);\n const [startDate, setStartDate] = useState(now);\n const [endDate, setEndDate] = useState(new Date());\n const [exporting, setExporting] = useState(false);\n const [type, setType] = useState()\n const [company, setCompany] = useState()\n const [team, setTeam] = useState()\n\n useEffect(() => {\n dispatch(setPageTitle('Exports Silae'))\n }, [])\n\n const validate = () => {\n setExporting(true);\n api.exportSilae({\n start: format(startDate, 'uuuu-MM-dd'),\n end: format(endDate, 'uuuu-MM-dd'),\n type: type,\n company: company?.value,\n team: team?.value,\n }).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n\n let fileName: string = 'export-silae-';\n\n switch (type){\n case 'SHEET_TYPE_ABSENCE':\n fileName += 'absence-'\n break;\n case 'SHEET_TYPE_TIME_CLOCK':\n fileName += 'aj-'\n break;\n }\n\n if (company){\n fileName += company.label + '-'\n }\n\n if (team){\n fileName += team.label + '-'\n }\n\n fileName += format(startDate, 'uuuu-MM-dd') + '-' + format(endDate, 'uuuu-MM-dd')\n\n FileSaver.saveAs(newBlob, `${fileName}.xlsx`)\n setExporting(false)\n })\n }\n\n return
    \n
    \n
    \n
    \n

    Absences

    \n \n
    \n
    \n
    \n
    \n

    Activité journalière

    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Filtrer\n
    \n \n
    \n
    \n
    \n setCompany(c)}\n />\n
    \n
    \n setTeam(c)}\n disabled={exporting}\n />\n
    \n
    \n }\n selectsStart\n onChange={(dt: Date) => setStartDate(dt)}\n endDate={endDate}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={exporting}\n />\n \n \n \n }\n selectsEnd\n onChange={(dt: Date) => setEndDate(dt)}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={exporting}\n />\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n}\n\nexport default ExportSilae;","import * as React from \"react\";\n\nimport ExportSilae from \"../../../components/export/silae\";\n\nconst ExportSilaePage : React.FC = () => {\n return (\n \n );\n}\n\nexport default ExportSilaePage;","import React from \"react\";\nimport {Link} from \"react-router-dom\";\n\n\nconst ExportList:React.FC = () => {\n\n\n\n return
    \n
    \n
    \n \n \"\"\n

    \n Silae\n

    \n \n
    \n
    \n
    \n}\n\nexport default ExportList;","import * as React from \"react\";\n\nimport Export from \"../../components/export\";\n\nconst ExportPage : React.FC = () => {\n return (\n \n );\n}\n\nexport default ExportPage;","import React, { useEffect, useState } from \"react\";\n\nimport { Modal } from \"bootstrap\";\n\nimport { Companies, Company } from \"../../../../models/companies\";\nimport getUser from \"../../../../security/getUser\";\n\ninterface IProps {\n companies: Companies;\n setCompanies: (companies: Companies) => void;\n}\n\nconst CalendarCompanySelector:React.FC = ({ companies, setCompanies }) => {\n const [_companies, _setCompanies] = useState([...companies])\n const [modal, setModal] = useState();\n\n const handleChange = (e: React.ChangeEvent, c: Company) => {\n let newTab: Companies = []\n\n if (e.target.checked) {\n newTab = [ ..._companies, c ]\n } else {\n newTab = _companies.filter(_c => _c.id !== c.id)\n }\n\n localStorage.setItem('defaultCompanies', JSON.stringify(newTab.map(company => company.id)))\n _setCompanies(newTab)\n }\n\n const validate = () => {\n setCompanies([..._companies])\n modal?.hide();\n }\n\n useEffect(() => {\n let modalEl = document.getElementById('companyModal') as HTMLDivElement;\n setModal(new Modal(modalEl));\n },[])\n\n return (\n
    \n
    \n
    \n
    \n
    Établissements
    \n \n
    \n\n
    \n
      \n {getUser().currentSalary.companies.map((c: Company) =>
    • \n
      \n handleChange(e, c)}\n defaultChecked={!!_companies.find(_c => _c.id === c.id)}\n type=\"checkbox\"\n id={String('company' + c.id!)}\n />\n \n
      \n
    • )}\n
    \n
    \n\n
    \n \n
    \n
    \n
    \n
    \n )\n}\n\nexport default CalendarCompanySelector;","import React, {useEffect, useState} from \"react\";\nimport {Team, Teams} from \"../../../../models/team\";\nimport * as api from \"../../../../adapters/team\";\nimport {Modal} from \"bootstrap\";\nimport Loader from \"../../../../utils/loader\";\nimport arrayEquals from \"../../../../utils/arrayEqual\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\n\nconst CalendarTeamSelector:React.FC<{teams: Teams, setTeams: (teams: Teams) => void;}> = (props) => {\n\n const {teams, setTeams} = props;\n\n const [_teams, _setTeams] = useState(teams)\n const [allTeams, setAllTeams] = useState(teams)\n const [loading, setLoading] = useState(false)\n const [isOpen, setIsOpen] = useState(false)\n const [hasLoaded, setHasLoaded] = useState(false)\n\n useEffect(() => {\n let controller = new AbortController();\n\n let el = document.getElementById(\"teamModal\")!\n\n el.addEventListener(\"shown.bs.modal\", open)\n el.addEventListener(\"hidden.bs.modal\", close)\n\n if (isOpen && !hasLoaded){\n setLoading(true)\n api.list({}, controller.signal).then(data => setAllTeams(data.data))\n .then(() => setLoading(false))\n .then(() => setHasLoaded(true))\n }\n\n return () => {\n controller.abort();\n el.removeEventListener(\"shown.bs.modal\", open)\n el.removeEventListener(\"hidden.bs.modal\", close)\n }\n }, [isOpen])\n\n function open(){\n setIsOpen(true)\n }\n\n function close(){\n setIsOpen(false)\n }\n\n const handleChange = (e: React.ChangeEvent, t: Team) => {\n if (e.target.checked){\n _setTeams([..._teams, t])\n }else{\n _setTeams([..._teams.filter(_t => _t.id !== t.id)])\n }\n }\n\n const validate = (e: React.MouseEvent) => {\n if (!arrayEquals(teams, _teams)){\n setTeams([..._teams])\n }\n }\n\n return
    \n
    \n
    \n
    \n
    Équipes
    \n \n
    \n
    \n {loading &&
    Chargement des équipes...
    }\n {!loading &&
      \n {allTeams.map(t =>
    • \n
      \n handleChange(e, t)}\n defaultChecked={!!_teams.find(_t => t.id === _t.id)}\n type=\"checkbox\"\n id={String('team' + t.id!)}\n />\n \n
      \n
    • )}\n
    }\n
    \n
    \n \n \n
    \n
    \n
    \n
    \n}\n\nexport default CalendarTeamSelector;","import React from \"react\";\nimport {Modal} from \"bootstrap\";\n\nconst CalendarJobSelector:React.FC<{job: 1|2|0, setJob: (job: 1|2|0) => void;}> = (props) => {\n\n const {job, setJob} = props;\n\n const handleClick = (job: 1|2|0) => {\n setJob(job)\n\n let modalEl = document.getElementById('jobModal') as HTMLDivElement;\n let modal = new Modal(modalEl);\n modal.hide();\n }\n\n return
    \n
    \n
    \n
    \n
    Métiers
    \n \n
    \n
    \n
      \n
    • handleClick(0)}>\n {job === 0 && } Tous les métiers\n
    • \n
    • handleClick(1)}>\n {job === 1 && } Front office\n
    • \n
    • handleClick(2)}>\n {job === 2 && } Back office\n
    • \n
    \n
    \n
    \n
    \n
    \n}\n\nexport default CalendarJobSelector;","import React from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\n\nimport { UserCalendarSettings } from \"../../../../models/auth\";\n\nimport * as api from \"../../../../adapters/calendar\";\nimport * as authActions from \"../../../../actions/auth\";\nimport { showAlertInfo } from \"../../../../actions/alert\";\n\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\n\ninterface Interface {\n daysOfWeek: number[],\n setDaysOfWeek: React.Dispatch,\n handleTimePrecisionChange: (timePrecision: string) => void,\n handlePresenceChange: (presence: boolean) => void,\n handleGroupEtpChange: () => void,\n fetchCalendar: () => void,\n}\n\nconst CalendarSetting:React.FC = (props) => {\n const { daysOfWeek, setDaysOfWeek, handleTimePrecisionChange, handlePresenceChange, handleGroupEtpChange, fetchCalendar } = props;\n const dispatch = useDispatch();\n\n const settings: UserCalendarSettings = useSelector((state:RootStateOrAny) => state.auth.user.calendarSettings);\n\n const handleChange = (setting: string, value: any) => {\n api.setting({setting: setting, value: value}).then((data) => {\n dispatch(authActions.refreshUserSuccess(data.data.user))\n })\n }\n\n return <>\n
    \n
    \n
    Réglages
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n handleChange('timezone', choice?.value)}\n />\n
    \n
    \n
    \n
    \n {/*GROUP*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n {\n handleChange('group_etp', e.target.checked)\n }} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.defaultGroupEtp} />\n
    \n
    \n
    \n
    \n
    \n {/*TASKS*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('is_task', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.isTasks} />\n
    \n
    \n
    \n
    \n
    \n {/*PRESENCE*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n {\n handleChange('is_presence', e.target.checked)\n handlePresenceChange(e.target.checked)\n }} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.isPresence} />\n
    \n
    \n
    \n
    \n
    \n {/*ABSENCE REQUEST*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('is_absence_request', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.isAbsenceRequest} />\n
    \n
    \n
    \n
    \n
    \n {/*TIME PRECISION*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {/*DAYS OF WEEK*/}\n
    \n
    \n
    \n \n
    \n
    \n {['Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'].map((day: string, index: number) => {\n return (\n <>\n {\n let _daysOfWeek = [...daysOfWeek]\n\n if (e.target.checked && !_daysOfWeek.includes(parseInt(e.target.value))) {\n _daysOfWeek = [..._daysOfWeek, parseInt(e.target.value)]\n } else {\n let index = _daysOfWeek.findIndex((day) => day === parseInt(e.target.value))\n if (index !== -1){\n _daysOfWeek.splice(index, 1);\n }\n }\n\n setDaysOfWeek([..._daysOfWeek])\n handleChange('days_of_week', _daysOfWeek)\n }}\n type=\"checkbox\"\n name={'daysOfWeek'}\n className=\"btn-check\"\n id={`daysOfWeek_${index}`}\n autoComplete=\"off\"\n value={index}\n />\n \n \n )\n })}\n
    \n
    \n
    \n
    \n {/*VIEW*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {/*SORT BY*/}\n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n {/*RATIO*/}\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('display_absence', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.displayAbsence} />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('display_empty', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.displayEmpty} />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('display_background_edit', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.displayBackgroundEdit} />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n handleChange('display_outer', e.target.checked)} className=\"form-check-input\" type=\"checkbox\" defaultChecked={settings.displayOuter} />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n}\n\nexport default CalendarSetting;","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../utils/locale\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport {PresenceEvent} from \"../../../models/calendar\";\nimport onMouseEnterTooltip from \"../../../utils/mouseOverTooltip\";\n\ninterface Interface {\n presences: any[]\n}\n\nconst CalendarPresence:React.FC = (props) => {\n\n const {presences} = props;\n\n const [items, setItems] = useState([]);\n const [currentItem, setCurrentItem] = useState();\n\n const [displayMissing, setDisplayMissing] = useState(true);\n const [displayOver, setDisplayOver] = useState(false);\n const [displayOk, setDisplayOk] = useState(false);\n\n useEffect(() => {\n let _items = presences.map(p => ({title: p.resourceTitle, id: p.resourceId}))\n .filter((value, index, self) => self.findIndex(s => s.id === value.id) === index)\n ;\n\n setItems([..._items])\n }, [presences])\n\n useEffect(() => {\n if (!!items.length){\n setCurrentItem(items[0]);\n }\n }, [items])\n\n const groupByDay = (presenceItems: any[]) => {\n\n let ret: any = {};\n\n\n for (let i in presenceItems){\n\n if (ret[format(new Date(presenceItems[i].start))] === undefined) ret[format(new Date(presenceItems[i].start))] = [];\n\n ret[format(new Date(presenceItems[i].start))].push(presenceItems[i])\n }\n\n return ret;\n }\n\n const Icon = (value: number, need: number) => {\n\n if (value < need){\n return \n }\n\n if (value === need){\n return \n }\n\n if (value > need){\n return \n }\n\n return <>\n }\n\n const filterTypes = (p: any) => {\n\n if (displayMissing && isMissing(p)) return true;\n if (displayOk && isOk(p)) return true;\n return displayOver && p.values.length > p.need;\n }\n\n const filterATypes = (need: number, val: number) => {\n\n if (displayMissing && need > val) return true;\n if (displayOk && need === val) return true;\n return displayOver && val > need;\n }\n\n function isMissing(i: any){\n\n switch (i.presenceType){\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n let val = Number(i.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let need = Number(i.need || 0);\n\n return val < need\n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n let v: any[] = i.values\n let n: any[] = i.need\n\n let array = v.filter(_v => _v.id).map(_v => {\n let val = Number(_v.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0))\n\n let need = (n ? (n[_v.id] || 0) : 0)\n\n return {val: val, need: need, title: _v.title};\n })\n\n return !!array.filter(a => a.val < a.need).length\n }\n\n return false;\n }\n\n function isOk(i: any){\n\n switch (i.presenceType){\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n let val = Number(i.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let need = Number(i.need || 0);\n\n return val === need\n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n let v: any[] = i.values\n let n: any[] = i.need\n\n let array = v.filter(_v => _v.id).map(_v => {\n let val = Number(_v.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0))\n\n let need = (n ? (n[_v.id] || 0) : 0)\n\n return {val: val, need: need, title: _v.title};\n })\n\n return array.filter(a => a.val === a.need).length === array.length\n }\n\n return false;\n }\n\n return
    \n
    \n
    Manque présences
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n setDisplayMissing(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"flexSwitchCheckDefault1\" />\n \n
    \n
    \n setDisplayOver(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"flexSwitchCheckDefault2\" />\n \n
    \n
    \n setDisplayOk(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" role=\"switch\" id=\"flexSwitchCheckDefault3\" />\n \n
    \n
    \n {items.map((i, index) => )}\n
    \n
    \n {items.map((i, index) =>
    \n {<>\n {Object.entries((groupByDay(presences.filter(p => p.resourceId === currentItem?.id && !!p.need)))).map((item: [string, any]) => <>\n
    \n
    \n
    \n

    \n {item[0]}\n

    \n
    \n
    \n \n \n {item[1].filter((i: any) => filterTypes(i)).map((i: any) => {\n switch (i.presenceType){\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n let val = Number(i.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0));\n\n let need = Number(i.need || 0);\n\n return \n \n \n \n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n let v: any[] = i.values\n let n: any[] = i.need\n\n let array = v.filter(_v => _v.id).map(_v => {\n let val = Number(_v.values.reduce((accumulator: number, object: PresenceEvent) => {\n return accumulator + object.value;\n }, 0))\n\n let need = (n ? (n[_v.id] || 0) : 0)\n\n return {val: val, need: need, title: _v.title};\n })\n\n return \n \n \n \n }\n\n return <>\n })}\n \n
    \n {format(new Date(i.start), 'HH:mm')}\n \n {Icon(val, need)} {val} / {need}\n
    \n {format(new Date(i.start), 'HH:mm')}\n \n
      \n {array.filter(a => filterATypes(a.need, a.val)).map(a =>
    • \n {Icon(a.val, a.need)} {a.val} / {a.need} {a.title}\n
    • )}\n
    \n
    \n
    \n
    \n
    \n )}\n }\n
    )}\n
    \n
    \n
    \n
    \n}\n\nexport default CalendarPresence;","import React, {useEffect, useState} from \"react\";\nimport * as jobApi from \"../../../adapters/job\"\nimport * as localisationApi from \"../../../adapters/localisation\"\nimport * as activityApi from \"../../../adapters/activity\"\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport Loader from \"../../../utils/loader\";\nimport {Job} from \"../../../models/job\";\nimport {Localisation} from \"../../../models/localisation\";\nimport {Activity} from \"../../../models/activity\";\n\ninterface Interface {\n sortBy: number,\n resources: any[],\n setCalendarData: React.Dispatch\n}\n\nexport const CalendarOrder:React.FC = (props) => {\n\n const {sortBy, resources, setCalendarData} = props;\n const [items, setItems] = useState([]);\n const [isLoading, setIsLoading] = useState(false);\n const [isOpen, setIsOpen] = useState(false)\n\n useEffect(() => {\n let el = document.getElementById(\"offcanvasCalendarOrder\")!\n\n el.addEventListener(\"shown.bs.offcanvas\", open)\n el.addEventListener(\"hidden.bs.offcanvas\", close)\n\n\n if (isOpen){\n setIsLoading(true)\n switch (sortBy){\n case 1:\n jobApi.list().then(data => setItems(data.data.sort((a: Job, b: Job) => a.position! - b.position!))).then(() => setIsLoading(false));\n break;\n case 2:\n localisationApi.select().then(data => setItems(data.data.sort((a: Localisation, b: Localisation) => a.position! - b.position!))).then(() => setIsLoading(false));\n break;\n case 3:\n activityApi.select().then(data => setItems(data.data.sort((a: Activity, b: Activity) => a.position! - b.position!))).then(() => setIsLoading(false));\n break;\n }\n }\n\n return () => {\n el.removeEventListener(\"shown.bs.offcanvas\", open)\n el.removeEventListener(\"hidden.bs.offcanvas\", close)\n }\n }, [sortBy, isOpen])\n\n function open(){\n setIsOpen(true)\n }\n function close(){\n setIsOpen(false)\n }\n\n const onDragStart = (e: any) => {\n e\n .dataTransfer\n .setData('text/plain', e.target.id);\n\n e.target.style.textColor = '#6c757d';\n }\n\n const onDragEnd = (e: any) => {\n e\n .dataTransfer\n .clearData();\n\n e.target.style.textColor = '';\n }\n\n function onDrop(event: any) {\n const id = event\n .dataTransfer\n .getData('text');\n\n const draggableElement = document.getElementById(id);\n const dropzone = event.currentTarget;\n\n if (id === dropzone.id){\n dropzone.style.borderBottom = \"\";\n }\n\n if (id !== dropzone.id && dropzone.parentNode.id === \"dragAndDropzone\" && draggableElement){\n dropzone.parentNode.insertBefore(draggableElement, dropzone.nextSibling);\n dropzone.style.borderBottom = \"\";\n reOrderItems();\n draggableElement.style.border = \"solid #20c997 1px\";\n setTimeout(() => draggableElement.style.border = '', 1000)\n }\n\n event\n .dataTransfer\n .clearData();\n }\n\n function reOrderItems() {\n let items = document.getElementsByClassName('draggable') as HTMLCollectionOf;\n let data = [];\n for (let i = 0; i < items.length; i++) {\n data.push({\n id: Number(items[i].dataset.target),\n position: i + 1\n })\n items[i].getElementsByClassName('counter')![0].textContent = String(i + 1);\n }\n\n handleDataChange(data);\n }\n\n const handleDataChange = (data: {id: number, position: number}[]) => {\n switch (sortBy){\n case 1:\n jobApi.order(data).then(() => handleChangeSuccess(data));\n break;\n case 2:\n localisationApi.order(data).then(() => handleChangeSuccess(data));\n break;\n case 3:\n activityApi.order(data).then(() => handleChangeSuccess(data));\n break;\n }\n }\n\n function handleChangeSuccess(order: {id: number, position: number}[])\n {\n\n let _resources = resources.map((r) => {\n\n let _r = {...r};\n\n if (r.hierarchy === 'parent'){\n let resourceOrder = order.find(o => o.id === r.itemId);\n\n if (resourceOrder){\n _r.order1 = resourceOrder.position;\n }\n }\n\n return _r;\n })\n\n setCalendarData((prev: any) => ({...prev, resources: [..._resources]}))\n }\n\n function onDragOver(e: any) {\n e.preventDefault();\n e.currentTarget.style.borderBottom = \"solid #727cf5 1px\";\n }\n\n function onDragLeave(e: any) {\n e.currentTarget.style.borderBottom = \"\";\n }\n\n return
    \n
    \n
    Ordonner le planning
    \n \n
    \n
    \n
    \n \n Cliquez glissez les éléments pour choisir la position\n \n {isLoading ? : <>
    \n
    \n
    \n {items.map((item, index) => \n
    \n {item.title}\n
    \n \n {index + 1}\n \n
    )}\n
    \n }\n
    \n
    \n \n}\n\nexport default CalendarOrder;","import React, {useEffect, useState} from \"react\";\nimport format from \"../../../utils/locale\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport {Offcanvas} from \"bootstrap\";\n\ninterface Interface {\n signed: any[],\n origin: string,\n setCalendarSignedSidebarProps: React.Dispatch,\n}\n\nconst CalendarReporting:React.FC = (props) => {\n\n const {signed, origin, setCalendarSignedSidebarProps} = props;\n\n const [offcanvas, setOffcanvas] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarReporting')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n return
    \n
    \n
    \n {origin === 'anomaly' && <>Anomalies}\n {origin === 'missing' && <>Absences}\n {origin === 'late' && <>Retards}\n
    \n \n
    \n
    \n
      \n {signed.filter(s => applyFilters(s)).map(s =>
    • {\n close();\n switch (s.end){\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING:\n setCalendarSignedSidebarProps((prev: any) => ({\n sidebarType: \"SIGNED_ADD\",\n trigger: prev.trigger + 1,\n company: s.company,\n salary: s.salary,\n start: s.start ? new Date(s.start) : null,\n end: s.end ? new Date(s.end) : null,\n }))\n break;\n default:\n setCalendarSignedSidebarProps((prev: any) => ({\n sidebarType: \"SIGNED_EDIT\",\n trigger: prev.trigger + 1,\n company: s.company,\n salary: s.salary,\n start: s.start ? new Date(s.start) : null,\n end: s.end ? new Date(s.end) : null,\n isAnomaly: s.isAnomaly,\n timeClockId: s.timeClockId\n }))\n break;\n }\n }}\n >\n
      \n
      \n

      \n \n \n {s.salary.title}\n

      \n \n Le {format(new Date(s.start))}\n \n
      \n
      \n {s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING && <>\n
      \n

      \n Absent\n

      \n
      \n \n Prévu à {format(new Date(s.start), 'HH:mm')}\n \n }\n {s.isLate && <>\n

      \n Retard\n

      \n \n Retard de {s.lateOfCaption}\n \n }\n {!(s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING) && !s.isLate && <>\n

      \n Arrivé à {format(new Date(s.start), 'HH:mm')}\n

      \n }\n
      \n
      \n
    • )}\n
    \n
    \n
    \n\n function applyFilters(s: any){\n\n if ([calendarTypes.EVENT_TYPE_BOOKING, calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION, calendarTypes.EVENT_TYPE_EVENT, calendarTypes.EVENT_TYPE_EVENT_EXCEPTION].includes(s.eventType)) return false;\n if (s.isAnomaly && origin === 'anomaly') return true;\n if (s.isLate && origin === 'late') return true;\n if (s.eventType === calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING && origin === 'missing') return true;\n\n return false;\n }\n}\n\nexport default CalendarReporting;","import React, {useState} from \"react\";\nimport {STATUS_PENDING} from \"../../../../constants/absence\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport * as api from \"../../../../adapters/absence\";\nimport format from \"../../../../utils/locale\"\nimport {Absence} from \"../../../../models/absence\";\nimport {Granted} from \"../../../../security/granted\";\n\nconst CalendarAbsenceList:React.FC<{absences: any[], handleEventChange: (ev: any) => any}> = (props) => {\n\n const {absences, handleEventChange} = props;\n const [isLoading, setIsLoading] = useState(false)\n\n function handleStatusChange(a: Absence, s: 2|3){\n setIsLoading(true)\n api.editStatus({status: s}, a.id!)\n .then(resp => handleEventChange(resp.data))\n .then(() => setIsLoading(false))\n }\n\n return
    \n
    \n

    \n Absences en attente {absences.filter(a => a.absence.status === STATUS_PENDING).length}\n

    \n
    \n
    \n
      \n {absences.filter(a => a.absence.status === STATUS_PENDING).map(a =>
    • \n

      \n {a.absence.salary.title} | {a.absence.typeName}\n

      \n

      \n Du {format(new Date(a.absence.start), 'dd/MM/uuuu')} au {format(new Date(a.absence.end), 'dd/MM/uuuu')}\n

      \n

      \n Demande faite le {format(new Date(a.absence.createdAt), 'dd/MM/uuuu')}\n

      \n {Granted(accessRights.EDIT_ABSENCE, undefined, a.absence) &&
      \n
      \n \n
      \n
      \n \n
      \n
      }\n
    • )}\n
    \n
    \n
    \n}\n\nexport default CalendarAbsenceList;\n\n","import React, {useState} from \"react\";\nimport * as types from \"../../../../constants/calendar\";\nimport * as api from \"../../../../adapters/event/offer\";\nimport format from \"../../../../utils/locale\"\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {Granted} from \"../../../../security/granted\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport {Salary} from \"../../../../models/salary\";\nimport getUser from \"../../../../security/getUser\";\nimport {EventOfferApplication} from \"../../../../models/event/offer\";\nimport * as applicationApi from \"../../../../adapters/event/offer/applicant\";\n\nconst CalendarOfferList:React.FC<{offers: any, handleEventChange: (ev: any) => any, setCalendarOfferSidebarProps: React.Dispatch, setIsOffersOnly: React.Dispatch, isOffersOnly: boolean}> = (props) => {\n\n const {offers, handleEventChange, setCalendarOfferSidebarProps, isOffersOnly, setIsOffersOnly} = props;\n const [isLoading, setIsLoading] = useState(false)\n const [canceling, setCanceling] = useState()\n\n function cancel(id: number){\n setCanceling(id);\n api.disable(id)\n .then(resp => handleEventChange(resp.data))\n .then(resp => setCanceling(undefined))\n }\n\n function apply(o: any){\n applicationApi.apply(o.offerId)\n .then(resp => handleEventChange(resp.data))\n }\n\n function cancelApply(o: any){\n\n let application = o.applications.find((a: EventOfferApplication) => a.salary.id === getUser().currentSalary.id);\n\n if (application){\n applicationApi.cancel(o.offerId, application.id)\n .then(resp => handleEventChange(resp.data))\n }\n }\n\n return
    \n
    \n

    \n Offres en attente {offers.filter((o: any) => o.eventType === types.EVENT_TYPE_OFFER_PENDING).length}\n

    \n
    \n
    \n
    \n \n
    \n
      \n {offers.filter((o: any) => o.eventType === types.EVENT_TYPE_OFFER_PENDING).map((o: any) =>
    • \n

      \n {format(new Date(o.start), 'E dd MMMM HH:mm')} {format(new Date(o.end), 'HH:mm')}\n

      \n

      \n {o.company.title}\n

      \n {o.localisation &&

      \n {o.localisation.title}\n

      }\n {o.activity &&

      \n {o.activity.title}\n

      }\n

      \n {o.applications.length} Participants / {o.salaries.length} Collaborateur\n

      \n\n {Granted(accessRights.APPLY_BOOKING_OFFER) && o.salaries.find((s: Salary) => s.id === getUser().currentSalary?.id) && <>\n {o.applications.find((a: EventOfferApplication) => a.salary.id === getUser().currentSalary?.id) ?\n : }\n }\n\n
      \n
      \n \n
      \n
      \n \n
      \n
      \n \n
      \n
      \n
    • )}\n
    \n
    \n
    \n}\n\nexport default CalendarOfferList;\n\n","import React from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport DatePicker from \"react-datepicker\";\nimport * as api from \"../../../../adapters/keepNote\";\nimport {submitSidebar} from \"../../../../actions/rightSidebar\";\nimport FormError from \"../../../../utils/formError\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport format from \"../../../../utils/locale\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\ninterface Interface {\n keepNoteId: number,\n isPrivate: boolean,\n description: string,\n dueDate: Date,\n handleSubmitSuccess: (ev: any) => any\n}\n\nconst KeepNoteEditForm:React.FC = (props) => {\n\n const {handleSubmitSuccess, dueDate, isPrivate, description, keepNoteId} = props;\n\n const dispatch = useDispatch();\n\n const initialValues = {\n private: isPrivate,\n description: description,\n dueDate: dueDate\n }\n const validationSchema = Yup.object().shape({\n private: Yup.boolean().required(),\n description: Yup.string().required(),\n dueDate: Yup.date().required(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values) => {\n api.edit(values, keepNoteId).then(data => {\n dispatch(showAlertSuccess(`Note du ${format(new Date(data.data.dueDate))} modifiée`))\n handleSubmitSuccess(data.data)\n }).catch(error => dispatch(axiosError(error)))\n }\n });\n\n return <>\n
    \n
    \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n }\n selected={formik.values.dueDate}\n onChange={(date: Date) =>\n formik.setFieldValue(`dueDate`, date)\n }\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n
    \n \n}\n\nexport default KeepNoteEditForm;","import React, {useEffect} from \"react\";\nimport KeepNoteEditForm from \"../../../keepNote/edit/form\";\n\nconst KeepNoteEdit:React.FC<{\n close: () => any,\n handleSubmitSuccess: ((ev: any) => void),\n dueDate: Date,\n description: string,\n keepNoteId: number,\n isPrivate: boolean\n}> = (props) => {\n\n const {handleSubmitSuccess, close, dueDate, description, isPrivate, keepNoteId} = props;\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Modifier une note
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default KeepNoteEdit;","import React from \"react\";\nimport {useDispatch} from \"react-redux\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport validationClass from \"../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../utils/customInput\";\nimport DatePicker from \"react-datepicker\";\nimport * as api from \"../../../../adapters/keepNote\";\nimport FormError from \"../../../../utils/formError\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport format from \"../../../../utils/locale\";\nimport {axiosError} from \"../../../../actions/axios\";\nimport SmallLoader from \"../../../../utils/loader/small\";\n\ninterface Interface {\n dueDate: Date,\n handleSubmitSuccess: (note: any) => any\n}\n\nconst KeepNoteCreateForm:React.FC = (props) => {\n\n const dispatch = useDispatch();\n const initialValues = {\n private: false,\n description: \"\",\n dueDate: props.dueDate\n }\n const validationSchema = Yup.object().shape({\n private: Yup.boolean().required(),\n description: Yup.string().required(),\n dueDate: Yup.date().required(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values) => {\n api.create(values).then(resp => {\n dispatch(showAlertSuccess('Note ajoutée le ' + format(new Date(resp.data.dueDate))))\n formik.setSubmitting(false)\n props.handleSubmitSuccess(resp.data)\n }).catch(error => dispatch(axiosError(error)))\n }\n });\n\n return <>\n
    \n
    \n \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n }\n selected={formik.values.dueDate}\n onChange={(date: Date) =>\n formik.setFieldValue(`dueDate`, date)\n }\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n \n
    \n \n}\n\nexport default KeepNoteCreateForm;","import React from \"react\";\nimport KeepNoteAddForm from \"../../../keepNote/create/form\";\n\nconst KeepNoteAdd:React.FC<{close: () => any, handleSubmitSuccess: (ev: any[]) => any, dueDate: Date}> = (props) => {\n\n const {handleSubmitSuccess, close, dueDate} = props;\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n return <>\n
    \n
    Ajouter une note
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default KeepNoteAdd;","import React, {useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\";\nimport * as accessRights from \"../../../../constants/accessRight\";\nimport * as api from \"../../../../adapters/keepNote\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\nimport {Granted} from \"../../../../security/granted\";\n\nconst KeepNoteShow:React.FC<{close: () => any, arg: EventClickArg, handleRemove: (e: any) => any, setCalendarKeepNoteSidebarProps: React.Dispatch}> = (props) => {\n\n const {handleRemove, close, arg, setCalendarKeepNoteSidebarProps} = props;\n\n const dispatch = useDispatch();\n const [removing, setRemoving] = useState(false)\n\n\n function remove(){\n setRemoving(true)\n api.cancel(Number(arg.event.id)).then(() => handleRemove(arg))\n .then(() => dispatch(showAlertSuccess('Note supprimé')))\n .then(() => setRemoving(true))\n .then(() => close())\n }\n\n return <>\n
    \n
    Note
    \n \n
    \n
    \n

    \n {arg.event.title}\n

    \n

    \n Le {format(arg.event.start!)}\n

    \n {Granted(accessRights.EDIT_KEEP_NOTE) &&
    \n
    \n \n
    \n {Granted(accessRights.DELETE_KEEP_NOTE) &&
    \n \n
    }\n
    }\n
    \n \n}\n\nexport default KeepNoteShow;","import React, {useEffect, useState} from \"react\";\nimport CalendarKeepNoteEdit from \"../edit\";\nimport CalendarKeepNoteAdd from \"../add\";\nimport CalendarKeepNoteShow from \"../show\";\nimport {Offcanvas} from \"bootstrap\";\nimport {KeepNote} from \"../../../../models/keepNote\";\nimport format from \"../../../../utils/locale\";\nimport {EventClickArg} from \"@fullcalendar/react\";\n\ninterface InterfaceKeepNoteEdit {\n sidebarType: 'KEEP_NOTE_EDIT',\n keepNoteId: number,\n dueDate: Date,\n description: string\n isPrivate: boolean\n}\n\ninterface InterfaceKeepNoteAdd {\n sidebarType: 'KEEP_NOTE_ADD',\n dueDate: Date,\n}\n\ninterface InterfaceKeepNoteShow {\n sidebarType: 'KEEP_NOTE_SHOW',\n arg: EventClickArg,\n setCalendarKeepNoteSidebarProps: React.Dispatch\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type CalendarKeepNoteSidebarInterface = {trigger: number} & (Interface | InterfaceKeepNoteEdit | InterfaceKeepNoteAdd | InterfaceKeepNoteShow)\n\nconst CalendarKeepNoteSidebar:React.FC}> = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasCalendarKeepNote')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasCalendarKeepNote')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n function transformNote(keepNote: KeepNote)\n {\n return {\n title: keepNote.description,\n start: format(new Date(keepNote.dueDate), 'uuuu-MM-dd'),\n allDay: true,\n id: keepNote.id,\n private: keepNote.private,\n createdBy: keepNote.createdBy,\n createdAT: keepNote.createdAt,\n backgroundColor: \"#fff\",\n borderColor: \"#000\",\n textColor: \"#000\",\n eventType: \"keepNote\",\n resourceId: \"keepNotes\",\n className: 'fc-timeline-event-keepNote'\n };\n }\n\n function handleKeepNoteAdd(keepNote: any)\n {\n props.setCalendarData((prev: any) => {\n return {...prev, keepNotes: [...prev.keepNotes, transformNote(keepNote)]}\n })\n\n return true;\n }\n\n function handleKeepNoteRemove(arg: EventClickArg)\n {\n props.setCalendarData((prev: any) => {\n return {...prev, keepNotes: [...prev.keepNotes.filter((k: any) => k.id != arg.event.id)]}\n })\n\n return true;\n }\n\n function handleKeepNoteEdit(keepNote: any)\n {\n props.setCalendarData((prev: any) => {\n\n let index = prev.keepNotes.findIndex((k:any) => k.id == keepNote.id)\n\n if (index !== -1){\n prev.keepNotes[index] = transformNote(keepNote)\n }\n\n return {...prev}\n })\n\n return true;\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"KEEP_NOTE_EDIT\":\n return \n case \"KEEP_NOTE_ADD\":\n return \n case \"KEEP_NOTE_SHOW\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: CalendarKeepNoteSidebarInterface & {setCalendarData: React.Dispatch}, nextProps: CalendarKeepNoteSidebarInterface & {setCalendarData: React.Dispatch}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(CalendarKeepNoteSidebar, areEqual);\n","import React, {useEffect, useState} from \"react\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport {Company} from \"../../../models/companies\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as api from \"../../../adapters/calendar\";\nimport {useFormik} from \"formik\";\nimport {\n getDayOption,\n getDayOptions,\n getISOWeeks,\n getMonthOption,\n getMonthOptions,\n range\n} from \"../../../constants/global\";\nimport dtf from \"../../../utils/locale\";\nimport {getCalendarTypesChoice, getCalendarTypesChoices} from \"../../../constants/calendar\";\nimport * as Yup from \"yup\";\nimport SmallLoader from \"../../../utils/loader/small\";\nimport getUser from \"../../../security/getUser\";\nimport FormError from \"../../../utils/formError\";\nimport {APPLICATION_PDF} from \"../../../adapters/xhr\";\nimport FileSaver from \"file-saver\";\nimport SalarySelector from \"../../salary/selector\";\nimport {Salaries} from \"../../../models/salary\";\n\ninterface Interface {\n company: Company,\n sortBy: number,\n isTasks: boolean,\n presence: boolean,\n calendar: string,\n dt?: Date,\n view: string\n}\n\nconst CalendarDownload:React.FC = (props) => {\n\n const [initialValues, setInitialValues] = useState({});\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({}));\n const [filterType, setFilterType] = useState(0);\n const dt = props.dt || new Date();\n const [isOpen, setIsOpen] = useState(false)\n\n\n useEffect(() => {\n let controller = new AbortController();\n\n let el = document.getElementById(\"offcanvasCalendarDownload\")!\n\n el.addEventListener(\"shown.bs.offcanvas\", open)\n el.addEventListener(\"hidden.bs.offcanvas\", close)\n\n return () => {\n controller.abort();\n el.removeEventListener(\"shown.bs.offcanvas\", open)\n el.removeEventListener(\"hidden.bs.offcanvas\", close)\n }\n }, [isOpen])\n\n function open(){\n setIsOpen(true)\n }\n function close(){\n setIsOpen(false)\n }\n\n\n const TYPE_DAILY = 1;\n const TYPE_WEEKLY = 2;\n const TYPE_MONTHLY = 3;\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.downloadTest(values, {headers: [APPLICATION_PDF], responseType: 'arraybuffer'})\n .then(resp => {\n let newBlob = new Blob([resp.data], { type: 'application/pdf;charset=utf-8' })\n FileSaver.saveAs(newBlob, `planning-sivan-${values.year}-${values.week ? 'week' : 'month'}-${values.week || values.month}.pdf`)\n formikHelpers.setSubmitting(false)\n })\n .catch(() => formikHelpers.setSubmitting(false))\n }\n })\n\n useEffect(() => {\n\n let fields:string[] = ['type', 'calendar', 'company'];\n let _initialValues: any = {};\n let _validationSchema: any = {};\n\n switch (getDefaultType(props.view).value){\n case TYPE_DAILY:\n fields.push('day', 'week', 'year', 'display', 'format');\n break;\n case TYPE_WEEKLY:\n fields.push('week', 'year', 'display', 'format');\n break;\n case TYPE_MONTHLY:\n fields.push('month', 'year');\n break;\n }\n\n switch (props.calendar)\n {\n case calendarTypes.CALENDAR_EVENTS_GLOBAL:\n fields.push('sortBy', 'presence', 'hideAbsence')\n if ([TYPE_DAILY, TYPE_WEEKLY].includes(getDefaultType(props.view).value)){\n fields.push(\"isTasks\")\n }\n break;\n case calendarTypes.CALENDAR_TASK:\n fields.push('sortBy')\n break;\n }\n\n\n fields.forEach(f => {\n switch (f)\n {\n case \"type\":\n _initialValues.type = getDefaultType(props.view).value\n _validationSchema.type = Yup.number().required('Veuillez séléctionner un type de période')\n break;\n case \"calendar\":\n _initialValues.calendar = props.calendar\n _validationSchema.calendar = Yup.string().required('Veuillez séléctionner un planning')\n break;\n case \"company\":\n _initialValues.company = props.company.id;\n _validationSchema.company = Yup.number().required()\n break;\n case \"day\":\n _initialValues.day = dtf(dt, 'i')\n _validationSchema.day = Yup.number().required()\n break;\n case \"week\":\n _initialValues.week = dtf(dt, 'w')\n _validationSchema.week = Yup.number().required()\n break;\n case \"month\":\n _initialValues.month = dtf(dt, 'M')\n _validationSchema.month = Yup.number().required()\n break;\n case \"year\":\n _initialValues.year = dt.getFullYear().toString()\n _validationSchema.year = Yup.number().required()\n break;\n case \"sortBy\":\n _initialValues.sortBy = props.sortBy\n _validationSchema.sortBy = Yup.number().required()\n break;\n case \"isTasks\":\n _initialValues.isTasks = props.isTasks\n _validationSchema.isTasks = Yup.boolean().required()\n break;\n case \"presence\":\n _initialValues.presence = false\n _validationSchema.presence = Yup.boolean().required()\n break;\n case \"hideAbsence\":\n _initialValues.hideAbsence = false\n _validationSchema.hideAbsence = Yup.boolean().required()\n break;\n case \"display\":\n _initialValues.display = 1\n _validationSchema.display = Yup.number().required()\n break;\n case \"format\":\n _initialValues.format = 'Portrait'\n _validationSchema.format = Yup.string().required()\n break;\n }\n })\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }, [props, isOpen])\n\n return
    \n
    \n
    Télécharger le planning
    \n \n
    \n
    \n
    \n {isOpen &&
    \n
    \n
    \n
    \n handleTypeChange(Number(c!.value))}\n />\n \n
    \n {[1, 2].includes(formik.values.type) &&
    \n c.value === formik.values.display)}\n label={'Format'}\n required={true}\n onChange={(c) => formik.setFieldValue('display', c?.value)}\n />\n \n
    }\n {[1, 2].includes(formik.values.type) &&
    \n c.value === formik.values.format)}\n label={'Affichage'}\n required={true}\n onChange={(c) => formik.setFieldValue('format', c?.value)}\n />\n \n
    }\n
    \n
    \n
    \n {formik.values.type === 1 &&
    \n formik.setFieldValue('day', c?.value)}\n required={true}\n />\n \n
    }\n {[1, 2].includes(formik.values.type) &&
    \n ({\n label: String(week),\n value: String(week)\n }))}\n value={{label: dtf(dt, 'w'), value: dtf(dt, 'w')}}\n onChange={(c) => formik.setFieldValue('week', c?.value)}\n required={true}\n />\n \n
    }\n {formik.values.type === 3 &&
    \n formik.setFieldValue('month', c?.value)}\n required={true}\n />\n
    }\n
    \n ({\n label: String(y),\n value: y.toString()\n }))}\n value={{label: String(dt.getFullYear()), value: dt.getFullYear().toString()}}\n onChange={(c) => formik.setFieldValue('year', c?.value)}\n required={true}\n />\n \n
    \n
    \n
    \n handleCalendarChange(String(c!.value))}\n required={true}\n />\n \n
    \n {formik.values.calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL && <>\n
    \n formik.setFieldValue('sortBy', c?.value)}\n required={true}\n />\n \n
    \n {formik.values.type !== TYPE_MONTHLY &&
    \n
    \n \n \n
    \n \n
    }\n
    \n
    \n \n \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n
    \n }\n\n {formik.values.calendar === calendarTypes.CALENDAR_TASK &&
    \n formik.setFieldValue('sortBy', c?.value)}\n required={true}\n />\n \n
    }\n
    \n ({\n label: c.title,\n value: c.id\n }))}\n onChange={c => formik.setFieldValue('company', c?.value)}\n />\n \n
    \n
    \n

    \n Filtrer les collaborateurs\n

    \n
    \n
    \n handleFilterTypeChange(e)}\n defaultChecked={true} type=\"radio\" name=\"filterType\" id=\"filterType1\"/>\n \n
    \n
    \n handleFilterTypeChange(e)}\n type=\"radio\" name=\"filterType\" id=\"filterType2\"/>\n \n
    \n
    \n handleFilterTypeChange(e)}\n type=\"radio\" name=\"filterType\" id=\"filterType3\"/>\n \n
    \n
    \n
    \n {filterType === 2 &&
    \n formik.setFieldValue('job', c?.value)}\n required={true}\n />\n
    }\n {filterType === 3 &&
    \n formik.setFieldValue('salaries', salaries.map(salary => salary.id))}\n companies={[formik.values.company]}\n initiallyOpen={true}\n teams={true}\n accessRight={accessRights.DOWNLOAD_CALENDAR}\n />\n
    }\n {/*
    */}\n {/* */}\n {/*
    */}\n {/* */}\n {/* */}\n {/*
    */}\n {/*
    */}\n {/* */}\n {/* */}\n {/*
    */}\n {/*
    */}\n
    \n \n
    \n
    }\n
    \n
    \n
    \n\n function getDefaultType(view : string)\n {\n switch (view){\n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n case calendarTypes.TIME_GRID_DAY_VIEW:\n return {label: 'Jour', value: 1};\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n case calendarTypes.DAY_GRID_MONTH_VIEW:\n return {label: 'Mois', value: 3};\n default:\n return {label: 'Semaine', value: 2};\n }\n }\n\n function handleTypeChange(type: number) {\n\n const _initialValues: any = {...formik.values};\n const _validationSchema: any = {...validationSchema.fields};\n _initialValues.type = type;\n\n let fields: string[] = [];\n let removeFields: string[] = [];\n switch (type){\n case TYPE_DAILY:\n fields = ['year', 'week', 'day', 'display', 'format']\n removeFields = ['month']\n\n if (_initialValues.calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL){\n fields.push('isTasks');\n }\n\n break;\n case TYPE_WEEKLY:\n fields = ['year', 'week', 'display', 'format']\n removeFields = ['month', 'day']\n\n if (_initialValues.calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL){\n fields.push('isTasks');\n }\n\n break;\n case TYPE_MONTHLY:\n fields = ['year', 'month']\n removeFields = ['week', 'day', 'display', 'format', 'isTasks']\n break;\n }\n\n for (let i in fields){\n switch (fields[i]) {\n case \"day\":\n _initialValues.day = dtf(dt, 'i');\n _validationSchema.type = Yup.number().required();\n break;\n case \"week\":\n _initialValues.week = dtf(dt, 'w');\n _validationSchema.week = Yup.number().required();\n break;\n case \"month\":\n _initialValues.month = dtf(dt, 'M');\n _validationSchema.month = Yup.number().required();\n break;\n case \"year\":\n _initialValues.year = dtf(dt, 'uuuu');\n _validationSchema.year = Yup.number().required();\n break;\n case \"display\":\n _initialValues.display = _initialValues.display || 1;\n _validationSchema.display = Yup.number().required();\n break;\n case \"format\":\n _initialValues.format = _initialValues.format || 'Portrait';\n _validationSchema.format = Yup.string().required();\n break;\n case \"isTasks\":\n _initialValues.isTasks = _initialValues.isTasks || false;\n _validationSchema.isTasks = Yup.boolean().required();\n break;\n }\n }\n\n for (let i in removeFields){\n if (_initialValues.hasOwnProperty(removeFields[i])){\n delete _initialValues[removeFields[i]]\n }\n\n if (_validationSchema.hasOwnProperty(removeFields[i])){\n delete _validationSchema[removeFields[i]]\n }\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n function handleCalendarChange(calendar: string) {\n\n const _initialValues: any = {...formik.values};\n const _validationSchema: any = {...validationSchema.fields};\n _initialValues.calendar = calendar;\n\n let fields:string[] = [];\n let removeFields:string[] = [];\n\n switch (calendar){\n case calendarTypes.CALENDAR_EVENTS_GLOBAL:\n fields = ['sortBy', 'isTasks', 'presence'];\n break;\n case calendarTypes.CALENDAR_TASK:\n fields = ['sortBy'];\n removeFields = ['isTasks', 'presence'];\n break;\n default:\n removeFields = ['sortBy', 'isTasks', 'presence'];\n break;\n }\n\n for (let i in fields){\n switch (fields[i]) {\n case \"sortBy\":\n _initialValues.sortBy = props.sortBy;\n _validationSchema.sortBy = Yup.number().required();\n break;\n case \"isTasks\":\n _initialValues.isTasks = false;\n _validationSchema.isTasks = Yup.boolean().required();\n break;\n case \"presence\":\n _initialValues.presence = false;\n _validationSchema.presence = Yup.boolean().required();\n break;\n }\n }\n\n for (let i in removeFields){\n if (_initialValues.hasOwnProperty(removeFields[i])){\n delete _initialValues[removeFields[i]]\n }\n\n if (_validationSchema.hasOwnProperty(removeFields[i])){\n delete _validationSchema[removeFields[i]]\n }\n }\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n\n function handleFilterTypeChange(e: React.ChangeEvent)\n {\n setFilterType(Number(e.target.value));\n let _initialValues = {...formik.values}\n let _validationSchema = {...validationSchema.fields}\n\n let fields: string[] = []\n let removed: string[] = []\n\n switch (Number(e.target.value)){\n case 1:\n removed.push('job', 'salaries')\n break;\n case 2:\n fields.push('job')\n removed.push('salaries')\n break;\n case 3:\n fields.push('salaries')\n removed.push('job')\n break;\n }\n\n removed.forEach(f => {\n if (_initialValues.hasOwnProperty(f)){\n delete _initialValues[f]\n }\n\n if (_validationSchema.hasOwnProperty(f)){\n delete _validationSchema[f]\n }\n })\n\n fields.forEach(f => {\n switch (f)\n {\n case 'salaries' :\n _initialValues[f] = [];\n _validationSchema[f] = Yup.array().of(Yup.number()).min(1);\n break;\n case 'job' :\n _initialValues[f] = \"1\";\n _validationSchema[f] = Yup.string().required();\n break;\n }\n })\n\n setInitialValues({..._initialValues})\n setValidationSchema(Yup.object().shape({..._validationSchema}))\n }\n}\n\nexport default CalendarDownload;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/salary/template\";\nimport {SalaryTemplate, SalaryTemplates} from \"../../../../../models/salary/template\";\nimport {Salary} from \"../../../../../models/salary\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport FormError from \"../../../../../utils/formError\";\n\ninterface InterfaceAdd {\n templates: SalaryTemplates,\n salary: Salary,\n lastEnd?: Date,\n handleSubmit: (ev: any) => any,\n duplicate: false,\n}\ninterface InterfaceDuplicate {\n templates: SalaryTemplates,\n salary: Salary,\n lastEnd?: Date,\n handleSubmit: (ev: any) => any,\n duplicate: true,\n template: SalaryTemplate\n}\n\nconst SalaryTemplateAddForm:React.FC = (props) => {\n\n const {templates, salary, lastEnd, handleSubmit} = props;\n\n const [initialValues, setInitialValues] = useState({\n title: '',\n start: lastEnd || new Date(),\n end: undefined,\n salary: salary.id\n });\n\n useEffect(() => {\n setInitialValues({\n title: '',\n start: lastEnd || new Date(),\n end: undefined,\n salary: salary.id\n })\n }, [lastEnd, salary.id])\n\n const formik = useFormik({\n initialValues: initialValues,\n enableReinitialize: true,\n validationSchema: Yup.object().shape({\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n }),\n onSubmit: values => {\n if (props.duplicate){\n api.duplicate(values, props.template.id).then(data => {\n formik.setSubmitting(false)\n handleSubmit(data.data)\n })\n }else{\n api.create(values).then(data => {\n formik.setSubmitting(false)\n handleSubmit(data.data)\n })\n }\n }\n })\n\n const overlap = () => {\n return templates.filter(t => {\n\n if (formik.values.start && !formik.values.end){\n return (new Date(t.start) > (formik.values.start) || (!t.end || new Date(t.end) > (formik.values.start)))\n }\n\n if (formik.values.start && formik.values.end && t.start && t.end){\n return (new Date(t.start) < formik.values.end! && new Date(t.end) > formik.values.start);\n }\n\n if (!t.end){\n return !formik.values.end || formik.values.end! > new Date(t.start)\n }\n\n return false;\n })\n }\n\n const isOverlap = !!overlap().length\n\n return
    \n
    \n \n \n \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date) => formik.setFieldValue('start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.start}\n endDate={formik.values.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n \n \n \n }\n selected={formik.values.end}\n onChange={(date) => formik.setFieldValue('end', date)}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n
    \n \n \n
    \n
    \n {overlap().map(item =>

    \n Incompatible avec {item.title}\n

    )}\n
    \n \n
    \n}\n\nexport default SalaryTemplateAddForm;","import React, {useEffect, useState} from \"react\";\nimport {SalaryTemplate, SalaryTemplates} from \"../../../../models/salary/template\";\nimport {Salary} from \"../../../../models/salary\";\nimport SalaryTemplateAddForm from \"./form\";\nimport {Offcanvas} from \"bootstrap\";\n\nconst SalaryTemplateAdd:React.FC<{\n templates: SalaryTemplates,\n salary: Salary,\n setTemplates: React.Dispatch,\n}> = (props) => {\n\n const {templates, salary, setTemplates } = props;\n const [offcanvas, setOffcanvas] = useState()\n const [lastEnd, setLastEnd] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasSalaryTemplateAdd')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n const maxDate = (dates: Date[]) => new Date(Math.max(...dates.map(Number)));\n\n useEffect(() => {\n if(templates.length > 0 && templates.filter(t => !t.end).length === 0) {\n setLastEnd(maxDate(templates.map(t => new Date(t.end!))));\n }else{\n setLastEnd(undefined)\n }\n }, [templates])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const handleSubmit = (t: SalaryTemplate) => {\n setTemplates([...templates, t])\n close()\n }\n\n return
    \n
    \n
    Ajouter un emploi du temps
    \n \n
    \n
    \n \n
    \n
    \n}\n\nexport default SalaryTemplateAdd;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../../models/salary\";\nimport * as api from \"../../../../adapters/salary/template\";\nimport {SalaryTemplate, SalaryTemplates} from \"../../../../models/salary/template\";\nimport format from \"../../../../utils/locale\";\nimport Loader from \"../../../../utils/loader\";\nimport SalaryTemplateAdd from \"../add\";\n\nconst SalaryTemplateList:React.FC<{salary: Salary, setTemplate: React.Dispatch, template?: SalaryTemplate, templates: SalaryTemplates, setTemplates: React.Dispatch, date?: Date}> = (props) => {\n\n const {salary, setTemplate, template, templates, setTemplates, date} = props;\n const [loading, setLoading] = useState(false);\n\n useEffect(() => {\n setLoading(true);\n api.list(salary.id).then(resp => {\n setTemplates(resp.data);\n if (date){\n let _template = resp.data.find((t: SalaryTemplate) => new Date(t.start) <= date && (!t.end || date < new Date(t.end)))\n if (_template){\n setTemplate(_template)\n }\n }\n setLoading(false)\n })\n }, [salary])\n\n const Toolbar = () =>
    \n
    \n \n
    \n
    \n\n return
    \n \n
    \n {loading && }\n
      \n {templates.map(t =>
    • setTemplate(t)}>\n

      \n {t.title}\n

      \n

      \n {format(new Date(t.start), 'dd/MM/uuuu')} {t.end ? <>{format(new Date(t.end), 'dd/MM/uuuu')} : }\n

      \n
    • )}\n
    \n
    \n \n
    \n}\n\nexport default SalaryTemplateList;","import {post, get} from \"../../../xhr\";\nimport * as Yup from \"yup\";\n\ninterface requestData {\n start: Date,\n end: Date,\n week?: number,\n daysOfWeek: string[],\n accountingType: number,\n company: number,\n activity: string,\n localisation: string,\n weekNumber?: number,\n year?: number,\n salary?: number,\n template?: number,\n}\n\nexport function create(requestData: requestData){\n return post(`event/create`, requestData);\n}\n\nexport function edit(requestData: requestData, eventId: number){\n return post(`event/${eventId}/edit`, requestData);\n}\n\nexport function cancel(eventId: number){\n return get(`event/${eventId}/cancel`);\n}","import React, {useState} from \"react\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../../utils/customInput\";\nimport format from \"../../../../../../utils/locale\";\nimport FormError from \"../../../../../../utils/formError\";\nimport BootstrapSelect from \"../../../../../../utils/bootstrapSelect\";\nimport {\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n AccountingTypes,\n getAccountingTypeChoice\n} from \"../../../../../../constants/booking\";\nimport {Localisation} from \"../../../../../../models/localisation\";\nimport {Activity} from \"../../../../../../models/activity\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../../../adapters/salary/template/event\";\nimport * as Yup from \"yup\";\nimport {Company} from \"../../../../../../models/companies\";\nimport {SalaryTemplate, SalaryTemplateEvents} from \"../../../../../../models/salary/template\";\nimport {setSeconds} from \"date-fns\";\n\nconst SalaryTemplateEventAddForm:React.FC<{ start: Date, end: Date, week: number, company: Company, template: SalaryTemplate, handleSubmitSuccess: (ev: any) => any, events: SalaryTemplateEvents }> = (props) => {\n\n const {start, end, template, company, week, handleSubmitSuccess, events} = props;\n\n const initialValues = {\n start: start,\n end: end,\n week: week,\n company: company.id!,\n activity: \"\",\n localisation: \"\",\n accountingType: ACCOUNTING_TYPE_WORK_ACCOUNTED,\n daysOfWeek: [String(Number(format(start || new Date(), 'i')) - 1)],\n template: template.id\n }\n\n const validationSchema = Yup.object().shape({\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n\n if (!value) return false;\n\n if (start.getTime() > value.getTime()) {\n\n let clone = setSeconds(new Date(value), 0)\n clone.setDate(value.getDate() + 1)\n\n return clone.getTime() > start.getTime();\n }\n\n return value && start < value\n }),\n week: Yup.number().required(),\n accountingType: Yup.number().required(),\n activity: Yup.number().nullable(),\n company: Yup.number().required(),\n localisation: Yup.number().nullable(),\n daysOfWeek: Yup.array().of(Yup.number()).min(1)\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n formikHelpers.setSubmitting(false);\n handleSubmitSuccess(resp.data)\n })\n }\n })\n\n const overlap = () => events.filter(e => e.week ===week && !!e.daysOfWeek.filter(d => formik.values.daysOfWeek.includes(String(d))).length && format(new Date(e.start), 'HH:mm') < format(formik.values.end, 'HH:mm') && format(new Date(e.end), 'HH:mm') > format(formik.values.start, 'HH:mm'))\n\n return
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeInput={true}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n minDate={new Date(\"2019/07/01\")}\n dateFormat=\"E HH:mm\"\n\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeInput={true}\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n maxDate={new Date(\"2019/07/07\")}\n dateFormat=\"E HH:mm\"\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n />\n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"activity\"\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n />\n
    \n
    \n
    \n
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n {overlap().map(e => <>\n
    \n Créneau déjà existant {e.description}\n
    \n
    \n )}\n \n
    \n}\n\nexport default SalaryTemplateEventAddForm;","import React, {useEffect, useState} from \"react\";\nimport SalaryTemplateEventAddForm from \"../form\";\nimport {DateSelectArg} from \"@fullcalendar/react\";\nimport {Company} from \"../../../../../../models/companies\";\nimport {SalaryTemplate, SalaryTemplateEvents} from \"../../../../../../models/salary/template\";\n\nconst SalaryTemplateEventSelect:React.FC<{arg: DateSelectArg, week: number, company: Company, template: SalaryTemplate, handleSubmitSuccess: (ev: any) => any, events: SalaryTemplateEvents}> = (props) => {\n\n const {arg, template, company, week, events, handleSubmitSuccess} = props\n\n const [key, setKey] = useState(0)\n\n useEffect(() => {\n setKey(prev => prev + 1)\n }, [arg])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default SalaryTemplateEventSelect;","import React, {useEffect, useState} from \"react\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../../utils/customInput\";\nimport format from \"../../../../../../utils/locale\";\nimport FormError from \"../../../../../../utils/formError\";\nimport {useFormik} from \"formik\";\nimport * as api from \"../../../../../../adapters/salary/template/event\";\nimport * as Yup from \"yup\";\nimport {Company} from \"../../../../../../models/companies\";\nimport {SalaryTemplate, SalaryTemplateEvent, SalaryTemplateEvents} from \"../../../../../../models/salary/template\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {editSalaryTemplateSuccess} from \"../../../../../../actions/salary/template\";\nimport {\n ACCOUNTING_TYPE_WORK_ACCOUNTED,\n AccountingTypes,\n getAccountingTypeChoice\n} from \"../../../../../../constants/booking\";\nimport {refresh, refreshResource} from \"../../../../../../actions/calendar\";\nimport BootstrapSelect from \"../../../../../../utils/bootstrapSelect\";\nimport {Localisation} from \"../../../../../../models/localisation\";\nimport {Activity} from \"../../../../../../models/activity\";\nimport {setSeconds} from \"date-fns\";\n\nconst SalaryTemplateEventEditForm:React.FC<{\n start: Date,\n end: Date,\n eventId: number,\n daysOfWeek: number[],\n week: number,\n company: Company,\n activity?: Activity,\n localisation?: Localisation,\n handleSubmitSuccess: (ev: any) => any,\n events: SalaryTemplateEvents }> = (props) => {\n\n const {start, end, daysOfWeek, events, week, company, activity, localisation, handleSubmitSuccess, eventId } = props;\n\n const initialValues = {\n start: new Date(start),\n end: new Date(end),\n company: company.id!,\n activity: activity ? String(activity.id) : \"\",\n localisation: localisation ? String(localisation.id) : \"\",\n accountingType: ACCOUNTING_TYPE_WORK_ACCOUNTED,\n daysOfWeek: daysOfWeek.map((d: number) => String(d)),\n }\n\n const validationSchema = Yup.object().shape({\n start: Yup.date().required(),\n end: Yup.date().required().test(\"is-greater\", \"La fin doit être après le début\", function(value: any) {\n const { start } = this.parent;\n\n if (!value) return false;\n\n if (start.getTime() > value.getTime()) {\n\n let clone = setSeconds(new Date(value), 0)\n clone.setDate(value.getDate() + 1)\n\n return clone.getTime() > start.getTime();\n }\n\n return value && start < value\n }),\n accountingType: Yup.number().required(),\n activity: Yup.number().nullable(),\n company: Yup.number().required(),\n localisation: Yup.number().nullable(),\n daysOfWeek: Yup.array().of(Yup.number()).min(1)\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.edit(values, eventId).then(resp => {\n formikHelpers.setSubmitting(false)\n handleSubmitSuccess(resp.data)\n })\n }\n })\n\n const overlap = () => events.filter(e => e.id !== eventId && e.week === week && !!e.daysOfWeek.filter(d => formik.values.daysOfWeek?.includes(String(d))).length && format(new Date(e.start), 'HH:mm') < format(formik.values.end, 'HH:mm') && format(new Date(e.end), 'HH:mm') > format(formik.values.start, 'HH:mm'))\n\n return
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeInput={true}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n minDate={new Date(\"2019/07/01\")}\n dateFormat=\"E HH:mm\"\n\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeInput={true}\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n renderDayContents={(dayOfMonth, date) => {format(date!, 'E')}}\n renderCustomHeader={() => <>}\n openToDate={new Date(\"2019/07/01\")}\n maxDate={new Date(\"2019/07/07\")}\n dateFormat=\"E HH:mm\"\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', choice!.value)}\n required={true}\n />\n
    \n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n />\n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"activity\"\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n />\n
    \n
    \n
    \n
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n {overlap().map(e => <>\n
    \n Créneau déjà existant {e.description}\n
    \n
    \n )}\n \n
    \n}\n\nexport default SalaryTemplateEventEditForm;","import React, {useEffect, useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {Company} from \"../../../../../models/companies\";\nimport {SalaryTemplateEvents} from \"../../../../../models/salary/template\";\nimport SalaryTemplateEventEditForm from \"./form\";\n\nconst SalaryTemplateEventEdit:React.FC<{arg?: EventClickArg, week: number, company: Company, handleSubmitSuccess: (ev: any) => any, events: SalaryTemplateEvents}> = (props) => {\n\n const {arg, company, week, events, handleSubmitSuccess} = props\n\n const [key, setKey] = useState(0)\n\n useEffect(() => {\n setKey(prev => prev + 1)\n }, [arg])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {arg && }\n
    \n \n}\n\nexport default SalaryTemplateEventEdit;","import React, {useState} from \"react\";\nimport {Company} from \"../../../../../models/companies\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport {SalaryTemplateEventSidebarInterface} from \"../sidebar\";\nimport {Salary} from \"../../../../../models/salary\";\nimport format from \"../../../../../utils/locale\";\nimport {SalaryTemplate, SalaryTemplateEvents} from \"../../../../../models/salary/template\";\nimport {getAccountingTypeChoice} from \"../../../../../constants/booking\";\nimport * as api from \"../../../../../adapters/salary/template/event\";\nimport {refresh, refreshResource} from \"../../../../../actions/calendar\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\n\ninterface Interface {\n company: Company,\n salary: Salary,\n template: SalaryTemplate,\n week: number,\n arg: EventClickArg,\n setCalendarEventSidebarProps: React.Dispatch,\n setEvents: React.Dispatch,\n close: () => any\n}\n\nconst SalaryTemplateEventShow:React.FC = (props) => {\n\n const {setCalendarEventSidebarProps, arg, company, week, salary, template, setEvents, close} = props;\n\n const [canceling, setCanceling] = useState(false)\n\n const cancel = () => {\n setCanceling(true)\n api.cancel(arg!.event.extendedProps.event.id).then(() => {\n setEvents((prev: SalaryTemplateEvents) => ([...prev.filter(e => e.id !== arg!.event.extendedProps.event.id)]))\n close()\n setCanceling(false)\n })\n }\n\n return <>\n
    \n
    Créneau de {salary.title}
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Début\n \n {format(new Date(arg.event.extendedProps.initialStart), 'HH:mm')}\n
    \n Fin\n \n {format(new Date(arg.event.extendedProps.initialEnd), 'HH:mm')}\n
    \n Type d'heure\n \n {getAccountingTypeChoice(arg.event.extendedProps.event.accountingType)?.label}\n
    \n Description\n \n {arg.event.extendedProps.description}\n
    \n Semaine\n \n {week}\n
    \n Établissement\n \n {company.title}\n
    \n Activité\n \n {arg.event.extendedProps.event.activity?.title || }\n
    \n Localisation\n \n {arg.event.extendedProps.event.localisation?.title || }\n
    \n Emploi du temps\n \n {template.title}\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n}\n\nexport default SalaryTemplateEventShow;","import React, {useEffect, useState} from \"react\";\nimport * as api from '../../../../../adapters/salary/template'\nimport {Events, SalaryTemplate} from \"../../../../../models/salary/template\";\nimport {Company} from \"../../../../../models/companies\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\n\nconst SalaryTemplateCopyWeek:React.FC<{\n week: number,\n template: SalaryTemplate,\n setEvents: (events: Events) => void;\n company: Company;\n close: () => any;\n}> = (props) => {\n\n const {week, setEvents, template, company, close} = props;\n\n const dispatch = useDispatch()\n const [loading, setLoading] = useState(false);\n const [targets, setTargets] = useState([])\n\n useEffect(() => {\n setTargets([])\n }, [week])\n\n const submit = () => {\n setLoading(true)\n api.copyEvents(template.id, week, targets).then(resp => {\n dispatch(showAlertSuccess('Semaine duplqué'))\n setEvents(resp.data.events)\n setLoading(false);\n close()\n })\n }\n\n const handleClick = (w: number) => {\n let _targets = targets;\n\n if (_targets.includes(w)){\n let index = _targets.findIndex(t => t === w);\n if (index !== -1){\n _targets.splice(index, 1);\n setTargets([..._targets])\n }\n }else{\n setTargets([..._targets, w]);\n }\n }\n\n return <>\n
    \n
    Dupliquer la S.{week} sur la semaine
    \n \n
    \n
    \n {<>\n

    \n Dupliquer sur la semaine\n

    \n
    \n {Array.from(Array(company.timesheet.recurrence).keys()).filter(i => i + 1 !== week).map((i) =>\n handleClick(i + 1)}\n className={'btn mx-2' + (targets.includes(i+ 1) ? \" btn-primary text-white\" : \" btn-light\")}>\n {i + 1}\n )}\n
    \n \n }\n
    \n \n}\n\nexport default SalaryTemplateCopyWeek;","import React, {useEffect, useState} from \"react\";\nimport {DateSelectArg, EventClickArg} from \"@fullcalendar/react\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {Company} from \"../../../../../models/companies\";\nimport {Offcanvas} from \"bootstrap\";\nimport {SalaryTemplate, SalaryTemplateEvents} from \"../../../../../models/salary/template\";\nimport SalaryTemplateEventSelect from \"../add/select\";\nimport SalaryTemplateEventEdit from \"../edit\";\nimport SalaryTemplateEventShow from \"../show\";\nimport SalaryTemplateCopyWeek from \"../copy\";\n\ninterface InterfaceEventShow {\n sidebarType: 'EVENT_SHOW',\n setCalendarEventSidebarProps: React.Dispatch,\n arg: EventClickArg,\n}\n\ninterface InterfaceEventEdit {\n sidebarType: 'EVENT_EDIT',\n arg: EventClickArg,\n}\n\ninterface InterfaceEventSelect {\n sidebarType: 'EVENT_SELECT',\n arg: DateSelectArg,\n}\n\ninterface InterfaceEventCopy {\n sidebarType: 'EVENT_COPY',\n}\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\nexport type SalaryTemplateEventSidebarInterface = {trigger: number} & (Interface | InterfaceEventEdit | InterfaceEventSelect | InterfaceEventShow | InterfaceEventCopy)\n\nconst SalaryTemplateEventSidebar:React.FC}> = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasSalaryTemplateEvent')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n let elem = document.getElementById('offcanvasSalaryTemplateEvent')!\n offcanvas.show(elem)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"EVENT_EDIT\":\n return \n case \"EVENT_SELECT\":\n return \n case \"EVENT_SHOW\":\n return \n case \"EVENT_COPY\":\n return \n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n \n
    \n\n function handleEventAdd(ev: any){\n props.setEvents([...props.events, ev])\n close();\n }\n\n function handleEventEdit(ev: any){\n props.setEvents([...props.events.filter(e => e.id !== ev.id), ev])\n close();\n }\n}\n\nexport default SalaryTemplateEventSidebar;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/salary/template\";\nimport {SalaryTemplates, SalaryTemplate} from \"../../../../../models/salary/template\";\nimport {Salary} from \"../../../../../models/salary\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport FormError from \"../../../../../utils/formError\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\n\nconst SalaryTemplateEditForm:React.FC<{\n templates: SalaryTemplates,\n template: SalaryTemplate,\n salary: Salary,\n handleSubmit: (ev: any) => any\n}> = (props) => {\n\n const {templates, template, salary, handleSubmit} = props;\n\n const [initialValues, setInitialValues] = useState({\n title: '',\n start: new Date(),\n end: undefined,\n salary: salary.id\n })\n\n useEffect(() => {\n if (template){\n setInitialValues({\n title: template.title,\n start: new Date(template.start),\n end: template.end ? new Date(template.end) : undefined,\n salary: salary.id\n })\n }\n }, [template])\n\n const dispatch = useDispatch();\n const formik = useFormik({\n enableReinitialize: true,\n initialValues: initialValues,\n validationSchema: Yup.object().shape({\n title: Yup.string().required(),\n start: Yup.date().required(),\n end: Yup.date().nullable(),\n salary: Yup.number().required(),\n }),\n onSubmit: (values, formikHelpers) => {\n api.edit(values, template.id).then(data => {\n dispatch(showAlertSuccess('Emploi du temps mis à jour'))\n formikHelpers.setSubmitting(false)\n handleSubmit(data.data)\n })\n }\n })\n\n const overlap = () => {\n return templates.filter(t => {\n\n if (t.id === template.id) return false;\n\n if (formik.values.start && !formik.values.end){\n return (new Date(t.start) > (formik.values.start) || (!t.end || new Date(t.end) > (formik.values.start)))\n }\n\n if (formik.values.start && formik.values.end && t.start && t.end){\n return (new Date(t.start) < formik.values.end! && new Date(t.end) > formik.values.start);\n }\n\n if (!t.end){\n return !formik.values.end || formik.values.end! > new Date(t.start)\n }\n\n return false;\n })\n }\n\n const isOverlap = !!overlap().length\n\n return
    \n
    \n \n \n \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date) => formik.setFieldValue('start', date)}\n selectsStart\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n startDate={formik.values.start}\n endDate={formik.values.end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n \n \n \n }\n selected={formik.values.end}\n onChange={(date) => formik.setFieldValue('end', date)}\n selectsEnd\n startDate={formik.values.start}\n endDate={formik.values.end}\n minDate={formik.values.start}\n peekNextMonth\n showMonthDropdown\n showYearDropdown\n dropdownMode=\"select\"\n isClearable={true}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n disabled={formik.isSubmitting}\n />\n
    \n \n \n
    \n
    \n {overlap().map(item =>

    \n Incompatible avec {item.title}\n

    )}\n
    \n \n
    \n}\n\nexport default SalaryTemplateEditForm;","import React, {useEffect, useState} from \"react\";\nimport {SalaryTemplate, SalaryTemplates} from \"../../../../models/salary/template\";\nimport {Salary} from \"../../../../models/salary\";\nimport SalaryTemplateEditForm from \"./form\";\nimport {Offcanvas} from \"bootstrap\";\n\nconst SalaryTemplateEdit:React.FC<{\n templates: SalaryTemplates,\n template: SalaryTemplate,\n salary: Salary,\n setTemplates: React.Dispatch,\n setTemplate: React.Dispatch,\n}> = (props) => {\n\n const {templates, salary, setTemplates, template, setTemplate } = props;\n const [offcanvas, setOffcanvas] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasSalaryTemplateEdit')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const handleSubmit = (t: SalaryTemplate) => {\n\n let index = templates.findIndex(_t => _t.id === t.id)\n if (index !== -1){\n templates[index] = t;\n setTemplates([...templates])\n }\n setTemplate(t)\n close()\n }\n\n return
    \n
    \n
    Ajouter un emploi du temps
    \n \n
    \n
    \n \n
    \n
    \n}\n\nexport default SalaryTemplateEdit;","import React, {useEffect, useState} from \"react\";\nimport {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/salary/template\";\nimport {useDispatch} from \"react-redux\";\nimport {SalaryTemplate, SalaryTemplates} from \"../../../../../models/salary/template\";\nimport SalaryTemplateAddForm from \"../form\";\nimport {Offcanvas} from \"bootstrap\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {Salary} from \"../../../../../models/salary\";\n\nconst SalaryTemplateDuplicate:React.FC<{setTemplates: React.Dispatch, setTemplate: React.Dispatch, salary: Salary, template: SalaryTemplate, templates: SalaryTemplates}> = (props) => {\n\n const dispatch = useDispatch();\n const {templates, setTemplate, setTemplates, template, salary} = props;\n const [offcanvas, setOffcanvas] = useState()\n const [lastEnd, setLastEnd] = useState()\n\n useEffect(() => {\n const el = document.getElementById('offcanvasSalaryTemplateDuplicate')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n const maxDate = (dates: Date[]) => new Date(Math.max(...dates.map(Number)));\n\n useEffect(() => {\n if(templates.length > 0 && templates.filter(t => !t.end).length === 0) {\n setLastEnd(maxDate(templates.map(t => new Date(t.end!))));\n }else{\n setLastEnd(undefined)\n }\n }, [templates])\n\n const handleSubmit = (t: SalaryTemplate) => {\n setTemplates([...templates, t])\n setTemplate(t)\n close()\n }\n\n return
    \n
    \n
    Dupliquer un emploi du temps
    \n \n
    \n
    \n \n
    \n
    \n}\n\nexport default SalaryTemplateDuplicate;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../../../models/salary\";\nimport {SingleSalarySelected, SingleSalarySelector} from \"../../../../../utils/salarySelector/single\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {SalaryTemplate} from \"../../../../../models/salary/template\";\nimport * as api from \"../../../../../adapters/salary/template\";\nimport {Offcanvas} from \"bootstrap\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport SalarySelector from \"../../../selector\";\n\nconst SalaryTemplateImport:React.FC<{targetSalary: Salary, targetTemplate: SalaryTemplate, setTemplate: React.Dispatch}> = (props) => {\n\n const [_salary, setSalary] = useState()\n const [template, setTemplate] = useState()\n const [isSubmitting, setIsSubmitting] = useState(false)\n\n const [offcanvas, setOffcanvas] = useState()\n useEffect(() => {\n const el = document.getElementById('offcanvasSalaryTemplateImport')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n }, [])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function importTemplate(){\n setIsSubmitting(true)\n api.copy(template, props.targetTemplate.id).then(resp => {\n props.setTemplate(resp.data)\n close()\n setIsSubmitting(false);\n })\n }\n\n return
    \n
    \n
    Importer un emploi du temps
    \n \n
    \n
    \n
    \n {\n setSalary(s)\n setTemplate(undefined)\n }}\n />\n
    \n {_salary &&
    \n setTemplate(c?.value)}\n fetchEntity={'template'}\n fetchParams={{salary: _salary.id}}\n label={'Template à importer'}\n />\n
    }\n {_salary && template && <>\n \n }\n
    \n
    \n}\n\nexport default SalaryTemplateImport;","import React, {useEffect, useState} from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport {Salary} from \"../../../../models/salary\";\nimport format from \"../../../../utils/locale\";\nimport {Events, SalaryTemplate, SalaryTemplates} from \"../../../../models/salary/template\";\nimport {Company} from \"../../../../models/companies\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport * as api from \"../../../../adapters/salary/template\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport rrulePlugin from \"@fullcalendar/rrule\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport SalaryTemplateEventSidebar, {SalaryTemplateEventSidebarInterface} from \"../event/sidebar\";\nimport Loader from \"../../../../utils/loader\";\nimport SalaryTemplateEdit from \"../edit\";\nimport SalaryTemplateDuplicate from \"../add/duplicate\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {\n ACCOUNTING_TYPE_ABSENCE_ACCOUNTED,\n ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED,\n getAccountingTypeChoice\n} from \"../../../../constants/booking\";\nimport SalaryTemplateImport from \"../add/import\";\nimport { list } from \"../../../../adapters/company\";\nimport { showAlertDanger } from \"../../../../actions/alert\";\n\nconst SalaryTemplateShow:React.FC<{salary: Salary, template?: SalaryTemplate, templates: SalaryTemplates, setTemplates: React.Dispatch, setTemplate: React.Dispatch}> = (props) => {\n const {salary, template, templates, setTemplates, setTemplate} = props;\n const dispatch = useDispatch()\n\n const [loading, setLoading] = useState(false);\n const [companies, setCompanies] = useState([]);\n const [company, setCompany] = useState(undefined);\n const [week, setWeek] = useState(1);\n const [nightView, setNightView] = useState(false);\n const [counter, setCounter] = useState<{ contractWorkingTime: string, workingTime: string, deltaDuration: number, delta: string }>()\n const [counterFetched, setCounterFetched] = useState(false)\n const [timeRange, setTimeRange] = useState({\n minTime: '09:00:00',\n maxTime: '20:00:00',\n });\n const [events, setEvents] = useState([])\n const [canceling, setCanceling] = useState(false)\n\n const [calendarEventSidebarProps, setCalendarEventSidebarProps] = useState({sidebarType: \"EMPTY\", trigger: 0});\n\n const fetchSalaryCompanies = async () => {\n try {\n const { data } = await list({ salaries: [salary.id] })\n if (data?.length > 0) {\n setCompanies(data)\n setCompany(data[0])\n setTimeRange({\n minTime: format(new Date(data[0].timesheet.openAt), 'HH:mm:ss'),\n maxTime: format(new Date(data[0].timesheet.closeAt), 'HH:mm:ss'),\n })\n }\n } catch (error) {\n dispatch(showAlertDanger())\n }\n }\n\n useEffect(() => {\n if (salary?.id) {\n fetchSalaryCompanies()\n }\n }, [salary?.id])\n\n useEffect(() => {\n if (template){\n setLoading(true)\n api.show(template.id).then((data) => {\n setEvents(data.data.events)\n setLoading(false);\n })\n }\n }, [template])\n\n const pad = (num: number, size: number) => {\n let ret = num.toString();\n while (ret.length < size) ret = \"0\" + ret;\n return ret;\n }\n\n useEffect(() => {\n if (template){\n setCounterFetched(false)\n api.workingTime(template.id, week).then(data => {\n setCounter(data.data)\n setCounterFetched(true)\n })\n }\n }, [week, events])\n\n useEffect(() => {\n if (company) {\n if (nightView) {\n let max_hours = pad(24 + (new Date(company.timesheet.openAt)).getHours(), 2);\n let max_minutes = pad((new Date(company.timesheet.openAt)).getMinutes(), 2);\n \n let min_hours = pad((new Date(company.timesheet.closeAt)).getHours(), 2);\n let min_minutes = pad((new Date(company.timesheet.closeAt)).getMinutes(), 2);\n \n setTimeRange({\n minTime: `${min_hours}:${min_minutes}:00`,\n maxTime: `${max_hours}:${max_minutes}:00`,\n });\n } else {\n setTimeRange({\n minTime: format(new Date(company.timesheet.openAt), 'HH:mm:ss'),\n maxTime: (new Date(company.timesheet.closeAt).getDate() - new Date(company.timesheet.openAt).getDate()) + '.' + format(new Date(company.timesheet.closeAt), \"HH:mm:ss\")\n })\n }\n }\n }, [nightView, company?.id])\n\n const cleanWeek = () => {\n let evt = [...events.filter(e => e.week !== week)];\n api.clean(template!.id, week).then(() => setEvents(evt))\n }\n\n if (!company) {\n return <>\n }\n\n if (!template) return
    \n

    \n Veuillez séléctionner un emploi du temps\n

    \n
    \n\n const Toolbar = () =>
    \n
    \n
    \n \n
      \n {salary.companies.map(c =>
    • setCompany(c)} className={'dropdown-item' + (c.id === company.id ? ' active text-white' : '')}>\n {c.id === company.id && } {c.title}\n
    • )}\n
    \n
    \n
    \n
    \n
    \n \n {Array.from(Array(company.timesheet.recurrence).keys()).map((i) => setWeek(i + 1)}\n className={'btn btn-outline-primary ' + (week === i + 1 ? \" active text-white\" : '')}>\n {i + 1}\n )}\n
    \n
    \n
    \n
    \n \n \n {counterFetched ? <>{counter ? <>{counter.workingTime} / {counter.contractWorkingTime} {counter.deltaDuration < 0 ? <> {counter.delta} : (counter.deltaDuration === 0 ? : <><> {counter.delta} )} : '00:00'} : }\n \n
    \n
    \n
    \n
    \n
    \n setNightView(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckNightView\" />\n \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n
      \n
    • setCalendarEventSidebarProps( prev => ({sidebarType: \"EVENT_COPY\", trigger: prev.trigger + 1}))}> Dupliquer S.{week}
    • \n
    • \n Importer\n
    • \n
    • cleanWeek()}> Supprimer S.{week}
    • \n
    \n
    \n
    \n
    \n\n const TemplateDetail = () =>
    \n
    \n {format(new Date(template.start))} {template.end ? <>{format(new Date(template.end))} : }\n
    \n
    \n\n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n\n const deactivate = () => {\n setCanceling(true)\n api.deactivate(template.id).then(() => {\n setTemplate(undefined)\n setTemplates([...templates.filter(_t => _t.id !== template.id)])\n setCanceling(false)\n })\n }\n\n return
    \n \n \n
    \n e.week === week && e.company.id === company.id).map(e => ({\n rrule: {\n freq: 'weekly',\n byweekday: e.daysOfWeek,\n dtstart: '2019-07-01 ' + e.startTime,\n until: '2019-07-07 ' + e.startTime,\n },\n duration: e.duration * 1000,\n backgroundColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#fff' : '',\n textColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#000' : '',\n borderColor: [ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED].includes(e.accountingType) ? '#000' : '',\n extendedProps: {\n event: {...e},\n initialStart: e.start,\n initialEnd: e.end\n }\n }))}\n select={(arg) => setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))}\n eventClick={(arg) => {\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarEventSidebarProps: setCalendarEventSidebarProps\n }))\n }}\n dayHeaderContent={arg => {format(arg.date, 'EEEE')}}\n eventContent={e => <>\n \n {e.timeText}\n \n
    \n \n {e.event.extendedProps.event.timeCaption}\n \n {e.event.extendedProps.event.activity &&
    \n {e.event.extendedProps.event.activity.title}\n
    }\n {e.event.extendedProps.event.localisation &&
    \n {e.event.extendedProps.event.localisation.title}\n
    }\n
    \n {getAccountingTypeChoice(e.event.extendedProps.event.accountingType)?.label}\n
    \n }\n />\n {loading && }\n
    \n \n \n \n \n
    \n}\n\nexport default SalaryTemplateShow;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../models/salary\";\nimport SalaryTemplateList from \"./list\";\nimport * as models from \"../../../models/salary/template\";\nimport SalaryTemplateShow from \"./show\";\nimport {SalaryTemplates} from \"../../../models/salary/template\";\n\nconst Timetable:React.FC<{salary: Salary, date?: Date}> = (props) => {\n const {salary, date} = props;\n \n const [template, setTemplate] = useState()\n const [templates, setTemplates] = useState([]);\n\n useEffect(() => {\n if (template){\n setTemplate(undefined)\n }\n }, [salary])\n\n return
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n}\n\nexport default Timetable;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../models/salary\";\nimport Timetable from \"../../salary/template\";\nimport {Modal} from \"bootstrap\";\n\nexport interface CalendarTimetableInterface {salary?: Salary, date?: Date}\n\nconst CalendarTimetable:React.FC any}> = (props) => { \n const [open, setOpen] = useState(false)\n\n useEffect(() => {\n let el = document.getElementById(\"timetableModal\")!\n let modal = new Modal(el)!\n\n if (props.salary){\n handleOpening(modal)\n }\n\n el.addEventListener('hidden.bs.modal', handleClosing)\n\n return () => el.removeEventListener('hidden.bs.modal', handleClosing)\n }, [props.salary])\n\n function handleClosing(){\n if (props.salary){\n props.handleEventChange({salary: props.salary})\n }\n\n setOpen(false)\n }\n function handleOpening(modal: Modal){\n modal.show();\n setOpen(true)\n }\n\n return
    \n
    \n
    \n
    \n
    Emploi du temps de {props.salary?.title}
    \n \n
    \n
    \n {open && props.salary && }\n
    \n
    \n \n
    \n
    \n
    \n
    \n}\n\nexport default CalendarTimetable;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { useParams } from \"react-router-dom\";\n\nimport FullCalendar, { DateSelectArg, EventClickArg, EventDropArg, EventHoveringArg } from \"@fullcalendar/react\";\nimport interactionPlugin, { EventResizeDoneArg } from \"@fullcalendar/interaction\";\nimport rrulePlugin from \"@fullcalendar/rrule\";\nimport resourceTimelinePlugin from \"@fullcalendar/resource-timeline\";\nimport CalendarCompanySelector from \"../modal/company\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport CalendarTeamSelector from \"../modal/team\";\nimport CalendarJobSelector from \"../modal/job\";\nimport CalendarSetting from \"../modal/settings\";\nimport CalendarPresence from \"../presence\";\nimport CalendarOrder from \"../order\";\nimport CalendarReporting from \"../reporting\";\nimport CalendarEventSidebar, { CalendarEventSidebarInterface } from \"../event/sidebar\";\nimport CalendarBookingSidebar, { CalendarBookingSidebarInterface } from \"../booking/sidebar\";\nimport CalendarSignedSidebar, { CalendarSignedSidebarInterface } from \"../signed/sidebar\";\nimport CalendarAbsenceList from \"../absence/list\";\nimport CalendarAbsenceSidebar, { CalendarAbsenceSidebarInterface } from \"../absence/sidebar\";\nimport CalendarOfferList from \"../offer/list\";\nimport CalendarOfferSidebar, { CalendarOfferSidebarInterface } from \"../offer/sidebar\";\nimport CalendarKeepNoteSidebar, { CalendarKeepNoteSidebarInterface } from \"../keepNote/sidebar\";\nimport CalendarTaskSidebar, { CalendarTaskSidebarInterface } from \"../task/sidebar\";\nimport CalendarTaskList from \"../task/list\";\nimport CalendarDownload from \"../download/test\";\nimport CalendarPublish from \"../publish\";\nimport CalendarTemplateSidebar, {CalendarTemplateSidebarInterface} from \"../template/sidebar\";\nimport CalendarTimetable, { CalendarTimetableInterface } from \"../timetable\";\nimport listPlugin from \"@fullcalendar/list\";\nimport { Tooltip } from \"bootstrap\";\n\nimport { Companies, Company } from \"../../../models/companies\";\nimport { Teams } from \"../../../models/team\";\nimport { Syntheses } from \"../../../models/synthesis\";\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport { ACCOUNTING_TYPE_ABSENCE_ACCOUNTED, ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED } from \"../../../constants/booking\";\n\nimport * as api from \"../../../adapters/calendar\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\n\nimport { Granted, GrantedAny } from \"../../../security/granted\";\nimport hasModule from \"../../../security/hasModule\";\nimport getVersion from \"../../../security/getVersion\";\nimport getMaxVisibilityDate from \"../../../security/getMaxDate\";\nimport format from \"../../../utils/locale\";\nimport { RenderResource, resourceLaneContent, CalendarTitle, renderEvent, ResourceAreaHeaderContent, renderDaySeparator } from \"../utils\";\nimport Loader from \"../../../utils/loader\";\nimport onMouseEnterTooltip from \"../../../utils/mouseOverTooltip\";\nimport { setHours, setMinutes } from \"date-fns\";\n\ninterface ICalendarProps {\n isNightTime: boolean;\n loading: boolean;\n resources: any[];\n events: any[];\n offers: any[];\n keepNotes: any[];\n signed: any[];\n tasks: any[];\n absences: any[];\n presences: any[];\n timeSheets: Syntheses;\n templates: any[];\n initialDate: Date;\n start: Date;\n end: Date;\n slotMinTime: string;\n slotMaxTime: string;\n maxDate?: Date;\n}\n\nconst CalendarMultiple: React.FC = () => {\n const params: { initialDate?: string, initialCalendar?: string } = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state)\n\n const calendarRef = React.createRef();\n\n const [calendar, setCalendar] = useState(params.initialCalendar || calendarTypes.CALENDAR_EVENTS_GLOBAL);\n const [calendarData, setCalendarData] = useState({\n isNightTime: false,\n loading: true,\n resources: [],\n events: [],\n offers: [],\n keepNotes: [],\n signed: [],\n tasks: [],\n absences: [],\n presences: [],\n timeSheets: [],\n templates: [],\n initialDate: new Date(params.initialDate || new Date()),\n start: new Date(),\n end: new Date(),\n maxDate: getMaxVisibilityDate(),\n slotMinTime: '08:00:00',\n slotMaxTime: '20:00:00',\n });\n\n const [events, setEvents] = useState([])\n const [resources, setResources] = useState([])\n\n const [view, setView] = useState(window.innerWidth >= 768 ? (calendar === calendarTypes.CALENDAR_ABSENCE ? calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW : state.auth.user.calendarSettings.defaultView) : calendarTypes.LIST_DAY_VIEW);\n const [displayEventTime, setDisplayEventTime] = useState(view !== calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW);\n const [sm, setSm] = useState(window.innerWidth < 768)\n const [ratio, setRatio] = useState<\"s\"|\"m\"|\"l\">(state.auth.user.calendarSettings.ratio || \"l\");\n const [smViewType, setSmViewType] = useState<'list'|'timeline'>('list')\n const [title, setTitle] = useState('');\n\n const getDefaultCompaniesToDisplay = () => {\n let newTab: Company[] = []\n\n const localSettings = localStorage.getItem('defaultCompanies')\n \n if (localSettings !== null) {\n const parsedTab = JSON.parse(localSettings)\n newTab = state.auth.user.currentSalary.companies.filter((company: Company) => parsedTab.includes(company.id))\n } else {\n newTab.push(state.auth.user.currentSalary.companies[0])\n }\n\n return newTab\n } \n\n const [companies, setCompanies] = useState(getDefaultCompaniesToDisplay());\n const [job, setJob] = useState<1|2|0>(0);\n const [teams, setTeams] = useState([]);\n const [sortBy, setSortBy] = useState<1|2|3>(calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL ? (state.auth.user.calendarSettings.defaultGroupBy || 1) : 1);\n const [isOuterEvents, setOuterEvents] = useState(state.auth.user.calendarSettings.displayOuter);\n const [presence, setPresence] = useState(state.auth.user.calendarSettings.isPresence);\n const [daysOfWeek, setDaysOfWeek] = useState(state.auth.user.calendarSettings.daysOfWeek);\n const [displayEvents, setDisplayEvents] = useState(true);\n\n const [isAbsence, setIsAbsence] = useState(state.auth.user.calendarSettings.displayAbsence);\n const [isOffers, setIsOffers] = useState(false)\n const [isOffersOnly, setIsOffersOnly] = useState(false)\n const [displayTaskSidebar, setDisplayTaskSidebar] = useState( false)\n const [timePrecision, setTimePrecision] = useState(state.auth.user.calendarSettings.timePrecision)\n const [filterEventsWithResources, setFilterEventsWithResources] = useState(!state.auth.user.calendarSettings.displayEmpty)\n\n const [calendarEventSidebarProps, setCalendarEventSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarOfferSidebarProps, setCalendarOfferSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarBookingSidebarProps, setCalendarBookingSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarSignedSidebarProps, setCalendarSignedSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarAbsenceSidebarProps, setCalendarAbsenceSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarKeepNoteSidebarProps, setCalendarKeepNoteSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarTaskSidebarProps, setCalendarTaskSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarTemplateSidebarProps, setCalendarTemplateSidebarProps] = useState({sidebarType: 'EMPTY', trigger: 0});\n const [calendarTimetableProps, setCalendarTimeTableProps] = useState({});\n\n const [reportingOrigin, setReportingOrigin] = useState('')\n const [isBackgroundEvents, setIsBackgroundEvents] = useState(state.auth.user.calendarSettings.displayBackgroundEdit);\n const [pickerDate, setPickerDate] = useState(new Date(params.initialDate || new Date()));\n\n function fetchCalendar(overrides?: { overrideCalendar?: string, overrideView?: string, overrideTimePrecision?: string, overridePresence?: boolean, overrideSortBy?: number, salary?: number }){\n const { overrideCalendar, overrideView, overrideTimePrecision, overridePresence, overrideSortBy } = overrides || {};\n\n const API = calendarRef.current?.getApi();\n\n if (API) {\n setCalendarData(prev => ({\n loading: true,\n resources: [],\n events: [],\n offers: [],\n keepNotes: [],\n signed: [],\n tasks: [],\n absences: [],\n presences: [],\n timeSheets: [],\n templates: [],\n initialDate: API.getDate(),\n start: API.view.currentStart,\n end: API.view.currentEnd,\n isNightTime: prev.isNightTime,\n slotMinTime: prev.slotMinTime,\n slotMaxTime: prev.slotMaxTime\n }));\n\n api.test({\n start: format(API.view.currentStart, 'uuuu-MM-dd'),\n end: format(API.view.currentEnd, 'uuuu-MM-dd'),\n calendar: overrideCalendar || calendar,\n options: {\n view: overrideView || API.view.type,\n outerEvents: true,\n isNightTime: calendarData.isNightTime,\n job: job,\n sortBy: overrideSortBy || sortBy,\n companies: companies.map(c => c.id!),\n timePrecision: overrideTimePrecision || timePrecision,\n presence: overridePresence || presence,\n teams: teams.map(t => t.id)\n }\n }).then((data) => { \n let slotMaxTime = (new Date(data.data.timeRange.maxTime).getDate() - new Date(data.data.timeRange.minTime).getDate()) + '.' + format(new Date(data.data.timeRange.maxTime), \"HH:mm:ss\");\n if (slotMaxTime === \"1.00:00:00\") {\n slotMaxTime = '24:00:00';\n }\n\n setCalendarData(prev => ({\n loading: false,\n resources: data.data.resources || [],\n events: data.data.events || [],\n signed: data.data.signed || [],\n absences: data.data.absences || [],\n presences: data.data.presences || [],\n timeSheets: [...data.data.eventsTimeSheet || [], ...data.data.signedTimeSheet || []],\n offers: data.data.eventOffers || [],\n tasks: data.data.tasks || [],\n keepNotes: data.data.keepNotes || [],\n templates: data.data.templateApplied || [],\n initialDate: API.getDate(),\n start: API.view.currentStart,\n end: API.view.currentEnd,\n maxDate: prev.maxDate,\n isNightTime: prev.isNightTime,\n slotMinTime: format(new Date(data.data.timeRange.minTime), \"HH:mm:ss\"),\n slotMaxTime: slotMaxTime,\n }))\n })\n }\n }\n\n const refreshCalendar = (salaries: number[]) => {\n return api.test({\n start: format(calendarData.start, 'uuuu-MM-dd'),\n end: format(calendarData.end, 'uuuu-MM-dd'),\n calendar: calendar,\n options: {\n view: view,\n sortBy: sortBy,\n isNightTime: calendarData.isNightTime,\n companies: companies.map(c => c.id!),\n timePrecision: timePrecision,\n presence: presence,\n outerEvents: true,\n salaries: salaries,\n }\n }).then((data) => {\n setCalendarData(prev => ({\n loading: false,\n resources: [\n ...[...prev.resources.filter((r: any) => !([...data.data.resources || []].map((_r: any) => _r.id).includes(r.id)))],\n ...data.data.resources\n ],\n keepNotes: prev.keepNotes,\n timeSheets: [...prev.timeSheets.filter((t: any) => !(salaries.includes(t.salary.id))),...data.data.eventsTimeSheet || [], ...data.data.signedTimeSheet || []],\n presences: [...prev.presences.map((p: any) => {\n let _p = {...p};\n _p.values = p.values.filter((v: any) => !(salaries.includes(v.salaryId)));\n\n let allValues: any[] = [];\n for (let i in data.data.presences){\n if (data.data.presences[i].resourceId === p.resourceId && data.data.presences[i].start === p.start){\n allValues = [...allValues, ...data.data.presences[i].values];\n }\n }\n\n _p.values = [..._p.values, ...allValues]\n\n return _p;\n })],\n offers: [...[...prev.offers.filter((e: any) => !(e.salaries.filter((s: any) => salaries.includes(s.id)).length))], ...data.data.eventOffers || []],\n absences: [...prev.absences.filter((a: any) => !(salaries.includes(a.absence.salary.id))), ...data.data.absences || []],\n signed: [...[...prev.signed.filter((e: any) => !(salaries.includes(e.salary.id)))], ...data.data.signed || []],\n events: [...[...prev.events.filter((e: any) => !(salaries.includes(e.salary.id)))], ...data.data.events || []],\n tasks: [...[...prev.tasks.filter((e: any) => !(e.salaries.filter((s: any) => salaries.includes(s.id)).length))], ...data.data.tasks || []],\n templates: data.data.templateApplied,\n initialDate: prev.initialDate,\n start: prev.start,\n end: prev.end,\n maxDate: prev.maxDate,\n isNightTime: prev.isNightTime,\n slotMinTime: prev.slotMinTime,\n slotMaxTime: prev.slotMaxTime,\n }))\n }).then(() => true)\n }\n\n const handleResize = () => {\n if (window.innerWidth >= 768) {\n setSm(false)\n } else if (window.innerWidth < 768) {\n setSm(true)\n }\n }\n\n const getResources = () => {\n let ret:any[] = [];\n\n if (calendarData.tasks.length > 0 && calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL) {\n ret.push({\n groupId: \"Notes\",\n id: \"keepNotes\",\n order1: 0,\n resourceType: \"TYPE_KEEP_NOTE\",\n title: \"Notes\"\n })\n }\n\n return [...ret, ...calendarData.resources.filter((r: any) => {\n return !(!state.auth.user.calendarSettings.isTasks && r.resourceType === calendarTypes.RESOURCE_TYPE_TASK);\n })];\n }\n\n const setItems = () => {\n setResources(() => getResources())\n setEvents(() => getEvents())\n\n const API = calendarRef.current?.getApi();\n\n setTimeout(() => {\n\n if (API){\n API.updateSize();\n }\n\n }, 1000)\n }\n\n const getEvents = () => {\n if (calendar === calendarTypes.CALENDAR_ABSENCE) {\n if (displayEvents) {\n return [...calendarData.events, ...calendarData.absences, ...calendarData.presences]\n } else {\n return calendarData.absences\n }\n } else if (calendar === calendarTypes.CALENDAR_SIGNED_GLOBAL) {\n if (displayEvents) {\n return [...calendarData.signed, ...calendarData.events]\n } else {\n return [...calendarData.signed];\n }\n } else if (calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL) {\n\n if (isOffers && isOffersOnly) {\n return [...calendarData.presences, ...calendarData.offers]\n } else {\n return [\n ...calendarData.events.filter((e: any) => (isBackgroundEvents || e.eventType !== calendarTypes.EVENT_TYPE_BACKGROUND) && (isAbsence || (!e.absence && !([ACCOUNTING_TYPE_ABSENCE_UNACCOUNTED, ACCOUNTING_TYPE_ABSENCE_ACCOUNTED].includes(e.accountingType)))) && (isOuterEvents || !e.isOuter)),\n ...calendarData.presences,\n ...calendarData.offers.filter((o:any) => isOffers || o.eventType === calendarTypes.EVENT_TYPE_OFFER_VALIDATED),\n ...calendarData.keepNotes,\n ...calendarData.tasks.filter(() => state.auth.user.calendarSettings.isTasks),\n ...calendarData.absences\n ]\n }\n } else if (calendar === calendarTypes.CALENDAR_TASK) {\n return [\n ...calendarData.tasks,\n ...calendarData.events\n ]\n }\n\n return [];\n }\n\n const handleEventChange = (ev: any) => {\n let salaries: number[] = [];\n\n if (ev.salary) {\n salaries.push(ev.salary.id);\n }\n\n if (ev.substitute) {\n salaries.push(ev.substitute.id);\n }\n\n if (ev.substituted) {\n salaries.push(ev.substituted.id);\n }\n\n if (ev.salaries) {\n ev.salaries.map((s: any) => salaries.push(s.id))\n }\n\n if (ev.ids) {\n ev.ids.map((id: number) => salaries.push(id))\n }\n\n return refreshCalendar([...salaries, ...ev.previousSalaries || []]);\n }\n\n function handlePickerDateChange(dt: Date)\n {\n let API = calendarRef.current?.getApi()\n if (API){\n setPickerDate(dt)\n API.gotoDate(dt)\n fetchCalendar()\n }\n }\n\n function prevClick(){\n let API = calendarRef.current?.getApi()\n if (API){\n API.prev()\n setTitle(API.view.title)\n fetchCalendar()\n }\n }\n\n function nextClick(){\n let API = calendarRef.current?.getApi()\n if (API){\n API.next()\n setTitle(API.view.title)\n fetchCalendar()\n }\n }\n\n function changeView(_view: string)\n {\n let API = calendarRef.current?.getApi()\n if (API){\n setView(_view)\n API.changeView(_view);\n setTitle(API.view.title)\n fetchCalendar()\n }\n }\n\n function handleTimePrecisionChange(_timePrecision: string){\n setTimePrecision(_timePrecision)\n if (calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL && view === 'resourceTimelineWeek'){\n fetchCalendar({overrideTimePrecision: _timePrecision})\n }\n }\n\n function handlePresenceChange(_presence: boolean){\n setPresence(_presence)\n if (_presence && calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL){\n fetchCalendar({overridePresence: _presence})\n }\n }\n\n function handleCalendarChange(calendar: string) {\n let API = calendarRef.current?.getApi()\n\n if (API){\n\n setCalendar(calendar)\n\n let overrideView: undefined|string = undefined;\n let overrideSortBy: undefined|number;\n let overrideTimePrecision: undefined|string;\n\n if ([calendarTypes.CALENDAR_SIGNED_GLOBAL, calendarTypes.CALENDAR_ABSENCE, calendarTypes.CALENDAR_TASK].includes(calendar)){\n setSortBy(1);\n overrideSortBy = 1;\n }else{\n setSortBy(state.auth.user.calendarSettings.defaultGroupBy);\n overrideSortBy = state.auth.user.calendarSettings.defaultGroupBy;\n overrideTimePrecision = state.auth.user.calendarSettings.timePrecision;\n }\n\n if ([calendarTypes.CALENDAR_ABSENCE, calendarTypes.CALENDAR_TASK].includes(calendar) && (!sm || smViewType === \"timeline\")){\n setView(calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW);\n overrideView = calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW\n API.changeView(calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW);\n setTitle(API.view.title)\n }\n\n if ([calendarTypes.CALENDAR_EVENTS_GLOBAL, calendarTypes.CALENDAR_SIGNED_GLOBAL].includes(calendar) && (!sm || smViewType === \"timeline\")){\n setView(state.auth.user.calendarSettings.defaultView);\n API.changeView(state.auth.user.calendarSettings.defaultView);\n overrideView = state.auth.user.calendarSettings.defaultView\n setTitle(API.view.title)\n }\n\n fetchCalendar({overrideCalendar: calendar,\n overrideView: overrideView,\n overrideSortBy: overrideSortBy,\n overrideTimePrecision: overrideTimePrecision,\n })\n }\n }\n\n function handleSortByChange(_sortBy: 1|2|3) {\n setSortBy(_sortBy)\n fetchCalendar({overrideSortBy: _sortBy})\n }\n\n function onResize(arg: EventResizeDoneArg){\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n if (Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id)){\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n if (Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id)){\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION:\n if (Granted(accessRights.EDIT_TIME_CLOCK, arg.event.extendedProps.salary.id)){\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_RESIZE\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n }\n break;\n }\n }\n\n function onDrop(arg: EventDropArg){\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n if (Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id)){\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_DROP\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n if (Granted(accessRights.EDIT_BOOKING, arg.event.extendedProps.salary.id)){\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_DROP\",\n trigger: prev.trigger + 1,\n arg: arg\n }))\n }\n break;\n default:\n arg.revert();\n }\n }\n\n function onSelect(arg: DateSelectArg) {\n let resource = arg.resource;\n\n if (arg){\n let slotDuration: any = arg.view.getOption('slotDuration')\n if (slotDuration.days === 1){\n arg.start = setHours(setMinutes(new Date(arg.start), 0), (new Date()).getHours());\n arg.end = setHours(setMinutes(new Date(arg.start), 30), (new Date()).getHours());\n }\n }\n\n if (resource){\n switch (resource.extendedProps.resourceType){\n case calendarTypes.RESOURCE_TYPE_EVENT:\n\n if (calendar !== calendarTypes.CALENDAR_EVENTS_GLOBAL && !displayEvents) return;\n\n switch (getVersion()) {\n case 1:\n if (isOffers){\n if (Granted(accessRights.EDIT_BOOKING_OFFER, arg.resource?.extendedProps.salary?.id)){\n setCalendarOfferSidebarProps(prev => ({\n sidebarType: \"OFFER_ADD\",\n trigger: prev.trigger + 1,\n start: arg.start,\n end: arg.end,\n salary: arg.resource?.extendedProps.salary,\n company: arg.resource?.extendedProps.company,\n localisation: arg.resource?.extendedProps.localisation,\n activity: arg.resource?.extendedProps.activity,\n }))\n }\n }else{\n if (Granted(accessRights.EDIT_BOOKING, arg.resource?.extendedProps.salary?.id)){\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: arg.resource?.extendedProps.salary,\n company: arg.resource?.extendedProps.company,\n localisation: arg.resource?.extendedProps.localisation,\n activity: arg.resource?.extendedProps.activity,\n }))\n }\n }\n break;\n default:\n if (Granted(accessRights.EDIT_BOOKING, arg.resource?.extendedProps.salary?.id)){\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: arg.resource?.extendedProps.salary,\n company: arg.resource?.extendedProps.company,\n localisation: arg.resource?.extendedProps.localisation,\n activity: arg.resource?.extendedProps.activity,\n }))\n }\n break;\n }\n break;\n case calendarTypes.RESOURCE_TYPE_SIGNED:\n if (Granted(accessRights.EDIT_TIME_CLOCK, arg.resource?.extendedProps.salary?.id)){\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg,\n salary: arg.resource?.extendedProps.salary,\n company: arg.resource?.extendedProps.company\n }))\n }\n break;\n case calendarTypes.RESOURCE_TYPE_KEEP_NOTE:\n if (Granted(accessRights.EDIT_KEEP_NOTE, arg.resource?.extendedProps.salary?.id)){\n setCalendarKeepNoteSidebarProps(prev => ({\n sidebarType: \"KEEP_NOTE_ADD\",\n trigger: prev.trigger + 1,\n dueDate: arg.start\n }))\n }\n break;\n case calendarTypes.RESOURCE_TYPE_TASK:\n if (Granted(accessRights.EDIT_TASK, arg.resource?.extendedProps.salary?.id)){\n setCalendarTaskSidebarProps(prev => ({\n sidebarType: \"TASK_SELECT\",\n trigger: prev.trigger + 1,\n arg: arg\n }))\n }\n break;\n }\n }\n }\n\n function onClick(arg: EventClickArg) {\n \n arg.jsEvent.stopPropagation()\n\n switch (arg.event.extendedProps.eventType){\n case calendarTypes.EVENT_TYPE_EVENT:\n case calendarTypes.EVENT_TYPE_EVENT_EXCEPTION:\n setCalendarEventSidebarProps(prev => ({\n sidebarType: \"EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n calendar: calendar,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps,\n setCalendarEventSidebarProps: setCalendarEventSidebarProps,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n }))\n break;\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_EXCEPTION:\n case calendarTypes.EVENT_TYPE_TEMPLATE_APPLIED_EVENT_APPLIED_EXCEPTION:\n setCalendarTemplateSidebarProps(prev => ({\n sidebarType: \"TEMPLATE_EVENT_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n calendar: calendar,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps,\n setCalendarTemplateSidebarProps: setCalendarTemplateSidebarProps,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n }))\n break;\n case calendarTypes.EVENT_TYPE_BOOKING:\n case calendarTypes.EVENT_TYPE_BOOKING_EXCEPTION:\n setCalendarBookingSidebarProps(prev => ({\n sidebarType: \"BOOKING_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarSidebarSignedProps: setCalendarSignedSidebarProps,\n calendar: calendar,\n setCalendarSidebarBookingProps: setCalendarBookingSidebarProps,\n setCalendarAbsenceSidebarProps: setCalendarAbsenceSidebarProps\n }))\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK:\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_EXCEPTION:\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_SHOW\",\n trigger: prev.trigger + 1,\n setCalendarSignedSidebarProps: setCalendarSignedSidebarProps,\n company: arg.event.extendedProps.company,\n end: arg.event.end,\n _end: arg.event.extendedProps._end,\n start: arg.event.start,\n _start: arg.event.extendedProps._start,\n isAnomaly: arg.event.extendedProps.isAnomaly,\n salary: arg.event.extendedProps.salary,\n timeClockId: arg.event.extendedProps.timeClockId,\n files: arg.event.extendedProps.files\n }))\n break;\n case calendarTypes.EVENT_TYPE_ABSENCE:\n if (Granted(accessRights.EDIT_ABSENCE, undefined, arg.event.extendedProps.absence)){\n setCalendarAbsenceSidebarProps(prev => ({\n sidebarType: \"ABSENCE_EDIT\",\n trigger: prev.trigger + 1,\n arg: arg,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_TIME_CLOCK_MISSING:\n if (Granted(accessRights.EDIT_TIME_CLOCK, arg.event.extendedProps.salary.id)){\n setCalendarSignedSidebarProps(prev => ({\n sidebarType: \"SIGNED_ADD\",\n trigger: prev.trigger + 1,\n company: arg.event.extendedProps.company,\n salary: arg.event.extendedProps.salary,\n start: arg.event.start!,\n end: arg.event.end!,\n }))\n }\n break;\n case calendarTypes.EVENT_TYPE_OFFER_PENDING:\n case calendarTypes.EVENT_TYPE_OFFER_VALIDATED:\n setCalendarOfferSidebarProps(prev => ({\n sidebarType: \"OFFER_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarOfferSidebarProps: setCalendarOfferSidebarProps\n }))\n break;\n case calendarTypes.EVENT_TYPE_KEEP_NOTE:\n setCalendarKeepNoteSidebarProps(prev => ({\n sidebarType: \"KEEP_NOTE_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarKeepNoteSidebarProps: setCalendarKeepNoteSidebarProps\n }))\n break;\n case calendarTypes.EVENT_TYPE_TASK:\n case calendarTypes.EVENT_TYPE_TASK_EXCEPTION:\n setCalendarTaskSidebarProps(prev => ({\n sidebarType: \"TASK_SHOW\",\n trigger: prev.trigger + 1,\n arg: arg,\n setCalendarTaskSidebarProps: setCalendarTaskSidebarProps\n }))\n break;\n }\n }\n\n function eventMouseEnter(e: EventHoveringArg) {\n switch (e.event.extendedProps.eventType) {\n case calendarTypes.EVENT_TYPE_PRESENCE:\n let event: any = e.event.extendedProps;\n switch (event.presenceType) {\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n event.values.map((c: any) => {\n let el = document.getElementById(c.eventId) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n })\n break;\n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n event.values.map((cx: any) => cx.values.map((c: any) => {\n let el = document.getElementById(c.eventId) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n }))\n break;\n }\n break;\n default:\n let el = e.el.querySelector(`[id=\"title${e.event.id}\"]`) as HTMLSpanElement;\n if (el) {\n el.textContent = e.event.extendedProps.alternativeTitle\n }\n\n if (e.event.extendedProps.comment && e.event.extendedProps.salary && Granted(accessRights.EDIT_BOOKING, e.event.extendedProps.salary.id))\n {\n let tooltip = new Tooltip(e.el, {trigger: \"hover\", html: true, title: e.event.extendedProps.comment})\n tooltip.show();\n\n e.el.addEventListener('click', () => tooltip.hide());\n e.el.addEventListener('mouseleave', () => tooltip.hide());\n }\n break;\n }\n }\n\n function eventMouseLeave(e: EventHoveringArg){\n switch (e.event.extendedProps.eventType) {\n case calendarTypes.EVENT_TYPE_PRESENCE:\n let event: any = e.event.extendedProps;\n\n switch (event.presenceType){\n case calendarTypes.EVENT_TYPE_PRESENCE_GLOBAL:\n event.values.map((c: any) => {\n let el = document.getElementById(c.eventId) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n })\n break;\n case calendarTypes.EVENT_TYPE_PRESENCE_BY_JOB:\n event.values.map((cx: any) => cx.values.map((c: any) => {\n let el = document.getElementById(c.eventId) as HTMLDivElement;\n if (el && el.parentElement) {\n if (el.parentElement.parentElement) {\n el.parentElement.parentElement.classList.toggle('fc-highlight-primary')\n }\n }\n }))\n break;\n }\n break;\n default:\n let el = e.el.querySelector(`[id=\"title${e.event.id}\"]`) as HTMLSpanElement;\n if (el) {\n el.textContent = e.event.title\n }\n break;\n }\n }\n\n useEffect(() => {\n const API = calendarRef.current?.getApi();\n\n if (API) {\n if (view === calendarTypes.RESOURCE_TIMELINE_DAY_VIEW) {\n API.setOption('slotMinWidth', 30)\n API.setOption('resourceAreaWidth', \"15%\")\n } else if (view === calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW) {\n switch (ratio) {\n case 's':\n API.setOption('slotMinWidth', 20)\n API.setOption('resourceAreaWidth', \"5%\")\n break;\n case 'm':\n API.setOption('slotMinWidth', 30)\n API.setOption('resourceAreaWidth', \"10%\")\n break;\n case 'l':\n API.setOption('slotMinWidth', 40)\n API.setOption('resourceAreaWidth', \"15%\")\n break;\n }\n } else if (view === calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW) {\n API.setOption('resourceAreaWidth', \"15%\")\n switch (calendar) {\n case calendarTypes.CALENDAR_ABSENCE:\n if (displayEventTime && displayEvents) {\n API.setOption('slotMinWidth', 80)\n } else {\n API.setOption('slotMinWidth', 40)\n }\n break;\n default:\n if (displayEventTime) {\n API.setOption('slotMinWidth', 80)\n } else {\n API.setOption('slotMinWidth', 40)\n }\n break;\n }\n }\n }\n }, [ratio, view, displayEventTime])\n\n useEffect(() => {\n if (sm) {\n switch (smViewType) {\n case \"list\":\n if ([calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW, calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW, calendarTypes.RESOURCE_TIMELINE_DAY_VIEW].includes(view)){\n switch (view) {\n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n changeView(calendarTypes.LIST_MONTH_VIEW);\n break;\n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n changeView(calendarTypes.LIST_WEEK_VIEW);\n break;\n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n changeView(calendarTypes.LIST_DAY_VIEW);\n break;\n }\n }\n break;\n case \"timeline\":\n if ([calendarTypes.LIST_MONTH_VIEW, calendarTypes.LIST_WEEK_VIEW, calendarTypes.LIST_DAY_VIEW].includes(view)){\n switch (view) {\n case calendarTypes.LIST_MONTH_VIEW:\n changeView(calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW);\n break;\n case calendarTypes.LIST_WEEK_VIEW:\n changeView(calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW);\n break;\n case calendarTypes.LIST_DAY_VIEW:\n changeView(calendarTypes.RESOURCE_TIMELINE_DAY_VIEW);\n break;\n }\n }\n break;\n }\n }\n }, [smViewType])\n\n useEffect(() => {\n window.addEventListener(\"resize\", handleResize)\n if (!calendarData.loading) {\n changeView(sm ? calendarTypes.LIST_DAY_VIEW : state.auth.user.calendarSettings.defaultView)\n }\n return () => window.removeEventListener(\"resize\", handleResize)\n }, [sm])\n\n useEffect(() => {\n let timeout = setTimeout(renderDaySeparator, 250);\n return () => clearTimeout(timeout)\n }, [timePrecision, calendarData.loading, companies])\n\n useEffect(() => {\n setItems();\n }, [calendarData.resources, isOuterEvents, calendarData.events, calendarData.keepNotes, state.auth.user.calendarSettings.isTasks, isOffersOnly, isOffers, isBackgroundEvents, isAbsence, displayEvents])\n\n useEffect(() => {\n dispatch(setPageTitle('Planning'))\n fetchCalendar();\n }, [\n companies, job, teams, calendarData.isNightTime,\n state.auth.user.calendarSettings.isTasks,\n state.auth.user.calendarSettings.defaultGroupEtp,\n state.auth.user.calendarSettings.isPresence,\n state.auth.user.calendarSettings.isAbsenceRequest,\n ])\n\n useEffect(() => {\n let API = calendarRef.current?.getApi()\n if (API) {\n API.gotoDate(pickerDate);\n setTitle(API.view.title)\n }\n }, [pickerDate])\n\n useEffect(() => {\n dispatch(setHelpProductSheetIds([3, 8, 9, 11, 12, 14]))\n\n const smViewTypeSetting = localStorage.getItem('smViewType')\n if (smViewTypeSetting === \"list\" || smViewTypeSetting === \"timeline\") {\n setSmViewType(smViewTypeSetting)\n }\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, [])\n\n const Toolbar = () => {\n return (\n \n )\n }\n\n return (\n <>\n \n\n
    \n
    \n setTitle(arg.view.title)}\n plugins={[interactionPlugin, rrulePlugin, resourceTimelinePlugin, listPlugin]}\n lazyFetching={false}\n headerToolbar={false}\n initialView={view}\n eventMinWidth={10}\n height={'100%'}\n resourceAreaWidth={'15%'}\n events={events}\n resources={[...resources, {\n title: \"Notes\",\n id: \"keepNotes\",\n order1: 0,\n resourceType: \"TYPE_KEEP_NOTE\",\n }]}\n displayEventTime={true}\n filterResourcesWithEvents={filterEventsWithResources}\n resourceLabelContent={(arg) => }\n resourceLaneContent={resourceLaneContent}\n resourceAreaHeaderContent={() => }\n eventContent={e => renderEvent(e, displayEventTime)}\n views={{\n resourceTimelineDay: {\n slotDuration: {minutes: 15},\n titleFormat: { year: 'numeric', month: 'short', day: '2-digit', weekday: \"short\" }\n },\n resourceTimelineWeek: {\n slotDuration: JSON.parse(timePrecision),\n },\n resourceTimelineMonth: {\n slotDuration: {day: 1}\n }\n }}\n hiddenDays={daysOfWeek}\n slotMinTime={calendarData.slotMinTime}\n slotMaxTime={calendarData.slotMaxTime}\n resourceOrder={'order1, order2, order3, order4'}\n locales={allLocales}\n locale={'fr'}\n schedulerLicenseKey={'GPL-My-Project-Is-Open-Source'}\n editable={Granted(accessRights.EDIT_BOOKING)}\n selectable={Granted(accessRights.EDIT_BOOKING)}\n select={onSelect}\n eventResize={onResize}\n eventClick={onClick}\n visibleRange={{\n end: getMaxVisibilityDate()\n }}\n eventDrop={onDrop}\n eventMouseEnter={eventMouseEnter}\n eventMouseLeave={eventMouseLeave}\n progressiveEventRendering={true}\n slotLabelContent={(e) => {\n if (Granted(accessRights.EDIT_KEEP_NOTE)) {\n switch (view) {\n case calendarTypes.RESOURCE_TIMELINE_DAY_VIEW:\n return <>{e.text}\n case calendarTypes.RESOURCE_TIMELINE_WEEK_VIEW:\n return <>\n {e.text}\n {e.level === 0 && onMouseEnterTooltip(e.currentTarget)}\n type={'button'} className={'btn btn-sm'}\n onClick={() => setCalendarKeepNoteSidebarProps((prevState: any) => ({\n sidebarType: \"KEEP_NOTE_ADD\",\n trigger: prevState.trigger + 1,\n dueDate: e.date\n }))}\n >\n \n }\n \n case calendarTypes.RESOURCE_TIMELINE_MONTH_VIEW:\n return <>\n {e.text}\n
    \n {e.level === 0 && onMouseEnterTooltip(e.currentTarget)}\n type={'button'} className={'btn btn-sm'}\n onClick={() => setCalendarKeepNoteSidebarProps((prevState: any) => ({\n sidebarType: \"KEEP_NOTE_ADD\",\n trigger: prevState.trigger + 1,\n dueDate: e.date\n }))}\n >\n \n }\n \n }\n }\n }}\n />\n
    \n\n {calendar === calendarTypes.CALENDAR_ABSENCE && !sm &&\n \n }\n {calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL && !sm && isOffers &&\n \n }\n {calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL && !sm && sortBy === calendarTypes.SORT_BY_JOB && displayTaskSidebar &&\n \n }\n
    \n\n \n \n \n \n {\n if (calendar === calendarTypes.CALENDAR_EVENTS_GLOBAL && sortBy !== 1){\n fetchCalendar();\n }\n }}\n fetchCalendar={() => fetchCalendar()}\n />\n\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n {calendarData.loading && }\n \n )\n}\n\n\nexport default CalendarMultiple;","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport SalarySelector from \"../../salary/selector\";\n\nimport * as models from \"../../../models/expense\";\nimport { Salaries } from \"../../../models/salary\";\n\nimport { PAGINATION } from \"../../../constants/global\";\nimport { FORM_EXPENSE_ADD } from \"../../../constants/rightSidebar\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport * as types from \"../../../constants/expense\";\nimport * as globals from \"../../../constants/global\";\n\nimport * as api from \"../../../adapters/expense\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport * as actions from \"../../../actions/expense\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\n\nimport { Granted } from \"../../../security/granted\";\nimport LoaderList from \"../../../utils/loaderList\";\nimport BootstrapSelect from \"../../../utils/bootstrapSelect\";\nimport format from \"../../../utils/locale\";\n\nconst ExpenseList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const expenses = useSelector((state:RootStateOrAny) => state.expense.payload)\n const single = useSelector((state:RootStateOrAny) => state.expense.single)\n\n const [offset, setOffset] = useState(0);\n const [isLast, setIsLast] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const [fetchMore, setFetchMore] = useState(false);\n const [statuses, setStatuses] = useState([1,2,3]);\n const [salaries, setSalaries] = useState([]);\n const [expenseTypes, setExpenseTypes] = useState(types.getTypeChoices().map(t => Number(t.value)));\n\n useEffect(() => {\n dispatch(setPageTitle('Notes de frais'))\n dispatch(setHelpProductSheetIds([13]))\n\n let controller = new AbortController();\n\n setIsLoading(true);\n\n dispatch(actions.fetchExpenses());\n api.list({types: expenseTypes, status: statuses, salaries: salaries, offset: 0}, controller.signal).then((data) => {\n dispatch(actions.fetchExpensesSuccess(data.data))\n setOffset(1);\n setIsLoading(false);\n setIsLast(data.data.length < PAGINATION);\n })\n\n return () => {\n dispatch(setHelpProductSheetIds([]))\n controller.abort()\n };\n }, [statuses, salaries, expenseTypes])\n\n useEffect(() => {\n let controller = new AbortController();\n\n if (!isLast && fetchMore)\n {\n api.list({offset: offset, types: expenseTypes, status: statuses, salaries: salaries}, controller.signal).then((data) => {\n dispatch(actions.fetchExpensesSuccess([...expenses, ...data.data]))\n setOffset(prevState => prevState + 1);\n setIsLoading(false);\n setIsLast(data.data.length < PAGINATION);\n })\n }\n\n return () => controller.abort();\n }, [fetchMore])\n\n return (\n <>\n
    \n
    \n
    \n \n\n {Granted(accessRights.EDIT_EXPENSE) &&\n \n }\n
    \n\n {expenses.length ? expenses.map((expense: models.Expense, index: number) => ([\n \n
    \n
    \n

    {expense.title}

    \n
    \n

    \n {expense.salary.title}\n

    \n
    \n

    \n {format(new Date(expense.dueDate))}\n

    \n
    \n
    \n
    \n

    \n {types.STATUS_NAMES[expense.status]}\n

    \n
    \n {expense.amount} {globals.CurrencyIcon(expense.currency)}\n
    \n
    \n\n
    \n
    \n \n ]))\n :\n !isLoading ? : ''\n }\n\n {!isLoading && !isLast && expenses.length && }\n\n {isLoading && !expenses.length && }\n {isLoading && !!expenses.length && }\n
    \n
    \n\n
    \n
    \n
    \n
    \n
    Filtrer
    \n \n
    \n\n
    \n
    \n setStatuses(choices.map(c => Number(c.value)))}\n />\n
    \n\n
    \n setExpenseTypes(choices.map(c => Number(c.value)))}\n />\n
    \n\n
    \n setSalaries(choices.map(c => Number(c.id)))}\n accessRight={accessRights.EDIT_ABSENCE}\n />\n
    \n
    \n
    \n
    \n
    \n \n )\n}\n\nexport default ExpenseList;","import {MULTIPART_FORM_DATA, post, get} from \"../../xhr\";\n\n\nexport function add(requestData: FormData, expenseId: number){\n return post(`expense/${expenseId}/file/add`, requestData, {headers: [MULTIPART_FORM_DATA], responseType: \"json\"})\n}\n\nexport function remove(expenseId: number, fileId: number){\n return get(`expense/${expenseId}/file/${fileId}/remove`)\n}\n\nexport function download(expenseId: number, fileId: number){\n return get(`expense/${expenseId}/file/${fileId}/download`, {responseType: \"arraybuffer\"})\n}","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {useParams} from \"react-router-dom\";\nimport * as model from \"../../../models/expense\";\nimport * as actions from \"../../../actions/expense\";\nimport * as types from \"../../../constants/expense\";\nimport * as api from \"../../../adapters/expense\";\nimport {axiosError} from \"../../../actions/axios\";\nimport BgSingle from \"../../../utils/background/single\";\nimport format from \"../../../utils/locale\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EXPENSE_EDIT, FORM_NEW_EXPENSE_FILE} from \"../../../constants/rightSidebar\";\nimport * as globals from \"../../../constants/global\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport Loader from \"../../../utils/loader\";\nimport * as fileApi from \"../../../adapters/expense/file\";\nimport {showAlertDanger, showAlertSuccess} from \"../../../actions/alert\";\nimport FileSaver from \"file-saver\";\nimport {Granted} from \"../../../security/granted\";\n\nconst ExpenseShow:React.FC = () => {\n\n const dispatch = useDispatch();\n const params: {id: string} = useParams();\n const expenses:model.Expenses = useSelector((state: RootStateOrAny) => state.expense.payload)\n const expense:model.Expense = useSelector((state: RootStateOrAny) => state.expense.single)\n\n const [downloading, setDownloading] = useState();\n const [deleting, setDeleting] = useState();\n const [justificatifUrl, setJustificatifUrl] = useState()\n const [loadingFile, setLoadingFile] = useState(false)\n const [statusLoading, setStatusLoading] = useState(false)\n\n useEffect(() => {\n if (params.id){\n let single = expenses.find((e) => e.id!.toString() === params.id)\n if (single){\n dispatch(actions.showExpenseSuccess(single))\n }else{\n dispatch(actions.showExpense());\n api.get(params.id)\n .then(data => dispatch(actions.showExpenseSuccess(data.data)))\n .catch(error => dispatch(axiosError(error)))\n }\n }\n }, [params.id, expenses])\n\n const displayFile = (id: number) => {\n\n if (!expense) return false;\n\n let file = expense.files?.find((file => file.id === id))\n if (file){\n setLoadingFile(true)\n fileApi.download(expense.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n let url = URL.createObjectURL(newBlob);\n setJustificatifUrl(url)\n setLoadingFile(false)\n\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const downloadJustification = (id: number) => {\n\n if (!expense) return false;\n\n let file = expense.files?.find((file => file.id === id))\n if (file){\n setDownloading(id);\n fileApi.download(expense.id!, id).then(data => {\n let newBlob = new Blob([data.data], { type: data.headers[\"content-type\"] })\n FileSaver.saveAs(newBlob, file!.title)\n setDownloading(undefined)\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors du téléchargement ! Fichier introuvable.'))\n }\n }\n\n const manageStatus = (status: number) => {\n setStatusLoading(true)\n api.editStatus({status: status}, expense.id).then(resp => dispatch(actions.editExpenseSuccess(resp.data))).then(() => setStatusLoading(false))\n }\n\n const deleteJustification = (id: number) => {\n\n if (!expense) return false;\n\n let file = expense.files?.find((file => file.id === id))\n if (file){\n setDeleting(id);\n fileApi.remove(expense.id!, id).then(data => {\n let files = [...expense.files!]\n files.splice(files.findIndex(file => file.id === id), 1);\n expense.files = [...files];\n setDeleting(undefined)\n dispatch(showAlertSuccess('Fichier supprimé'))\n }).catch(error => dispatch(axiosError(error)))\n }else{\n dispatch(showAlertDanger('Une erreur est survenue lors de la supression ! Fichier introuvable.'))\n }\n }\n\n if (!expense){\n return \n }\n\n return <>\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n {expense.title}\n

    \n

    \n {expense.salary.title}\n

    \n

    \n Créé par {expense.createdBy.title} le {format(new Date(expense.createdAt), 'E dd MMMM uuuu')} à {format(new Date(expense.createdAt), 'HH:mm')}\n

    \n
    \n
    \n
    \n \n
      \n {types.getStatusChoices().filter(c => c.value !== expense.status).map(c => manageStatus(c.value)}\n className={'dropdown-item'}>\n {types.STATUS_NAMES[c.value]}\n )}\n
    \n
    \n {Granted(accessRights.EDIT_EXPENSE, undefined, expense) && }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Informations\n

    \n \n \n \n \n \n \n\n {expense.type === types.TYPE_MILEAGE && <>\n \n \n \n \n {[types.VEHICLE_CAR, types.VEHICLE_MOTORCYCLE].includes(expense.vehicle) && \n \n \n }\n \n \n \n \n }\n \n \n \n \n \n \n \n \n {expense.type === types.TYPE_MEAL && <>\n \n \n \n \n \n \n \n \n }\n \n \n \n \n \n
    \n Type de dépense\n \n {types.TYPE_NAMES[expense.type]}\n
    \n Véhicule\n \n {types.VEHICLE_NAMES[expense.vehicle]}\n
    \n Puissance du Véhicule\n \n {types.getVehiclePowerName(expense.vehicle, expense.vehiclePower)}\n
    \n Distance\n \n {expense.distance} KM\n
    \n Montant de la dépense\n \n {expense.amount} {globals.CurrencyIcon(expense.currency)}\n
    \n Date de la dépense\n \n {format(new Date(expense.dueDate))}\n
    \n Commercant (facultatif)\n \n {expense.shop}\n
    \n Déjeuner client\n \n {expense.clientMeal ? : }\n
    \n Commentaire\n \n {expense.comment}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Justificatifs\n

    \n
    \n
    \n {Granted(accessRights.EDIT_EXPENSE, undefined, expense) && }\n
    \n
    \n
    \n \n \n {expense.files?.map((file, index) => <>\n \n \n \n \n \n \n )}\n \n
    \n {file.title}\n \n \n \n \n \n {Granted(accessRights.EDIT_EXPENSE, undefined, expense) && }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {loadingFile && }\n {!loadingFile && justificatifUrl && }\n
    \n
    \n
    \n
    \n \n}\n\nexport default ExpenseShow;","import * as React from \"react\";\n\nimport ExpenseList from \"../../components/expense/list\";\nimport ExpenseShow from \"../../components/expense/show\";\n\nconst ExpensePage : React.FC = () => {\n return (\n <>\n
    \n \n \n
    \n \n );\n}\n\nexport default ExpensePage;","import React, {useEffect, useState} from \"react\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport {EventOffer, EventOfferApplication, EventOffers} from \"../../../../models/event/offer\";\nimport format from \"../../../../utils/locale\";\nimport * as accessRights from \"../../../../constants/accessRight\"\nimport * as api from \"../../../../adapters/event/offer/applicant\"\nimport * as eventOfferApi from \"../../../../adapters/event/offer\"\nimport {editEventOfferSuccess, showEventOfferSuccess} from \"../../../../actions/event/offer\";\nimport {refresh} from \"../../../../actions/calendar\";\nimport Loader from \"../../../../utils/loader\";\nimport {useParams} from \"react-router-dom\";\nimport {setPageTitle} from \"../../../../actions/header\";\nimport {Granted} from \"../../../../security/granted\";\n\nconst EventOfferShow:React.FC = () => {\n\n const state = useSelector((state: RootStateOrAny) => state);\n const [offer, setOffer] = useState()\n const [isLoading, setIsLoading] = useState(true)\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n useEffect(() => {\n dispatch(setPageTitle('Offre de créneau'))\n eventOfferApi.show(Number(params.id)).then(data => {\n setOffer(data.data)\n dispatch(showEventOfferSuccess(data.data))\n setIsLoading(false)\n })\n }, [])\n\n const _apply = (offer: EventOffer) => {\n api.apply(offer.id).then((data) => {\n setOffer(data.data);\n dispatch(editEventOfferSuccess(data.data))\n })\n }\n const _cancel = (offer: EventOffer, applicant: EventOfferApplication) => {\n api.cancel(offer.id, applicant.id).then((data) => {\n setOffer(data.data);\n dispatch(editEventOfferSuccess(data.data))\n })\n }\n const _validate = (applicant: EventOfferApplication) => {\n api.validate(offer!.id, applicant.id).then(data => {\n setOffer(data.data);\n dispatch(editEventOfferSuccess(data.data))\n dispatch(refresh())\n })\n }\n const _invalidate = (applicant: EventOfferApplication) => {\n api.invalidate(offer!.id, applicant.id).then(data => {\n setOffer(data.data);\n dispatch(editEventOfferSuccess(data.data))\n dispatch(refresh())\n })\n }\n\n if (isLoading){\n return \n }\n\n if (!offer){\n return Offre non trouvé \n }\n\n return
    \n
    \n
    \n
    \n

    \n {offer.applications.find(a => a.validated) ? Créneau attribué à {offer.applications.find(a => a.validated)!.salary.title} : Créneau non attribué}\n

    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n

    \n {format(new Date(offer.start), 'E dd MMMM uuuu HH:mm')} {format(new Date(offer.end), 'HH:mm')}\n

    \n
    \n {offer.activity &&

    \n {offer.activity.title}\n

    }\n
    \n {offer.localisation &&

    \n {offer.localisation.title}\n

    }\n
    \n

    \n {offer.company.title}\n

    \n
    \n

    \n {offer.description}\n

    \n {Granted(accessRights.APPLY_BOOKING_OFFER, undefined, offer) &&
    \n {offer.salaries.find(s => s.id === state.auth.user.currentSalary.id) && !offer.applications.find(a => a.validated) && (!offer.applications.find(a => a.salary.id === state.auth.user.currentSalary.id) ?\n : _cancel(offer, offer.applications.find(a => a.salary.id === state.auth.user.currentSalary.id)!)}\n className={'btn flex-grow-1 btn-primary'}>\n Déjà postulé\n )}\n
    }\n
    \n {Granted(accessRights.EDIT_BOOKING_OFFER, undefined, offer) && <>\n

    \n Postulants\n

    \n
      \n {!!offer.applications.length ? offer.applications.map((applicant, index) =>
    • \n
      \n {applicant.validated &&
      \n \n
      }\n
      \n

      \n {applicant.salary.title} | {applicant.salary.information?.job.title}\n

      \n
      \n \n Participation le {format(new Date(applicant.createdAt), \"E dd MMMM uuuu\")} à {format(new Date(applicant.createdAt), \"HH:mm\")}\n \n
      \n
      \n {!applicant.validated ?\n : <>\n \n }\n
      \n
      \n
    • ) :
    • Aucun postulants
    • }\n
    \n

    \n Participants\n

    \n
      \n {offer.salaries.map(s =>
    • \n
      \n
      \n {s.title}\n
      \n
      \n {offer?.applications.find(a => a.id === s.id) && <> A postulé}\n
      \n
      \n
    • )}\n
    \n }\n
    \n}\n\nexport default EventOfferShow;","import * as React from \"react\";\n\nimport EventOfferShow from \"../../../components/event/offer/show\";\n\nconst EventOfferPage : React.FC = () => {\n return (\n
    \n \n
    \n );\n}\n\nexport default EventOfferPage;","import React, {useEffect, useState} from \"react\";\nimport {get, post} from \"../../adapters/xhr\";\nimport format from \"../../utils/locale\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../utils/validationClass\";\nimport DateCustomInput from \"../../utils/customInput\";\nimport {setHours, setMinutes} from \"date-fns\";\n\nconst Test:React.FC = () => {\n\n const [data, setData] = useState([])\n const [start, setStart] = useState(new Date())\n const [end, setEnd] = useState(new Date())\n\n useEffect(() => {\n post('admin/helper/julian', {start: format(start, 'uuuu-MM-dd'), end: format(end, 'uuuu-MM-dd')}).then(data => setData(data.data));\n }, [start, end])\n\n return <>\n
    \n
    \n }\n selected={start}\n onChange={(date: Date) => {\n setStart(date)\n }}\n selectsStart\n startDate={start}\n maxDate={end}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n \n
    \n
    \n }\n selected={end}\n onChange={(date: Date) => {\n setEnd(date)\n }}\n selectsEnd\n startDate={start}\n endDate={end}\n minDate={start}\n dateFormat=\"E dd MMM uuuu\"\n popperPlacement={\"top-end\"}\n showPopperArrow={false}\n />\n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n {data.map(d => <>\n \n \n \n \n \n \n )}\n \n
    \n Collaborateur\n \n Heures contrat\n \n Heures efféctué\n \n Delta\n
    \n {d.title}\n \n {d.contractWorkingTime}\n \n {d.workingTime}\n \n {d.delta}\n
    \n
    \n \n}\n\nexport default Test;","export const ADD_TEMPLATE = 'ADD_TEMPLATE';\nexport const ADD_TEMPLATE_SUCCESS = 'ADD_TEMPLATE_SUCCESS';\nexport const ADD_TEMPLATE_FAILURE = 'ADD_TEMPLATE_FAILURE';\n\nexport const ADD_TEMPLATE_INFORMATION = 'ADD_TEMPLATE_INFORMATION';\nexport const ADD_TEMPLATE_INFORMATION_SUCCESS = 'ADD_TEMPLATE_INFORMATION_SUCCESS';\nexport const ADD_TEMPLATE_INFORMATION_FAILURE = 'ADD_TEMPLATE_INFORMATION_FAILURE';\n\nexport const EDIT_TEMPLATE = 'EDIT_TEMPLATE';\nexport const EDIT_TEMPLATE_SUCCESS = 'EDIT_TEMPLATE_SUCCESS';\nexport const EDIT_TEMPLATE_FAILURE = 'EDIT_TEMPLATE_FAILURE';\n\nexport const FETCH_TEMPLATES = 'FETCH_TEMPLATES';\nexport const FETCH_TEMPLATES_SUCCESS = 'FETCH_TEMPLATES_SUCCESS';\nexport const FETCH_TEMPLATES_FAILURE = 'FETCH_TEMPLATES_FAILURE';\n\nexport const SHOW_TEMPLATE = 'SHOW_TEMPLATE';\nexport const SHOW_TEMPLATE_SUCCESS = 'SHOW_TEMPLATE_SUCCESS';\nexport const SHOW_TEMPLATE_FAILURE = 'SHOW_TEMPLATE_FAILURE';\n\n\nexport const HIDE_TEMPLATE_SUCCESS = 'HIDE_TEMPLATE_SUCCESS';\n\nexport const VISIBILITY_PRIVATE = 1;\nexport const VISIBILITY_PUBLIC = 2;\n","import * as types from \"../../constants/template\";\nimport * as models from \"../../models/template\";\n\nexport const addTemplate = () => {\n return {\n type: types.ADD_TEMPLATE,\n }\n}\n\nexport const addTemplateInformation = () => {\n return {\n type: types.ADD_TEMPLATE,\n }\n}\n\nexport const addTemplateSuccess = (template: models.Template) => {\n return {\n type: types.ADD_TEMPLATE_SUCCESS,\n template: template,\n }\n}\n\nexport const addTemplateInformationSuccess = (template: models.Template) => {\n return {\n type: types.ADD_TEMPLATE_INFORMATION_SUCCESS,\n template: template,\n }\n}\n\nexport const addTemplateFailure = (error: string) => {\n return {\n type: types.ADD_TEMPLATE_FAILURE,\n template: null,\n templates: null,\n error: error\n }\n}\n\nexport const addTemplateInformationFailure = (error: string) => {\n return {\n type: types.ADD_TEMPLATE_INFORMATION_FAILURE,\n template: null,\n templates: null,\n error: error\n }\n}\n\nexport const editTemplate = () => {\n return {\n type: types.EDIT_TEMPLATE,\n }\n}\n\nexport const editTemplateSuccess = (template: models.Template) => {\n return {\n type: types.EDIT_TEMPLATE_SUCCESS,\n template: template,\n }\n}\n\nexport const fetchTemplates = () => {\n return {\n type: types.FETCH_TEMPLATES,\n }\n}\n\nexport const fetchTemplatesFailure = (error: string) => {\n return {\n type: types.FETCH_TEMPLATES_FAILURE,\n template: null,\n templates: [],\n error: error\n }\n}\n\nexport const fetchTemplatesSuccess = (templates: models.Templates) => {\n return {\n type: types.FETCH_TEMPLATES_SUCCESS,\n template: null,\n templates: templates\n }\n}\n\n\nexport const showTemplate = () => {\n return {\n type: types.SHOW_TEMPLATE,\n }\n}\nexport const showTemplateSuccess = (template: models.Template) => {\n return {\n type: types.SHOW_TEMPLATE_SUCCESS,\n template: template\n }\n}\n\nexport const hideTemplateSuccess = (template: models.Template) => {\n return {\n type: types.HIDE_TEMPLATE_SUCCESS,\n template: template\n }\n}\n\nexport const showTemplateFailure = (error: string) => {\n return {\n type: types.SHOW_TEMPLATE_FAILURE,\n template: null,\n templates: null,\n error: error\n }\n}","import React, { useEffect, useState } from \"react\";\nimport { RootStateOrAny, useDispatch, useSelector } from \"react-redux\";\nimport { Link, useParams } from \"react-router-dom\";\n\nimport { Template } from \"../../../models/template\";\n\nimport * as types from \"../../../constants/template\";\nimport { FORM_NEW_TEMPLATE } from \"../../../constants/rightSidebar\";\n\nimport * as api from \"../../../adapters/template\";\nimport * as actions from \"../../../actions/template\";\nimport { setPageTitle, setHelpProductSheetIds } from \"../../../actions/header\";\nimport { openSidebar } from \"../../../actions/rightSidebar\";\nimport { axiosError } from \"../../../actions/axios\";\n\nimport LoaderList from \"../../../utils/loaderList\";\nimport onMouseEnterTooltip from \"../../../utils/mouseOverTooltip\";\n\nconst TemplateList: React.FC = () => {\n const params: {id: string} = useParams();\n const dispatch = useDispatch();\n\n const state = useSelector((state: RootStateOrAny) => state.template);\n\n const [expanded, setExpanded] = useState(!params.id);\n const [activated, setActivated] = useState(true);\n\n useEffect(() => {\n dispatch(actions.fetchTemplates());\n api.list({activated: activated}).then(data => {\n dispatch(actions.fetchTemplatesSuccess(data.data))\n }).catch(error => {\n dispatch(axiosError(error))\n })\n }, [activated])\n\n useEffect(() => {\n dispatch(setPageTitle(\"Templates\"))\n dispatch(setHelpProductSheetIds([12]))\n\n return (() => {\n dispatch(setHelpProductSheetIds([]))\n })\n }, []);\n\n if (!expanded) {\n return (\n
    \n
    \n
    \n
    \n \n
    \n\n
    \n \n
    \n
    \n
    \n
    \n )\n }\n\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n \n
    \n
    \n\n
    \n \n \n
    \n
    \n
    \n\n {state.loading &&\n \n }\n\n {!state.loading &&\n
      \n {state.payload.map((t: Template) => setExpanded(false)} to={`/template/${t.id}`} className={'list-group-item' + (params.id === String(t.id) ? ' active ' : '')}>\n
      \n
      \n

      \n {t.title}\n

      \n

      \n {t.company.title}\n

      \n
      \n
      \n {t.visibility === types.VISIBILITY_PRIVATE ? : }\n
      \n
      \n )}\n
    \n }\n
    \n )\n}\n\nexport default TemplateList;","import {post, get} from \"../../xhr\";\nimport * as models from \"../../../models/template\";\n\nexport function edit(requestData: models.Resource, templateId: number, id: number){\n return post('template/'+ templateId +'/resource/edit/' + id, requestData);\n}\n\nexport function create(requestData: any, id: number){\n return post('template/'+ id +'/resource/create', requestData);\n}\n\nexport function cancel(templateId: number, id: number){\n return get('template/'+ templateId +'/resource/cancel/' + id);\n}\n\nexport function salaries(templateId: number){\n return get('template/'+ templateId +'/resource/salaries/');\n}\n\nexport function addSalary(templateId: number, salaryId: number){\n return get(`template/${templateId}/resource/salary/${salaryId}/add`);\n}\n\nexport function removeSalary(templateId: number, salaryId: number){\n return get(`template/${templateId}/resource/salary/${salaryId}/remove`);\n}\n\nexport function remove(templateId: number, resourceId: number){\n return get(`template/${templateId}/resource/${resourceId}/remove`);\n}","import React, {useEffect, useState} from \"react\";\nimport * as api from \"../../../../adapters/template/resource\";\nimport * as salaryApi from \"../../../../adapters/salary\";\nimport {Salaries, Salary} from \"../../../../models/salary\";\nimport Loader from \"../../../../utils/loader\";\nimport {Template} from \"../../../../models/template\";\n\ninterface Interface {\n template: Template,\n setTemplate: React.Dispatch,\n handleSubmitSuccess: (ev: any, previous?: any) => any\n}\n\nconst TemplateSalaries:React.FC = (props) => {\n\n const [salaries, setSalaries] = useState([]);\n const [loading, setLoading] = useState(false)\n useEffect(() => {\n setLoading(true);\n salaryApi.list({companies: [props.template.company.id!]})\n .then(resp => setSalaries(resp.data))\n .then(() => setLoading(false))\n }, [props.template])\n\n const handleChange = (salary: Salary, checked: boolean) => {\n if (checked){\n api.addSalary(props.template.id, salary.id)\n .then(resp => {\n props.handleSubmitSuccess(resp.data)\n let copy = {...props.template};\n copy.resources.push(resp.data)\n props.setTemplate({...copy})\n })\n }else{\n api.removeSalary(props.template.id, salary.id)\n .then(resp => {\n props.handleSubmitSuccess(resp.data)\n let copy = {...props.template};\n copy.resources.filter(r => r.id !== resp.data.id)\n props.setTemplate({...copy})\n })\n }\n }\n\n return <>\n
    \n
    Ajouter des collaborateurs
    \n \n
    \n
    \n {loading ? :
      \n {salaries.map(s =>
    • \n \n
      \n
      \n r.salary?.id === s.id)} onChange={e => handleChange(s, e.target.checked)} className=\"form-check-input\" type=\"checkbox\" id={`input_${s.id}`} />\n
      \n
      \n
    • )}\n
    }\n
    \n \n}\n\nexport default TemplateSalaries;","import React from \"react\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/template/resource\";\nimport {useFormik} from \"formik\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {Template} from \"../../../../../models/template\";\n\ninterface Interface {\n template: Template,\n handleSubmitSuccess: (ev: any[]) => any\n}\n\nconst TemplateResourceAddForm:React.FC = (props) => {\n\n const dispatch = useDispatch();\n const initialValues = {\n title: \"\",\n job: null,\n contractWorkingTime: null,\n }\n\n const validationSchema = Yup.object().shape({\n title: Yup.string().required('Champs requis'),\n job: Yup.number().required('Champs requis'),\n contractWorkingTime: Yup.number().nullable(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n api.create(values, props.template.id)\n .then(resp => {\n Promise.all([\n props.handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Resource ajouté'));\n formikHelpers.setSubmitting(false)\n })\n })\n }\n })\n\n return
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('job', c?.value)}\n required={true}\n />\n
    \n
    \n \n \n
    \n \n
    \n}\n\nexport default TemplateResourceAddForm;","import React, {useEffect, useState} from \"react\";\nimport ResourceAddForm from \"./form\";\nimport {Template} from \"../../../../models/template\";\n\ninterface Interface {\n template: Template,\n setTemplate: React.Dispatch,\n close: () => any,\n handleSubmitSuccess: (ev: any, previous?: any) => any\n}\n\nconst ResourceAdd:React.FC = (props) => {\n\n const {handleSubmitSuccess, template, close, setTemplate} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n\n let copy = {...template};\n copy.resources.push(ev)\n setTemplate({...copy})\n\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [template])\n\n return <>\n
    \n
    Ajouter une ressource flottante
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default ResourceAdd;","import React, {useEffect, useState} from \"react\";\nimport * as Yup from \"yup\";\nimport * as api from \"../../../../../adapters/template/resource\";\nimport * as salaryApi from \"../../../../../adapters/salary\";\nimport {useFormik} from \"formik\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {Template} from \"../../../../../models/template\";\nimport {Job} from \"../../../../../models/job\";\nimport {Salaries, Salary} from \"../../../../../models/salary\";\nimport FormError from \"../../../../../utils/formError\";\n\ninterface Interface {\n template: Template,\n handleSubmitSuccess: (ev: any[]) => any,\n resource: {id: number}\n}\n\ninterface InterfaceFloating {\n floating: true,\n job: Job,\n title: string,\n contractWorkingTime: number,\n}\ninterface InterfaceSalary {\n floating: false,\n salary: Salary,\n}\n\n\n\nconst TemplateResourceEditForm:React.FC = (props) => {\n\n const dispatch = useDispatch();\n const [salaries, setSalaries] = useState([])\n\n const [initialValues, setInitialValues] = useState({\n floating: props.floating,\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n floating: Yup.boolean().required('Champs requis'),\n }))\n\n useEffect(() => {\n if (props.floating){\n setInitialValues({\n floating: true,\n job: props.job.id,\n title: props.title,\n contractWorkingTime: props.contractWorkingTime\n })\n\n setValidationSchema(Yup.object().shape({\n floating: Yup.boolean().required('Champs requis'),\n job: Yup.number().required('Champs requis'),\n title: Yup.string().required('Champs requis'),\n contractWorkingTime: Yup.number().nullable(),\n }))\n }else{\n setInitialValues({\n floating: false,\n salary: props.salary.id,\n })\n\n setValidationSchema(Yup.object().shape({\n floating: Yup.boolean().required('Champs requis'),\n salary: Yup.number().required('Champs requis'),\n }))\n }\n }, [props.floating])\n\n function handleFloatingChange(floating: boolean)\n {\n if (floating){\n setInitialValues({\n floating: true,\n job: null,\n title: \"\",\n contractWorkingTime: null\n })\n\n setValidationSchema(Yup.object().shape({\n floating: Yup.boolean().required('Champs requis'),\n job: Yup.number().required('Champs requis'),\n title: Yup.string().required('Champs requis'),\n contractWorkingTime: Yup.number().nullable(),\n }))\n }else{\n setInitialValues({\n floating: false,\n salary: null,\n })\n\n setValidationSchema(Yup.object().shape({\n floating: Yup.boolean().required('Champs requis'),\n salary: Yup.number().required('Champs requis'),\n }))\n }\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n api.edit(values, props.template.id, props.resource.id)\n .then(resp => {\n Promise.all([\n props.handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Resource mis à jour'));\n formikHelpers.setSubmitting(false)\n })\n })\n }\n })\n\n useEffect(() => {\n if (!formik.values.floating){\n salaryApi.list({companies: [props.template.company.id!]})\n .then(resp => setSalaries(resp.data))\n }\n }, [formik.values.floating])\n\n return
    \n\n
    \n handleFloatingChange(e.target.checked)} className=\"form-check-input\" type=\"checkbox\" id=\"floating\" />\n \n \n
    \n\n {formik.values.floating && <>\n
    \n \n \n \n
    \n
    \n formik.setFieldValue('job', c?.value)}\n required={true}\n />\n \n
    \n
    \n \n \n \n
    \n }\n\n {!formik.values.floating && <>\n
    \n formik.setFieldValue(\"salary\", c?.value)}\n required={true}\n options={salaries.filter(s => !(props.template.resources.find(r => r.salary?.id === s.id))).map(s => ({label: s.title, value: s.id}))}\n value={props.floating ? undefined : {label: props.salary.title, value: props.salary.id}}\n enableReinitialize={true}\n />\n \n
    \n }\n\n \n
    \n}\n\nexport default TemplateResourceEditForm;","import React, {useEffect, useState} from \"react\";\nimport ResourceEditForm from \"./form\";\nimport {Template} from \"../../../../models/template\";\nimport {Job} from \"../../../../models/job\";\nimport {Salary} from \"../../../../models/salary\";\n\ninterface Interface {\n template: Template,\n setTemplate: React.Dispatch,\n close: () => any,\n handleSubmitSuccess: (ev: any, previous?: any) => any\n resource: {id: number}\n}\n\ninterface InterfaceFloating {\n floating: true,\n job: Job,\n title: string,\n contractWorkingTime: number,\n}\n\ninterface InterfaceSalary {\n floating: false,\n salary: Salary,\n}\n\nconst ResourceEdit:React.FC = (props) => {\n\n const {handleSubmitSuccess, template, close, setTemplate} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n\n let copy = {...template};\n copy.resources = [...template.resources.filter(r => r.id === ev.id), ev]\n setTemplate({...copy})\n\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [template])\n\n return <>\n
    \n
    Modifier une ressource
    \n \n
    \n
    \n {props.floating && }\n {!props.floating && }\n
    \n \n}\n\nexport default ResourceEdit;","import React, {useEffect, useState} from \"react\";\nimport {Salary} from \"../../../../models/salary\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Job} from \"../../../../models/job\";\nimport TemplateSalaries from \"../salaries\";\nimport ResourceAdd from \"../add/test\";\nimport {Template} from \"../../../../models/template\";\nimport ResourceEdit from \"../edit/test\";\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\ninterface InterfaceSalaryResourceAdd {\n sidebarType: 'RESOURCE_SALARIES_ADD',\n}\n\ninterface InterfaceFloatingResourceAdd {\n sidebarType: 'RESOURCE_FLOATING_ADD',\n}\n\ninterface InterfaceFloatingResourceEdit {\n sidebarType: 'RESOURCE_EDIT',\n floating: true,\n title: string,\n job: Job,\n contractWorkingTime: number,\n resource: {id: number}\n}\n\ninterface InterfaceNotFloatingResourceEdit {\n sidebarType: 'RESOURCE_EDIT',\n floating: false,\n salary: Salary,\n resource: {id: number}\n}\n\nexport type TemplateResourceSidebarInterface = {trigger: number} & (Interface | InterfaceFloatingResourceAdd | InterfaceFloatingResourceEdit | InterfaceNotFloatingResourceEdit | InterfaceSalaryResourceAdd)\n\nconst TemplateResourceSidebar:React.FC, handleEventChange: (resource: any, previousResource?: any) => any}> = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTemplateResource')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasTemplateResource')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"RESOURCE_SALARIES_ADD\":\n return \n case \"RESOURCE_FLOATING_ADD\":\n return \n case \"RESOURCE_EDIT\":\n if (props.floating){\n return \n }else{\n return \n }\n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: TemplateResourceSidebarInterface & {template: Template, setTemplate: React.Dispatch, handleEventChange: (resources: number[]) => any}, nextProps: TemplateResourceSidebarInterface & {template: Template, setTemplate: React.Dispatch, handleEventChange: (resources: number[]) => any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(TemplateResourceSidebar, areEqual);","import React from \"react\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport * as Yup from \"yup\";\nimport {useFormik} from \"formik\";\nimport format from \"../../../../../utils/locale\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport {AccountingTypes} from \"../../../../../constants/booking\";\nimport {Template} from \"../../../../../models/template\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport FormError from \"../../../../../utils/formError\";\nimport * as api from \"../../../../../adapters/template/event\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\n\ninterface Interface {\n template: Template\n resource?: {\n title: string,\n id: number\n },\n start?: Date,\n end?: Date,\n activity?: Activity\n localisation?: Localisation,\n handleSubmitSuccess: (ev: any, previousEv?: any) => any\n}\n\nconst EventAddForm:React.FC = (props) => {\n\n\n const {template, resource, start, end, activity, localisation, handleSubmitSuccess} = props;\n\n const dispatch = useDispatch();\n\n const initialValues: any = {\n resource: resource?.id,\n start: start,\n end: end,\n accountingType: 1,\n activity: activity?.id,\n localisation: localisation?.id,\n daysOfWeek: [String(Number(format(start || new Date(), 'i')) - 1)],\n }\n\n const validationSchema = Yup.object().shape({\n resource: Yup.number().required(),\n start: Yup.date().required(),\n end: Yup.date().required(),\n accountingType: Yup.number().required(),\n activity: Yup.number().nullable(),\n localisation: Yup.number().nullable(),\n })\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n onSubmit: (values, formikHelpers) => {\n api.create(values).then(resp => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n });\n }\n });\n\n return
    \n
    \n ({label: r.title, value: r.id}))}\n value={resource ? {label: resource.title, value: resource.id} : undefined}\n onChange={(c) => formik.setFieldValue('resource', c?.value)}\n />\n \n
    \n
    \n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n formik.setFieldValue(`start`, date)\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Heure de début\"\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n formik.setFieldValue(`end`, date)\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n timeIntervals={15}\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n
    \n
    \n \n \n
    \n
    \n formik.setFieldValue('accountingType', c?.value)}\n />\n \n
    \n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n label={\"Emplacement\"}\n value={localisation ? {label: localisation.title, value: localisation.id!} : undefined}\n />\n \n
    \n
    \n ({label: a.title, value: a.id!}))}\n fetchEntity=\"activity\"\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n label={\"Activité\"}\n value={activity ? {label: activity.title, value: activity.id!} : undefined}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n {['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim'].map((day: string, index: number) => {\n return (\n <>\n \n \n \n )\n })}\n \n
    \n \n
    \n}\n\nexport default EventAddForm;","import {post, get} from \"../../xhr\";\n\nexport function edit(requestData: any, id: number){\n return post('template/event/edit/' + id, requestData);\n}\n\nexport function create(requestData: any){\n return post('template/event/create', requestData);\n}\n\nexport function createException(requestData: any){\n return post('template/event/exception/create', requestData);\n}\n\nexport function editException(requestData: any, exceptionId: number){\n return post(`template/event/exception/edit/${exceptionId}`, requestData);\n}\n\nexport function cancelOccurrence(eventId: number, exDay: number){\n return get(`template/event/cancel_occurrence/${eventId}/${exDay}`);\n}\n","import React, {useEffect, useState} from \"react\";\nimport EventAddForm from \"./form\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Template} from \"../../../../models/template\";\n\ninterface Interface {\n template: Template\n close: () => any,\n handleSubmitSuccess: (ev: any[]) => any,\n resource?: {\n title: string\n id: number,\n },\n localisation?: Localisation,\n activity?: Activity,\n start?: Date\n end?: Date\n}\n\nconst EventAdd:React.FC = (props) => {\n\n const {handleSubmitSuccess, close, template} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [])\n\n return <>\n
    \n
    Ajouter un créneau
    \n \n
    \n
    \n \n
    \n \n}\n\nexport default EventAdd;","import React, {useEffect, useState} from \"react\";\nimport {Activity} from \"../../../../../models/activity\";\nimport {Localisation} from \"../../../../../models/localisation\";\nimport * as Yup from \"yup\";\nimport * as calendarTypes from \"../../../../../constants/calendar\";\nimport * as api from \"../../../../../adapters/template/event\";\nimport {FormikHelpers, useFormik} from \"formik\";\nimport {showAlertSuccess} from \"../../../../../actions/alert\";\nimport {useDispatch} from \"react-redux\";\nimport BootstrapSelect from \"../../../../../utils/bootstrapSelect\";\nimport FormError from \"../../../../../utils/formError\";\nimport DatePicker from \"react-datepicker\";\nimport validationClass from \"../../../../../utils/validationClass\";\nimport DateCustomInput from \"../../../../../utils/customInput\";\nimport {AccountingTypes} from \"../../../../../constants/booking\";\nimport SmallLoader from \"../../../../../utils/loader/small\";\nimport {Template} from \"../../../../../models/template\";\nimport format from \"../../../../../utils/locale\";\nimport {getTemplateDayOptions, getTemplateDayOption} from \"../../../../../constants/global\";\nimport {setHours, setMinutes} from \"date-fns\";\n\ninterface Interface {\n resource: {id: number, title: string}\n start: Date,\n end: Date,\n accountingType: number,\n activity?: Activity\n localisation?: Localisation,\n handleSubmitSuccess: (ev: any) => any,\n template: Template\n}\n\ninterface InterfaceEvent {\n eventType: 'templateEvent',\n exDay: number,\n eventId: number,\n}\n\ninterface InterfaceEventException {\n eventType: 'templateEventException',\n exceptionId: number,\n}\n\nconst EventEditForm: React.FC = (props) => {\n\n const {resource, start, end, accountingType, activity, localisation, handleSubmitSuccess, template} = props;\n\n const dispatch = useDispatch();\n const [initialValues, setInitialValues] = useState({\n resource: resource.id,\n start: start,\n end: end,\n accountingType: accountingType,\n activity: activity?.id,\n localisation: localisation?.id,\n })\n\n const [validationSchema, setValidationSchema] = useState(Yup.object().shape({\n resource: Yup.number().required('Champs requis'),\n start: Yup.date().required('Champs requis'),\n end: Yup.date().required('Champs requis'),\n accountingType: Yup.number().required('Champs requis'),\n activity: Yup.number().nullable(),\n localisation: Yup.number().nullable(),\n }))\n\n\n useEffect(() => {\n switch (props.eventType)\n {\n case calendarTypes.EVENT_TYPE_TEMPLATE_EVENT:\n setInitialValues((prev: any) => ({\n ...prev,\n event: props.eventId,\n exDay: props.exDay\n }));\n\n setValidationSchema((prev: any) => (Yup.object().shape({\n ...prev.fields,\n event: Yup.number().required(),\n exDay: Yup.number().required(),\n })));\n break;\n }\n }, [])\n\n const handleSubmit = (resp: any, formikHelpers: FormikHelpers) => {\n Promise.all([\n handleSubmitSuccess(resp.data)\n ]).then(() => {\n dispatch(showAlertSuccess('Créneau ajouté'));\n formikHelpers.setSubmitting(false)\n })\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n validationSchema: validationSchema,\n enableReinitialize: true,\n onSubmit: (values, formikHelpers) => {\n switch (props.eventType){\n case calendarTypes.EVENT_TYPE_TEMPLATE_EVENT:\n api.createException(values).then(resp => {\n handleSubmit(resp, formikHelpers)\n })\n break;\n case calendarTypes.EVENT_TYPE_TEMPLATE_EVENT_EXCEPTION:\n api.editException(values, props.exceptionId).then(resp => {\n handleSubmit(resp, formikHelpers)\n })\n break;\n }\n }\n });\n\n return
    \n
    \n ({label: r.title, value: r.id}))}\n value={resource ? {label: resource.title, value: resource.id} : undefined}\n onChange={(c) => formik.setFieldValue('resource', c?.value)}\n />\n \n
    \n
    \n
    \n
    \n ({label: o.label, value: o.value}))}\n value={getTemplateDayOption(format(formik.values.start, 'i'))}\n onChange={(c) => {\n let dt = getTemplateDayOption(String(c!.value))!.dt;\n formik.setFieldValue(`start`, setHours(setMinutes(dt, formik.values.start.getMinutes()), formik.values.start.getHours()))\n formik.setFieldValue(`end`, setHours(setMinutes(dt, formik.values.end.getMinutes()), formik.values.end.getHours()))\n }}\n placeholder={''}\n required={true}\n />\n
    \n
    \n }\n selected={formik.values.start}\n onChange={(date: Date) => {\n let _start = formik.values.start;\n formik.setFieldValue(`start`, setHours(setMinutes(_start, date.getMinutes()), date.getHours()))\n formik.setFieldTouched('start', true)\n }}\n selectsStart\n startDate={formik.values.start}\n maxDate={formik.values.end}\n showTimeSelect\n timeIntervals={15}\n timeCaption=\"Début\"\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n \n
    \n
    \n \n
    \n
    \n }\n showTimeSelect\n selected={formik.values.end}\n onChange={(date: Date) => {\n let _end = formik.values.end;\n formik.setFieldValue(`end`, setHours(setMinutes(_end, date.getMinutes()), date.getHours()))\n formik.setFieldTouched('end', true)\n }}\n selectsEnd\n timeIntervals={15}\n dateFormat=\"HH:mm\"\n showTimeSelectOnly={true}\n />\n \n
    \n
    \n
    \n
    \n formik.setFieldValue('accountingType', c?.value)}\n />\n \n
    \n
    \n
    \n ({label: l.title, value: l.id!}))}\n fetchEntity=\"localisation\"\n onChange={(c) => formik.setFieldValue('localisation', c?.value)}\n label={\"Emplacement\"}\n value={localisation ? {label: localisation.title, value: localisation.id!} : undefined}\n />\n \n
    \n
    \n ({label: a.title, value: a.id!}))}\n fetchEntity=\"localisation\"\n onChange={(c) => formik.setFieldValue('activity', c?.value)}\n label={\"Activité\"}\n value={activity ? {label: activity.title, value: activity.id!} : undefined}\n />\n \n
    \n
    \n \n
    \n}\n\nexport default EventEditForm;","import React, {useEffect, useState} from \"react\";\nimport EventEditForm from \"./form\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Template} from \"../../../../models/template\";\n\ninterface Interface {\n close: () => any,\n resource: {id: number, title: string}\n start: Date,\n end: Date,\n accountingType: number,\n activity?: Activity\n localisation?: Localisation,\n handleSubmitSuccess: (ev: any) => any,\n template: Template\n}\n\n interface InterfaceEvent {\n eventType: 'templateEvent',\n exDay: number,\n eventId: number,\n}\n\ninterface InterfaceEventException {\n eventType: 'templateEventException',\n exceptionId: number,\n}\n\nconst EventEdit:React.FC = (props) => {\n\n const {handleSubmitSuccess, close, template} = props;\n\n const [key, setKey] = useState(0);\n\n const handleSubmit = (ev: any) => {\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n useEffect(() => {\n setKey(prevState => prevState + 1);\n }, [])\n\n return <>\n
    \n
    Modifier un créneau
    \n \n
    \n
    \n {props.eventType === \"templateEvent\" && }\n {props.eventType === \"templateEventException\" && }\n
    \n \n}\n\nexport default EventEdit;","import React, {useState} from \"react\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport format from \"../../../../utils/locale\";\nimport {getAccountingTypeChoice} from \"../../../../constants/booking\";\nimport * as api from \"../../../../adapters/template/event\";\nimport * as calendarTypes from \"../../../../constants/calendar\";\nimport SmallLoader from \"../../../../utils/loader/small\";\nimport {useDispatch} from \"react-redux\";\nimport {showAlertSuccess} from \"../../../../actions/alert\";\n\ninterface Interface {\n arg: EventClickArg,\n setTemplateEventSidebarProps: React.Dispatch;\n handleSubmitSuccess: (ev: any) => any,\n close: () => void,\n}\n\nconst EventShow:React.FC = (props) => {\n\n const {arg, setTemplateEventSidebarProps, handleSubmitSuccess, close} = props;\n\n const dispatch = useDispatch();\n const handleSubmit = (ev: any) => {\n\n return Promise.all([\n handleSubmitSuccess(ev)\n ])\n .then(() => close())\n .then(() => true)\n }\n\n const [removing, setRemoving] = useState(false)\n function remove()\n {\n setRemoving(true)\n api.cancelOccurrence(arg.event.extendedProps.eventId, arg.event.extendedProps.exDay)\n .then(resp => {\n dispatch(showAlertSuccess('Créneau suprimmé'))\n handleSubmit(resp.data)\n })\n .then(() => setRemoving(false))\n }\n\n return <>\n
    \n
    Créneau de {arg.event.extendedProps.resource.title}
    \n \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n Horaire\n \n {format(arg.event.start!, 'E HH:mm')} {format(arg.event.end!, 'HH:mm')}\n
    \n Type d'heure\n \n {getAccountingTypeChoice(arg.event.extendedProps.accountingType).label}\n
    \n Activité\n \n {arg.event.extendedProps.activity?.title || }\n
    \n Emplacement\n \n {arg.event.extendedProps.localisation?.title || }\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n}\n\nexport default EventShow;","import React, {useEffect, useState} from \"react\";\nimport {Offcanvas} from \"bootstrap\";\nimport {Job} from \"../../../../models/job\";\nimport EventAdd from \"../add\";\nimport {Template} from \"../../../../models/template\";\nimport {Activity} from \"../../../../models/activity\";\nimport {Localisation} from \"../../../../models/localisation\";\nimport EventEdit from \"../edit\";\nimport {EventClickArg} from \"@fullcalendar/react\";\nimport EventShow from \"../show/show\";\n\ninterface Interface {\n sidebarType: 'EMPTY',\n}\n\ninterface InterfaceEventShow {\n sidebarType: 'EVENT_SHOW',\n arg: EventClickArg\n setTemplateEventSidebarProps: React.Dispatch;\n}\n\ninterface InterfaceEventAdd {\n sidebarType: 'EVENT_ADD',\n resource?: {id: number, title: string}\n start?: Date,\n end?: Date,\n activity?: Activity,\n localisation?: Localisation,\n}\n\ninterface InterfaceEventEdit {\n sidebarType: 'EVENT_EDIT',\n resource: {id: number, title: string}\n start: Date,\n end: Date,\n accountingType: number,\n activity?: Activity\n localisation?: Localisation,\n}\n\ninterface InterfaceEditEvent {\n eventType: 'templateEvent',\n exDay: number,\n eventId: number,\n}\n\ninterface InterfaceEditEventException {\n eventType: 'templateEventException',\n exceptionId: number,\n}\n\nexport type TemplateEventSidebarInterface = {trigger: number} & (Interface | InterfaceEventShow | InterfaceEventAdd | (InterfaceEventEdit & (InterfaceEditEvent | InterfaceEditEventException)))\n\nconst TemplateEventSidebar:React.FC any}> = (props) => {\n\n const [offcanvas, setOffcanvas] = useState()\n const [isOpen, setIsOpen] = useState(false)\n\n const reset = () => setIsOpen(false)\n\n useEffect(() => {\n const el = document.getElementById('offcanvasTemplateEvent')! as HTMLDivElement;\n setOffcanvas(new Offcanvas(el));\n\n el.addEventListener('hidden.bs.offcanvas', reset)\n return () => el.removeEventListener('hidden.bs.offcanvas', reset)\n }, [])\n\n useEffect(() => {\n if (isOpen){\n if (offcanvas){\n let elem = document.getElementById('offcanvasTemplateEvent')!\n offcanvas.show(elem)\n }\n }\n }, [isOpen])\n\n useEffect(() => {\n if (props.trigger > 0){\n open();\n }else{\n close();\n }\n\n }, [props.trigger])\n\n function close(){\n if (!offcanvas) return;\n offcanvas.hide();\n }\n\n function open(){\n if (!offcanvas) return;\n setIsOpen(true)\n }\n\n const Content = () => {\n if (offcanvas){\n switch (props.sidebarType){\n case \"EVENT_SHOW\":\n return \n case \"EVENT_ADD\":\n return \n case \"EVENT_EDIT\":\n switch (props.eventType){\n case \"templateEvent\":\n return \n case \"templateEventException\":\n return \n }\n break;\n }\n }\n\n return Une erreur est survenue veuillez réésayer\n }\n\n return
    \n {isOpen && }\n
    \n}\n\nfunction areEqual(prevProps: TemplateEventSidebarInterface & {template: Template, handleEventChange: (resources: number[]) => any}, nextProps: TemplateEventSidebarInterface & {template: Template, handleEventChange: (resources: number[]) => any}){\n return prevProps.trigger === nextProps.trigger;\n}\n\nexport default React.memo(TemplateEventSidebar, areEqual);","import {useFormik} from \"formik\";\nimport * as Yup from \"yup\";\nimport BootstrapSelect from \"../../../../utils/bootstrapSelect\";\nimport {Template} from \"../../../../models/template\";\nimport React from \"react\";\nimport * as api from \"../../../../adapters/template\";\n\nconst TemplateSchedulerForm = ({template, start, end, fetch} : {template: Template, start: Date, end: Date, fetch: (props: any) => void;}) => {\n\n const formik = useFormik({\n initialValues: {\n target: \"localisation\",\n targetId: \"\",\n breakDuration: 1,\n shiftDuration: 5,\n resources: []\n } as any,\n validationSchema: Yup.object().shape({\n target: Yup.string().required(),\n targetId: Yup.number().required(),\n breakDuration: Yup.number().required(),\n shiftDuration: Yup.number().required(),\n resources: Yup.array().of(Yup.number()).min(1).required(),\n }),\n onSubmit: (values, formikHelpers) => {\n api.schedule({...values, start: start, end: end}, template.id)\n .then(() => fetch({}))}\n });\n\n return <>\n
    \n
    \n
    Scheduler
    \n \n
    \n
    \n
    \n
    \n formik.setFieldValue(\"target\", c?.value)}\n />\n
    \n
    \n formik.setFieldValue(\"targetId\", c?.value)}\n />\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n Séléctionnez le(s) collaborateur(s) à inclure\n
    \n
      \n {template.resources.map(r =>
    • \n
      \n \n \n
      \n
    • )}\n
    \n
    \n \n
    \n
    \n                    {JSON.stringify(formik.errors, null, 3)}\n                
    \n
    \n
    \n \n}\n\nexport default TemplateSchedulerForm;","import React, {useEffect, useState} from \"react\";\nimport {useParams} from \"react-router-dom\";\nimport * as api from \"../../../adapters/template\"\nimport * as resourceApi from \"../../../adapters/template/resource\"\nimport * as calendarTypes from \"../../../constants/calendar\";\nimport FullCalendar, {\n CalendarApi,\n DateSelectArg,\n EventClickArg,\n EventDropArg,\n SlotLabelContentArg\n} from \"@fullcalendar/react\";\nimport resourceTimelinePlugin from \"@fullcalendar/resource-timeline\";\nimport listPlugin from \"@fullcalendar/list\";\nimport interactionPlugin, {EventResizeDoneArg} from \"@fullcalendar/interaction\";\nimport {RootStateOrAny, useDispatch, useSelector} from \"react-redux\";\nimport allLocales from \"@fullcalendar/core/locales-all\";\nimport onMouseEnterTooltip from \"../../../utils/mouseOverTooltip\";\nimport format from \"../../../utils/locale\";\nimport {CalendarTitle, renderDaySeparator, renderEvent, RenderTemplateResource} from \"../../calendar/utils\";\nimport {setPageTitle} from \"../../../actions/header\";\nimport {Template} from \"../../../models/template\";\nimport TemplateResourceSidebar, {TemplateResourceSidebarInterface} from \"../resource/sidebar\";\nimport BgSingle from \"../../../utils/background/single\";\nimport TemplateEventSidebar, {TemplateEventSidebarInterface} from \"../event/sidebar\";\nimport {setHours} from \"date-fns\";\nimport Loader from \"../../../utils/loader\";\nimport IsGranted from \"../../../security/isGranted\";\nimport * as accessRights from \"../../../constants/accessRight\";\nimport {openSidebar} from \"../../../actions/rightSidebar\";\nimport {FORM_EDIT_TEMPLATE} from \"../../../constants/rightSidebar\";\nimport TemplateSchedulerForm from \"../scheduler/form\";\n\nconst TemplateShow:React.FC = () => {\n\n const params:{id: string} = useParams()\n const state = useSelector((state: RootStateOrAny) => state)\n const calendarRef = React.createRef();\n const dispatch = useDispatch();\n const [template, setTemplate] = useState