{"version":3,"file":"js/app.64511aa9.js","mappings":"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BC,MAAO,QACPC,QAAS,UACTC,OAAQ,UAGV5nC,cAAe,CACb,CACEllB,GAAI,MACJua,MAAO,UACP6K,MAAO,MACPniB,KAAM,SAER,CACEjD,GAAI,cACJua,MAAO,iBACP6K,MAAO,cACPniB,KAAM,8BAER,CACEjD,GAAI,mBACJua,MAAO,2BACP6K,MAAO,OACPniB,KAAM,2BAER,CACEjD,GAAI,kBACJua,MAAO,sBACP6K,MAAO,SACPniB,KAAM,iBAER,CACEjD,GAAI,kBACJua,MAAO,yBACP6K,MAAO,SACPniB,KAAM,oBAER,CACEjD,GAAI,UACJua,MAAO,aACP6K,MAAO,YACPniB,KAAM,sBAER,CACEjD,GAAI,YACJua,MAAO,sBACP6K,MAAO,OACPniB,KAAM,8BAER,CACEjD,GAAI,SACJua,MAAO,yBACP6K,MAAO,SACPniB,KAAM,UAER,CACEjD,GAAI,WACJua,MAAO,SACP6K,MAAO,QACPniB,KAAM,SAER,CACEjD,GAAI,SACJua,MAAO,UACP6K,MAAO,QACPniB,KAAM,SAER,CACEjD,GAAI,SACJua,MAAO,WACP6K,MAAO,SACPniB,KAAM,QACN8pD,SAAS,GAEX,CACE/sD,GAAI,qBACJua,MAAO,2BACP6K,MAAO,QACPniB,KAAM,aACN8pD,SAAS,GAEX,CACE/sD,GAAI,YACJua,MAAO,SACP6K,MAAO,OACPniB,KAAM,QACN8pD,SAAS,IAIbxnC,wBAAyB,CACvBC,MAAO,QACPC,cAAe,gBACfC,OAAQ,SACRC,KAAM,OACNC,QAAS,UACTC,UAAW,aAGbmnC,oBAAqB,CACnBC,qBAAsB,EACtBC,8BAA+B,EAC/BC,4BAA6B,EAC7BC,yBAA0B,EAC1BC,uBAAwB,EACxBC,wBAAyB,EACzBC,2BAA4B,EAC5BC,sBAAuB,EACvBC,0BAA2B,GAG7BC,YAAa,CACX,CACE1tD,GAAI,UACJua,MAAO,iBACP6K,MAAO,QAET,CACEplB,GAAI,YACJua,MAAO,yBACP6K,MAAO,IAET,CACEplB,GAAI,SACJua,MAAO,aACP6K,MAAO,aAET,CACEplB,GAAI,OACJua,MAAO,SA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AAM,cACN,GAAM,qBACN,GAAM,yBACN,GAAM,kBACN,GAAM,YACN,GAAM,UACN,GAAM,QACN,GAAM,YACN,GAAM,WACN,GAAM,cACN,GAAM,UACN,GAAM,UACN,GAAM,aACN,GAAM,UACN,GAAM,UACN,GAAM,WACN,GAAM,SACN,GAAM,QACN,GAAM,WACN,GAAM,UACN,GAAM,UACN,GAAM,qBACN,GAAM,WACN,GAAM,SACN,GAAM,oBACN,GAAM,WACN,GAAM,eACN,GAAM,UACN,GAAM,WACN,GAAM,WACN,GAAM,SACN,GAAM,WACN,GAAM,mBACN,GAAM,QACN,GAAM,QACN,GAAM,SACN,GAAM,WACN,GAAM,UACN,GAAM,oBACN,GAAM,gBACN,GAAM,eACN,GAAM,aACN,GAAM,gBACN,GAAM,UACN,GAAM,OACN,GAAM,WACN,GAAM,eACN,GAAM,WACN,GAAM,YACN,GAAM,SACN,GAAM,cACN,GAAM,sBACN,GAAM,WACN,GAAM,WACN,GAAM,UACN,GAAM,UACN,GAAM,6BACN,GAAM,8BACN,GAAM,aACN,GAAM,WACN,GAAM,QACN,GAAM,WACN,GAAM,SACN,GAAM,QACN,GAAM,SACN,GAAM,UACN,GAAM,6CACN,GAAM,QACN,GAAM,YACN,GAAM,QACN,GAAM,UACN,GAAM,YACN,GAAM,aACN,GAAM,OACN,GAAM,YACN,GAAM,YACN,GAAM,SACN,GAAM,qBACN,GAAM,gBACN,GAAM,SACN,GAAM,mBACN,GAAM,QACN,GAAM,WACN,GAAM,UACN,GAAM,aACN,GAAM,gBACN,GAAM,iBACN,GAAM,qBACN,GAAM,aACN,GAAM,cACN,GAAM,aACN,GAAM,eACN,GAAM,gBACN,GAAM,uBACN,GAAM,YACN,GAAM,aACN,GAAM,0BACN,GAAM,iBACN,GAAM,yBACN,GAAM,gBACN,GAAM,yCACN,GAAM,eACN,GAAM,wBACN,GAAM,4BACN,GAAM,8BACN,GAAM,OACN,GAAM,YACN,GAAM,OACN,GAAM,OACN,GAAM,UACN,GAAM,UACN,GAAM,SACN,GAAM,SACN,GAAM,WACN,GAAM,QACN,GAAM,SACN,GAAM,WACN,GAAM,aACN,GAAM,QACN,GAAM,eACN,GAAM,WACN,GAAM,SACN,GAAM,OACN,GAAM,UACN,GAAM,WACN,GAAM,QACN,GAAM,UACN,GAAM,QACN,GAAM,gBACN,GAAM,WACN,GAAM,aACN,GAAM,YACN,GAAM,aACN,GAAM,WACN,GAAM,SACN,GAAM,WACN,GAAM,OACN,GAAM,QACN,GAAM,QACN,GAAM,aACN,GAAM,UACN,GAAM,aACN,GAAM,UACN,GAAM,UACN,GAAM,WACN,GAAM,SACN,GAAM,WACN,GAAM,aACN,GAAM,aACN,GAAM,aACN,GAAM,UACN,GAAM,UACN,GAAM,QACN,GAAM,QACN,GAAM,YACN,GAAM,QACN,GAAM,UACN,GAAM,OACN,GAAM,UACN,GAAM,qBACN,GAAM,mBACN,GAAM,OACN,GAAM,UACN,GAAM,cACN,GAAM,WACN,GAAM,SACN,GAAM,SACN,GAAM,4BACN,GAAM,WACN,GAAM,WACN,GAAM,QACN,GAAM,cACN,GAAM,WACN,GAAM,UACN,GAAM,sBACN,GAAM,aACN,GAAM,WACN,GAAM,QACN,GAAM,+BACN,GAAM,2BACN,GAAM,iCACN,GAAM,4BACN,GAAM,mCACN,GAAM,yBACN,GAAM,qBACN,GAAM,UACN,GAAM,WACN,GAAM,cACN,GAAM,SACN,GAAM,SACN,GAAM,oBACN,GAAM,mBACN,GAAM,uBACN,GAAM,cACN,GAAM,eACN,GAAM,2BACN,GAAM,kCACN,GAAM,gBACN,GAAM,eACN,GAAM,QACN,GAAM,oBACN,GAAM,uBACN,GAAM,UACN,GAAM,SACN,GAAM,uBACN,GAAM,aACN,GAAM,eACN,GAAM,YACN,GAAM,YACN,GAAM,WACN,GAAM,UACN,GAAM,SACN,GAAM,YACN,GAAM,QACN,GAAM,SACN,GAAM,WACN,GAAM,4BACN,GAAM,YACN,GAAM,QACN,GAAM,cACN,GAAM,SACN,GAAM,WACN,GAAM,QACN,GAAM,8BACN,GAAM,2CACN,GAAM,yBACN,GAAM,YACN,GAAM,iBACN,GAAM,OACN,GAAM,UACN,GAAM,QACN,GAAM,oBACN,GAAM,mBACN,GAAM,UACN,GAAM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","sources":["webpack://resa-frontend/../../neptune-js/node_modules/moment/dist/locale/ sync ^\\.\\/.*$","webpack://resa-frontend/../../neptune-js/node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://resa-frontend/./src/components/ClientAutocomplete.vue","webpack://resa-frontend/src/components/ClientAutocomplete.vue","webpack://resa-frontend/./src/components/ClientAutocomplete.vue?9a94","webpack://resa-frontend/./src/components/ClientAutocomplete.vue?3e85","webpack://resa-frontend/./src/components/clients/ClientForm.vue","webpack://resa-frontend/./src/components/clients/ClientFusion.vue","webpack://resa-frontend/src/components/clients/ClientFusion.vue","webpack://resa-frontend/./src/components/clients/ClientFusion.vue?5568","webpack://resa-frontend/./src/components/clients/ClientFusion.vue?b975","webpack://resa-frontend/src/components/clients/ClientForm.vue","webpack://resa-frontend/./src/components/clients/ClientForm.vue?2a50","webpack://resa-frontend/./src/components/clients/ClientForm.vue?afb5","webpack://resa-frontend/./src/components/odeon/OdeonPopup.vue","webpack://resa-frontend/./src/api/odeon.js","webpack://resa-frontend/./src/components/odeon/TicketDetailsPanel.vue","webpack://resa-frontend/./src/components/odeon/TiptapEditor.vue","webpack://resa-frontend/./src/components/odeon/TiptapMenuBar.vue","webpack://resa-frontend/./src/components/odeon/TiptapMenuItem.vue","webpack://resa-frontend/src/components/odeon/TiptapMenuItem.vue","webpack://resa-frontend/./src/components/odeon/TiptapMenuItem.vue?930b","webpack://resa-frontend/./src/components/odeon/TiptapMenuItem.vue?29cc","webpack://resa-frontend/src/components/odeon/TiptapMenuBar.vue","webpack://resa-frontend/./src/components/odeon/TiptapMenuBar.vue?fd05","webpack://resa-frontend/./src/components/odeon/TiptapMenuBar.vue?41d7","webpack://resa-frontend/./src/plugins/DropImage.js","webpack://resa-frontend/./src/plugins/ImageUpload.js","webpack://resa-frontend/src/components/odeon/TiptapEditor.vue","webpack://resa-frontend/./src/components/odeon/TiptapEditor.vue?9005","webpack://resa-frontend/./src/components/odeon/TiptapEditor.vue?d6d4","webpack://resa-frontend/src/components/odeon/TicketDetailsPanel.vue","webpack://resa-frontend/./src/components/odeon/TicketDetailsPanel.vue?0bfd","webpack://resa-frontend/./src/components/odeon/TicketDetailsPanel.vue?b9fb","webpack://resa-frontend/../../neptune-js/helpers/odeon.js","webpack://resa-frontend/../../neptune-js/ui/odeon.js","webpack://resa-frontend/../../neptune-js/mixins/odeon.js","webpack://resa-frontend/src/components/odeon/OdeonPopup.vue","webpack://resa-frontend/./src/components/odeon/OdeonPopup.vue?5c63","webpack://resa-frontend/./src/components/odeon/OdeonPopup.vue?5c3c","webpack://resa-frontend/./src/views/global/VoucherScan.vue","webpack://resa-frontend/src/views/global/VoucherScan.vue","webpack://resa-frontend/./src/views/global/VoucherScan.vue?9b28","webpack://resa-frontend/./src/views/global/VoucherScan.vue?f155","webpack://resa-frontend/./src/plugins/vuetify.js","webpack://resa-frontend/./src/plugins/snotify.js","webpack://resa-frontend/./src/App.vue","webpack://resa-frontend/./src/views/Forbidden.vue","webpack://resa-frontend/src/views/Forbidden.vue","webpack://resa-frontend/./src/views/Forbidden.vue?aac3","webpack://resa-frontend/./src/views/Forbidden.vue?a1e0","webpack://resa-frontend/src/App.vue","webpack://resa-frontend/./src/App.vue?b495","webpack://resa-frontend/./src/App.vue?0e40","webpack://resa-frontend/./src/main.ts","webpack://resa-frontend/../../neptune-js/consts.js","webpack://resa-frontend/../../neptune-js/helpers/client.js","webpack://resa-frontend/../../neptune-js/helpers/date.js","webpack://resa-frontend/../../neptune-js/helpers/forms.js","webpack://resa-frontend/../../neptune-js/helpers/params.js","webpack://resa-frontend/../../neptune-js/helpers/subscriptions.js","webpack://resa-frontend/../../neptune-js/helpers/utils.js","webpack://resa-frontend/../../neptune-js/mixins/access-control.js","webpack://resa-frontend/../../neptune-js/helpers/address.js","webpack://resa-frontend/../../neptune-js/mixins/address.js","webpack://resa-frontend/../../neptune-js/helpers/bookings.js","webpack://resa-frontend/../../neptune-js/mixins/bookings.js","webpack://resa-frontend/../../neptune-js/mixins/client.js","webpack://resa-frontend/../../neptune-js/ui/date.js","webpack://resa-frontend/../../neptune-js/mixins/date.js","webpack://resa-frontend/../../neptune-js/ui/colors.js","webpack://resa-frontend/../../neptune-js/mixins/colors.js","webpack://resa-frontend/../../neptune-js/helpers/labelizer.js","webpack://resa-frontend/../../neptune-js/text-values.js","webpack://resa-frontend/../../neptune-js/mixins/labelizer.js","webpack://resa-frontend/../../neptune-js/helpers/iconizer.js","webpack://resa-frontend/../../neptune-js/mixins/iconizer.js","webpack://resa-frontend/../../neptune-js/helpers/spa.js","webpack://resa-frontend/../../neptune-js/mixins/spa.js","webpack://resa-frontend/../../neptune-js/ui/templates.js","webpack://resa-frontend/../../neptune-js/mixins/templates.js","webpack://resa-frontend/../../neptune-js/countries.js","webpack://resa-frontend/../../neptune-js/helpers/location.js","webpack://resa-frontend/../../neptune-js/mixins/location.js","webpack://resa-frontend/../../neptune-js/ui/lockers.js","webpack://resa-frontend/../../neptune-js/helpers/lockers.js","webpack://resa-frontend/../../neptune-js/mixins/lockers.js","webpack://resa-frontend/../../neptune-js/ui/params.js","webpack://resa-frontend/../../neptune-js/mixins/params.js","webpack://resa-frontend/../../neptune-js/helpers/products.js","webpack://resa-frontend/../../neptune-js/mixins/products.js","webpack://resa-frontend/../../neptune-js/helpers/sales.js","webpack://resa-frontend/../../neptune-js/mixins/sales.js","webpack://resa-frontend/../../neptune-js/mixins/subscriptions.js","webpack://resa-frontend/../../neptune-js/ui/access-control.js","webpack://resa-frontend/../../neptune-js/ui/bookings.js","webpack://resa-frontend/../../neptune-js/ui/client.js","webpack://resa-frontend/../../neptune-js/ui/files.js","webpack://resa-frontend/../../neptune-js/ui/products.js","webpack://resa-frontend/../../neptune-js/ui/sales.js","webpack://resa-frontend/../../neptune-js/ui/subscriptions.js","webpack://resa-frontend/./src/api/accessControl.js","webpack://resa-frontend/./src/api/accounts.js","webpack://resa-frontend/./src/api/activities.js","webpack://resa-frontend/./src/api/areas.js","webpack://resa-frontend/./src/api/auth.js","webpack://resa-frontend/./src/api/clients.js","webpack://resa-frontend/./src/api/common.js","webpack://resa-frontend/./src/api/ctm.js","webpack://resa-frontend/./src/api/displayland.js","webpack://resa-frontend/./src/api/lockers.js","webpack://resa-frontend/./src/api/params.js","webpack://resa-frontend/./src/api/products.js","webpack://resa-frontend/./src/api/quotations.js","webpack://resa-frontend/./src/api/sales.js","webpack://resa-frontend/./src/api/spa.js","webpack://resa-frontend/./src/api/stats.js","webpack://resa-frontend/./src/api/templates.js","webpack://resa-frontend/./src/api/vouchers.js","webpack://resa-frontend/./src/api/weekTypes.js","webpack://resa-frontend/./src/config.js","webpack://resa-frontend/./src/eventbus.js","webpack://resa-frontend/./src/mixins/date.js","webpack://resa-frontend/./src/mixins/main.js","webpack://resa-frontend/./src/mixins/webview.js","webpack://resa-frontend/./src/mixins/ws.js","webpack://resa-frontend/./src/router/auth.js","webpack://resa-frontend/./src/router/planning.js","webpack://resa-frontend/./src/router/turnstiles.js","webpack://resa-frontend/./src/router/clients.js","webpack://resa-frontend/./src/router/products.js","webpack://resa-frontend/./src/router/quotation.js","webpack://resa-frontend/./src/router/spa.js","webpack://resa-frontend/./src/router/stats.js","webpack://resa-frontend/./src/router/business.js","webpack://resa-frontend/./src/router/lockers.js","webpack://resa-frontend/./src/router/activities.js","webpack://resa-frontend/./src/router/setup.js","webpack://resa-frontend/./src/router/cashregisterWebviews.js","webpack://resa-frontend/./src/router/kiosks.js","webpack://resa-frontend/./src/router/permissions.js","webpack://resa-frontend/./src/router/displayland.js","webpack://resa-frontend/./src/router/router.js","webpack://resa-frontend/./src/store/main.js","webpack://resa-frontend/./src/store/params.js","webpack://resa-frontend/./src/store/stats/resa/bilansperiodiques.js","webpack://resa-frontend/./src/store/stats/resa/frequentations.js","webpack://resa-frontend/./src/store/stats/resa/plannings.js","webpack://resa-frontend/./src/store/stats/resa/resa.js","webpack://resa-frontend/./src/store/stats.js","webpack://resa-frontend/./src/store/turnstiles.js","webpack://resa-frontend/./src/store/spa.js","webpack://resa-frontend/./src/store/planning.js","webpack://resa-frontend/./src/store/ws.js","webpack://resa-frontend/./src/store/template.js","webpack://resa-frontend/./src/store/lockers.js","webpack://resa-frontend/./src/store/displayland.js","webpack://resa-frontend/./src/store/store.js","webpack://resa-frontend/./src/utils/stats/consts.js","webpack://resa-frontend/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://resa-frontend/webpack/bootstrap","webpack://resa-frontend/webpack/runtime/chunk loaded","webpack://resa-frontend/webpack/runtime/compat get default export","webpack://resa-frontend/webpack/runtime/define property getters","webpack://resa-frontend/webpack/runtime/ensure chunk","webpack://resa-frontend/webpack/runtime/get javascript chunk filename","webpack://resa-frontend/webpack/runtime/get mini-css chunk filename","webpack://resa-frontend/webpack/runtime/global","webpack://resa-frontend/webpack/runtime/harmony module decorator","webpack://resa-frontend/webpack/runtime/hasOwnProperty shorthand","webpack://resa-frontend/webpack/runtime/load script","webpack://resa-frontend/webpack/runtime/make namespace object","webpack://resa-frontend/webpack/runtime/node module decorator","webpack://resa-frontend/webpack/runtime/publicPath","webpack://resa-frontend/webpack/runtime/css loading","webpack://resa-frontend/webpack/runtime/jsonp chunk loading","webpack://resa-frontend/webpack/startup"],"sourcesContent":["var map = {\n\t\"./af\": 96445,\n\t\"./af.js\": 96445,\n\t\"./ar\": 26321,\n\t\"./ar-dz\": 72564,\n\t\"./ar-dz.js\": 72564,\n\t\"./ar-kw\": 48376,\n\t\"./ar-kw.js\": 48376,\n\t\"./ar-ly\": 63493,\n\t\"./ar-ly.js\": 63493,\n\t\"./ar-ma\": 24836,\n\t\"./ar-ma.js\": 24836,\n\t\"./ar-sa\": 50038,\n\t\"./ar-sa.js\": 50038,\n\t\"./ar-tn\": 92936,\n\t\"./ar-tn.js\": 92936,\n\t\"./ar.js\": 26321,\n\t\"./az\": 26153,\n\t\"./az.js\": 26153,\n\t\"./be\": 18499,\n\t\"./be.js\": 18499,\n\t\"./bg\": 27461,\n\t\"./bg.js\": 27461,\n\t\"./bm\": 35627,\n\t\"./bm.js\": 35627,\n\t\"./bn\": 28526,\n\t\"./bn-bd\": 75161,\n\t\"./bn-bd.js\": 75161,\n\t\"./bn.js\": 28526,\n\t\"./bo\": 61485,\n\t\"./bo.js\": 61485,\n\t\"./br\": 94698,\n\t\"./br.js\": 94698,\n\t\"./bs\": 64953,\n\t\"./bs.js\": 64953,\n\t\"./ca\": 9142,\n\t\"./ca.js\": 9142,\n\t\"./cs\": 67260,\n\t\"./cs.js\": 67260,\n\t\"./cv\": 14759,\n\t\"./cv.js\": 14759,\n\t\"./cy\": 58926,\n\t\"./cy.js\": 58926,\n\t\"./da\": 14325,\n\t\"./da.js\": 14325,\n\t\"./de\": 91577,\n\t\"./de-at\": 23619,\n\t\"./de-at.js\": 23619,\n\t\"./de-ch\": 78405,\n\t\"./de-ch.js\": 78405,\n\t\"./de.js\": 91577,\n\t\"./dv\": 44304,\n\t\"./dv.js\": 44304,\n\t\"./el\": 2511,\n\t\"./el.js\": 2511,\n\t\"./en-au\": 79444,\n\t\"./en-au.js\": 79444,\n\t\"./en-ca\": 55366,\n\t\"./en-ca.js\": 55366,\n\t\"./en-gb\": 49111,\n\t\"./en-gb.js\": 49111,\n\t\"./en-ie\": 57308,\n\t\"./en-ie.js\": 57308,\n\t\"./en-il\": 72971,\n\t\"./en-il.js\": 72971,\n\t\"./en-in\": 32461,\n\t\"./en-in.js\": 32461,\n\t\"./en-nz\": 18510,\n\t\"./en-nz.js\": 18510,\n\t\"./en-sg\": 91744,\n\t\"./en-sg.js\": 91744,\n\t\"./eo\": 5026,\n\t\"./eo.js\": 5026,\n\t\"./es\": 91574,\n\t\"./es-do\": 11898,\n\t\"./es-do.js\": 11898,\n\t\"./es-mx\": 85598,\n\t\"./es-mx.js\": 85598,\n\t\"./es-us\": 35611,\n\t\"./es-us.js\": 35611,\n\t\"./es.js\": 91574,\n\t\"./et\": 84791,\n\t\"./et.js\": 84791,\n\t\"./eu\": 43488,\n\t\"./eu.js\": 43488,\n\t\"./fa\": 82955,\n\t\"./fa.js\": 82955,\n\t\"./fi\": 65827,\n\t\"./fi.js\": 65827,\n\t\"./fil\": 36031,\n\t\"./fil.js\": 36031,\n\t\"./fo\": 93001,\n\t\"./fo.js\": 93001,\n\t\"./fr\": 79550,\n\t\"./fr-ca\": 58551,\n\t\"./fr-ca.js\": 58551,\n\t\"./fr-ch\": 32680,\n\t\"./fr-ch.js\": 32680,\n\t\"./fr.js\": 79550,\n\t\"./fy\": 79891,\n\t\"./fy.js\": 79891,\n\t\"./ga\": 17978,\n\t\"./ga.js\": 17978,\n\t\"./gd\": 86117,\n\t\"./gd.js\": 86117,\n\t\"./gl\": 31533,\n\t\"./gl.js\": 31533,\n\t\"./gom-deva\": 90896,\n\t\"./gom-deva.js\": 90896,\n\t\"./gom-latn\": 46411,\n\t\"./gom-latn.js\": 46411,\n\t\"./gu\": 55734,\n\t\"./gu.js\": 55734,\n\t\"./he\": 91397,\n\t\"./he.js\": 91397,\n\t\"./hi\": 7665,\n\t\"./hi.js\": 7665,\n\t\"./hr\": 44064,\n\t\"./hr.js\": 44064,\n\t\"./hu\": 60917,\n\t\"./hu.js\": 60917,\n\t\"./hy-am\": 21548,\n\t\"./hy-am.js\": 21548,\n\t\"./id\": 92723,\n\t\"./id.js\": 92723,\n\t\"./is\": 58618,\n\t\"./is.js\": 58618,\n\t\"./it\": 78659,\n\t\"./it-ch\": 42471,\n\t\"./it-ch.js\": 42471,\n\t\"./it.js\": 78659,\n\t\"./ja\": 5599,\n\t\"./ja.js\": 5599,\n\t\"./jv\": 71758,\n\t\"./jv.js\": 71758,\n\t\"./ka\": 83086,\n\t\"./ka.js\": 83086,\n\t\"./kk\": 52284,\n\t\"./kk.js\": 52284,\n\t\"./km\": 53530,\n\t\"./km.js\": 53530,\n\t\"./kn\": 57255,\n\t\"./kn.js\": 57255,\n\t\"./ko\": 33104,\n\t\"./ko.js\": 33104,\n\t\"./ku\": 51762,\n\t\"./ku.js\": 51762,\n\t\"./ky\": 94166,\n\t\"./ky.js\": 94166,\n\t\"./lb\": 39268,\n\t\"./lb.js\": 39268,\n\t\"./lo\": 93671,\n\t\"./lo.js\": 93671,\n\t\"./lt\": 87122,\n\t\"./lt.js\": 87122,\n\t\"./lv\": 60360,\n\t\"./lv.js\": 60360,\n\t\"./me\": 7112,\n\t\"./me.js\": 7112,\n\t\"./mi\": 23052,\n\t\"./mi.js\": 23052,\n\t\"./mk\": 34806,\n\t\"./mk.js\": 34806,\n\t\"./ml\": 28023,\n\t\"./ml.js\": 28023,\n\t\"./mn\": 21017,\n\t\"./mn.js\": 21017,\n\t\"./mr\": 33901,\n\t\"./mr.js\": 33901,\n\t\"./ms\": 84590,\n\t\"./ms-my\": 23093,\n\t\"./ms-my.js\": 23093,\n\t\"./ms.js\": 84590,\n\t\"./mt\": 45743,\n\t\"./mt.js\": 45743,\n\t\"./my\": 92924,\n\t\"./my.js\": 92924,\n\t\"./nb\": 14854,\n\t\"./nb.js\": 14854,\n\t\"./ne\": 34535,\n\t\"./ne.js\": 34535,\n\t\"./nl\": 87160,\n\t\"./nl-be\": 11308,\n\t\"./nl-be.js\": 11308,\n\t\"./nl.js\": 87160,\n\t\"./nn\": 98914,\n\t\"./nn.js\": 98914,\n\t\"./oc-lnc\": 72798,\n\t\"./oc-lnc.js\": 72798,\n\t\"./pa-in\": 55549,\n\t\"./pa-in.js\": 55549,\n\t\"./pl\": 94390,\n\t\"./pl.js\": 94390,\n\t\"./pt\": 9486,\n\t\"./pt-br\": 52867,\n\t\"./pt-br.js\": 52867,\n\t\"./pt.js\": 9486,\n\t\"./ro\": 21021,\n\t\"./ro.js\": 21021,\n\t\"./ru\": 57731,\n\t\"./ru.js\": 57731,\n\t\"./sd\": 38761,\n\t\"./sd.js\": 38761,\n\t\"./se\": 26234,\n\t\"./se.js\": 26234,\n\t\"./si\": 79086,\n\t\"./si.js\": 79086,\n\t\"./sk\": 98852,\n\t\"./sk.js\": 98852,\n\t\"./sl\": 62225,\n\t\"./sl.js\": 62225,\n\t\"./sq\": 63990,\n\t\"./sq.js\": 63990,\n\t\"./sr\": 17811,\n\t\"./sr-cyrl\": 9854,\n\t\"./sr-cyrl.js\": 9854,\n\t\"./sr.js\": 17811,\n\t\"./ss\": 17548,\n\t\"./ss.js\": 17548,\n\t\"./sv\": 22519,\n\t\"./sv.js\": 22519,\n\t\"./sw\": 32800,\n\t\"./sw.js\": 32800,\n\t\"./ta\": 99653,\n\t\"./ta.js\": 99653,\n\t\"./te\": 67337,\n\t\"./te.js\": 67337,\n\t\"./tet\": 95545,\n\t\"./tet.js\": 95545,\n\t\"./tg\": 23847,\n\t\"./tg.js\": 23847,\n\t\"./th\": 7662,\n\t\"./th.js\": 7662,\n\t\"./tk\": 57291,\n\t\"./tk.js\": 57291,\n\t\"./tl-ph\": 51515,\n\t\"./tl-ph.js\": 51515,\n\t\"./tlh\": 20912,\n\t\"./tlh.js\": 20912,\n\t\"./tr\": 46124,\n\t\"./tr.js\": 46124,\n\t\"./tzl\": 92218,\n\t\"./tzl.js\": 92218,\n\t\"./tzm\": 47273,\n\t\"./tzm-latn\": 45883,\n\t\"./tzm-latn.js\": 45883,\n\t\"./tzm.js\": 47273,\n\t\"./ug-cn\": 51538,\n\t\"./ug-cn.js\": 51538,\n\t\"./uk\": 84286,\n\t\"./uk.js\": 84286,\n\t\"./ur\": 30053,\n\t\"./ur.js\": 30053,\n\t\"./uz\": 64077,\n\t\"./uz-latn\": 96279,\n\t\"./uz-latn.js\": 96279,\n\t\"./uz.js\": 64077,\n\t\"./vi\": 7347,\n\t\"./vi.js\": 7347,\n\t\"./x-pseudo\": 85831,\n\t\"./x-pseudo.js\": 85831,\n\t\"./yo\": 57422,\n\t\"./yo.js\": 57422,\n\t\"./zh-cn\": 69068,\n\t\"./zh-cn.js\": 69068,\n\t\"./zh-hk\": 81900,\n\t\"./zh-hk.js\": 81900,\n\t\"./zh-mo\": 61601,\n\t\"./zh-mo.js\": 61601,\n\t\"./zh-tw\": 30412,\n\t\"./zh-tw.js\": 30412\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35338;","var map = {\n\t\"./af\": 22044,\n\t\"./af.js\": 22044,\n\t\"./ar\": 49088,\n\t\"./ar-dz\": 17055,\n\t\"./ar-dz.js\": 17055,\n\t\"./ar-kw\": 40019,\n\t\"./ar-kw.js\": 40019,\n\t\"./ar-ly\": 71610,\n\t\"./ar-ly.js\": 71610,\n\t\"./ar-ma\": 21603,\n\t\"./ar-ma.js\": 21603,\n\t\"./ar-sa\": 32897,\n\t\"./ar-sa.js\": 32897,\n\t\"./ar-tn\": 70171,\n\t\"./ar-tn.js\": 70171,\n\t\"./ar.js\": 49088,\n\t\"./az\": 36232,\n\t\"./az.js\": 36232,\n\t\"./be\": 5186,\n\t\"./be.js\": 5186,\n\t\"./bg\": 75096,\n\t\"./bg.js\": 75096,\n\t\"./bm\": 70330,\n\t\"./bm.js\": 70330,\n\t\"./bn\": 97351,\n\t\"./bn-bd\": 93626,\n\t\"./bn-bd.js\": 93626,\n\t\"./bn.js\": 97351,\n\t\"./bo\": 90480,\n\t\"./bo.js\": 90480,\n\t\"./br\": 96187,\n\t\"./br.js\": 96187,\n\t\"./bs\": 96660,\n\t\"./bs.js\": 96660,\n\t\"./ca\": 86271,\n\t\"./ca.js\": 86271,\n\t\"./cs\": 881,\n\t\"./cs.js\": 881,\n\t\"./cv\": 34094,\n\t\"./cv.js\": 34094,\n\t\"./cy\": 84967,\n\t\"./cy.js\": 84967,\n\t\"./da\": 55636,\n\t\"./da.js\": 55636,\n\t\"./de\": 64488,\n\t\"./de-at\": 10132,\n\t\"./de-at.js\": 10132,\n\t\"./de-ch\": 81074,\n\t\"./de-ch.js\": 81074,\n\t\"./de.js\": 64488,\n\t\"./dv\": 13713,\n\t\"./dv.js\": 13713,\n\t\"./el\": 47322,\n\t\"./el.js\": 47322,\n\t\"./en-au\": 98979,\n\t\"./en-au.js\": 98979,\n\t\"./en-ca\": 3393,\n\t\"./en-ca.js\": 3393,\n\t\"./en-gb\": 60124,\n\t\"./en-gb.js\": 60124,\n\t\"./en-ie\": 18027,\n\t\"./en-ie.js\": 18027,\n\t\"./en-il\": 2364,\n\t\"./en-il.js\": 2364,\n\t\"./en-in\": 64358,\n\t\"./en-in.js\": 64358,\n\t\"./en-nz\": 42741,\n\t\"./en-nz.js\": 42741,\n\t\"./en-sg\": 96363,\n\t\"./en-sg.js\": 96363,\n\t\"./eo\": 51047,\n\t\"./eo.js\": 51047,\n\t\"./es\": 73179,\n\t\"./es-do\": 12513,\n\t\"./es-do.js\": 12513,\n\t\"./es-mx\": 78577,\n\t\"./es-mx.js\": 78577,\n\t\"./es-us\": 77144,\n\t\"./es-us.js\": 77144,\n\t\"./es.js\": 73179,\n\t\"./et\": 45554,\n\t\"./et.js\": 45554,\n\t\"./eu\": 52833,\n\t\"./eu.js\": 52833,\n\t\"./fa\": 21778,\n\t\"./fa.js\": 21778,\n\t\"./fi\": 5546,\n\t\"./fi.js\": 5546,\n\t\"./fil\": 54980,\n\t\"./fil.js\": 54980,\n\t\"./fo\": 1132,\n\t\"./fo.js\": 1132,\n\t\"./fr\": 43055,\n\t\"./fr-ca\": 23380,\n\t\"./fr-ca.js\": 23380,\n\t\"./fr-ch\": 11923,\n\t\"./fr-ch.js\": 11923,\n\t\"./fr.js\": 43055,\n\t\"./fy\": 75130,\n\t\"./fy.js\": 75130,\n\t\"./ga\": 48419,\n\t\"./ga.js\": 48419,\n\t\"./gd\": 91056,\n\t\"./gd.js\": 91056,\n\t\"./gl\": 49496,\n\t\"./gl.js\": 49496,\n\t\"./gom-deva\": 43825,\n\t\"./gom-deva.js\": 43825,\n\t\"./gom-latn\": 682,\n\t\"./gom-latn.js\": 682,\n\t\"./gu\": 59351,\n\t\"./gu.js\": 59351,\n\t\"./he\": 14228,\n\t\"./he.js\": 14228,\n\t\"./hi\": 77568,\n\t\"./hi.js\": 77568,\n\t\"./hr\": 6993,\n\t\"./hr.js\": 6993,\n\t\"./hu\": 76868,\n\t\"./hu.js\": 76868,\n\t\"./hy-am\": 32507,\n\t\"./hy-am.js\": 32507,\n\t\"./id\": 45038,\n\t\"./id.js\": 45038,\n\t\"./is\": 62527,\n\t\"./is.js\": 62527,\n\t\"./it\": 72030,\n\t\"./it-ch\": 74152,\n\t\"./it-ch.js\": 74152,\n\t\"./it.js\": 72030,\n\t\"./ja\": 89814,\n\t\"./ja.js\": 89814,\n\t\"./jv\": 72135,\n\t\"./jv.js\": 72135,\n\t\"./ka\": 25383,\n\t\"./ka.js\": 25383,\n\t\"./kk\": 57649,\n\t\"./kk.js\": 57649,\n\t\"./km\": 75723,\n\t\"./km.js\": 75723,\n\t\"./kn\": 74510,\n\t\"./kn.js\": 74510,\n\t\"./ko\": 35213,\n\t\"./ko.js\": 35213,\n\t\"./ku\": 13235,\n\t\"./ku.js\": 13235,\n\t\"./ky\": 43039,\n\t\"./ky.js\": 43039,\n\t\"./lb\": 86277,\n\t\"./lb.js\": 86277,\n\t\"./lo\": 2594,\n\t\"./lo.js\": 2594,\n\t\"./lt\": 30775,\n\t\"./lt.js\": 30775,\n\t\"./lv\": 61337,\n\t\"./lv.js\": 61337,\n\t\"./me\": 89145,\n\t\"./me.js\": 89145,\n\t\"./mi\": 29277,\n\t\"./mi.js\": 29277,\n\t\"./mk\": 64859,\n\t\"./mk.js\": 64859,\n\t\"./ml\": 8946,\n\t\"./ml.js\": 8946,\n\t\"./mn\": 49064,\n\t\"./mn.js\": 49064,\n\t\"./mr\": 61052,\n\t\"./mr.js\": 61052,\n\t\"./ms\": 82339,\n\t\"./ms-my\": 73482,\n\t\"./ms-my.js\": 73482,\n\t\"./ms.js\": 82339,\n\t\"./mt\": 62298,\n\t\"./mt.js\": 62298,\n\t\"./my\": 59501,\n\t\"./my.js\": 59501,\n\t\"./nb\": 35623,\n\t\"./nb.js\": 35623,\n\t\"./ne\": 41977,\n\t\"./ne.js\": 41977,\n\t\"./nl\": 29101,\n\t\"./nl-be\": 28935,\n\t\"./nl-be.js\": 28935,\n\t\"./nl.js\": 29101,\n\t\"./nn\": 52715,\n\t\"./nn.js\": 52715,\n\t\"./oc-lnc\": 8611,\n\t\"./oc-lnc.js\": 8611,\n\t\"./pa-in\": 49574,\n\t\"./pa-in.js\": 49574,\n\t\"./pl\": 39307,\n\t\"./pl.js\": 39307,\n\t\"./pt\": 59539,\n\t\"./pt-br\": 94536,\n\t\"./pt-br.js\": 94536,\n\t\"./pt.js\": 59539,\n\t\"./ro\": 99232,\n\t\"./ro.js\": 99232,\n\t\"./ru\": 60770,\n\t\"./ru.js\": 60770,\n\t\"./sd\": 51780,\n\t\"./sd.js\": 51780,\n\t\"./se\": 96184,\n\t\"./se.js\": 96184,\n\t\"./si\": 40359,\n\t\"./si.js\": 40359,\n\t\"./sk\": 83849,\n\t\"./sk.js\": 83849,\n\t\"./sl\": 35388,\n\t\"./sl.js\": 35388,\n\t\"./sq\": 58015,\n\t\"./sq.js\": 58015,\n\t\"./sr\": 99634,\n\t\"./sr-cyrl\": 8125,\n\t\"./sr-cyrl.js\": 8125,\n\t\"./sr.js\": 99634,\n\t\"./ss\": 53537,\n\t\"./ss.js\": 53537,\n\t\"./sv\": 70398,\n\t\"./sv.js\": 70398,\n\t\"./sw\": 3613,\n\t\"./sw.js\": 3613,\n\t\"./ta\": 64612,\n\t\"./ta.js\": 64612,\n\t\"./te\": 54232,\n\t\"./te.js\": 54232,\n\t\"./tet\": 64646,\n\t\"./tet.js\": 64646,\n\t\"./tg\": 26850,\n\t\"./tg.js\": 26850,\n\t\"./th\": 69507,\n\t\"./th.js\": 69507,\n\t\"./tk\": 81926,\n\t\"./tk.js\": 81926,\n\t\"./tl-ph\": 3964,\n\t\"./tl-ph.js\": 3964,\n\t\"./tlh\": 28967,\n\t\"./tlh.js\": 28967,\n\t\"./tr\": 16445,\n\t\"./tr.js\": 16445,\n\t\"./tzl\": 54125,\n\t\"./tzl.js\": 54125,\n\t\"./tzm\": 4814,\n\t\"./tzm-latn\": 48918,\n\t\"./tzm-latn.js\": 48918,\n\t\"./tzm.js\": 4814,\n\t\"./ug-cn\": 61033,\n\t\"./ug-cn.js\": 61033,\n\t\"./uk\": 8883,\n\t\"./uk.js\": 8883,\n\t\"./ur\": 89924,\n\t\"./ur.js\": 89924,\n\t\"./uz\": 73532,\n\t\"./uz-latn\": 47748,\n\t\"./uz-latn.js\": 47748,\n\t\"./uz.js\": 73532,\n\t\"./vi\": 44378,\n\t\"./vi.js\": 44378,\n\t\"./x-pseudo\": 63434,\n\t\"./x-pseudo.js\": 63434,\n\t\"./yo\": 4659,\n\t\"./yo.js\": 4659,\n\t\"./zh-cn\": 8915,\n\t\"./zh-cn.js\": 8915,\n\t\"./zh-hk\": 64539,\n\t\"./zh-hk.js\": 64539,\n\t\"./zh-mo\": 25334,\n\t\"./zh-mo.js\": 25334,\n\t\"./zh-tw\": 16419,\n\t\"./zh-tw.js\": 16419\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 19835;","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-autocomplete',{ref:\"clientSearchField\",style:(_vm.autocompleteStyle),attrs:{\"items\":_vm.clientSearch.items,\"item-value\":\"ID\",\"item-text\":_vm.clientFullname,\"return-object\":_vm.returnObject,\"hide-details\":_vm.hideDetails,\"disabled\":_vm.disabled,\"clearable\":_vm.clearable,\"search-input\":_vm.clientSearch.search,\"loading\":_vm.clientSearch.loading,\"autocomplete\":\"off\",\"no-data-text\":\"Aucun client\",\"multiple\":_vm.multiple,\"chips\":_vm.chips,\"deletable-chips\":_vm.deletableChips,\"prepend-icon\":_vm.icon,\"prepend-inner-icon\":_vm.prependInnerIcon,\"label\":_vm.fieldLabel,\"dense\":_vm.dense,\"filled\":_vm.filled,\"solo\":_vm.solo,\"no-filter\":\"\",\"attach\":_vm.attach,\"rules\":_vm.rules || (_vm.mandatory ? [_vm.requiredRule] : []),\"readonly\":_vm.readonly},on:{\"update:searchInput\":function($event){return _vm.$set(_vm.clientSearch, \"search\", $event)},\"update:search-input\":function($event){return _vm.$set(_vm.clientSearch, \"search\", $event)},\"change\":_vm.onChange,\"click:clear\":_vm.onClear},scopedSlots:_vm._u([(_vm.showDetails)?{key:\"selection\",fn:function({item}){return [_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(item.Firstname + ' ' + item.Lastname))]),(item.BirthDate)?_c('v-list-item-subtitle',[_vm._v(_vm._s(item.BirthDate ? _vm.formatDate(item.BirthDate, 'DD/MM/YYYY') : ''))]):_vm._e(),(item.Contact.Email)?_c('v-list-item-subtitle',[_vm._v(_vm._s(item.Contact.Email ? item.Contact.Email : ''))]):_vm._e()],1)]}}:null,(_vm.showDetails)?{key:\"item\",fn:function({item}){return [_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(item.Firstname + ' ' + item.Lastname))]),(item.BirthDate)?_c('v-list-item-subtitle',[_vm._v(_vm._s(item.BirthDate ? _vm.formatDate(item.BirthDate, 'DD/MM/YYYY') : ''))]):_vm._e(),(item.Contact.Email)?_c('v-list-item-subtitle',[_vm._v(_vm._s(item.Contact.Email ? item.Contact.Email : ''))]):_vm._e()],1)]}}:null],null,true),model:{value:(_vm.val),callback:function ($$v) {_vm.val=$$v},expression:\"val\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientAutocomplete.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientAutocomplete.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClientAutocomplete.vue?vue&type=template&id=0f0ed636\"\nimport script from \"./ClientAutocomplete.vue?vue&type=script&lang=js\"\nexport * from \"./ClientAutocomplete.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.client)?_c('div',[_c('v-form',{ref:\"form\"},[_c('div',{staticClass:\"mb-3\",attrs:{\"layout\":\"row\",\"layout-align\":\"space-between center\"}},[(!_vm.hasQuotationAccess && !_vm.clientType)?_c('v-btn-toggle',{attrs:{\"mandatory\":\"\",\"color\":\"primary\"},model:{value:(_vm.client.ClientType),callback:function ($$v) {_vm.$set(_vm.client, \"ClientType\", $$v)},expression:\"client.ClientType\"}},_vm._l((_vm.clientTypes),function(i){return _c('v-btn',{key:i.value,attrs:{\"value\":i.value,\"readonly\":_vm.readonly}},[_c('v-icon',{attrs:{\"color\":_vm.client.ClientType === i.value ? 'primary' : 'black',\"left\":\"\"}},[_vm._v(\" \"+_vm._s(i.icon)+\" \")]),_vm._v(\" \"+_vm._s(i.text)+\" \")],1)}),1):_vm._e(),_c('v-spacer'),(!_vm.wvEnabled() && !_vm.client.Deleted)?_c('v-menu',{attrs:{\"bottom\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({on}){return [_c('v-btn',_vm._g({attrs:{\"color\":\"primary\",\"depressed\":\"\",\"outlined\":\"\"}},on),[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-wrench \")]),_vm._v(\" Outils \"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-menu-down \")])],1)]}}],null,false,1272823230)},[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){return _vm.openAccountFusionDialog()}}},[_c('v-list-item-icon',[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\" mdi-account-convert \")])],1),_c('v-list-item-title',[_vm._v(\" Fusionner avec ... \")])],1)],1)],1):_vm._e()],1),(_vm.client.ClientType === 2)?_c('v-subheader',[_vm._v(\"Informations de l'entité morale\")]):_vm._e(),(_vm.client.ClientType === 2)?_c('div',{attrs:{\"layout\":\"column\"}},[_c('v-text-field',{attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"prepend-icon\":\"mdi-city\",\"label\":\"Raison sociale*\",\"rules\":[_vm.rules.required],\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.Name),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"Name\", $$v)},expression:\"client.OrgInfo.Name\"}}),_c('v-select',{attrs:{\"items\":_vm.orgTypes,\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"prepend-icon\":\"mdi-account-tie-outline\",\"label\":\"Type de client*\",\"rules\":[_vm.rules.required],\"menu-props\":{ 'offset-y': true },\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.Type),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"Type\", $$v)},expression:\"client.OrgInfo.Type\"}}),_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-text-field',{staticClass:\"mr-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"prepend-icon\":\"mdi-bank-outline\",\"label\":'TVA INTRA' + (_vm.client.OrgInfo.Type === 1 ? '*' : ''),\"rules\":_vm.client.OrgInfo.Type === 1 ? [_vm.rules.required] : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.TVA),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"TVA\", $$v)},expression:\"client.OrgInfo.TVA\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"label\":'SIRET' + (_vm.client.OrgInfo.Type === 1 ? '*' : ''),\"rules\":_vm.client.OrgInfo.Type === 1 ? [_vm.rules.required] : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.SIRET),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"SIRET\", $$v)},expression:\"client.OrgInfo.SIRET\"}})],1),_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-text-field',{staticClass:\"mr-1 ml-8\",attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"label\":'RCS' + (_vm.client.OrgInfo.Type === 1 ? '*' : ''),\"rules\":_vm.client.OrgInfo.Type === 1 ? [_vm.rules.required] : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.RCS),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"RCS\", $$v)},expression:\"client.OrgInfo.RCS\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"label\":'NAF' + (_vm.client.OrgInfo.Type === 1 ? '*' : ''),\"rules\":_vm.client.OrgInfo.Type === 1 ? [_vm.rules.required] : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.NAF),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"NAF\", $$v)},expression:\"client.OrgInfo.NAF\"}})],1)],1):_vm._e(),(_vm.client.ClientType === 1)?_c('v-subheader',[_vm._v(\"Informations générales\")]):(_vm.client.ClientType === 2)?_c('v-subheader',[_vm._v(\"Personne de contact\")]):_vm._e(),_c('div',{attrs:{\"layout\":\"row\"}},[_c('div',{attrs:{\"flex\":\"20\"}},[_c('v-select',{staticClass:\"mr-1\",attrs:{\"items\":_vm.clientsGenders,\"prepend-icon\":\"mdi-account\",\"label\":\"Civilité\",\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"menu-props\":{ 'offset-y': true },\"readonly\":_vm.readonly},scopedSlots:_vm._u([{key:\"item\",fn:function({ on, item }){return [_c('v-list-item',_vm._g({},on),[_vm._v(_vm._s(item.civilite))])]}}],null,false,2602572837),model:{value:(_vm.client.Sex),callback:function ($$v) {_vm.$set(_vm.client, \"Sex\", $$v)},expression:\"client.Sex\"}})],1),_c('v-text-field',{staticClass:\"ml-1 mr-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'Prénom' +\n (_vm.client.ClientType === 1 || _vm.hasQuotationAccess ? '*' : ''),\"rules\":_vm.client.ClientType === 1 || _vm.hasQuotationAccess\n ? [_vm.rules.required]\n : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.Firstname),callback:function ($$v) {_vm.$set(_vm.client, \"Firstname\", $$v)},expression:\"client.Firstname\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'Nom' + (_vm.client.ClientType === 1 || _vm.hasQuotationAccess ? '*' : ''),\"rules\":_vm.client.ClientType === 1 || _vm.hasQuotationAccess\n ? [_vm.rules.required]\n : [],\"readonly\":_vm.readonly},model:{value:(_vm.client.Lastname),callback:function ($$v) {_vm.$set(_vm.client, \"Lastname\", $$v)},expression:\"client.Lastname\"}})],1),_c('div',{attrs:{\"layout\":\"row\"}},[(_vm.client.ClientType === 1)?_c('v-menu',{ref:\"menuBirthday\",attrs:{\"close-on-content-click\":false,\"transition\":\"offset-y-transition\",\"offset-y\":\"\",\"attach\":\"\",\"max-width\":\"290px\",\"min-width\":\"290px\",\"readonly\":_vm.readonly},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-text-field',_vm._g({attrs:{\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"label\":'Date de naissance' + (_vm.isClientFieldRequired('BirthDate') ? '*' : ''),\"rules\":[_vm.isClientFieldRule('BirthDate')],\"prepend-icon\":\"mdi-calendar\",\"readonly\":_vm.readonly},on:{\"blur\":function($event){_vm.birthdateDatepicker = _vm.parseDate(_vm.birthdateFormatted)},\"click:clear\":function($event){_vm.birthdateDatepicker = ''}},model:{value:(_vm.birthdateFormatted),callback:function ($$v) {_vm.birthdateFormatted=$$v},expression:\"birthdateFormatted\"}},on))]}}],null,false,382540806),model:{value:(_vm.menuBirthday),callback:function ($$v) {_vm.menuBirthday=$$v},expression:\"menuBirthday\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\",\"first-day-of-week\":1,\"readonly\":_vm.readonly},on:{\"input\":function($event){_vm.menu1 = false}},model:{value:(_vm.birthdateDatepicker),callback:function ($$v) {_vm.birthdateDatepicker=$$v},expression:\"birthdateDatepicker\"}})],1):_vm._e()],1),(_vm.client.ClientType === 2 && _vm.hasRight('admin:quotations'))?_c('div',[_c('v-subheader',[_vm._v(\"Compte pro et devis\")]),_c('v-switch',{staticClass:\"mb-2\",attrs:{\"label\":\"Accès aux devis\",\"hint\":\"Permet la création de devis et active l'onglet devis pour ce client\",\"persistent-hint\":\"\",\"inset\":\"\"},model:{value:(_vm.client.OrgInfo.QuotationAccess),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"QuotationAccess\", $$v)},expression:\"client.OrgInfo.QuotationAccess\"}}),_c('v-select',{attrs:{\"items\":_vm.quotationsSalesRepresentatives,\"item-value\":\"ID\",\"item-text\":(i) => {\n return i.Firstname + ' ' + i.Lastname\n },\"loading\":_vm.loadingQuotationsSalesRepresentatives,\"rules\":_vm.client.OrgInfo.QuotationAccess ? [_vm.rules.required] : [],\"prepend-icon\":\"mdi-account-tie-hat-outline\",\"label\":'Commercial référent pour ce client' +\n (_vm.client.OrgInfo.QuotationAccess ? ' *' : ''),\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"menu-props\":{ 'offset-y': true, bottom: true },\"readonly\":_vm.readonly},model:{value:(_vm.client.OrgInfo.QuotationSalesRepresentativeID),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"QuotationSalesRepresentativeID\", $$v)},expression:\"client.OrgInfo.QuotationSalesRepresentativeID\"}}),_c('v-select',{attrs:{\"items\":_vm.quotationsProductsCatalogues,\"item-value\":\"ID\",\"item-text\":\"Label.FR\",\"loading\":_vm.loadingQuotationsProductsCatalogues,\"rules\":_vm.client.OrgInfo.QuotationAccess ? [_vm.rules.required] : [],\"prepend-icon\":\"mdi-book-open-page-variant-outline\",\"label\":'Catalogue de produits autorisés pour les devis' +\n (_vm.client.OrgInfo.QuotationAccess ? ' *' : ''),\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"menu-props\":{ 'offset-y': true, bottom: true },\"readonly\":_vm.readonly},scopedSlots:_vm._u([{key:\"no-data\",fn:function(){return [_c('v-list-item',[_vm._v(\" Il n'existe aucun catalogue pour l'instant \"),(!_vm.readonly)?_c('a',{staticClass:\"ml-6\",on:{\"click\":function($event){return _vm.$router.push({\n name: 'quotation-settings',\n params: { tab: 'catalogs' }\n })}}},[_vm._v(\"Créer un catalogue\")]):_vm._e()])]},proxy:true}],null,false,2197328685),model:{value:(_vm.client.OrgInfo.QuotationProductsCatalogueID),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"QuotationProductsCatalogueID\", $$v)},expression:\"client.OrgInfo.QuotationProductsCatalogueID\"}}),_c('v-select',{attrs:{\"items\":_vm.quotationsPricings,\"item-value\":\"ID\",\"item-text\":\"Label.FR\",\"loading\":_vm.loadingQuotationsPricings,\"rules\":_vm.client.OrgInfo.QuotationAccess ? [_vm.rules.required] : [],\"prepend-icon\":\"mdi-cash\",\"label\":'Tarification à appliquer aux produits du catalogue' +\n (_vm.client.OrgInfo.QuotationAccess ? ' *' : ''),\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"menu-props\":{ 'offset-y': true, bottom: true },\"readonly\":_vm.readonly},scopedSlots:_vm._u([{key:\"no-data\",fn:function(){return [_c('v-list-item',[_vm._v(\" Il n'existe aucun tarif pour l'instant \"),(!_vm.readonly)?_c('a',{staticClass:\"ml-6\",on:{\"click\":function($event){return _vm.$router.push({\n name: 'quotation-settings',\n params: { tab: 'pricings' }\n })}}},[_vm._v(\"Créer un tarif\")]):_vm._e()])]},proxy:true}],null,false,2889616822),model:{value:(_vm.client.OrgInfo.QuotationPricingTypeID),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"QuotationPricingTypeID\", $$v)},expression:\"client.OrgInfo.QuotationPricingTypeID\"}})],1):_vm._e(),_c('v-subheader',[_vm._v(\"Adresse\")]),_c('v-menu',{attrs:{\"attach\":\"\",\"bottom\":\"\",\"offset-y\":\"\",\"nudge-top\":\"30\",\"nudge-right\":\"30\",\"nudge-width\":\"-30\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({}){return [_c('v-text-field',{attrs:{\"value\":_vm.client.Address.Address,\"rules\":_vm.hasQuotationAccess ? [_vm.rules.required] : [_vm.isClientFieldRule('Address.Address')],\"dense\":\"\",\"label\":'Numéro et rue' + ((_vm.isClientFieldRequired('Address.Address')) ? '*' : ''),\"prepend-icon\":\"mdi-home-city-outline\",\"filled\":\"\",\"readonly\":_vm.readonly},on:{\"input\":_vm.searchAddressDebounced}})]}}],null,false,3440792514),model:{value:(_vm.showAddressPossibilities),callback:function ($$v) {_vm.showAddressPossibilities=$$v},expression:\"showAddressPossibilities\"}},[_c('v-list',{attrs:{\"two-line\":\"\"}},_vm._l((_vm.possibleAddresses),function(addr,idx){return _c('v-list-item',{key:idx,on:{\"click\":function($event){return _vm.selectAddressFromAPI(addr, idx)}}},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(addr.Address))]),_c('v-list-item-subtitle',[_vm._v(_vm._s(addr.City)+\", \"+_vm._s(addr._context))])],1)],1)}),1)],1),_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-text-field',{staticClass:\"mr-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'Code Postal' + (_vm.hasQuotationAccess || _vm.isClientFieldRequired('Address.PostalCode') ? '*' : ''),\"prepend-icon\":\"mdi-map-marker\",\"rules\":_vm.hasQuotationAccess ? [_vm.rules.required] : [_vm.isClientFieldRule('Address.PostalCode')],\"readonly\":_vm.readonly},model:{value:(_vm.client.Address.PostalCode),callback:function ($$v) {_vm.$set(_vm.client.Address, \"PostalCode\", $$v)},expression:\"client.Address.PostalCode\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'Ville' + (_vm.hasQuotationAccess || _vm.isClientFieldRequired('Address.City') ? '*' : ''),\"rules\":_vm.hasQuotationAccess ? [_vm.rules.required] : [_vm.isClientFieldRule('Address.City')],\"readonly\":_vm.readonly},model:{value:(_vm.client.Address.City),callback:function ($$v) {_vm.$set(_vm.client.Address, \"City\", $$v)},expression:\"client.Address.City\"}}),_c('v-autocomplete',{staticClass:\"ml-1\",attrs:{\"items\":_vm.countries(true),\"filled\":\"\",\"dense\":\"\",\"label\":'Pays' + (_vm.hasQuotationAccess || _vm.isClientFieldRequired('Address.Country') ? '*' : ''),\"rules\":_vm.hasQuotationAccess ? [_vm.rules.required] : [_vm.isClientFieldRule('Address.Country')],\"readonly\":_vm.readonly},model:{value:(_vm.client.Address.Country),callback:function ($$v) {_vm.$set(_vm.client.Address, \"Country\", $$v)},expression:\"client.Address.Country\"}})],1),_c('v-subheader',[_vm._v(\"Contact\")]),_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-text-field',{staticClass:\"mr-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'Téléphone fixe' + (_vm.isClientFieldRequired('Contact.Phone') ? '*' : ''),\"rules\":[_vm.isClientFieldRule('Contact.Phone')],\"prepend-icon\":\"mdi-phone\",\"readonly\":_vm.readonly},model:{value:(_vm.client.Contact.Phone),callback:function ($$v) {_vm.$set(_vm.client.Contact, \"Phone\", $$v)},expression:\"client.Contact.Phone\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"rules\":[_vm.isClientFieldRule('Contact.Mobile')],\"label\":'Téléphone mobile' + (_vm.isClientFieldRequired('Contact.Mobile') ? '*' : ''),\"readonly\":_vm.readonly},model:{value:(_vm.client.Contact.Mobile),callback:function ($$v) {_vm.$set(_vm.client.Contact, \"Mobile\", $$v)},expression:\"client.Contact.Mobile\"}})],1),_c('v-text-field',{attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":'E-mail' + (_vm.hasQuotationAccess || _vm.isClientFieldRequired('Contact.Email') ? '*' : ''),\"prepend-icon\":\"mdi-email\",\"rules\":_vm.hasQuotationAccess ? [_vm.rules.required] : [_vm.isClientFieldRule('Contact.Email')],\"readonly\":_vm.readonly},on:{\"focusout\":_vm.checkMail,\"focusin\":function($event){_vm.mailValidation.Status = null}},model:{value:(_vm.client.Contact.Email),callback:function ($$v) {_vm.$set(_vm.client.Contact, \"Email\", $$v)},expression:\"client.Contact.Email\"}},[(_vm.mailValidationLoading)?_c('div',{staticClass:\"d-flex align-center\",attrs:{\"slot\":\"append\"},slot:\"append\"},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"size\":\"25\",\"color\":\"primary\"}}),_c('span',{staticClass:\"ml-2 primary--text\"},[_vm._v(\"Vérification...\")])],1):(_vm.mailValidation.Status !== null)?_c('div',{attrs:{\"slot\":\"append\",\"layout\":\"row\",\"layout-align\":\"center center\"},slot:\"append\"},[(_vm.mailValidation.Status === _vm.C.MAIL_STATUS_OK)?_c('v-icon',{attrs:{\"color\":\"success\"}},[_vm._v(\"mdi-check\")]):(_vm.mailValidation.Status === _vm.C.MAIL_STATUS_UNDETERMINED)?_c('v-icon',{attrs:{\"color\":\"orange\"}},[_vm._v(\"mdi-alert\")]):_c('v-icon',{attrs:{\"color\":\"error\"}},[_vm._v(\"mdi-close\")]),_c('span',{staticClass:\"ml-2\",class:{\n 'success--text': _vm.mailValidation.Status === _vm.C.MAIL_STATUS_OK,\n 'orange--text':\n _vm.mailValidation.Status === _vm.C.MAIL_STATUS_UNDETERMINED,\n 'error--text':\n _vm.mailValidation.Status !== _vm.C.MAIL_STATUS_OK &&\n _vm.mailValidation.Status !== _vm.C.MAIL_STATUS_UNDETERMINED\n }},[_vm._v(_vm._s(_vm.mailValidation.Msg))])],1):_vm._e()]),_c('v-textarea',{attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":\"Commentaires\",\"prepend-icon\":\"mdi-comment-text\",\"rows\":\"3\",\"readonly\":_vm.readonly},model:{value:(_vm.client.Comment),callback:function ($$v) {_vm.$set(_vm.client, \"Comment\", $$v)},expression:\"client.Comment\"}}),(!_vm.hasQuotationAccess)?_c('v-subheader',[_vm._v(\"Autres\")]):_vm._e(),(!_vm.hasQuotationAccess)?_c('div',{attrs:{\"layout\":\"row\"}},[_c('div',{attrs:{\"flex\":\"48\"}},[_c('v-select',{attrs:{\"value\":_vm.currentClientPricing.id,\"items\":_vm.pricingOptions,\"label\":\"Tarification\",\"filled\":\"\",\"dense\":\"\",\"attach\":\"\",\"prepend-icon\":\"mdi-currency-eur\",\"menu-props\":{ 'offset-y': true, top: true },\"persistent-hint\":!!_vm.currentClientPricing.expiration,\"hint\":_vm.currentClientPricing.expiration\n ? `Valable jusqu'au ${_vm.formatDate(\n _vm.currentClientPricing.expiration,\n 'DD/MM/YYYY'\n )}`\n : null,\"readonly\":_vm.readonly},on:{\"input\":_vm._updateClientPricing}})],1),_c('div',{attrs:{\"flex\":\"48\"}},[_c('client-autocomplete',{staticClass:\"ml-3\",attrs:{\"label\":\"Compte parent\",\"external-filters\":{ Parent: 'empty' },\"rules\":[_vm.isValidParent],\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"disabled\":_vm.isParent !== false,\"show-details\":\"\",\"readonly\":_vm.readonly},model:{value:(_vm.client.Parent),callback:function ($$v) {_vm.$set(_vm.client, \"Parent\", $$v)},expression:\"client.Parent\"}})],1)]):_vm._e(),(_vm.displayLockersFields && !_vm.hasQuotationAccess)?_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-icon',{staticClass:\"mb-5\",attrs:{\"left\":\"\"}},[_vm._v(\"mdi-lock-outline\")]),_c('v-text-field',{attrs:{\"name\":\"userlockercode\",\"autocomplete\":\"new-password\",\"label\":\"Code de l'usager pour ouvrir et fermer les casiers\",\"hint\":\"Vous pouvez modifier le code de l'usager ici si besoin\",\"type\":_vm.lockerCodeReveal ? 'text' : 'password',\"rules\":[_vm.rules.userCodeFormat, _vm.rules.userCodeMin, _vm.rules.userCodeMax],\"filled\":\"\",\"dense\":\"\",\"readonly\":_vm.readonly},model:{value:(_vm.client.LockerCode),callback:function ($$v) {_vm.$set(_vm.client, \"LockerCode\", $$v)},expression:\"client.LockerCode\"}}),_c('v-btn',{staticClass:\"mt-3 ml-3\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.lockerCodeReveal = !_vm.lockerCodeReveal}}},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.lockerCodeReveal ? 'mdi-eye' : 'mdi-eye-off')+\" \")])],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"width\":\"900px\",\"persistent\":\"\"},model:{value:(_vm.accountFusionDialog),callback:function ($$v) {_vm.accountFusionDialog=$$v},expression:\"accountFusionDialog\"}},[_c('client-fusion',{attrs:{\"fusionned\":_vm.client},on:{\"cancel\":function($event){_vm.accountFusionDialog = false},\"merged\":_vm.onMerged}})],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_vm._v(\"Fusionner deux comptes\")]),_c('v-card-text',[_c('div',{staticClass:\"d-flex align-center mb-4\"},[_c('span',{staticClass:\"mr-2\"},[_vm._v(\"Supprimer et/ou transférer les informations de \"),_c('strong',[_vm._v(_vm._s(_vm.clientFullname(_vm.fusionned)))]),_vm._v(\" vers\")]),_c('client-autocomplete',{attrs:{\"solo\":\"\",\"return-object\":\"\",\"hide-details\":\"\",\"readonly\":_vm.step >1,\"ignore\":[_vm.fusionned.ID]},model:{value:(_vm.target),callback:function ($$v) {_vm.target=$$v},expression:\"target\"}})],1),(_vm.step === 1)?_c('span',[_vm._v(\" Sélectionnez ci-dessous les informations que vous souhaitez conserver : \")]):(_vm.step === 2)?_c('span',[_vm._v(\" Les abonnements, ventes, mandats de prélèvement et bons suivants de \"),_c('strong',[_vm._v(_vm._s(_vm.accounts.fusionned.Firstname)+\" \"+_vm._s(_vm.accounts.fusionned.Lastname))]),_vm._v(\" seront intégrés dans le compte de \"),_c('strong',[_vm._v(_vm._s(_vm.accounts.target.Firstname)+\" \"+_vm._s(_vm.accounts.target.Lastname))]),_vm._v(\" : \")]):_vm._e(),_c('v-row',_vm._l((_vm.accounts),function(account,accountKey){return _c('v-col',{key:accountKey,attrs:{\"cols\":\"6\"}},[_c('v-card',{staticClass:\"fill-height\",attrs:{\"layout\":\"column\"}},[(!account)?_c('v-card-text',{staticClass:\"grey--text fill-height text-center\",attrs:{\"layout\":\"row\",\"layout-align\":\"center center\"}},[_vm._v(\" Utilisez le champ ci-dessus pour sélectionner un client cible dans lequel fusionner les données du compte actuel. \")]):_c('div',{staticClass:\"fill-height\",attrs:{\"layout\":\"column\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(account.Firstname)+\" \"+_vm._s(account.Lastname)+\" \"),_c('v-spacer'),(_vm.step === 1)?_c('v-btn',{attrs:{\"outlined\":\"\"},on:{\"click\":function($event){return _vm.selectAllFrom(accountKey)}}},[_vm._v(\" Tout cocher \")]):_vm._e()],1),(_vm.step === 1)?_c('v-card-text',{staticClass:\"flex-grow-1 flex-shrink-0\",attrs:{\"layout\":\"column\"}},[_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Information générales\")]),_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('Firstname', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('Firstname', accountKey)}}},[_vm._v(\" \"+_vm._s(account.Firstname)+\" \")]),_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('Lastname', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('Lastname', accountKey)}}},[_vm._v(\" \"+_vm._s(account.Lastname)+\" \")]),(account.BirthDate && !_vm.isZeroDate(account.BirthDate))?_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('BirthDate', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('BirthDate', accountKey)}}},[_vm._v(\" \"+_vm._s(_vm.formatDate(account.BirthDate))+\" \")]):_c('span',[_vm._v(\"Pas de date de naissance\")])],1),_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Adresse:\")]),(account.Address.Address)?_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('Address', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('Address', accountKey)}}},[_vm._v(\" \"+_vm._s(account.Address.Address)+\" \"),(account.Address.Address)?_c('br'):_vm._e(),_vm._v(\" \"+_vm._s(account.Address.PostalCode)+\" \"+_vm._s(account.Address.City)+\" \")]):_c('span',[_vm._v(\"Aucune adresse\")])],1),_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Contact:\")]),(account.Contact.Email)?_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('Contact.Email', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('Contact.Email', accountKey)}}},[_vm._v(\" \"+_vm._s(account.Contact.Email)+\" \")]):_c('span',[_vm._v(\"Aucune adresse mail\")])],1),(_vm.pricingsAreNotTheSame)?_c('div',[_c('h4',[_vm._v(\"Tarif:\")]),_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('Pricing', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('Pricing', accountKey)}}},[_vm._v(\" \"+_vm._s(_vm.getPricingLabel(_vm.currentClientPricingID(account, _vm.currentPeriod.ID)))+\" \")])],1):_vm._e(),_c('div',{staticClass:\"text-caption mt-auto pt-6\"},[_vm._v(\" Dernière mise à jour : \"+_vm._s(_vm.formatDateTimeHuman(account.UpdateDate))+\" \")])]):_c('v-card-text',[_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Badges\")]),(_vm.accounts[accountKey].subscriptions.length === 0)?_c('span',[_vm._v(\"Aucun abonnement\")]):_vm._e(),_c('v-list',{staticClass:\"overflow-y-auto\",attrs:{\"two-line\":\"\",\"max-height\":\"200\"}},_vm._l((_vm.accounts[accountKey].subscriptions),function(sub){return _c('v-list-item',{key:sub.ID},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(sub.Product ? sub.Product.Label.FR : 'Produit inconnu')+\" \")]),_c('v-list-item-subtitle',[_vm._v(\" Quantité : \"+_vm._s(sub.Quantity)),(sub.SubscriptionLimitDate)?_c('span',[_vm._v(\", Date d'expiration : \"+_vm._s(_vm.formatDate(sub.SubscriptionLimitDate)))]):_vm._e()])],1)],1)}),1)],1),_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Historique\")]),(!_vm.accounts[accountKey].sales || _vm.accounts[accountKey].sales.length === 0)?_c('span',[_vm._v(\"Aucune vente\")]):_vm._e(),_c('v-list',{staticClass:\"overflow-y-auto\",attrs:{\"two-line\":\"\",\"max-height\":\"200\"}},_vm._l((_vm.accounts[accountKey].sales),function(sale){return _c('v-list-item',{key:sale.ID},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" Vente \"+_vm._s(sale.NumDoc.NumSeq)+\", \"+_vm._s(_vm.formatDateTimeHuman(sale.EndSale))+\" \")]),(sale.lines.length > 0)?_c('v-list-item-subtitle',[(sale.lines.length === 1 && sale.lines[0])?_c('span',[_vm._v(_vm._s(sale.lines[0].Label.FR))]):_vm._e(),_vm._v(\" \"),(sale.lines.length > 1)?_c('span',[_vm._v(\" et \"+_vm._s(sale.lines.length - 1)+\" autres articles\")]):_vm._e(),_vm._v(\" pour \"+_vm._s(sale.Total)+\" \"+_vm._s(_vm.currencySymbol)+\" \")]):_vm._e()],1)],1)}),1)],1),_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Mandats de prélèvement\")]),(!_vm.accounts[accountKey].SddMandate || _vm.accounts[accountKey].SddMandate.length === 0)?_c('span',[_vm._v(\"Aucun mandat de prélèvement\")]):_c('v-btn',{staticClass:\"text-normal ma-1\",attrs:{\"rounded\":\"\",\"color\":\"primary\",\"outlined\":!_vm.isFieldSelectedFor('SddMandate', accountKey)},on:{\"click\":function($event){return _vm.selectFieldFrom('SddMandate', accountKey)}}},_vm._l((_vm.accounts[accountKey].SddMandate),function(mandat,i){return _c('span',{key:mandat.MandateID},[_vm._v(\" \"+_vm._s(_vm.secureIban(mandat.IBAN))+\" \"),(i < _vm.accounts[accountKey].SddMandate.length -1)?_c('span',[_vm._v(\", \")]):_vm._e()])}),0)],1),_c('div',{staticClass:\"mb-2\"},[_c('h4',[_vm._v(\"Bons\")]),(!_vm.accounts[accountKey].vouchers || _vm.accounts[accountKey].vouchers.length === 0)?_c('span',[_vm._v(\"Aucun bon\")]):_vm._e(),_c('v-list',{staticClass:\"overflow-y-auto\",attrs:{\"two-line\":\"\",\"max-height\":\"200\"}},_vm._l((_vm.accounts[accountKey].vouchers),function(voucher){return _c('v-list-item',{key:voucher.ID},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\" \"+_vm._s(voucher.Code)+\", créé le \"+_vm._s(_vm.formatDateTimeHuman(voucher.CreationDate))+\" \")]),_c('v-list-item-subtitle',[_c('v-icon',{attrs:{\"color\":voucher.Used ? 'red' : 'green'}},[_vm._v(\" mdi-circle \")]),(voucher.Used)?_c('span',[_vm._v(\" Utilisé le \"+_vm._s(_vm.formatDateTimeHuman(voucher.UsageDate))+\" \")]):(_vm.isFuture(voucher.EndValidityDate))?_c('span',[_vm._v(\" Valide jusqu'au \"+_vm._s(_vm.formatDate(voucher.EndValidityDate))+\" \")]):_c('span',[_vm._v(\" Expiré le \"+_vm._s(_vm.formatDate(voucher.EndValidityDate))+\" \")])],1)],1)],1)}),1)],1)])],1)],1)],1)}),1),(_vm.hasSameSubscription)?_c('v-switch',{attrs:{\"label\":\"Regrouper les abonnements\"},model:{value:(_vm.regroupSubscriptions),callback:function ($$v) {_vm.regroupSubscriptions=$$v},expression:\"regroupSubscriptions\"}}):_vm._e()],1),_c('v-card-actions',[(_vm.step == 2)?_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.step = 1}}},[_vm._v(\" Retour \")]):_vm._e(),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.cancel}},[_vm._v(\" Annuler \")]),(_vm.step == 1)?_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"disabled\":!_vm.target,\"loading\":_vm.loadingStep2},on:{\"click\":_vm.goToStep2}},[_vm._v(\" Suivant \")]):_vm._e(),(_vm.step == 2)?_c('v-btn',{attrs:{\"color\":\"primary\",\"text\":\"\",\"loading\":_vm.merging},on:{\"click\":_vm.validate}},[_vm._v(\" Valider \")]):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientFusion.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientFusion.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClientFusion.vue?vue&type=template&id=3e0cd266&scoped=true\"\nimport script from \"./ClientFusion.vue?vue&type=script&lang=js\"\nexport * from \"./ClientFusion.vue?vue&type=script&lang=js\"\nimport style0 from \"./ClientFusion.vue?vue&type=style&index=0&id=3e0cd266&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e0cd266\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClientForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClientForm.vue?vue&type=template&id=5be7725f&scoped=true\"\nimport script from \"./ClientForm.vue?vue&type=script&lang=js\"\nexport * from \"./ClientForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./ClientForm.vue?vue&type=style&index=0&id=5be7725f&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5be7725f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-window',{attrs:{\"continuous\":\"\"},model:{value:(_vm.slide),callback:function ($$v) {_vm.slide=$$v},expression:\"slide\"}},[_c('v-window-item',{attrs:{\"value\":1}},[_c('v-list',{staticClass:\"overflow-y-auto\",attrs:{\"max-height\":\"80vh\"}},[_c('v-list-item',{attrs:{\"disabled\":_vm.slide === 2},on:{\"click\":_vm.goToDocs}},[_c('v-list-item-avatar',[(_vm.bookstackLoading)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\"}}):_c('v-icon',[_vm._v(\" mdi-book-open-page-variant-outline \")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Accéder à la documentation\")]),_c('v-list-item-subtitle',[_vm._v(\" Besoin d'aide, d'explications ? Notre documentation en ligne est disponible à tout moment. \")])],1),_c('v-list-item-action',[_c('v-icon',[_vm._v(\" mdi-open-in-new \")])],1)],1),_c('v-list-item',{attrs:{\"disabled\":_vm.slide === 2},on:{\"click\":_vm.goToOdeon}},[_c('v-list-item-avatar',[(_vm.odeonLoading)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\"}}):_c('v-icon',[_vm._v(\" mdi-web \")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Accéder à Odéon\")]),_c('v-list-item-subtitle',[_vm._v(\" Accéder directement à Odéon, notre solution de support. \")])],1),_c('v-list-item-action',[_c('v-icon',[_vm._v(\" mdi-open-in-new \")])],1)],1),(_vm.modules.odeon)?_c('div',[_c('v-list-item',{attrs:{\"disabled\":_vm.slide === 2},on:{\"click\":function($event){_vm.slide = 2\n _vm.slideSecondType = 'new-ticket'}}},[_c('v-list-item-avatar',[_c('v-icon',[_vm._v(\" mdi-chat-processing \")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Créer une nouvelle demande (ticket)\")]),_c('v-list-item-subtitle',[_vm._v(\" Notre équipe reviendra vers vous rapidement, et vous pourrez suivre la progression de votre demande. \")])],1),_c('v-list-item-action',[_c('v-icon',[_vm._v(\" mdi-arrow-right \")])],1)],1),_c('v-divider'),_c('v-subheader',[_vm._v(\"Mes derniers tickets\")]),(_vm.filteredTickets.length === 0)?_c('v-alert',{staticClass:\"mx-4\",attrs:{\"type\":\"info\",\"outlined\":\"\"}},[_vm._v(\"Aucun ticket ouvert récemment\")]):_vm._e(),_vm._l((_vm.filteredTickets),function(t){return _c('v-list-item',{key:t.ID,attrs:{\"disabled\":_vm.slide === 2},on:{\"click\":function($event){return _vm.openTicket(t)}}},[_c('v-list-item-avatar',[_c('v-icon',{attrs:{\"color\":_vm.getTicketStatus(t.Status).color}},[_vm._v(\"mdi-\"+_vm._s(_vm.getTicketStatus(t.Status).icon))])],1),_c('v-list-item-content',{class:{ 'font-weight-bold': _vm.ticketWasUpdated(t) }},[_c('v-list-item-title',[_vm._v(\"Ticket #\"+_vm._s(t.Hash)+\" - \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.stripTags(t.InitialMessage))}})]),_c('v-list-item-subtitle',[_vm._v(_vm._s(_vm.getTicketStatus(t.Status).title)+\" - Dernière mise à jour le \"+_vm._s(_vm.formatDateTimeHuman(t.LastUpdate)))])],1)],1)})],2):_c('v-alert',{staticClass:\"mx-2 mt-3 mb-1\",attrs:{\"outlined\":\"\",\"type\":\"info\"}},[_vm._v(\" Le système de ticket est désactivé. Pour l'activer, demandez nous ! \")])],1)],1),_c('v-window-item',{attrs:{\"value\":2}},[(_vm.slideSecondType === 'new-ticket')?[_c('v-card-title',[_vm._v(\" Nouveau ticket \")]),_c('v-card-text',[_vm._v(\" Veuillez saisir votre demande ci-dessous. Afin d'assurer un traitement efficace, essayez de répondre aux questions suivantes : \"),_c('ul',[_c('li',[_vm._v(\"Quel est le problème rencontré ?\")]),_c('li',[_vm._v(\"Qu'avez-vous essayé de faire ?\")]),_c('li',[_vm._v(\" Quel est le résultat obtenu, quel est le résultat attendu ? \")]),_c('li',[_vm._v(\"Donnez idéalement un exemple.\")])]),_c('br'),_c('v-form',{ref:\"newTicketForm\"},[_c('v-select',{attrs:{\"filled\":\"\",\"label\":\"Catégorie de la demande\",\"rules\":[(v) => !!v || 'Veuillez catégoriser la demande'],\"items\":_vm.categories},model:{value:(_vm.newTicket.Category),callback:function ($$v) {_vm.$set(_vm.newTicket, \"Category\", $$v)},expression:\"newTicket.Category\"}})],1)],1),_c('div',{staticClass:\"grey-border-top full-width flex-fill\"},[_c('tiptap-editor',{ref:\"editor\",model:{value:(_vm.newTicket.InitialMessage),callback:function ($$v) {_vm.$set(_vm.newTicket, \"InitialMessage\", $$v)},expression:\"newTicket.InitialMessage\"}}),_c('v-divider'),_c('div',{staticClass:\"mx-3 my-2\"},[_c('div',{staticClass:\"mb-2\",attrs:{\"layout\":\"row\",\"layout-align\":\"start center\"}},[_c('span',{staticClass:\"mr-3 text-subtitle-2\"},[_vm._v(\"Fichiers à joindre\")]),_c('v-tooltip',{attrs:{\"fixed\":\"\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({on}){return [_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.addAttachement}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-attachment-plus\")])],1)]}}],null,false,1515495468)},[_c('span',[_vm._v(\"Joindre un fichier\")])]),_c('input',{ref:\"fileUpload\",attrs:{\"hidden\":\"\",\"type\":\"file\"},on:{\"change\":_vm.onFileSelected}})],1),(_vm.attachments && _vm.attachments.length)?_c('div',_vm._l((_vm.attachments),function(a,idx){return _c('ul',{key:idx,staticStyle:{\"list-style-type\":\"none\",\"margin\":\"0\",\"padding\":\"0\"},attrs:{\"layout\":\"row\",\"layout-align\":\"start center\"}},[_c('li',[(a.type === 'application/pdf')?_c('v-icon',[_vm._v(\"mdi-file-pdf-box\")]):(a.type.startsWith('text/'))?_c('v-icon',[_vm._v(\"mdi-text-box-outline\")]):(a.type.startsWith('image/'))?_c('v-icon',[_vm._v(\"mdi-image\")]):(a.type.startsWith('video/'))?_c('v-icon',[_vm._v(\"mdi-video\")]):_c('v-icon',[_vm._v(\"mdi-file-outline\")])],1),_c('span',{staticClass:\"mx-3\"},[_vm._v(\" \"+_vm._s(a.name))]),_c('v-btn',{attrs:{\"icon\":\"\",\"color\":\"red\"},on:{\"click\":function($event){return _vm.deleteAttachment(idx)}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1)}),0):_c('div',[_vm._v(\"Aucun fichier joint\")])]),_c('v-divider',{staticClass:\"mb-3\"})],1),_c('v-card-actions',{attrs:{\"layout\":\"row\",\"layout-align\":\"space-between center\"}},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.closeNewTicket}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"mdi-arrow-left\")]),_vm._v(\" Annuler \")],1),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"green\",\"loading\":_vm.isTicketSending,\"disabled\":!_vm.stripTags(_vm.newTicket.InitialMessage.trim())},on:{\"click\":_vm.send}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"mdi-send\")]),_vm._v(\" Envoyer la demande \")],1)],1)]:[(_vm.ticket)?_c('div',[_c('ticket-details-panel',{attrs:{\"active-ticket\":_vm.ticket,\"customer\":\"\"},on:{\"back\":function($event){_vm.slide = 1}}})],1):_c('v-progress-circular',{attrs:{\"indeterminate\":\"\"}})]],2)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import './common'\nimport axios from 'axios'\n\nexport default {\n getTickets: (params) => axios.get('/odeon/api/v1/tickets', { params }),\n createTicket: (params) => axios.post('/odeon/api/v1/tickets', params),\n getTicket: (id, params) => axios.get(`/odeon/api/v1/tickets/${id}`, params),\n getTicketMessages: (id, params) => axios.get(`/odeon/api/v1/tickets/${id}/messages`, params),\n createTicketMessage: (data) => axios.post(`/odeon/api/v1/tickets/${data.TicketID}/messages`, data),\n createTicketAttachment: (data) => axios.post(`/odeon/api/v1/tickets/${data.TicketID}/attachments`, data),\n getOdeonParams: (id, params) => axios.get('/odeon-params', params),\n getBookstackToken: (params) => axios.get('/bookstack-token', { params }),\n getOdeonAuthToken: (data) => axios.post('/odeon/api/v1/auth-cas/token', data),\n postFile (file) {\n const formData = new FormData()\n formData.append('file', file)\n return axios.post('/odeon/api/v1/upload', formData, { headers: { 'Content-Type': 'multipart/form-data' } })\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.activeTicket !== null)?_c('div',{class:{'full-height': true, 'd-flex': true, 'flex-column': true}},[_c('v-toolbar',{attrs:{\"color\":\"blue-grey lighten-4\"}},[_c('v-btn',{attrs:{\"icon\":\"\",\"left\":\"\"},on:{\"click\":_vm.back}},[_c('v-icon',[_vm._v(\"mdi-arrow-left\")])],1),(_vm.activeTicket)?_c('v-toolbar-title',{domProps:{\"innerHTML\":_vm._s(_vm.getShortTitle(_vm.stripTags(_vm.activeTicket.InitialMessage)))}}):_c('v-skeleton-loader',{attrs:{\"type\":\"heading\"}}),_c('v-spacer'),(_vm.activeTicket)?_c('div',{staticClass:\"font-weight-bold text-caption single-line\"},[_vm._v(\" \"+_vm._s(_vm.activeTicket.ClientName)+\" - Ticket #\"+_vm._s(_vm.activeTicket.Hash)+\" \"),(_vm.activeTicket.IsPrivate)?_c('v-icon',{attrs:{\"title\":\"Ce ticket est privé\"}},[_vm._v(\" mdi-incognito-circle \")]):_vm._e()],1):_c('v-skeleton-loader',{staticClass:\"mt-2 mr-4\",attrs:{\"type\":\"text\"}})],1),(!_vm.activeTicket)?_c('div',{},_vm._l((5),function(i){return _c('v-skeleton-loader',{key:i,attrs:{\"type\":\"list-item-two-line\"}})}),1):_c('v-sheet',{staticClass:\"pa-4 overflow-y-auto\",attrs:{\"id\":\"chat-container\",\"max-height\":\"50vh\"}},[_c('v-sheet',{staticClass:\"pa-3 mb-4\",attrs:{\"rounded\":\"\",\"outlined\":\"\"}},[_c('div',{staticClass:\"text--secondary text-caption\"},[_vm._v(\" Message initial par \"),_c('strong',[_vm._v(_vm._s(_vm.activeTicket.CreatedByName))]),_vm._v(\" \"+_vm._s(_vm.formatDateTimeHuman(_vm.activeTicket.CreatedDate))+\" \")]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.activeTicket.InitialMessage.replace('/api/v1/upload/','/api/v1/odeon/api/v1/upload/'))}})]),_c('v-dialog',{model:{value:(_vm.showImage),callback:function ($$v) {_vm.showImage=$$v},expression:\"showImage\"}},[_c('v-img',{attrs:{\"src\":'api/v1/odeon/'+_vm.showImageSrc}})],1),_vm._l((_vm.messages),function(m){return _c('v-container',{key:m.ID,class:'caption d-flex flex-row ' + _vm.messageTypeColor[m.Type] + '--text'},[_c('div',{staticClass:\"info-timer-block\"},[_c('v-icon',{attrs:{\"size\":\"16\",\"color\":_vm.messageTypeColor[m.Type]}},[_vm._v(\" mdi-\"+_vm._s(_vm.messageTypeIcon[m.Type])+\" \")]),_vm._v(\" \"+_vm._s(_vm.formatDateTimeHuman(m.Timestamp))+\" \"),(m.SendByID)?_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(\" \"+_vm._s(m.SendByName)+\" \")]):_vm._e()],1),_c('v-divider',{staticClass:\"mx-3\",attrs:{\"vertical\":\"\"}}),([_vm.MessageType.System, _vm.MessageType.Information, _vm.MessageType.Resolution].includes(m.Type))?_c('div',{domProps:{\"innerHTML\":_vm._s(m.Message)}}):(m.Type === _vm.MessageType.Note)?_c('v-sheet',{staticClass:\"pa-3 text-body-2\",attrs:{\"rounded\":\"\",\"outlined\":\"\",\"color\":_vm.$vuetify.theme.dark ? 'deep-orange darken-4' : 'orange'},domProps:{\"innerHTML\":_vm._s(m.Message)}}):_c('v-sheet',{staticClass:\"pa-3 text-body-2\",attrs:{\"rounded\":\"\",\"outlined\":\"\"},domProps:{\"innerHTML\":_vm._s(m.Message)}})],1)})],2),_c('v-spacer'),_c('div',{staticClass:\"d-flex flex-column\"},[_c('v-divider'),_c('div',{staticClass:\"grey-border-top full-width flex-fill\"},[_c('tiptap-editor',{ref:\"editor\",attrs:{\"placeholder\":\"Votre réponse ici\"},model:{value:(_vm.editorMessage),callback:function ($$v) {_vm.editorMessage=$$v},expression:\"editorMessage\"}})],1),_c('v-divider'),_c('div',{staticClass:\"mx-3 my-2\"},[_c('div',{staticClass:\"mb-2\",attrs:{\"layout\":\"row\",\"layout-align\":\"start center\"}},[_c('span',{staticClass:\"mr-3 text-subtitle-2\"},[_vm._v(\"Fichiers à joindre\")]),_c('v-tooltip',{attrs:{\"fixed\":\"\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({on}){return [_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.addAttachement}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-attachment-plus\")])],1)]}}],null,false,1515495468)},[_c('span',[_vm._v(\"Joindre un fichier\")])]),_c('input',{ref:\"fileUpload\",attrs:{\"hidden\":\"\",\"type\":\"file\"},on:{\"change\":_vm.onFileSelected}})],1),(_vm.attachments && _vm.attachments.length)?_c('div',_vm._l((_vm.attachments),function(a,idx){return _c('ul',{key:idx,staticStyle:{\"list-style-type\":\"none\",\"margin\":\"0\",\"padding\":\"0\"},attrs:{\"layout\":\"row\",\"layout-align\":\"start center\"}},[_c('li',[(a.type === 'application/pdf')?_c('v-icon',[_vm._v(\"mdi-file-pdf-box\")]):(a.type.startsWith('text/'))?_c('v-icon',[_vm._v(\"mdi-text-box-outline\")]):(a.type.startsWith('image/'))?_c('v-icon',[_vm._v(\"mdi-image\")]):(a.type.startsWith('video/'))?_c('v-icon',[_vm._v(\"mdi-video\")]):_c('v-icon',[_vm._v(\"mdi-file-outline\")])],1),_c('span',{staticClass:\"mx-3\"},[_vm._v(\" \"+_vm._s(a.name))]),_c('v-btn',{attrs:{\"icon\":\"\",\"color\":\"red\"},on:{\"click\":function($event){return _vm.deleteAttachment(idx)}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1)}),0):_c('div',[_vm._v(\"Aucun fichier joint\")])]),_c('v-divider'),_c('div',{staticClass:\"flex-row text-right pa-2\"},[(!_vm.customer)?_c('v-btn',{attrs:{\"depressed\":\"\",\"outlined\":\"\",\"color\":\"orange\",\"disabled\":!_vm.activeTicket},on:{\"click\":_vm.sendNote}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-note-outline \")]),_vm._v(\" Envoyer en note \")],1):_vm._e(),_c('v-btn',{staticClass:\"ml-1 white--text\",attrs:{\"color\":\"green\",\"text\":\"\",\"disabled\":!_vm.activeTicket || !_vm.stripTags(_vm.editorMessage.trim())},on:{\"click\":_vm.sendChat}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-chat \")]),_vm._v(\" \"+_vm._s(_vm.customer ? 'Envoyer la réponse' : 'Envoyer au client')+\" \")],1)],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('tiptap-menu-bar',{staticClass:\"grey-border-bottom\",attrs:{\"editor\":_vm.editor}}),_c('editor-content',{staticClass:\"editor__content\",attrs:{\"editor\":_vm.editor}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"d-flex flex-row flex-wrap\"},[_vm._l((_vm.items),function(item,index){return [(item.type === 'divider')?_c('div',{key:index,staticClass:\"divider\"}):_c('menu-item',_vm._b({key:index},'menu-item',item,false))]}),_c('input',{ref:\"imageUpload\",attrs:{\"hidden\":\"\",\"type\":\"file\"},on:{\"change\":_vm.onFileSelected}})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-btn',{attrs:{\"icon\":\"\",\"color\":(_vm.isActive && _vm.isActive()) ? 'primary': '',\"title\":_vm.title},on:{\"click\":_vm.action}},[_c('v-icon',[_vm._v(\"mdi-\"+_vm._s(_vm.icon))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapMenuItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapMenuItem.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TiptapMenuItem.vue?vue&type=template&id=e35f1d8e&scoped=true\"\nimport script from \"./TiptapMenuItem.vue?vue&type=script&lang=js\"\nexport * from \"./TiptapMenuItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./TiptapMenuItem.vue?vue&type=style&index=0&id=e35f1d8e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e35f1d8e\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapMenuBar.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapMenuBar.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TiptapMenuBar.vue?vue&type=template&id=1beb3070&scoped=true\"\nimport script from \"./TiptapMenuBar.vue?vue&type=script&lang=js\"\nexport * from \"./TiptapMenuBar.vue?vue&type=script&lang=js\"\nimport style0 from \"./TiptapMenuBar.vue?vue&type=style&index=0&id=1beb3070&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1beb3070\",\n null\n \n)\n\nexport default component.exports","import { Plugin } from 'prosemirror-state'\n\nexport const dropImagePlugin = (upload) => {\n return new Plugin({\n props: {\n handlePaste (view, event, slice) {\n const items = Array.from(event.clipboardData?.items || [])\n const { schema } = view.state\n\n items.forEach((item) => {\n const image = item.getAsFile()\n\n if (item.type.indexOf('image') === 0) {\n event.preventDefault()\n\n if (upload && image) {\n upload(image).then((src) => {\n const node = schema.nodes.image.create({\n src\n })\n const transaction = view.state.tr.replaceSelectionWith(node)\n view.dispatch(transaction)\n })\n }\n } else {\n const reader = new FileReader()\n reader.onload = (readerEvent) => {\n const node = schema.nodes.image.create({\n src: readerEvent.target?.result\n })\n const transaction = view.state.tr.replaceSelectionWith(node)\n view.dispatch(transaction)\n }\n if (!image) return\n reader.readAsDataURL(image)\n }\n })\n\n return false\n },\n handleDOMEvents: {\n drop: (view, event) => {\n const hasFiles =\n event.dataTransfer &&\n event.dataTransfer.files &&\n event.dataTransfer.files.length\n\n if (!hasFiles) {\n return false\n }\n\n const images = Array.from(\n event.dataTransfer?.files ?? []\n ).filter((file) => /image/i.test(file.type))\n\n if (images.length === 0) {\n return false\n }\n\n event.preventDefault()\n\n const { schema } = view.state\n const coordinates = view.posAtCoords({\n left: event.clientX,\n top: event.clientY\n })\n if (!coordinates) return false\n\n images.forEach(async (image) => {\n const reader = new FileReader()\n\n if (upload) {\n const node = schema.nodes.image.create({\n src: await upload(image)\n })\n const transaction = view.state.tr.insert(coordinates.pos, node)\n view.dispatch(transaction)\n } else {\n reader.onload = (readerEvent) => {\n const node = schema.nodes.image.create({\n src: readerEvent.target?.result\n })\n const transaction = view.state.tr.insert(coordinates.pos, node)\n view.dispatch(transaction)\n }\n reader.readAsDataURL(image)\n }\n })\n\n return true\n }\n }\n }\n })\n}\n","import { Node, nodeInputRule } from '@tiptap/core'\nimport { dropImagePlugin } from './DropImage'\n\n/**\n * Matches following attributes in Markdown-typed image: [, alt, src, title]\n *\n * Example:\n * ![Lorem](image.jpg) -> [, \"Lorem\", \"image.jpg\"]\n * ![](image.jpg \"Ipsum\") -> [, \"\", \"image.jpg\", \"Ipsum\"]\n * ![Lorem](image.jpg \"Ipsum\") -> [, \"Lorem\", \"image.jpg\", \"Ipsum\"]\n */\nconst IMAGE_INPUT_REGEX = /!\\[(.+|:?)\\]\\((\\S+)(?:(?:\\s+)[\"'](\\S+)[\"'])?\\)/\n\nexport const createImageExtension = (uploadFn) => {\n return Node.create({\n name: 'image',\n inline: true,\n group: 'inline',\n draggable: true,\n addAttributes: () => ({\n src: {},\n alt: { default: null },\n title: { default: null }\n }),\n parseHTML: () => [\n {\n tag: 'img[src]',\n getAttrs: (dom) => {\n if (typeof dom === 'string') return {}\n const element = dom\n\n return {\n src: element.getAttribute('src'),\n title: element.getAttribute('title'),\n alt: element.getAttribute('alt')\n }\n }\n }\n ],\n renderHTML: ({ HTMLAttributes }) => ['img', HTMLAttributes],\n\n // @ts-ignore\n addCommands () {\n return (attrs) => (state, dispatch) => {\n const { selection } = state\n const position = selection.$cursor\n ? selection.$cursor.pos\n : selection.$to.pos\n const node = this.type.create(attrs)\n const transaction = state.tr.insert(position, node)\n dispatch(transaction)\n }\n },\n addInputRules () {\n return [\n nodeInputRule({\nfind: IMAGE_INPUT_REGEX,\ntype: this.type,\ngetAttributes: (match) => {\n const [, alt, src, title] = match\n return {\n src,\n alt,\n title\n }\n }\n})\n ]\n },\n addProseMirrorPlugins () {\n return [dropImagePlugin(uploadFn)]\n }\n })\n}\n","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapEditor.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TiptapEditor.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TiptapEditor.vue?vue&type=template&id=68687650\"\nimport script from \"./TiptapEditor.vue?vue&type=script&lang=js\"\nexport * from \"./TiptapEditor.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketDetailsPanel.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketDetailsPanel.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TicketDetailsPanel.vue?vue&type=template&id=8ca33190\"\nimport script from \"./TicketDetailsPanel.vue?vue&type=script&lang=js\"\nexport * from \"./TicketDetailsPanel.vue?vue&type=script&lang=js\"\nimport style0 from \"./TicketDetailsPanel.vue?vue&type=style&index=0&id=8ca33190&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import consts from '../consts'\n\nexport default {\n getTicketStatus(status) {\n return consts.TICKET_STATUS.find(ts => ts.id === status) || {color: 'blue', title: 'Sans titre', icon: 'check'}\n }\n}\n","import Consts from '../consts'\n\nconst deliveryVoucherStatuses = [\n { value: Consts.DELIVERY_VOUCHER_STATUS.DRAFT, text: \"En cours d'élaboration\", color: \"grey\", icon: \"mdi-pencil\" },\n { value: Consts.DELIVERY_VOUCHER_STATUS.READY_TO_SEND, text: \"Prêt à l'envoi\", color: \"yellow darken-1\", icon: \"mdi-email-arrow-right-outline\" },\n { value: Consts.DELIVERY_VOUCHER_STATUS.SENDED, text: \"Envoyé\", color: \"blue\", icon: \"mdi-email-check-outline\" },\n { value: Consts.DELIVERY_VOUCHER_STATUS.PAID, text: \"Payé\", color: \"green\", icon: \"mdi-cash-check\"},\n { value: Consts.DELIVERY_VOUCHER_STATUS.REFUSED, text: \"Refusé par le client\", color: \"orange\", icon: \"mdi-hand-back-left\" },\n { value: Consts.DELIVERY_VOUCHER_STATUS.CANCELLED, text: \"Annulé\", color: \"red\", icon: \"mdi-cancel\"},\n]\nexport default {\n deliveryVoucherStatus(v) {\n return deliveryVoucherStatuses.find(s => s.value == v)\n },\n}\n\nexport { deliveryVoucherStatuses }\n","import odeonHelper from '../helpers/odeon'\nimport ui, { deliveryVoucherStatuses} from '../ui/odeon'\n\nexport default {\n data: () => ({deliveryVoucherStatuses}),\n methods: {\n ...odeonHelper,\n ...ui\n }\n}","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OdeonPopup.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OdeonPopup.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OdeonPopup.vue?vue&type=template&id=304c573a&scoped=true\"\nimport script from \"./OdeonPopup.vue?vue&type=script&lang=js\"\nexport * from \"./OdeonPopup.vue?vue&type=script&lang=js\"\nimport style0 from \"./OdeonPopup.vue?vue&type=style&index=0&id=304c573a&prod&lang=scss\"\nimport style1 from \"./OdeonPopup.vue?vue&type=style&index=1&id=304c573a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"304c573a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-card',[_c('v-card-title',[_c('div',{attrs:{\"flex\":\"\"}},[_vm._v(\" \"+_vm._s(!_vm.infoOnly ? 'Scanner un e-billet/bon cadeau' : 'Informations du e-billet/bon cadeau')+\" \")]),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.close()}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1),_c('v-card-text',[(!_vm.hasRight('admin:business:voucher'))?_c('v-alert',{staticClass:\"ma-2\",attrs:{\"color\":\"deep-orange darken-3\",\"type\":\"warning\",\"outlined\":\"\",\"dense\":\"\"}},[_vm._v(\" Vous n'avez pas les droits nécessaires pour consulter les bons cadeaux. \")]):_c('div',[_c('v-window',{attrs:{\"touchless\":\"\"},model:{value:(_vm.step),callback:function ($$v) {_vm.step=$$v},expression:\"step\"}},[_c('v-window-item',{key:\"ticket\"},[(!_vm.infoOnly)?_c('div',{staticClass:\"mb-3\",attrs:{\"layout\":\"row\",\"layout-align\":\"center center\"}},[_c('v-text-field',{ref:\"voucherField\",attrs:{\"autofocus\":\"\",\"filled\":\"\",\"hide-details\":\"\",\"label\":\"Appuyez ici pour scanner un e-billet\",\"clearable\":\"\",\"prepend-icon\":\"mdi-ticket-percent\",\"disabled\":_vm.validating,\"loading\":_vm.validating},on:{\"click:clear\":_vm.resetEticket,\"keypress\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.validateEticket.apply(null, arguments)}},model:{value:(_vm.voucherID),callback:function ($$v) {_vm.voucherID=$$v},expression:\"voucherID\"}}),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\",\"color\":\"primary\",\"loading\":_vm.giftVouchersLoading},on:{\"click\":_vm.searchEticket}},[_c('v-icon',[_vm._v(\"mdi-magnify\")]),_vm._v(\" Recherche manuelle \")],1)],1):_vm._e(),(_vm.failedToCheckVoucher)?_c('v-alert',{attrs:{\"type\":\"error\",\"border\":\"left\"}},[_vm._v(\" Une erreur est survenue, veuillez réessayer \")]):(_vm.voucher)?_c('div',[(_vm.voucher.Valid)?_c('v-alert',{attrs:{\"type\":\"success\",\"border\":\"left\"}},[_c('div',[_c('strong',[_vm._v(\"Cet e-billet est valide\")])]),_c('div',[_vm._v(\" Acheté le \"+_vm._s(_vm.formatDateTimeHuman(_vm.voucher.Voucher.BeginValidityDate))+\" \"),(\n _vm.voucher.ClientSale.Firstname ||\n _vm.voucher.ClientSale.Lastname\n )?_c('span',[_vm._v(\"par \"+_vm._s(_vm.voucher.ClientSale.Firstname)+\" \"+_vm._s(_vm.voucher.ClientSale.Lastname)+\" \")]):_vm._e(),(_vm.voucher.Voucher.Firstname || _vm.voucher.Voucher.Lastname)?_c('span',[_vm._v(\"pour \"+_vm._s(_vm.voucher.Voucher.Firstname)+\" \"+_vm._s(_vm.voucher.Voucher.Lastname)+\" \")]):(\n _vm.voucher.ClientGift &&\n (_vm.voucher.ClientGift.Firstname ||\n _vm.voucher.ClientGift.Lastname)\n )?_c('span',[_vm._v(\"pour \"+_vm._s(_vm.voucher.ClientGift.Firstname)+\" \"+_vm._s(_vm.voucher.ClientGift.Lastname)+\" \")]):_vm._e()]),_c('div',[_vm._v(\" Valeur d'achat de \"+_vm._s(_vm.formatMoney(_vm.voucher.Voucher.Value))+\" \"+_vm._s(_vm.currencySymbol)+\" \")]),(_vm.voucher.SheetName)?_c('div',[_vm._v(\" Émis via la planche \\\"\"+_vm._s(_vm.voucher.SheetName)+\"\\\" \")]):_vm._e(),(_vm.voucher.Comment)?_c('div',[_vm._v(\" Commentaire : \"+_vm._s(_vm.voucher.Comment)+\" \")]):_vm._e()]):_c('v-alert',{attrs:{\"type\":\"error\",\"border\":\"left\"}},[(!_vm.voucher.Exist)?_c('span',[_vm._v(\" Ce bon n'existe pas \")]):(_vm.voucher.InvalidReason === 'already-used')?_c('div',[_c('div',[_c('strong',[_vm._v(\"Cet e-billet a déjà été consommé \"+_vm._s(_vm.voucher.Voucher.UsageDate ? ` le ${_vm.formatDateTimeHuman( _vm.voucher.Voucher.UsageDate )}` : ''))])]),_c('div',[_vm._v(\" Acheté par \"+_vm._s(_vm.voucher.ClientSale.Firstname)+\" \"+_vm._s(_vm.voucher.ClientSale.Lastname)+\" \"),(\n _vm.voucher.Voucher.Firstname || _vm.voucher.Voucher.Lastname\n )?_c('span',[_vm._v(\"pour \"+_vm._s(`${_vm.voucher.Voucher.Firstname} ${_vm.voucher.Voucher.Lastname}`)+\" \")]):_vm._e(),(_vm.voucher.ClientGift && _vm.voucher.ClientGift.ID)?_c('span',[_vm._v(\" et crédité sur le compte de \"+_vm._s(`${_vm.voucher.ClientGift.Firstname} ${_vm.voucher.ClientGift.Lastname}`))]):_vm._e(),(_vm.voucher.Voucher.UsageSeller)?_c('span',[_vm._v(\" par \"+_vm._s(_vm.voucher.Voucher.UsageSeller))]):_vm._e(),_vm._v(\". \")]),_c('div',[_vm._v(\" Valeur d'achat de \"+_vm._s(_vm.formatMoney(_vm.voucher.Voucher.Value))+\" € \")]),(_vm.voucher.SheetName)?_c('div',[_vm._v(\" Émis via la planche \\\"\"+_vm._s(_vm.voucher.SheetName)+\"\\\" \")]):_vm._e(),(_vm.voucher.Comment)?_c('div',[_vm._v(\" Commentaire : \"+_vm._s(_vm.voucher.Comment)+\" \")]):_vm._e()]):(_vm.voucher.InvalidReason === 'sale-not-exist')?_c('span',[_vm._v(\" La vente d'origine de ce bon est inconnue \")]):(_vm.voucher.InvalidReason === 'outdated')?_c('span',[_vm._v(\" Ce bon est périmé depuis le \"+_vm._s(_vm.formatDateTimeHuman(_vm.voucher.Voucher.EndValidityDate))+\". \")]):(_vm.voucher.InvalidReason === 'cancelled')?_c('span',[_vm._v(\" Ce bon a été annulé pour la raison suivante :\"),_c('br'),_vm._v(\" \"+_vm._s(_vm.voucher.Voucher.CancellationReason)+\" \")]):_c('span',[_vm._v(\" Ce bon ne semble pas valide. \")])]),(_vm.voucher.Voucher.ConvertedToCredit)?_c('v-alert',{attrs:{\"type\":\"info\",\"border\":\"left\"}},[_vm._v(\" Ce bon a été transformé en \"+_vm._s(_vm.creditLabel)+\". \")]):_vm._e(),(_vm.voucher.InvalidReason === 'already-used' && _vm.voucherDeliveredProducts.length > 0)?_c('div',[_c('div',{staticClass:\"text-h6\"},[_vm._v(\" Produit\"+_vm._s(_vm.voucherDeliveredProducts.length > 1 ? 's' : '')+\" consommé\"+_vm._s(_vm.voucherDeliveredProducts.length > 1 ? 's' : '')+\" : \")]),_vm._l((_vm.voucherDeliveredProducts),function(p,i){return _c('v-card',{key:i,staticClass:\"d-flex my-1\",attrs:{\"outlined\":\"\",\"flat\":\"\"}},[_c('v-avatar',{attrs:{\"tile\":\"\",\"color\":\"grey\",\"size\":\"128\"}},[_c('div',{staticClass:\"d-flex flex-column\"},[_c('v-icon',{attrs:{\"color\":p.action.color || 'white'}},[_vm._v(\" \"+_vm._s(p.action.icon)+\" \")]),_c('span',{staticClass:\"white--text mx-3 mt-2 text-subtitle-2\"},[_vm._v(_vm._s(p.product.LabelShort.FR))])],1)]),_c('div',{staticClass:\"full-width\"},[_c('v-card-title',{attrs:{\"layout\":\"row\",\"layout-align\":\"space-between start\"}},[_c('div',[_c('div',[_vm._v(_vm._s(p.product.Label.FR))]),_c('div',{staticClass:\"text-subtitle-1\",class:p.action.color\n ? `${p.action.color}--text font-weight-bold`\n : ''},[_vm._v(\" \"+_vm._s(p.action.text)+\" \")]),(p.product.Stock === 0)?_c('div',{staticClass:\"text-subtitle-2 red--text\"},[_vm._v(\" Ce produit n'est plus en stock \")]):_vm._e()]),_c('v-spacer'),_c('div',[(p.UsedAmount > 0)?_c('v-alert',{staticClass:\"ma-0 mt-2 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":p.UsedAmount === p.Amount ? 'red' : 'orange',\"text\":\"\"}},[_vm._v(\" Utilisé: \"+_vm._s(p.UsedAmount)+\" / \"+_vm._s(p.Amount)+\" \")]):(_vm.voucher.Voucher.Used)?_c('v-alert',{staticClass:\"ma-0 mt-2 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":\"red\",\"text\":\"\"}},[_vm._v(\" Utilisé: \"+_vm._s(p.Amount)+\" / \"+_vm._s(p.Amount)+\" \")]):_c('v-alert',{staticClass:\"ma-0 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":\"blue\",\"text\":\"\"}},[_vm._v(\" Quantité: \"+_vm._s(p.Amount)+\" \")])],1),_c('div')],1)],1)],1)})],2):_vm._e()],1):_vm._e(),(\n _vm.voucher &&\n _vm.voucher.Valid &&\n _vm.voucher.Voucher &&\n _vm.voucher.Voucher.ID\n )?_c('div',[_c('v-alert',{attrs:{\"type\":\"info\",\"border\":\"left\",\"dense\":\"\"}},[_vm._v(\" Bon émis le \"+_vm._s(_vm.formatDateHuman(_vm.voucher.Voucher.BeginValidityDate))+\" \"),_c('strong',[_vm._v(_vm._s(_vm.voucher.Voucher.EndValidityDate ? \" et valable jusqu'au \" + _vm.formatDateHuman(_vm.voucher.Voucher.EndValidityDate) : ''))])]),(\n _vm.voucherDeliveredProducts.length > 0\n )?_c('div',[_c('div',{staticClass:\"text-h6\"},[_vm._v(\" Produit\"+_vm._s(_vm.voucherDeliveredProducts.length > 1 ? 's' : '')+\" crédité\"+_vm._s(_vm.voucherDeliveredProducts.length > 1 ? 's' : '')+\" par ce bon : \")]),_vm._l((_vm.voucherDeliveredProducts),function(p,i){return _c('v-card',{key:i,staticClass:\"d-flex my-1\",attrs:{\"outlined\":\"\",\"flat\":\"\"}},[_c('v-avatar',{attrs:{\"tile\":\"\",\"color\":\"grey\",\"size\":\"128\"}},[_c('div',{staticClass:\"d-flex flex-column\"},[_c('v-icon',{attrs:{\"color\":p.action.color || 'white'}},[_vm._v(\" \"+_vm._s(p.action.icon)+\" \")]),_c('span',{staticClass:\"white--text mx-3 mt-2 text-subtitle-2\"},[_vm._v(_vm._s(p.product.LabelShort.FR))])],1)]),_c('div',{staticClass:\"full-width\"},[_c('v-card-title',{staticClass:\"d-flex align-center\"},[_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"10\"}},[_c('div',[_c('div',[_vm._v(_vm._s(p.product.Label.FR))]),_c('div',{staticClass:\"text-subtitle-1\",class:p.action.color\n ? `${p.action.color}--text font-weight-bold`\n : ''},[_vm._v(\" \"+_vm._s(p.action.text)+\" \")]),(p.product.Stock === 0)?_c('div',{staticClass:\"text-subtitle-2 red--text\"},[_vm._v(\" Ce produit n'est plus en stock \")]):_vm._e()])]),_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"2\",\"align-self\":\"start\"}},[_c('div',{staticClass:\"d-flex flex-column\"},[(p.UsedAmount === 0)?_c('v-alert',{staticClass:\"ma-0 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":\"blue\",\"text\":\"\"}},[_vm._v(\" Quantité: \"+_vm._s(p.Amount)+\" \")]):_c('v-alert',{staticClass:\"ma-0 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":\"green\",\"text\":\"\"}},[_vm._v(\" Restant: \"+_vm._s(p.Amount - p.UsedAmount)+\" \")]),(p.UsedAmount !== 0)?_c('v-alert',{staticClass:\"ma-0 mt-2 pt-1 pb-1\",attrs:{\"border\":\"left\",\"color\":\"red\",\"text\":\"\"}},[_vm._v(\" Utilisé: \"+_vm._s(p.UsedAmount)+\" \")]):_vm._e()],1)])],1)],1)],1)})],2):_vm._e(),(\n _vm.voucher &&\n _vm.voucher.Voucher.ProductsIDs &&\n _vm.voucher.Voucher.ProductsIDs.length > 0\n )?_c('div',[_c('div',{staticClass:\"text-h6\"},[_vm._v(\" Produits à choisir pour ce bon : \")]),_c('v-item-group',{attrs:{\"mandatory\":\"\"},model:{value:(_vm.selectedProductID),callback:function ($$v) {_vm.selectedProductID=$$v},expression:\"selectedProductID\"}},_vm._l((_vm.voucher.Voucher.ProductsIDs),function(productId){return _c('v-item',{key:productId,attrs:{\"value\":productId},scopedSlots:_vm._u([{key:\"default\",fn:function({ active, toggle }){return [_c('v-card',{attrs:{\"outlined\":\"\",\"flat\":\"\",\"layout\":\"row\"},on:{\"click\":toggle}},[_c('v-avatar',{attrs:{\"tile\":\"\",\"color\":\"grey\",\"size\":\"128\"}},[_c('span',{staticClass:\"white--text ma-3\"},[_vm._v(_vm._s(_vm.mappedProducts[productId].Label.FR))])]),_c('v-card-text',[_c('div',{staticClass:\"text-h5\"},[_vm._v(\" \"+_vm._s(_vm.mappedProducts[productId].Label.FR)+\" \")]),(_vm.mappedProducts[productId].Stock === 0)?_c('div',{staticClass:\"red--text\"},[_vm._v(\" Ce produit n'est plus en stock \")]):_vm._e(),(active)?_c('div',{staticClass:\"d-flex justify-end\"},[_c('v-icon',{attrs:{\"large\":\"\",\"color\":\"success\"}},[_vm._v(\" mdi-check \")])],1):_vm._e()])],1)]}}],null,true)})}),1)],1):_vm._e()],1):_vm._e(),(\n _vm.voucher &&\n _vm.voucher.Voucher &&\n _vm.voucher.Valid &&\n (((!_vm.voucher.Voucher.ProductsIDs ||\n _vm.voucher.Voucher.ProductsIDs.length === 0) &&\n _vm.voucher.Voucher.DeliveredItems &&\n _vm.voucher.Voucher.DeliveredItems.length > 0) ||\n (_vm.voucher.Voucher.ProductsIDs &&\n _vm.voucher.Voucher.ProductsIDs.length > 0 &&\n _vm.selectedProductID))\n )?_c('div',{staticClass:\"d-flex justify-space-between ma-2 mt-4\"},[(_vm.voucher && _vm.voucher.Voucher && _vm.voucher.Voucher.Value !== '0.00' &&\n !_vm.productsAlreadyCreditCagnotte(_vm.voucher.Voucher))?_c('v-switch',{staticClass:\"mt-0\",attrs:{\"label\":'Convertir le bon en ' + _vm.creditLabel+' pour une valeur de ' +\n _vm.formatMoney(_vm.voucher.Voucher.Value) +\n _vm.currencySymbol,\"dense\":\"\",\"hide-details\":\"\",\"disabled\":_vm.voucher.Used || _vm.isPartiallyUsed(_vm.voucher.Voucher)},model:{value:(_vm.convertToCredit),callback:function ($$v) {_vm.convertToCredit=$$v},expression:\"convertToCredit\"}}):_vm._e(),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"green\"},on:{\"click\":_vm.onProductSelected}},[_vm._v(\" \"+_vm._s(_vm.hasClient ? 'Valider le bon' : 'Suivant')+\" \"),_c('v-icon',{attrs:{\"right\":\"\"}},[_vm._v(\" mdi-arrow-right \")])],1)],1):_vm._e()],1),_c('v-window-item',{key:\"account\"},[_c('div',{staticClass:\"text-h6 mb-3\"},[_vm._v(\" Compte crédité \")]),(!_vm.newClientMode)?_c('div',{attrs:{\"layout\":\"row\",\"layout-align\":\"center center\"}},[_c('client-autocomplete',{attrs:{\"label\":\"Sélectionnez le client auquel associer ce produit\",\"prepend-icon\":\"mdi-account\",\"filled\":\"\",\"dense\":\"\",\"clearable\":\"\",\"hide-details\":\"\",\"return-object\":\"\",\"external-filters\":_vm.externalFilters,\"disabled\":_vm.voucher && !!_vm.voucher.ClientGift && !!_vm.voucher.ClientGift.ID},on:{\"clear\":function($event){_vm.externalFilters = null}},model:{value:(_vm.selectedClient),callback:function ($$v) {_vm.selectedClient=$$v},expression:\"selectedClient\"}}),_c('div',{staticClass:\"text-caption mx-5\"},[_vm._v(\" - ou - \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":_vm.voucher && !!_vm.voucher.ClientGift && !!_vm.voucher.ClientGift.ID},on:{\"click\":function($event){_vm.newClientMode = true}}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-account-plus \")]),_vm._v(\" Nouveau client \")],1)],1):_vm._e(),(_vm.newClientMode)?_c('client-form',{ref:\"clientForm\",attrs:{\"client\":_vm.newClient}}):_vm._e(),(_vm.hasClient && !_vm.convertToCredit)?_c('div',[_vm._l((_vm.deliveredCards),function(card,cardIndex){return _c('v-row',{key:`carttype-${card.ProductID}-${cardIndex}`,staticClass:\"ma-2\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-icon',[_vm._v(\"mdi-credit-card-plus\")])],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('span',{staticClass:\"text-subtitle-2\"},[_vm._v(_vm._s(_vm.mappedProducts[card.ProductID].Label.FR))])]),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-icon',[_vm._v(\"mdi-arrow-right\")])],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[(_vm.associatedCards.find((c) => c.deliveredCardIndex == cardIndex))?_c('v-btn',{attrs:{\"block\":\"\"},on:{\"click\":function($event){return _vm.associateCard(_vm.mappedProducts[card.ProductID].cardType, cardIndex)}}},[_vm._v(\" Associé \"),_c('v-icon',{attrs:{\"right\":\"\",\"color\":\"success\"}},[_vm._v(\" mdi-check \")])],1):(_vm.wvEnabled())?_c('v-btn',{attrs:{\"block\":\"\"},on:{\"click\":function($event){return _vm.associateCard(_vm.mappedProducts[card.ProductID].cardType, cardIndex)}}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-credit-card-wireless \")]),_vm._v(\" Associer \")],1):_c('v-alert',{attrs:{\"border\":\"bottom\",\"colored-border\":\"\",\"elevation\":\"2\",\"type\":\"warning\"}},[_vm._v(\" Impossible d'associer ce support hors caisse.\"),_c('br'),_vm._v(\" Merci d'activer ce bon en caisse afin d'associer un badge. \")])],1)],1)}),_vm._l((_vm.deliveredSubscriptions),function(sub){return _c('v-row',{key:'carttypechooser-' + sub.ProductID,staticClass:\"ma-2\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-icon',[_vm._v(\"mdi-credit-card-scan\")])],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('span',{staticClass:\"text-subtitle-2\"},[_vm._v(_vm._s(sub.Amount)+\"x \"+_vm._s(_vm.mappedProducts[sub.ProductID].Label.FR))])]),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-icon',[_vm._v(\"mdi-arrow-right\")])],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-select',{attrs:{\"filled\":\"\",\"dense\":\"\",\"hide-details\":\"\",\"mandatory\":\"\",\"items\":_vm.productCompatibleCardTypes(sub.ProductID),\"item-text\":\"label\",\"item-value\":\"cardType\"},scopedSlots:_vm._u([{key:\"item\",fn:function({ item }){return [(item.targetClientHasOne || item.cardType && item.cardType.includes('QRCode'))?_c('span',[(item.targetClientHasOne)?_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-card \")]):(\n item.cardType && item.cardType.includes('QRCode')\n )?_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-qrcode \")]):_vm._e(),_vm._v(\" \"+_vm._s(item.label)+\" \")],1):_c('span',{staticClass:\"warning--text\"},[_c('v-icon',{attrs:{\"color\":\"warning\",\"left\":\"\"}},[_vm._v(\" mdi-card-off \")]),_vm._v(\" \"+_vm._s(item.label)+\" \")],1)]}},{key:\"selection\",fn:function({ item }){return [(item.targetClientHasOne || item.cardType && item.cardType.includes('QRCode'))?_c('span',[(item.targetClientHasOne)?_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-card \")]):(\n item.cardType && item.cardType.includes('QRCode')\n )?_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-qrcode \")]):_vm._e(),_vm._v(\" \"+_vm._s(item.label)+\" \")],1):_c('span',{staticClass:\"warning--text\"},[_c('v-icon',{attrs:{\"color\":\"warning\",\"left\":\"\"}},[_vm._v(\" mdi-card-off \")]),_vm._v(\" \"+_vm._s(item.label)+\" \")],1)]}}],null,true),model:{value:(_vm.productCardAssignation[sub.ProductID]),callback:function ($$v) {_vm.$set(_vm.productCardAssignation, sub.ProductID, $$v)},expression:\"productCardAssignation[sub.ProductID]\"}})],1)],1)}),(_vm.hasQRCodeAssigned && !_vm.wvEnabled())?_c('v-alert',{attrs:{\"type\":\"warning\"}},[_vm._v(\" Les QRCodes ne peuvent être imprimés que si vous êtes sur la caisse \")]):_vm._e(),( _vm.hasProductAssignedToCardTypeWithoutCard && !_vm.convertToCredit)?_c('v-alert',{attrs:{\"border\":\"left\",\"outlined\":\"\",\"type\":\"warning\"}},[_vm._v(\" Ce client ne possède pas certains supports ! Un badge est obligatoire afin qu'il puisse utiliser ses produits. \")]):_vm._e()],2):_vm._e(),_c('div',{staticClass:\"mt-5\",attrs:{\"layout\":\"row\",\"layout-align\":\"space-between center\"}},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.resetAssociation}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-arrow-left \")]),_vm._v(\" Retour à l'e-billet \")],1),(_vm.convertToCredit)?_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"success\",\"disabled\":!_vm.hasClient},on:{\"click\":_vm.convertEticketToCredit}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-check \")]),_vm._v(\" Convertir le bon en \"+_vm._s(_vm.creditLabel)+\" \")],1):_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"success\",\"disabled\":!_vm.hasClient || !_vm.hasAllCardsAssociated,\"loading\":_vm.validationLoading},on:{\"click\":_vm.validConsumeEticket}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-check \")]),_vm._v(\" Valider l'e-billet \")],1)],1)],1),_c('v-window-item',{key:\"search\"},[_c('div',{staticClass:\"text-h6 mb-3\"},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.step = 0}}},[_c('v-icon',[_vm._v(\"mdi-arrow-left\")])],1),_vm._v(\" Liste des bons cadeaux en attente \")],1),_c('v-text-field',{attrs:{\"outlined\":\"\",\"hide-details\":\"\",\"label\":\"Rechercher...\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-data-table',{attrs:{\"headers\":_vm.searchHeaders,\"items\":_vm.giftVouchers,\"server-items-length\":_vm.totalGiftVouchers,\"loading\":_vm.giftVouchersLoading,\"loading-text\":\"Chargement des bons cadeaux...\",\"search\":_vm.search,\"options\":_vm.pagination,\"footer-props\":{\n itemsPerPageOptions: [10, 25, 50, 100]\n }},on:{\"click:row\":(v) => _vm.useSearchedVoucher(v),\"update:options\":function($event){_vm.pagination=$event}},scopedSlots:_vm._u([{key:`item.BeginValidityDate`,fn:function({ item }){return [_vm._v(\" \"+_vm._s(_vm.formatDateTimeHuman(item.BeginValidityDate))+\" \")]}},{key:`item.SheetLabel`,fn:function({ item }){return [_c('span',{staticStyle:{\"display\":\"inline-block\",\"max-width\":\"150px\"}},[_vm._v(_vm._s(item.SheetLabel))])]}},{key:`item.Firstname`,fn:function({ item }){return [_vm._v(\" \"+_vm._s(item.Firstname)+\" \"+_vm._s(item.Lastname)+\" \")]}},{key:`item.actions`,fn:function(){return [_c('v-btn',{attrs:{\"icon\":\"\",\"color\":\"primary\"}},[_c('v-icon',[_vm._v(\"mdi-arrow-right-circle-outline\")])],1)]},proxy:true}],null,true)})],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VoucherScan.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VoucherScan.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./VoucherScan.vue?vue&type=template&id=5bea8e7e\"\nimport script from \"./VoucherScan.vue?vue&type=script&lang=js\"\nexport * from \"./VoucherScan.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport Vuetify from 'vuetify/lib'\nimport 'vuetify/dist/vuetify.min.css'\nimport fr from 'vuetify/es5/locale/fr'\nimport { Ripple } from 'vuetify/lib/directives'\n\nVue.use(Vuetify, {\n directives: {\n Ripple\n }\n})\n\nexport default new Vuetify({\n theme: {\n dark: false,\n themes: {\n light: {\n primary: '#00639D',\n secondary: '#006B5D',\n accent: '#006876',\n error: '#FF5252',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#ff9100',\n titleProduct: '#696969'\n }\n }\n },\n customProperties: true,\n icons: {\n iconfont: 'mdi'\n },\n lang: {\n locales: { fr },\n current: 'fr'\n }\n})\n","import Vue from 'vue'\nimport 'vue-snotify/styles/material.css'\nimport Snotify, { SnotifyPosition } from 'vue-snotify'\n\nVue.use(Snotify, {\n toast: {\n position: SnotifyPosition.rightBottom,\n closeOnClick: true,\n timeout: 3000,\n titleMaxLength: 40,\n showProgressBar: false\n }\n})\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-app',{},[(!_vm.isDashboardLayoutDisabled)?_c('v-navigation-drawer',{staticClass:\"grey lighten-4 no-print\",attrs:{\"value\":!!_vm.expandMainMenu,\"clipped\":\"\",\"mini-variant\":!_vm.expandMainMenu || _vm.expandMainMenu == 'mini',\"stateless\":\"\",\"fixed\":\"\",\"app\":\"\",\"permanent\":!_vm.$vuetify.breakpoint.mobile && _vm.navigationDrawerState && !_vm.isDashboardLayoutDisabled}},[_c('v-list',{staticClass:\"main-nav\"},_vm._l((_vm.navDrawerItems),function(item,i){return _c('v-list-item',{key:i,attrs:{\"to\":item.route,\"title\":item.title,\"color\":\"primary\"},on:{\"click\":_vm.handleMainMenuClick}},[_c('v-list-item-action',[_c('v-badge',{attrs:{\"bottom\":\"\",\"dot\":\"\",\"color\":\"red\",\"value\":item.alert && item.alert > 0}},[_c('v-icon',[_vm._v(_vm._s(item.icon))])],1)],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(item.title))])],1)],1)}),1)],1):_vm._e(),(!_vm.isDashboardLayoutDisabled)?_c('v-app-bar',{staticClass:\"elevation-0 no-print\",staticStyle:{\"background\":\"#267CBC\"},attrs:{\"app\":\"\",\"dark\":\"\",\"flat\":\"\",\"clipped-left\":\"\",\"dense\":\"\"}},[_c('v-app-bar-nav-icon',{on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleDrawer.apply(null, arguments)}}}),_c('v-toolbar-title',{attrs:{\"layout\":\"row\",\"layout-align\":\"start center\"},domProps:{\"innerHTML\":_vm._s(_vm.title)}}),_c('v-spacer'),_c('v-toolbar-items',[_c('v-divider',{attrs:{\"vertical\":\"\"}}),(_vm.hasRight('admin:business:voucher') && !_vm.$vuetify.breakpoint.mobile)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.voucherScanDialog = true}}},on),[_c('v-icon',[_vm._v(\"mdi-ticket-percent\")])],1)]}}],null,false,2417904199)},[_c('span',[_vm._v(\"Scanner un e-billet/bon cadeau\")])]):_vm._e(),_c('v-divider',{attrs:{\"vertical\":\"\"}}),(_vm.hasVcr && !_vm.$vuetify.breakpoint.mobile)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"text\":\"\"},on:{\"click\":_vm.goToVCR}},on),[_c('v-icon',[_vm._v(\"mdi-cash-register\")])],1)]}}],null,false,4220393021)},[_c('span',[_vm._v(\"Utiliser la caisse virtuelle\")])]):_vm._e(),(_vm.hasVcr)?_c('v-divider',{attrs:{\"vertical\":\"\"}}):_vm._e(),(_vm.hasDimsBackoffice && !_vm.$vuetify.breakpoint.mobile)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"text\":\"\"},on:{\"click\":_vm.goToDims}},on),[_c('v-icon',[_vm._v(\"mdi-bug\")])],1)]}}],null,false,3409105924)},[_c('span',[_vm._v(\"Basculer vers Dims\")])]):_vm._e(),(_vm.hasDimsBackoffice)?_c('v-divider',{attrs:{\"vertical\":\"\"}}):_vm._e(),(!_vm.$vuetify.breakpoint.mobile && _vm.authUser && _vm.authStatus === 'success')?_c('v-menu',{attrs:{\"bottom\":\"\",\"offset-y\":\"\",\"close-on-content-click\":false,\"max-width\":\"800px\",\"eager\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu }){return [_c('v-tooltip',_vm._g({attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.odeonPopup.visible = true}}},on),[_c('v-badge',{attrs:{\"overlap\":\"\",\"dot\":\"\",\"color\":\"red\",\"value\":_vm.odeonPopup.unread !== 0}},[_c('v-icon',[_vm._v(\"mdi-lifebuoy\")])],1)],1)]}}],null,true)},onMenu),[_c('span',[_vm._v(\"Aide / Support\")])])]}}],null,false,2390024222),model:{value:(_vm.odeonPopup.visible),callback:function ($$v) {_vm.$set(_vm.odeonPopup, \"visible\", $$v)},expression:\"odeonPopup.visible\"}},[_c('odeon-popup',{on:{\"unread\":_vm.onUnreadCount}})],1):_vm._e(),_c('v-divider',{attrs:{\"vertical\":\"\"}})],1),(_vm.authUser)?_c('v-menu',{attrs:{\"bottom\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"slot\":\"activator\",\"text\":\"\"},slot:\"activator\"},on),[_vm._v(\" \"+_vm._s(_vm.authUser.FirstName)+\" \"),(!_vm.$vuetify.breakpoint.mobile)?_c('span',[_vm._v(\"  \"+_vm._s(_vm.authUser.LastName))]):_vm._e(),_c('v-avatar',{staticClass:\"ml-2\",attrs:{\"color\":\"teal\",\"size\":\"32\"}},[_c('span',{staticClass:\"white--text\"},[_vm._v(_vm._s(_vm.userInitials))])])],1)]}}],null,false,3543369052)},[_c('v-card',[_c('v-list',[_c('v-list-item',{attrs:{\"to\":{name: 'profil'}}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-account-details\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Profil\")])],1)],1),_c('v-list-item',{on:{\"click\":_vm.logout}},[_c('v-list-item-action',[_c('v-icon',[_vm._v(\"mdi-logout\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Déconnexion\")])],1)],1)],1)],1)],1):_vm._e(),(_vm.wvEnabled())?_c('v-divider',{attrs:{\"vertical\":\"\"}}):_vm._e(),(_vm.wvEnabled())?_c('v-btn',{staticStyle:{\"height\":\"64px\"},attrs:{\"text\":\"\"},on:{\"click\":_vm.wvClose}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1):_vm._e()],1):_vm._e(),_c('v-main',[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.forbidden)?_c('forbidden-page'):_c('router-view')],1)],1),(!_vm.isDashboardLayoutDisabled)?_c('v-footer',{staticClass:\"px-3 no-print\",attrs:{\"app\":\"\"}},[_c('div',{staticClass:\"text-overline d-flex align-center\"},[_c('a',{attrs:{\"href\":\"https://www.streamlor.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"layout\":\"row\",\"layout-align\":\"center center\"}},[_c('v-img',{staticClass:\"mx-2\",attrs:{\"src\":\"/streamlor-h15.png\",\"max-height\":\"15\",\"max-width\":\"20vw\"}})],1),_c('span',{staticClass:\"mx-2\"},[_vm._v(\"•\")]),_c('span',[_vm._v(\"Copyright © 2018-\"+_vm._s(new Date().getFullYear()))]),(!_vm.$vuetify.breakpoint.mobile)?[_c('span',{staticClass:\"mx-2\"},[_vm._v(\"•\")]),_c('div',{staticClass:\"text-overline\"},[_vm._v(\"Version \"+_vm._s(_vm.version))])]:_vm._e()],2)]):_vm._e(),_c('vue-snotify'),_c('v-dialog',{attrs:{\"width\":\"1000px\"},model:{value:(_vm.voucherScanDialog),callback:function ($$v) {_vm.voucherScanDialog=$$v},expression:\"voucherScanDialog\"}},[_c('voucher-scan',{on:{\"validated\":function($event){_vm.voucherScanDialog = false}}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ma-3\",staticStyle:{\"min-height\":\"400px\"},attrs:{\"layout\":\"column\",\"layout-align\":\"center center\"}},[_c('span',{staticClass:\"text-h5 text-center mb-10\"},[_vm._v(\"Vous essayez d'accéder à une page pour laquelle vous ne possédez pas assez de droits.\")]),_c('v-icon',{staticClass:\"mb-10\",attrs:{\"size\":\"100\"}},[_vm._v(\"mdi-hand-back-right-off-outline\")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.goBack()}}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"mdi-arrow-left\")]),_vm._v(\"Retour\")],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Forbidden.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Forbidden.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Forbidden.vue?vue&type=template&id=9eddf65c\"\nimport script from \"./Forbidden.vue?vue&type=script&lang=js\"\nexport * from \"./Forbidden.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=4fd5a3ba\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=4fd5a3ba&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport vuetify from './plugins/vuetify'\nimport VueNativeSock from 'vue-native-websocket'\nimport moment from 'moment'\nimport 'moment/locale/fr'\n\nimport './plugins/snotify'\nimport LottieVuePlayer from \"@lottiefiles/vue-lottie-player\"\n\nimport App from './App.vue'\nimport router from './router/router'\nimport store from './store/store'\n\nimport config from './config'\n\nimport 'roboto-fontface/css/roboto/roboto-fontface.css'\nimport '@mdi/font/css/materialdesignicons.css'\nimport './styles/flexbox.css'\nimport './styles/main.css'\nimport {\n iconizer,\n labelizer,\n colors,\n date,\n params,\n spa,\n sales,\n client,\n accessControl\n} from 'neptune/mixins'\n\nVue.use(VueNativeSock, (config.ServerURL.protocol === 'https:' ? 'wss://' : 'ws://') + config.ServerURL.host + '/api/ws', {\n reconnection: false,\n connectManually: true,\n format: 'json'\n})\n\nVue.use(LottieVuePlayer)\n\nmoment.locale('fr')\nVue.config.productionTip = false\n\nVue.mixin(iconizer)\nVue.mixin(labelizer)\nVue.mixin(colors)\nVue.mixin(date)\nVue.mixin(params)\nVue.mixin(spa)\nVue.mixin(sales)\nVue.mixin(client)\nVue.mixin(accessControl)\n\nnew Vue({\n router,\n store,\n vuetify,\n render: h => h(App)\n}).$mount('#app')\n","export default {\n // WS RESOURCE\n WS_RESOURCE_TURNSTILE_INFO: \"r://turnstile-info\",\n WS_RESOURCE_TURNSTILE_HISTORY: \"r://turnstile-history\",\n WS_RESOURCE_ACCESS_CONTROL_VOUCHERS: \"r://access-control-vouchers\",\n WS_RESOURCE_CLIENTS: \"r://clients\",\n WS_RESOURCE_SPA_BOOKINGS: \"r://spa-bookings\",\n WS_RESOURCE_AREA_ATTENDANCE: \"r://area-attendance\",\n WS_RESOURCE_ESTABLISHMENTS: \"r://establishments\",\n WS_RESOURCE_AREAS: \"r://areas\",\n WS_RESOURCE_LOCKERS: \"r://lockers\",\n WS_RESOURCE_LOCKERS_STATE: \"r://locker-action/state\",\n WS_RESOURCE_LOCKERS_CONFIG: \"r://locker-action/config\",\n WS_RESOURCE_LOCKERS_HISTORY: \"r://locker-action/history\",\n WS_RESOURCE_LOCKER_BLOCKS: \"r://locker-blocks\",\n WS_RESOURCE_LOCKER_GATEWAYS: \"r://locker-gateways\",\n WS_RESOURCE_LOCKER_BOOKINGS: \"r://locker-bookings\",\n WS_RESOURCE_LOCKER_BOOKINGS_NEW: \"r://locker-bookings-new\",\n WS_RESOURCE_LOCKER_BOOKINGS_STOP: \"r://locker-bookings-action/stop\",\n WS_RESOURCE_LOCKER_BOOKINGS_CANCEL: \"r://locker-bookings-action/cancel\",\n WS_RESOURCE_LOCKER_INCIDENTS_NEW: \"r://locker-incidents-new\",\n WS_RESOURCE_LOCKER_INCIDENTS_UPDATE: \"r://locker-incidents-update\",\n WS_RESOURCE_INDOOR_POSITIONING: \"r://indoor-pos\",\n WS_RESOURCE_KIOVID: \"r://kiovid\",\n WS_RESOURCE_DISPLAYS: \"r://displays\",\n WS_RESOURCE_VOUCHERSHEETS: \"r://vouchersheets\",\n WS_RESOURCE_VOUCHERSHEET_PROGRESS: \"r://vouchersheet-progress\",\n WS_RESOURCE_KIOSKS: \"r://kiosks\",\n WS_RESOURCE_PRODUCTS: \"r://products\",\n WS_RESOURCE_ACTIVITIES: \"r://activities\",\n WS_RESOURCE_HARDWARE_DISCOVERY: \"r://hardware-discovery\",\n WS_RESOURCE_QUOTATIONS: \"r://quotations\",\n\n // ACCESS_CONTROL\n ACCESS_CONTROL_EVENT_UNK: 0,\n ACCESS_CONTROL_EVENT_BOX_READY: 1,\n ACCESS_CONTROL_EVENT_BOX_ERROR: 2,\n ACCESS_CONTROL_EVENT_BOX_OFFLINE: 3,\n ACCESS_CONTROL_EVENT_TS_READY: 4,\n ACCESS_CONTROL_EVENT_TS_ERROR: 5,\n ACCESS_CONTROL_EVENT_TS_OFFLINE: 6,\n ACCESS_CONTROL_EVENT_UNK_CARD: 7,\n ACCESS_CONTROL_EVENT_PASSING_ALLOW: 8,\n ACCESS_CONTROL_EVENT_PASSING_DENIED: 9,\n ACCESS_CONTROL_EVENT_PASSING_TIMEOUT: 10,\n ACCESS_CONTROL_EVENT_PASSING_CONFIRM: 11,\n ACCESS_CONTROL_EVENT_BOX_LOG: 12,\n ACCESS_CONTROL_EVENT_BARRIER_MECHANICAL_FAULT: 14,\n ACCESS_CONTROL_EVENT_SAFETY_SIGNAL: 15,\n ACCESS_CONTROL_EVENT_SAFETY_DEVICE_MISSING: 16,\n ACCESS_CONTROL_EVENT_BARRIER_TOO_FAST: 17,\n ACCESS_CONTROL_EVENT_BOOM_CONTACT_SWING_AWAY: 18,\n ACCESS_CONTROL_EVENT_VANDALISM: 19,\n ACCESS_CONTROL_EVENT_IMPACT_DETECTION: 20,\n ACCESS_CONTROL_EVENT_MAINS_POWER_FAILURE: 21,\n ACCESS_CONTROL_EVENT_EEPROM_CHECKSUM_ERROR: 22,\n ACCESS_CONTROL_EVENT_WATCHDOG_RESET: 23,\n ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_VS: 24,\n ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_SYSTEMBUS: 25,\n ACCESS_CONTROL_EVENT_ERROR_ON_HOMING: 26,\n ACCESS_CONTROL_EVENT_CAN_OVERRUN: 27,\n ACCESS_CONTROL_EVENT_CAN_HW_FAULT: 28,\n ACCESS_CONTROL_EVENT_HEARTBEAT_ERROR: 29,\n ACCESS_CONTROL_EVENT_OVER_CURRENT: 30,\n ACCESS_CONTROL_EVENT_OVER_VOLTAGE: 31,\n ACCESS_CONTROL_EVENT_UNDER_VOLTAGE: 32,\n ACCESS_CONTROL_EVENT_OVER_TEMPERATURE: 33,\n ACCESS_CONTROL_EVENT_DERATING_ERROR: 34,\n ACCESS_CONTROL_EVENT_IMPACT_DETECTION2: 35,\n ACCESS_CONTROL_EVENT_MOTOR_COMMUNICATION_ERROR: 36,\n ACCESS_CONTROL_EVENT_DBG_SAFETY_DEVICE_ACTIVE: 37,\n ACCESS_CONTROL_EVENT_HW_ENABLE_TEST_FAILED: 38,\n ACCESS_CONTROL_EVENT_SAFETY_DEVICE_TEST_FAILED: 39,\n ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR1_ACTIVE: 40,\n ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR2_ACTIVE: 41,\n ACCESS_CONTROL_EVENT_MOTOR_BOOTLOADER_ACTIVE: 42,\n ACCESS_CONTROL_EVENT_MOTOR_UPDATE_FAILURE: 43,\n ACCESS_CONTROL_EVENT_MOTOR_UPDATE_PERFORMED: 44,\n ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_A: 45,\n ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_B: 46,\n ACCESS_CONTROL_EVENT_LOOP_A_BROKEN: 47,\n ACCESS_CONTROL_EVENT_LOOP_B_BROKEN: 48,\n ACCESS_CONTROL_EVENT_LOOP_REFERENCE_ERROR: 49,\n ACCESS_CONTROL_EVENT_DBG_FREQUENCY_MEASUREMENT_ERROR: 50,\n ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_A: 51,\n ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_B: 52,\n ACCESS_CONTROL_EVENT_DBG_LOOP_MULTIPLEX_ERROR: 53,\n ACCESS_CONTROL_EVENT_DBG_NEGATIVE_FREQUENCY_DIFFERENCE: 54,\n ACCESS_CONTROL_EVENT_HARDWARE_ERROR: 55,\n ACCESS_CONTROL_EVENT_ERROR_LOOP_A: 56,\n ACCESS_CONTROL_EVENT_ERROR_LOOP_B: 57,\n\n PASSING_TYPE_CARD_QUERY: 1,\n PASSING_TYPE_TURNSTILE_PASSING: 2,\n PASSING_TYPE_PUNISH_LATE_EXIT: 3,\n\n PASSING_DIRECTION_UNSET: 0,\n PASSING_DIRECTION_IN: 1,\n PASSING_DIRECTION_OUT: 2,\n\n // BOOKINGS\n BOOKING_PERIOD_DAYTIME: 0,\n BOOKING_PERIOD_MORNING: 1,\n BOOKING_PERIOD_AFTERNOON: 2,\n BOOKING_PERIOD_EVENING: 3,\n\n BOOKING_SOURCE_WEB: 0,\n BOOKING_SOURCE_CASHREGISTER: 1,\n BOOKING_SOURCE_MOBILE: 2,\n BOOKING_SOURCE_KIOSK: 3,\n\n BOOKING_STATUS_PENDING: 0,\n BOOKING_STATUS_VALIDATED: 1,\n BOOKING_STATUS_CANCELLED: 2,\n BOOKING_STATUS_WAITING: 3,\n\n BOOKING_SLOT_WEB_MODE_ZERO: 0,\n BOOKING_SLOT_WEB_MODE_UNLIMITED: 1,\n BOOKING_SLOT_WEB_MODE_SPECIFIC: 2,\n\n BOOKING_SLOT_REPEAT_WEB_PUBLISHED_NONE: 0,\n BOOKING_SLOT_REPEAT_WEB_PUBLISHED_INFO: 1,\n BOOKING_SLOT_REPEAT_WEB_PUBLISHED_BOOK: 2,\n\n // SUBSCRIPTIONS TYPES\n // Subscription using credits system\n SUBSCRIPTION_TYPE_CREDIT: 1,\n // Subscription granting a subscription (unlimited access within a date range)\n SUBSCRIPTION_TYPE_SUBSCRIPTION: 2,\n // Subscription granting a certain amount of entries (quantity pass)\n SUBSCRIPTION_TYPE_PASS_Q: 3,\n // Subscription granting a certain amount of time (hourly pass)\n SUBSCRIPTION_TYPE_PASS_H: 4,\n // Subscription grouping up multiple other articles (pack/\"forfait\")\n SUBSCRIPTION_TYPE_PACK: 5,\n // Other type of articles\n SUBSCRIPTION_TYPE_OTHER: 6,\n // One-time entry printed as a QRcode\n SUBSCRIPTION_TYPE_2DTAG: 7,\n\n // SPA\n SPA_PRODUCT_MODE_ALL: 1,\n SPA_PRODUCT_MODE_MULTI_OF: 2,\n\n SPA_NOTIFICATION_CREATE: \"create\",\n SPA_NOTIFICATION_UPDATE: \"update\",\n SPA_NOTIFICATION_DELETE: \"delete\",\n SPA_NOTIFICATION_REMINDER: \"reminder\",\n\n // SUBSCRIPTION RENEW OPTIONS\n RENEW_OPTIONS_USE_SUBSCRIPTION_VALIDITY_ONLY: 0,\n RENEW_OPTIONS_ADD_REMAINING_VALIDITY: 1,\n\n RENEW_OPTIONS_KEEP_BALANCE_ALWAYS: 0,\n RENEW_OPTIONS_KEEP_BALANCE_IF_NOT_EXPIRED: 1,\n RENEW_OPTIONS_KEEP_BALANCE_NEVER: 2,\n\n GROUP_EXIT_AUTO_NEVER: 0,\n GROUP_EXIT_AUTO_MANUAL_ONLY: 1,\n GROUP_EXIT_AUTO_ALWAYS: 2,\n\n // PRODUCT VALIDITY TYPES\n // Product is valid starting on sale date\n PRODUCT_VALIDITY_SALE_DATE: 1,\n // Product is valid at a fixed date (ValidityBeginDate field on Product)\n PRODUCT_VALIDITY_FIXED: 2,\n // Product validity period begins on first use\n PRODUCT_VALIDITY_FIRST_USE: 3,\n // Product validity begins at an arbitrary date\n PRODUCT_VALIDITY_CUSTOM_DATE: 4,\n // Product validity period match a corresponding booking (used for periodic bookings)\n PRODUCT_VALIDITY_MATCH_BOOKING_DATE: 5,\n // Product validity start and end date are set during sale\n PRODUCT_VALIDITY_CUSTOM_PERIOD: 6,\n\n // Duration types\n DURATION_PER_DAY: 1,\n DURATION_PER_MONTH: 2,\n DURATION_PER_YEAR: 3,\n\n // FREQUENCIES\n FREQUENCY_NEVER: 0,\n FREQUENCY_OCCASIONAL: 1,\n FREQUENCY_MONTHLY: 2,\n FREQUENCY_YEARLY: 3,\n\n MODE_FIRST_PURCHASE_FIX_DATES: 1,\n MODE_FIRST_PURCHASE_DATE_TO_DATE: 2,\n\n // SALES\n SALE_STATE_DRAFT: 1,\n SALE_STATE_PAUSED: 2,\n SALE_STATE_PAYING: 3,\n SALE_STATE_READY_CONFIRMED: 4,\n SALE_STATE_CONFIRMED: 5,\n SALE_STATE_CANCELLED: 6,\n SALE_STATE_PAUSED_PAYING: 7,\n SALE_STATE_PAYMENT_PENDING: 8,\n SALE_STATE_ARRHES: 9,\n SALE_STATE_SCHEDULED: -1,\n\n BOOKING_SLOT_REPEAT_STATUS_DRAFT: 0,\n BOOKING_SLOT_REPEAT_STATUS_VALID: 1,\n BOOKING_SLOT_REPEAT_STATUS_DELETED: 2,\n\n // CHECKMAIL STATUS\n MAIL_STATUS_OK: 1,\n MAIL_STATUS_UNDETERMINED: 2,\n MAIL_STATUS_BAD_FORMAT: 3,\n MAIL_STATUS_HOST_UNRESOLVABLE: 4,\n MAIL_STATUS_UNKNOWN_USER: 5,\n\n // Booking refused code\n BOOKING_IS_AUTHORIZED: 0,\n LIMIT_BOOKING_TIME_PASSED: 1,\n SLOT_OUT_OF_VISIBILITY: 2,\n NO_PRODUCT: 3,\n WRONG_CLIENT_GROUP: 4,\n SWIMING_LEVEL_NOT_GOOD: 5,\n MAX_BOOKING_PER_WEEK_REACHED: 6,\n ALREADY_BOOKED: 7,\n NO_PLACE_AVAILABLE: 8,\n NO_PLACE_AVAILABLE_WEB: 9,\n WEB_MODE_UNAVAILABLE: 10,\n\n // Kiovid Type\n UNKNOWN_KIOVID: -1,\n KIOSK_KIOVID: 0,\n CASHREGISTER_KIOVID: 1,\n\n // CLIENTS\n CLIENTS: {\n GENDERS: {\n UNKNOW: 'U',\n FEMALE: 'F',\n MALE: 'M',\n },\n STATE: {\n DISABLED: 0,\n VALID: 1,\n }\n },\n\n CLIENT_TYPE_PERSON: 1, // Physical person\n CLIENT_TYPE_ORG: 2, // Company/organization\n CLIENT_TYPE_OTHER: 3, // Other\n CLIENT_ORG_CE: 4, // CE\n CLIENT_ORG_COLLECTIVITY: 5, // Mairies, etc\n CLIENT_ORG_GROUPING: 6, // Groupement scolaires\n CLIENT_ORG_ORGANIZATION: 7, // Organizations\n CLIENT_ORG_INDIVIDUAL: 8, // Individual\n CLIENT_ORG_PRIVATE: 9, // Private\n CLIENT_ORG_PUBLIC: 10, // Public establishment\n\n PRICING_DEFAULT: \"DEFAULT\",\n\n GLOBAL_PARAMS: {\n PARAM_DECIMAL_AMOUNT: 1,\n PARAM_CURRENCY_SIGN: 2,\n PARAM_ALERT_STOCK: 3, // DON'T USE ME, RECYLE ME !\n PARAM_THEME_DEFAULT: 4,\n PARAM_ASSOCIATION_CLIENT_AUTO: 5,\n PARAM_LANGUAGE: 6,\n PARAM_KEYPAD: 7,\n PARAM_RECEIPT_CHECKED: 8,\n PARAM_DATA_PATH: 9,\n PARAM_PRODUCT_LIST_FIRST: 10,\n PARAM_PRODUCT_FIRST_IN_SALE: 11,\n PARAM_PRODUCT_FAV: 12,\n PARAM_MULTI_CLIENT: 13,\n PARAM_POSTAL_CODE_AFTER_SALE: 14,\n PARAM_CHANGE_PRICE_ON_LINE: 15,\n PARAM_PAYMENT_LATER: 16,\n PARAM_MULTI_PAYMENT: 17,\n PARAM_CARD_ENABLE: 18,\n PARAM_CHANGE_TYPE_PAYMENT_AFTER_SALE: 19,\n PARAM_PAUSE_SALE: 20,\n PARAM_MAX_CLIENTS_IN_SALE: 21,\n PARAM_ARCHIVE_AUTO: 22,\n PARAM_KEYPAD_DISCOUNT: 23,\n PARAM_BEGIN_PERIOD: 24,\n PARAM_NBR_WRONG_CASHFUND: 25,\n PARAM_CASHBOOK_TYPE_VERIF: 26,\n PARAM_SALE_LOST: 27,\n PARAM_PRINTER_RECEIPT: 28,\n PARAM_PRINTER_BILL: 29,\n PARAM_VOUCHER: 30,\n PARAM_UNIT_POINT: 31,\n PARAM_DELAYED_PAYEMENT: 32,\n PARAM_CREDIT: 33,\n PARAM_PAYMENT_SELECT_TYPE_FIRST: 34,\n PARAM_MQTT_ENABLE: 35,\n PARAM_BROKER_ADDRESS: 36,\n PARAM_SYNCHRO_WEB: 37,\n PARAM_DEV_TOOLS: 38,\n PARAM_API_KEY: 39,\n PARAM_CENTRAL_ADDRESS: 40,\n PARAM_SQL_ADDRESS: 41,\n PARAM_USE_TPE: 42,\n PARAM_TPE_COM_PORT: 43,\n PARAM_INTERNET: 44,\n PARAM_SWITCH_CLIENT_AUTO: 45,\n PARAM_CASH_DRAWER: 46,\n PARAM_UI_ZOOM_FACTOR: 47,\n PARAM_UPDATER_ADDRESS: 48,\n PARAM_UPDATER_API_KEY: 49,\n PARAM_MESSAGES_JUSTIFICATION: 50,\n PARAM_VALIDATION_PAYMENT_AUTO: 51,\n PARAM_PAYMENT_MODE_NORMAL: 52,\n PARAM_AUTO_DECO_TIME: 53,\n PARAM_CASH_DRAWER_ENABLE: 54,\n PARAM_WIDTH_RECEIPT: 55,\n PARAM_QRCODE_MESSAGE: 56,\n PARAM_QRCODE_PRINTER: 57,\n PARAM_BARCODE_PRINTER: 58,\n PARAM_BARCODE_SIZE: 59,\n PARAM_QRCODE_PARAMS: 60,\n PARAM_COLOR_PRICINGS_PRIORITY: 61,\n PARAM_USE_EXTERNAL_DISPLAY: 62,\n PARAM_PAYMENT_DIFF_FOR_CLIENT: 63,\n PARAM_AUTOCREATE_ONLINE_ACCOUNT: 64,\n PARAM_ASK_FOR_OTHER_CARD: 65,\n PARAM_SHOW_MORE_TOOLBAR: 66,\n PARAM_SHOW_SUBS_IN_TICKET: 67,\n PARAM_PRODUCTS_IN_CASHBOOK_TICKET: 68,\n PARAM_AUTO_PRINT_CASHBOOK_TICKET: 69,\n PARAM_DIMS1_URL: 70,\n PARAM_DIMS2_URL: 71,\n PARAM_DIMS2_API_KEY: 72,\n PARAM_DENY_ASSIGNED_CARD: 73,\n PARAM_SHORT_CASHBOOK_TICKET: 74,\n PARAM_EXPORT_SKIP_AVOIRS: 75,\n PARAM_PRINT_ON_FAST_TICKET: 76,\n PARAM_EXPORT_ADD_NEW_PAGE: 77,\n PARAM_EXPORT_SKIP_DIFFERED: 78,\n PARAM_DUPLICATE_FOR_ORG: 79,\n PARAM_AUTO_PRINT_CASH_FUND_START: 80,\n PARAM_AUTO_PRINT_CASH_FUND_END: 81,\n PARAM_CLIENTS_NAME_STANDARDIZATION: 82,\n PARAM_CORRECTION_GRAND_TOTAL: 83,\n PARAM_SUB_INITIAL_CASHFUND: 84,\n PARAM_MAILMAN_ADDRESS: 85,\n PARAM_SHOW_MQTT_STATUS: 86,\n PARAM_USE_CHEQUE_READER: 87,\n PARAM_CHEQUE_READER_COM: 88,\n PARAM_SHOW_TOTAL_QTY_ON_CARD: 89,\n PARAM_REFRESH_ALL_SUBS_ON_CARD: 90,\n PARAM_CASHREGISTER_ESTABLISHMENT: 91, // DON'T USE ME, RECYLE ME !\n PARAM_BILL_SUMMARY_TOP_MARGIN: 92,\n PARAM_ARRHES: 93,\n PARAM_TVA_ON_PAYMENTS_STATS: 94,\n PARAM_SPA_BOOKINGS_ON_TRACKING: 95,\n PARAM_SHOW_PERCENTAGE_ON_EXPORT: 96,\n PARAM_TICKET_TEMPLATE: 97,\n PARAM_ACCESS_CONTROL_VOUCHER_TEMPLATE: 98,\n PARAM_ADD_MORE_INFOS_AT_SALE_END: 99,\n PARAM_SHOW_ESTABLISHMENT_LOGO_ON_TICKET: 100,\n PARAM_BILL_TEMPLATE: 101,\n PARAM_VOUCHER_TEMPLATE: 102,\n PARAM_VOUCHER_GIFT_CARD_TEMPLATE: 103,\n PARAM_VOUCHER_DISCOUNT_TEMPLATE: 104,\n PARAM_VOUCHER_WEB_GIFT_CARD_TEMPLATE: 105,\n PARAM_ENABLE_SALE_GIFT: 106,\n PARAM_HIDE_FAMILIES_IN_SALE: 107,\n PARAM_PREVENT_CREDIT_CARD_CANCEL: 108,\n PARAM_WEB_ACCESS_CONTROL_VOUCHER_TEMPLATE: 109,\n PARAM_LOCKER_DELAY_BETWEEN_BOOKINGS: 110,\n PARAM_LOCKER_GATEWAY_SCAN_LOOP_INTERVAL: 111,\n PARAM_UPDATE_IN_PLACE: 112,\n PARAM_USE_EXIT_BOXES_FOR_MANUAL_ACCESS: 113,\n PARAM_SKIP_EXTERNAL_DEFERED_IN_PRODUCTS_EXPORT: 114,\n PARAM_ENABLE_COVID_PASS: 115,\n PARAM_AUTOCREATE_PERIODS: 116,\n PARAM_EXPORT_ADD_CAGNOTTE_COLLECTIONS: 117,\n PARAM_CREDIT_VOUCHER_REMAINING_AMOUNT: 118,\n PARAM_SHOW_ALL_DEFERRED_PAYMENTS: 119,\n PARAM_ZEBRA_WB_TEMPLATE: 120,\n PARAM_ACV_ON_ZEBRA_WB: 121,\n PARAM_VOUCHER_GIFT_CARD_VALIDITY: 122,\n PARAM_CANCEL_SALE_WITH_ALL_PAYMENT_MEAN: 123,\n PARAM_PAUSE_SALE_STARTED_PAYING: 124,\n PARAM_CREDIT_UNITS_FOR_GIFTING_CLIENT: 125,\n PARAM_USE_TURNSTILE_MODE: 126,\n PARAM_ENABLE_CIVIL_REF: 127,\n PARAM_DEFAULT_AUTODEBIT_DAY: 128,\n PARAM_COLLECTABLE_VOUCHER_TEMPLATE: 129,\n PARAM_ZEBRA_PRINTER: 130,\n PARAM_IMAGE_USED_FOR_BILL: 131,\n PARAM_PRINTS_WITH_SELLER_NAME: 132,\n PARAM_OPEN_DRAWER_ON_CREDIT_CARD_PAYMENT: 133,\n PARAM_TPE_COM_MODE: 134,\n PARAM_TPE_COM_IP: 135,\n PARAM_EXPORT_PRICING_VENTILATION: 136,\n PARAM_TPE_PROTOCOL_VERSION: 137,\n PARAM_ENABLE_DISCOUNTS: 138,\n PARAM_BILL_FOOTER_NOTE: 139,\n PARAM_CASHDRAWER_JUSTIFICATION_MESSAGES: 140,\n PARAM_FORBID_EXCEEDING_VOUCHER_PAYMENT: 141,\n PARAM_ENABLE_CLIENT_PICTURES: 142,\n PARAM_WEBCAM_DEVICE: 143,\n PARAM_DEFAULT_PRICING_CODES: 144,\n PARAM_PRIORITY_CITIES: 145,\n PARAM_DIMS2_LOCAL_URL: 146,\n PARAM_HIDE_OTHER_ESTABLISHMENTS_ACCESS_CONTROL: 147,\n PARAM_SHOW_BOOKINGS_ON_TICKET: 148,\n PARAM_RESET_SUB_START_DATE_ON_RECHARGE: 149,\n PARAM_TPE_INTERVENTION_DELAY: 150,\n PARAM_DISABLE_SCREEN_RECORDING: 151,\n PARAM_ADDRESS_FORCE_UPPERCASE: 152,\n PARAM_REQUIRED_CLIENT_FIELDS: 153,\n PARAM_STOP_SUBSCRIPTION_JUSTIFICATION_MESSAGES: 154,\n PARAM_HIDE_ARRHES_ON_EXPORT: 155,\n PARAM_CREDIT_EXPIRATION_MODE: 156,\n PARAM_CREDIT_EXPIRATION_DELAY: 157,\n PARAM_CHANGE_DEFAULT_CLIENT_TAB: 158,\n PARAM_EXPORT_ONE_DEFERED_PER_CLIENT: 159,\n PARAM_CREDIT_LABEL: 160,\n PARAM_UNITS_LABEL: 161,\n PARAM_STRONGLY_SUGGEST_CAGNOTTE: 162,\n PARAM_STOCK_REGUL_CUSTOM_REASONS: 163,\n PARAM_MQTTV2_FLAGS: 164,\n PARAM_OVERPAYMENT_CHART_ACCOUNT_NUMBER_ID: 165,\n PARAM_EXPORT_COUNT_DIFFERED: 166,\n PARAM_FORBID_CREDIT_PARTIAL_PAYMENT: 167,\n PARAM_FORCE_PARENT_FOR_UNDERAGED_CLIENTS: 168,\n PARAM_ENABLE_NON_NF525_OPTIONS: 169,\n PARAM_VARIANTS_TYPES: 170\n },\n\n SMS: {\n SERVICE_UNKNOWN: \"aucun service\",\n ENDPOINT_UNKNOWN: \"aucune passerelle\",\n OPERATOR_UNKNOWN: 0,\n OPERATOR_OVH: 1,\n OPERATORS: [\n {\n value: 0,\n text: \"aucun opérateur\",\n },\n {\n value: 1,\n text: \"OVH\",\n },\n ],\n BY_ACTIVITY: 0,\n BY_DAY: 1,\n GROUP_BY: [\n {\n value: 0,\n text: \"par activité\",\n description: \"Un SMS par activité (potentiellement plusieurs SMS par jour).\",\n },\n {\n value: 1,\n text: \"par jour\",\n description: \"Un SMS par jour (rappel de toutes les activités du jour concerné).\",\n },\n ],\n CONFIRMATION_STATUS: {\n NONE: 0,\n DESIRED: 1,\n NO_PHONENUMBER: 2,\n UNDELIVERED: 3,\n AWAITING: 4,\n NO_REPLY: 5,\n REPLY_YES: 6,\n REPLY_NO: 7,\n REPLY_OTHER: 8,\n NO_REPLY_EXPECTED: 9,\n },\n },\n\n VOUCHER_TYPES: {\n GIFT_CARD: 1,\n DISCOUNT: 2,\n CREDIT: 3,\n CREDIT_UNIT: 4,\n PRODUCT: 5,\n ORDER: 6,\n COLLECTABLE: 7\n },\n\n VOUCHER_STATE: {\n PENDING: \"pending\",\n USED: \"used\",\n EXPIRED: \"expired\",\n CANCELLED: \"cancelled\"\n },\n\n TEMPLATE_TYPES: {\n TICKET: \"ticket\",\n VOUCHER: \"voucher\",\n VOUCHER_WEB_GIFT_CARD: \"voucher-web-gift-card\",\n VOUCHER_GIFT_CARD: \"voucher-gift-card\",\n VOUCHER_DISCOUNT: \"voucher-discount\",\n ACCESS_CONTROL_VOUCHER: \"access-control-voucher\",\n WEB_ACCESS_CONTROL_VOUCHER: \"web-access-control-voucher\",\n VOUCHER_COLLECTABLE: \"voucher-collectable\",\n BILL: \"bill\",\n RENEWABLE_SUBSCRIPTION_CONTRACT: \"renewable-subscription-contract\",\n },\n\n COMMUNICATIONS: {\n CHANNEL_KEEP_ALIVE: \"keepAlive\",\n CHANNEL_SUBSCRIBE: \"subscribe\",\n CHANNEL_UNSUBSCRIBE: \"unsubscribe\",\n CHANNEL_NOTIFY: \"notify\",\n CHANNEL_ERROR: \"error\",\n\n RESOURCE_ENVIRONMENT: \"environment\",\n RESOURCE_CONNECTIVITY: \"connectivity\",\n RESOURCE_SESSION_ID: \"sessionID\",\n RESOURCE_CASHREGISTER: \"cashregisters\",\n RESOURCE_CASHREGISTER_HEALTH: \"cashregisterHealth\",\n RESOURCE_CASHREGISTER_UPDATE_PROGRESS: \"cashregisterUpdateProgress\",\n RESOURCE_CASHREGISTER_SYNC_PROGRESS: \"cashregisterSyncProgress\",\n RESOURCE_CASHREGISTER_SYNC_OUT_PROGRESS: \"cashregisterSyncOutProgress\",\n RESOURCE_CASHREGISTER_SCREEN_RECORDING: \"cashregisterScreenRecording\",\n RESOURCE_TURNSTILE_INFO: \"turnstile-info\",\n RESOURCE_TURNSTILE_HISTORY: \"turnstile-history\",\n RESOURCE_ACCESS_CONTROL_VOUCHERS: \"access-control-vouchers\",\n RESOURCE_CLIENTS: \"clients\",\n RESOURCE_SPA_BOOKINGS: \"spa-bookings\",\n RESOURCE_AREA_ATTENDANCE: \"area-attendance\",\n RESOURCE_COMPARISON_PROGRESS: \"comparison-progress\",\n RESOURCE_RESYNC_PROGRESS: \"resync-progress\",\n },\n\n EXPORT_TYPES: {\n EXCEL: {\n PRODUCT_SIMPLE: 1,\n PRODUCT_WITH_PRICING: 2,\n PAYMENTS: 3,\n EXCEPTED_PAYMENTS: 4,\n SALES_SIMPLE: 5,\n SALES_LINES: 6,\n SALES_PAYMENTS: 7,\n CASHFUND_SIMPLE: 8,\n CASHFUND_DETAILS: 9,\n GENERAL: 10,\n SALES_CREDIT_NOTE: 11,\n CHEQUES: 12,\n DEFERREDPAYMENTS: 13,\n DISCOUNTS: 14,\n SALES_CORRECTIONS: 15,\n JET: 16,\n STOCKS: 17,\n DOCUMENTS: 18,\n GT: 19,\n POSTAL_CODES: 20,\n PAYMENT_TYPES: 21,\n DEFERRED_PAYMENTS_BY_CLIENTS: 22,\n SALES_NOMINATIVE_PAYMENTS: 23,\n MODIFICATIONS: 24,\n DEFERRED_EXTERNAL_PAYMENTS_BY_CLIENTS: 25,\n DEFERRED_EXTERNAL_PAYMENTS: 26,\n SLIPS: 27,\n PAUSED_SUBSCRIPTIONS: 28,\n PAYMENT_TYPES_PER_DAY: 29,\n },\n\n PDF: {\n COLLECTION: 1,\n PRODUCTS: 2,\n FAMILIES: 3,\n PRODUCTS_BY_FAMILIES: 4,\n CLIENT_SALES: 5,\n CREDIT_CARD_PAYMENTS: 6,\n SLIPS: 7,\n HOLIDAY_VOUCHER_SLIPS: 8,\n SPORTS_COUPONS: 9,\n CREDIT_NOTES: 10,\n SPECIAL_PRICES: 11,\n DEFERRED_PAYMENTS: 12,\n DEFERRED_PAYMENTS_BY_CLIENTS: 13,\n ARRHES: 14,\n MODIFICATIONS: 15,\n DEFERRED_EXTERNAL_PAYMENTS: 16,\n DEFERRED_EXTERNAL_PAYMENTS_BY_CLIENTS: 17,\n PAUSED_SUBSCRIPTIONS: 18,\n TVA_BY_FAMILIES: 22\n },\n },\n\n KIOSKS: {\n TYPE: {\n SCHOOL_KIOSK: 1,\n TIME_KIOSK: 2,\n BOOKING_KIOSK: 3,\n PURCHASE_KIOSK: 4,\n PAY_LATER_KIOSK: 5,\n CONSULTATION_KIOSK: 6,\n },\n\n ESTABLISHMENTS_FILTER: {\n SHOW_ONLY_KIOSK_ESTABLISHMENT: 1,\n SHOW_PREFILTER_KIOSK_ESTABLISHMENT: 2,\n SHOW_ALL_ESTABLISHMENTS: 3,\n },\n },\n\n LOCKERS: {\n USER_CODE: {\n MIN_LENGTH: 4,\n MAX_LENGTH: 4,\n },\n\n MASTER_CODE: {\n MIN_LENGTH: 6,\n MAX_LENGTH: 6,\n },\n\n LOCKER_STATE: {\n STATE_OPENED: 0,\n STATE_CLOSED: 1,\n STATE_ERROR: 2,\n STATE_UNKNOWN: 3,\n },\n\n LOCKER_STATUS: {\n STATUS_AVAILABLE: 0,\n STATUS_IN_USE: 1,\n STATUS_PREPARED: 2,\n STATUS_OVERSTAY: 3,\n STATUS_DISABLED: 4,\n STATUS_IN_ERROR: 5,\n },\n\n LOCKER_ACCESS_MODE: {\n FREE_ACCESS: 0,\n RESERVATION: 1,\n AFFECTATION: 2,\n },\n\n LOCKER_BOOKING_MODE: {\n MODE_BOOKING: 0,\n MODE_AFFECTATION: 1,\n MODE_SINGLE_USE: 2,\n },\n\n INCIDENT_TYPE: {\n OTHER_INCIDENT: 0,\n NO_LOCKERS_AVAILABLE_AT_BOOKING_START_INCIDENT: 1,\n NO_LOCKERS_AVAILABLE_AT_BOOKING_RETRY_INCIDENT: 2,\n NOT_OPENED_AT_THE_END_OF_BOOKING_INCIDENT: 3,\n LOW_BATTERY_LOCKER_INCIDENT: 4,\n LOCKER_STATE_NOT_OPENED_INCIDENT: 5,\n LOCKER_STATE_NOT_CLOSED_INCIDENT: 6,\n OFFLINE_GATEWAY_INCIDENT: 7,\n OFFLINE_LOCKER_INCIDENT: 8,\n NON_VALID_MASTER_CODE_LOCKER_INCIDENT: 9,\n },\n\n BOOKING_STATE: {\n BOOKING_REGISTERED: 0,\n BOOKING_STARTED: 1,\n BOOKING_ENDED: 2,\n BOOKING_CANCELED: 3,\n BOOKING_OVERSTAY: 4,\n BOOKING_ERROR: 5,\n BOOKING_ENDED_WITH_OVERSTAY: 6,\n },\n\n EVENT_TYPE: {\n TIME_ADVANCE: 3,\n TIME_DELAY: 4,\n MECHANICAL_FAILURE: 9,\n USER_OPENING: 16,\n MASTER_OPENING: 17,\n USER_CLOSING: 18,\n INITIALIZATION: 21,\n AUTOMATIC_OPEN_RENT_TIME: 23,\n NON_VALID_MASTER_CODE: 32,\n TIMED_OUT_CODE: 34,\n OCCUPIED_CARD: 38,\n NON_VALID_CARD: 39,\n USER_OPENING_KEYPAD: 65,\n USER_CLOSING_KEYPAD: 66,\n MASTER_OPENING_KEYPAD: 67,\n MASTER_CLOSING_KEYPAD: 68,\n AUTOMATIC_OPENING: 82,\n MASTER_CLOSING: 83,\n LOW_BATTERY: 84,\n FULL_CARD: 85,\n ERASE_BT: 134,\n STREAMLOR_FREE_CONFIGURATION: 200,\n STREAMLOR_DEDICATED_CONFIGURATION: 201,\n STREAMLOR_MASTER_OPENING: 202,\n STREAMLOR_MASTER_CLOSING: 203,\n },\n },\n\n STATS: {\n EXPORT_TYPES: {\n SALES_SELLERS: \"sales-sellers\",\n SALES_CLIENTS: \"sales-clients\",\n SALES_SPA_SERVICES: \"sales-spa-services\",\n SALES_SPA_CARES: \"sales-spa-cares\",\n SALES_SPA_BOOKINGS: \"sales-spa-bookings\",\n },\n },\n\n RESA_PARAMS: {\n SMSER_GROUP_BY: \"smser_group_by\",\n SMSER_OPERATOR: \"smser_operator\",\n SPA_PLANNINGS_START_HOUR: \"spa_plannings_start_hour\",\n SPA_PLANNINGS_START_MIN: \"spa_plannings_start_min\",\n SPA_PLANNINGS_END_HOUR: \"spa_plannings_end_hour\",\n SPA_PLANNINGS_END_MIN: \"spa_plannings_end_min\",\n PLANNING_START_HOUR: \"planning_start_hour\",\n PLANNING_START_MIN: \"planning_start_min\",\n PLANNING_END_HOUR: \"planning_end_hour\",\n PLANNING_END_MIN: \"planning_end_min\",\n BOOKING_MARGIN_MINUTES: \"booking_margin_minutes\",\n NUMBER_OF_WEEK_VISIBLE: \"number_of_week_visible\",\n SLOT_VISIBILITY_UNLOCK_WEEKDAY: \"slot_visibility_unlock_weekday\",\n SLOT_VISIBILITY_UNLOCK_TIME: \"slot_visibility_unlock_time\",\n CANCELLING_DELAY: \"cancelling_delay\",\n LIMIT_TIME_FOR_BOOKING: \"limit_time_for_booking\",\n HOURS_BEFORE_IMMEDIATE_BOOKING: \"hours_before_immediate_booking\",\n MAX_IMMEDIATE_BOOKINGS_BY_DAY: \"max_immediate_bookings_by_day\",\n MAX_ACTIVE_BOOKINGS: \"max_active_bookings\",\n SUBSCRIPTION_PASSING_DELAY_MINUTES: \"subscription_passing_delay_minutes\",\n TIME_PASS_MIN_DEBIT: \"time_pass_min_debit\",\n TIME_PASS_MIN_REMAINING: \"time_pass_min_remaining\",\n TIME_PASS_MIN_STOP: \"time_pass_min_stop\",\n UNIQUE_DEBIT_PER_ZONE: \"unique_debit_per_zone\",\n BOOKING_CANCELLATION_DAYS_LIMIT: \"booking_cancellation_days_limit\",\n ANONYMIZE_DELAY: \"anonymize_delay\",\n REQUIRE_COVID_PASS: \"require_covid_pass\",\n DELAY_BETWEEN_RESERVATIONS: \"delay_between_reservations\",\n INTERVAL_BETWEEN_GATEWAY_LOOPS: \"interval_between_gateway_loops\",\n USERCODE_LENGTH: \"usercode_length\",\n ENABLE_LATE_EXIT_PENALTY: \"enable_late_exit_penalty\",\n LATE_EXIT_DELAY: \"late_exit_delay\",\n LATE_EXIT_BOOKING_TOLERANCE: \"late_exit_booking_tolerance\",\n ENABLE_SUB_EXPIRATION_BOOKING_CHECK: \"enable_sub_expiration_booking_check\",\n BOOKING_VALIDATES_ENTIRE_DAY: \"booking_validates_entire_day\",\n LOCKERS_LED: \"lockers_led\",\n COVID_PASSING_DELAY_MINUTES: \"covid_passing_delay_minutes\",\n SMSER_AWAITING_RESPONSE_SPA_BOOKINGS: \"smser_awaiting_response_spa_bookings\",\n SPA_HUMAN_CONFIRMATION: \"spa_human_confirmation\",\n SPA_SHOW_SHORT_LABEL: \"spa_show_short_label\",\n PLANNING_SHOW_FILLING: \"planning_show_filling\",\n PAYPAL_ENABLED: \"paypal_enabled\",\n PAYFIP_ENABLED: \"payfip_enabled\",\n STATS_EXPORTS_EXCEL_DISPLAY_NO_DATA: \"stats_exports_excel_display_no_data\",\n LOCKERS_UNIQUE_MASTER_CODE: \"lockers_unique_master_code\",\n LOCKERS_BUZZER: \"lockers_buzzer\",\n LOCKERS_BLOCK_ON_FAILS: \"lockers_block_on_fails\",\n LOCKERS_AUTO_OPENING: \"lockers_auto_opening\",\n LOCKERS_AUTO_CLOSING: \"lockers_auto_closing\",\n LOCKERS_BLOCK_BUZZER: \"lockers_block_buzzer\",\n LOCKERS_BLOCK_BLOCK_ON_FAILS: \"lockers_block_block_on_fails\",\n LOCKERS_BLOCK_AUTO_OPENING: \"lockers_block_auto_opening\",\n LOCKERS_BLOCK_AUTO_CLOSING: \"lockers_block_auto_closing\",\n LOCKERS_DELAY_BETWEEN_RESERVATIONS: \"lockers_delay_between_reservations\",\n LOCKERS_BLOCK_OPENING_IF_LATE: \"lockers_block_opening_if_late\",\n LOCKERS_SCHEDULED_HISTORY_FETCH: \"lockers_scheduled_history_fetch\",\n SMSER_SENDER: \"smser_sender\",\n SMSER_CUSTOM_MESSAGE_SPA_BOOKINGS: \"smser_custom_message_spa_bookings\",\n SMSER_ENDPOINT: \"smser_endpoint\",\n SMSER_APPLICATION_KEY: \"smser_application_key\",\n SMSER_APPLICATION_SECRET: \"smser_application_secret\",\n SMSER_CONSUMER_KEY: \"smser_consumer_key\",\n SMSER_SELECTED_SERVICE: \"smser_selected_service\",\n MAILER_WEBSITE_NAME: \"mailer_website_name\",\n MAILER_WEBSITE_LINK: \"mailer_website_link\",\n MAILER_LOGO_URL: \"mailer_logo_url\",\n MAILER_FROM: \"mailer_from\",\n MAILER_COPYRIGHT: \"mailer_copyright\",\n MAIN_DEFAULT_MODULE: \"main_default_module\",\n MAILER_CUSTOM_SPA_CREATE: \"mailer_custom_spa_create\",\n MAILER_CUSTOM_SPA_MODIFY: \"mailer_custom_spa_modify\",\n MAILER_CUSTOM_SPA_DELETE: \"mailer_custom_spa_delete\",\n MAILER_CUSTOM_SPA_REMINDER: \"mailer_custom_spa_reminder\",\n PAYPAL_LIVE_CLIENT_ID: \"paypal_live_client_id\",\n PAYPAL_SANDBOX_CLIENT_ID: \"paypal_sandbox_client_id\",\n PAYPAL_LIVE_SECRET_ID: \"paypal_live_secret_id\",\n PAYPAL_SANDBOX_SECRET_ID: \"paypal_sandbox_secret_id\",\n PAYPAL_MODE: \"paypal_mode\",\n PAYFIP_CLIENT_ID: \"payfip_client_id\",\n PAYFIP_MODE: \"payfip_mode\",\n WEB_ESTABLISHMENT: \"web_establishment\",\n LOCKERS_AUTO_OPENING_HOUR: \"lockers_auto_opening_hour\",\n PLANNING_DAYS: \"planning_days\",\n STATS_SEASON: \"stats_season\",\n STATS_PERFORMANCE_TRESHOLDS: \"stats_performance_tresholds\",\n LOCKERS_AUTO_OPENING_DAYS: \"lockers_auto_opening_days\",\n EXTENDING_VALIDITY_DATE_FOR_SUBSCRIPTIONS: \"extending_validity_date_for_subscriptions\",\n BOOKING_OPENING_DATE: \"booking_opening_date\",\n BOOKING_TERMINAL_PLANNING_TYPE: \"booking_terminal_planning_type\",\n MAILER_CUSTOM_ACTIVITIES_CONFIRM: 'mailer_custom_activities_confirm\"',\n MAILER_CUSTOM_ACTIVITIES_CANCEL: \"mailer_custom_activities_cancel\",\n MAILER_CUSTOM_SALE_CONFIRMATION: \"mailer_custom_sale_confirmation\",\n MAILER_CUSTOM_SEND_ALL_DOCUMENTS: \"mailer_custom_send_all_documents\",\n SPA_ABSENCES_AMOUNT_WARNING: \"spa_absences_amount_warning\",\n QUOTATIONS_PAYMENT_TYPES_CREDIT_CARD: \"quotations_payment_types_credit_card\",\n QUOTATIONS_PAYMENT_TYPES_BANK_TRANSFER: \"quotations_payment_types_bank_transfer\",\n QUOTATIONS_PAYMENT_TYPES_DEFERRED: \"quotations_payment_types_deferred\",\n QUOTATIONS_EXPIRATION_DELAY: \"quotations_expiration_delay\",\n QUOTATIONS_SALES_EXPIRATION_DELAY: \"quotations_sales_expiration_delay\",\n QUOTATIONS_VOUCHERS_EXPIRATION_DELAY: \"quotations_vouchers_expiration_delay\",\n QUOTATIONS_MINIMUM_AMOUNT: \"quotations_minimum_amount\",\n QUOTATIONS_ORDER_FOOTER_TEXT: \"quotations_order_footer_text\",\n QUOTATIONS_ATTACHED_FILE_ID: \"quotations_attached_file_id\",\n EXIT_DELAY_BEFORE_PAY_LATER: 'exit_delay_before_pay_later',\n EXIT_DELAY_AFTER_PAY_LATER: 'exit_delay_after_pay_later',\n DENY_EMPTY_HOURLY_PASS_ON_EXIT: 'deny_empty_hourly_pass_on_exit',\n AUTO_POWEROFF_KIOSKS: 'auto_poweroff_kiosks',\n EXIT_UPDELAY_BEFORE_PAY_LATER_WITH_SPA_BOOKING: 'exit_updelay_before_pay_later_with_spa_booking',\n DURATION_EXIT_AUTH_AFTER_TIMESLOT: 'duration_exit_auth_after_timeslot',\n SAGE_EMAIL: 'sage_email',\n DEFAULT_OUT_TURNSTILE: 'default_out_turnstile',\n GENERATE_SHEET_AFTER_SALE_CONFIRMED: 'generate_sheet_after_sale_confirmed',\n WEB_STOCK_ENABLED: \"web_stock_enabled\",\n WEB_STOCK_ESTABLISHMENT: \"web_stock_establishment\",\n AUTO_EXPORT_ENABLED: \"auto_export_enabled\",\n AUTO_EXPORT_EMAIL: \"auto_export_email\",\n AUTO_EXPORT_SELECTED: \"auto_export_selected\",\n AUTO_EXPORT_FREQUENCY: \"auto_export_frequency\",\n AUTO_EXPORT_DAY: \"auto_export_day\",\n AUTO_EXPORT_TIME: \"auto_export_time\",\n MEDICERT_VALIDITY: \"medicert_validity\",\n SHOW_ACCESS_CONTROL_PRODUCT_FAMILIES: \"show_access_control_product_families\",\n CLUB_TIMESLOTS_DISPLAY_START_OFFSET: \"club_timeslots_display_start_offset\"\n },\n\n BOOKING_CHECK_CODES: {\n AUTHORIZED: \"\",\n // time limit to book a slot, after this slot has begun is passed --> params limit_time_for_booking\n TIME_PASSED: \"limit_time_passed\",\n // the slot on which a booking is being made should not be visible on the planning --> params number_of_week_visible\n SLOT_OUT_OF_VISIBILITY: \"slot_out_of_visibility\",\n // the client doesn't have a card with an eligible product for the slot\n NO_PRODUCT: \"no_product\",\n // the client doesn't have a (unit) voucher\n NO_VOUCHER: \"no_voucher\",\n // if the slot is restraint to a group(or groups), the client trying to book the slot doesn't belong to one of the authorized groups\n WRONG_CLIENT_GROUP: \"wrong_client_group\",\n // if the slot is restraint to a swiming level, the client doesn't have the level necessary\n LEVEL_NOT_GOOD: \"level_not_good\",\n // the client has reached the limit constraint of bookings\n BOOKING_CHECK_CODE_BOOKINGS_LIMIT_REACHED: \"bookings_limit_reached\",\n // The client has already booked the slot with success\n ALREADY_BOOKED: \"already_booked\",\n // No place available\n NO_PLACE_AVAILABLE: \"no_place_available\",\n // No place available for web booking\n NO_PLACE_AVAILABLE_WEB: \"no_place_available_web\",\n // Web booking mode not available on a slot\n WEB_MODE_UNAVAILABLE: \"web_mode_unavailable\",\n // When the client doesn't have the required age for the activity\n INCOMPATIBLE_AGE: \"incompatible_age\",\n // the wanted client subscription doesn't have enough quantity\n NOT_ENOUGH_QUANTITY: \"not_enough_quantity\",\n // the wanted client doesn't have enough units\n NOT_ENOUGH_UNITS: \"not_enough_units\",\n // the subscription is expired or will expire before slot start\n SUBSCRIPTION_EXPIRED: \"subscription_expired\",\n // When global booking start date not reached\n BOOKING_NOT_OPEN: \"booking_not_open\",\n // When the activity require a medicert and client doen't have one or one is expired\n MEDICERT_REQUIRED: \"medicert_required\",\n // When using a product that's not on client and can't recharge it to client account\n PRODUCT_UNRECHARGEABLE: \"product_unrechargeable\",\n // When the slot is part of a periodic session where single booking is not allowed\n PERIODIC_SLOT_UNALLOWED: \"unallowed periodic slot\"\n },\n\n BOOKING_RESTRICTION_MODES: {\n SLIDING: \"sliding\", // only future validated bookings are not taken into account\n BLOCKING: \"blocking\", // taking all validated bookings of the week into account\n GLOBAL: \"global\", // taking all validated bookings into account\n },\n\n BOOKING_TERMINAL_PLANNING_TYPES: {\n GROUPED_BY_ACTIVITY: \"grouped_by_activity\",\n MIXED_ACTIVITIES: \"mixed_activities\",\n },\n\n PUDDLE: {\n PAYMENT_RESULTS: {\n SUCCESS: \"success\",\n ABORTED: \"aborted\",\n REFUSED: \"refused\",\n ERROR: \"error\",\n },\n },\n\n PRINTER_PAPER_LEVELS: {\n FULL: \"full\",\n NEAR_END: \"near-end\",\n EMPTY: \"empty\",\n },\n\n FAMILIES_TYPES: {\n CASHREGISTER: \"cashregister\",\n KIOSK: \"kiosk\",\n WEB: \"web\",\n ACCESS_CONTROL: \"access-control\",\n STATS: \"stats\",\n EXPORT: \"export-financial\",\n DAILY: \"export-daily\",\n QUOTATION: \"quotation\",\n },\n\n CARD_TYPES: {\n QRCODE: \"QRCode\",\n WRISTBAND_QRCODE: \"wristband-QRCode\",\n },\n\n QUOTATIONS: {\n STATE: {\n DRAFT: 0,\n WAITING: 1,\n VALIDATED: 2,\n REFUSED: 3,\n TO_PAY: 4,\n PAID: 5,\n WAITING_BO: 6,\n CANCELLED: 7,\n },\n },\n\n PRICE_ORIGIN: {\n PRICE_ORIGIN_DEFAULT: 1,\n PRICE_ORIGIN_PRICING: 2,\n PRICE_ORIGIN_DISCOUNT: 3,\n PRICE_ORIGIN_MANUAL_PERCENT: 4,\n PRICE_ORIGIN_MANUAL_PRICE: 5,\n PRICE_ORIGIN_PRICING_DEGRESSIVE: 6,\n PRICE_ORIGIN_PRORATA: 7,\n },\n\n FAKE_PRODUCT_UNITS: \"UNITES\",\n GUEST_ACCOUNT_LABEL: \"Invité\",\n\n OFFERABLE_MODE: {\n NONE: 0,\n ALLOW: 1,\n FORCE: 2,\n },\n\n TRANSFER_TYPE: {\n TRANSFER: \"transfer\",\n RECUPERATION: \"recuperation\",\n },\n\n DISCOUNT_TYPES: {\n PERCENT: \"percent\",\n PRICE: \"price\",\n PRICE_BY_PRODUCT: \"price_by_product\",\n OFFERED_PRODUCTS: \"offered_products\",\n },\n\n DISCOUNT_CONDITION_TYPES: {\n OR: \"or\",\n AND: \"and\",\n EQ_PRODUCTS_AMOUNT: \"eq_products_amount\",\n GTE_PRODUCTS_AMOUNT: \"gte_products_amount\",\n GTE_SALE_TOTAL: \"gte_sale_total\",\n },\n\n TPE_CONNEXION_MODE: {\n WIRED: \"wired\",\n NETWORK: \"network\",\n WALLEE: \"wallee\",\n },\n\n TICKET_STATUS: [\n {\n id: \"new\",\n title: \"Nouveau\",\n color: \"red\",\n icon: \"alert\"\n },\n {\n id: \"in-progress\",\n title: \"Pris en charge\",\n color: \"deep-purple\",\n icon: \"account-arrow-left-outline\"\n },\n {\n id: \"waiting-feedback\",\n title: \"Attente de retour client\",\n color: \"blue\",\n icon: \"account-convert-outline\"\n },\n {\n id: \"fix-in-progress\",\n title: \"Résolution en cours\",\n color: \"orange\",\n icon: \"hammer-wrench\"\n },\n {\n id: \"dev-in-progress\",\n title: \"Développement en cours\",\n color: \"orange\",\n icon: \"cog-sync-outline\"\n },\n {\n id: \"on-hold\",\n title: \"En attente\",\n color: \"blue-grey\",\n icon: \"send-clock-outline\"\n },\n {\n id: \"evolution\",\n title: \"Demande d'évolution\",\n color: \"blue\",\n icon: \"frequently-asked-questions\"\n },\n {\n id: \"update\",\n title: \"Attente de mise à jour\",\n color: \"orange\",\n icon: \"update\"\n },\n {\n id: \"resolved\",\n title: \"Résolu\",\n color: \"green\",\n icon: \"check\"\n },\n {\n id: \"closed\",\n title: \"Clôturé\",\n color: \"green\",\n icon: \"check\"\n },\n {\n id: \"merged\",\n title: \"Fusionné\",\n color: \"purple\",\n icon: \"merge\",\n noReply: true\n },\n {\n id: \"waiting-validation\",\n title: \"En attente de validation\",\n color: \"amber\",\n icon: \"timer-sand\",\n noReply: true\n },\n {\n id: \"cancelled\",\n title: \"Annulé\",\n color: \"pink\",\n icon: \"close\",\n noReply: true\n },\n ],\n\n DELIVERY_VOUCHER_STATUS: {\n DRAFT: \"draft\",\n READY_TO_SEND: \"ready-to-send\",\n SENDED: \"sended\",\n PAID: \"paid\",\n REFUSED: \"refused\",\n CANCELLED: \"cancelled\",\n },\n\n ACCESS_CONTROL_TYPE: {\n ACCESS_CONTROL_OTHER: 0,\n ACCESS_CONTROL_TURNSTILE_RFID: 1,\n ACCESS_CONTROL_TURNSTILE_QR: 2,\n ACCESS_CONTROL_DOOR_RFID: 3,\n ACCESS_CONTROL_DOOR_QR: 4,\n ACCESS_CONTROL_KIOSK_QR: 5,\n ACCESS_CONTROL_PUSH_BUTTON: 6,\n ACCESS_CONTROL_MOBILE: 7,\n ACCESS_CONTROL_KIOSK_RFID: 8,\n },\n\n MAIL_STATUS: [\n {\n id: \"unknown\",\n title: \"Status inconnu\",\n color: \"grey\"\n },\n {\n id: \"processed\",\n title: \"En cours de traitement\",\n color: \"\",\n },\n {\n id: \"queued\",\n title: \"En attente\",\n color: \"blue-grey\",\n },\n {\n id: \"sent\",\n title: \"Envoyé\",\n color: \"green\",\n },\n {\n id: \"opened\",\n title: \"Ouvert\",\n color: \"light-green\",\n },\n {\n id: \"clicked\",\n title: \"Cliqué\",\n color: \"light-green\",\n },\n {\n id: \"bounce\",\n title: \"Rebond\",\n color: \"orange\"\n },\n {\n id: \"spam\",\n title: \"SPAM\",\n color: \"orange\"\n },\n {\n id: \"unsub\",\n title: \"Désabonnements\",\n color: \"red\"\n },\n {\n id: \"blocked\",\n title: \"Bloqué\",\n color: \"brown\"\n },\n {\n id: \"softbounced\",\n title: \"Rebonds temporaires\",\n color: \"light-purple\"\n },\n {\n id: \"hardbounce\",\n title: \"Rebonds permanents\",\n color: \"pink\"\n },\n {\n id: \"deferred\",\n title: \"Différé\",\n color: \"purple\"\n },\n ],\n\n // Payment type flavours\n PAYMENTS_TYPES: {\n PAYMENT_FLAVOUR_CASH: 1,\n PAYMENT_FLAVOUR_CREDITCARD: 2,\n PAYMENT_FLAVOUR_CHECK: 3,\n PAYMENT_FLAVOUR_UNITS: 4,\n PAYMENT_FLAVOUR_TRANSFER: 5,\n PAYMENT_FLAVOUR_DEFERRED: 6,\n PAYMENT_FLAVOUR_COUPON: 7,\n PAYMENT_FLAVOUR_SAVINGS: 8,\n PAYMENT_FLAVOUR_OTHER: 9,\n PAYMENT_FLAVOUR_HOLIDAY_VOUCHER: 10,\n PAYMENT_FLAVOUR_SPORTS_COUPON: 11,\n PAYMENT_FLAVOUR_WEB: 12,\n PAYMENT_FLAVOUR_DEFERRED_EXTERNAL: 13,\n PAYMENT_FLAVOUR_OTHER_WITH_OVERPAID: 14,\n PAYMENT_FLAVOUR_DISTANCE_SELLING: 15,\n PAYMENT_FLAVOUR_MEAL_VOUCHER: 16,\n PAYMENT_FLAVOUR_WEB_INSTALLMENTS: 17,\n },\n\n // Value given to default qrcode for pass_qty subscription\n DEFAULT_QRCODE_ID: 'QRCode',\n WRISTBAND_QRCODE_ID: \"wristband-QRCode\",\n\n TRACKING_TYPES: {\n TRACKING_TYPE_SUBSCRIPTIONS: 1,\n TRACKING_TYPE_PURCHASES: 2,\n TRACKING_TYPE_PASSINGS: 3,\n TRACKING_TYPE_QUANTITIES: 4,\n TRACKING_TYPE_SPABOOKINGS: 5,\n TRACKING_TYPE_BOOKINGS: 6,\n TRACKING_TYPE_PERIODIC_BOOKINGS: 7,\n },\n\n SELLER_RIGHTS: {\n RIGHT_PARAMS: 1,\n RIGHT_SALES: 2,\n RIGHT_CHANGE_TYPE_PAYMENT: 3,\n RIGHT_CONSULT_PRODUCT: 4,\n RIGHT_CREDIT_NOTE: 5,\n RIGHT_CONSULT_SALES: 6,\n RIGHT_CLIENT_PLUS: 7,\n RIGHT_PRODUCT_PLUS: 8,\n RIGHT_EXPORT: 9,\n RIGHT_STATS: 10,\n RIGHT_PRICING_FAMILY: 11,\n RIGHT_KEYPAD: 12,\n RIGHT_PERIOD: 13,\n RIGHT_STAFF: 14,\n RIGHT_PROFIL: 15,\n RIGHT_GRAND_TOTAL: 16,\n RIGHT_JET: 17,\n RIGHT_CHANGE_PRICE_ON_LINE: 18,\n RIGHT_PAYMENT_LATER: 19,\n RIGHT_DISCOUNT: 20,\n RIGHT_STOCK: 21,\n RIGHT_PARAMS_SPE: 22,\n RIGHT_CORRECTION: 23,\n RIGHT_CHANGE_SALE_SELLER: 24,\n RIGHT_LOCKERS: 25,\n RIGHT_STOCK_TRANSFER: 26,\n RIGHT_MANUAL_CREDIT: 27,\n RIGHT_EDIT_SUB: 28,\n RIGHT_REPRINT_SALE_ACCESS_CONTROL_VOUCHERS: 29,\n },\n\n CREDIT_EXPIRATION_MODE: {\n NO_EXPIRATION: \"never\",\n EXPIRE_ALL_AFTER_INACTIVITY: \"after_inactivity\",\n EXPIRE_EACH_AFTER_SALE: \"after_sale\",\n EXPIRE_EACH_AFTER_CREDIT: \"after_credit\"\n },\n\n ALLOW_ACCOUNTS_MODE: {\n ALL: 0,\n PERSON: 1,\n ORG: 2\n },\n\n AGE_TYPE: {\n YEAR: 1, // age is in years\n MONTH: 2 // age is in months\n },\n\n DELTA_MODE: {\n CURRENT_YEAR: 1, // we check with the current year\n SESSION: 2 // we check at the date the session begins\n },\n\n ACTION_TYPES: {\n SUBSCRIPTION_CREATION: \"subscription_creation\",\n SUBSCRIPTION_RELOAD: \"subscription_reload\",\n UNITS_RELOAD: \"units_reload\",\n CAGNOTTE_RELOAD: \"cagnotte_reload\",\n COLLECTABLE_VOUCHER_GENERATED: \"collectable_voucher_generated\",\n GIFT_VOUCHER_GENERATED: \"gift_voucher_generated\",\n ACV_GENERATED: \"access_control_voucher_generated\",\n STOCKS_UPDATED: \"stocks_updated\",\n SPA_BOOKING_ADDED: \"spa_booking_added\",\n SPA_BOOKING_MOVED: \"spa_booking_moved\",\n SPA_BOOKING_REMOVED: \"spa_booking_removed\",\n SPA_BOOKING_DELETED: \"spa_booking_deleted\",\n CLUB_MEMBER_ADDED: \"club_member_added\",\n CLUB_MEMBER_REMOVED: \"club_member_removed\",\n CLUB_MEMBER_RENEWED: \"club_member_renewed\"\n },\n\n BILLING_MODE_TYPES: {\n SESSION: \"session\",\n TIME: \"time\",\n }\n}\n","import subscriptionHelper from './subscriptions'\nimport {\n clientsGenders\n} from '../ui/client'\nimport moment from 'moment'\nimport { cloneDeep } from 'lodash'\n\nimport dateHelpers from './date'\n\n\nexport default {\n clientsGender(x) {\n return clientsGenders.filter(elem => elem.value == x)\n },\n\n clientFullname(client) {\n if (!client) {\n return ''\n }\n\n if (client.OrgInfo && client.OrgInfo.Name) {\n if (client.Firstname || client.Lastname) {\n return client.OrgInfo.Name + ' (' + client.Firstname + ' ' + client.Lastname + ')'\n }\n\n return client.OrgInfo.Name\n }\n\n return client.Firstname + ' ' + client.Lastname\n },\n\n getCards(client) {\n const cards = []\n if (!client || !client.Cards) {\n return cards;\n }\n\n client.Cards.forEach(el => {\n if (el.CardNumber) {\n for (let i = 0; i < el.CardNumber.length; i++) {\n cards.push({\n CardNumber: el.CardNumber[i],\n AttributionDate: el.AttributionDate[i],\n CardType: el.CardType,\n Subscriptions: el.Subscriptions\n })\n }\n }\n })\n return cards\n },\n\n clientHasCardType(client, cardType) {\n return client && client.Cards && client.Cards.some(c => c.CardType == cardType && c.CardNumber && c.CardNumber.length > 0)\n },\n\n clientHasCardTypeCompatibleForProduct(client, product) {\n return product.Subscription &&\n product.Subscription.CardType &&\n client &&\n client.Cards &&\n client.Cards.some(c => product.Subscription.CardType.includes(c.CardType) && c.CardNumber && c.CardNumber.length > 0)\n },\n\n\n getSubscriptions(client, products) {\n const out = []\n if (!client || !client.Cards) {\n return out;\n }\n\n products = products === undefined ? [] : products\n var product\n if (client.Cards) {\n client.Cards.forEach(el => {\n if (el.Subscriptions) {\n el.Subscriptions.forEach(s => {\n product = Array.isArray(products) ? products.find(p => p.ID === s.ProductID) : products[s.ProductID]\n out.push(Object.assign(s, { Product: product }))\n })\n }\n })\n }\n return out\n },\n\n getClientSubscription(cli, subscriptionID) {\n if (!cli || !cli.Cards) {\n return null\n }\n\n for (const card of cli.Cards) {\n if (card.Subscriptions) {\n for (const sub of card.Subscriptions) {\n if (sub.ID === subscriptionID) {\n return sub\n }\n }\n }\n }\n\n return null\n },\n\n clientHasValidSubscriptionWithProductID(client, productID, productsMap) {\n if (!client.Cards) {\n return\n }\n\n return client.Cards.some(c => c.Subscriptions && c.Subscriptions.some(s => s.ProductID === productID && subscriptionHelper.isSubscriptionValid(s, productsMap)))\n },\n\n clientHasRequiredLevelForSlot(client, slot) {\n if (!slot.Levels || slot.Levels.length === 0) {\n return true\n }\n\n return client.ActivitiesLevels && client.select.ActivitiesLevels.some(l => l.ActivityID === slot.ActivityID.ID && slot.Levels.includes(l.LevelID))\n },\n\n isClientLevelGoodForSlot(client, slot) {\n if (!slot.Levels || slot.Levels.length === 0) {\n return true\n }\n\n for (let level of slot.ActivityLevels) {\n if (level.Required && !client.ActivitiesLevels || !client.ActivitiesLevels.some(l => l.ActivityID === slot.ActivityID && l.LevelID === level.ID)) {\n // Level is required and client doesn't have it\n return false\n }\n }\n\n return true\n },\n\n currentClientPricingID(client, currentPeriodID) {\n let pricingID\n // get currently active client pricing\n if (client.Pricings && client.Pricings.length > 0) {\n const currentPricingIndex = this.currentClientPricingIndex(client)\n if (currentPricingIndex >= 0) {\n return client.Pricings[currentPricingIndex].PricingID\n }\n } else if (currentPeriodID && client.Pricing && client.Pricing[currentPeriodID]) {\n return client.Pricing[currentPeriodID]\n }\n\n return pricingID || 'DEFAULT'\n },\n\n currentClientPricingIndex(client, ignoredIndex) {\n return client.Pricings.findIndex((p, idx) => (!ignoredIndex || !ignoredIndex.includes(idx)) && this.isCurrentClientPricing(p))\n },\n\n isCurrentClientPricing(p) {\n return (dateHelpers.isPast(p.From)) && (!p.To || dateHelpers.isFuture(p.To))\n },\n\n updateClientPricing(client, newPricing, currentPeriodID) {\n if (!newPricing) {\n return client;\n }\n\n if (!client.Pricings) {\n client.Pricings = []\n }\n \n let newClientPricings = []\n for (let p of client.Pricings) {\n if (p.PricingID === \"DEFAULT\") {\n // remove the default pricing\n continue\n }\n\n if (this.isCurrentClientPricing(p)) {\n if (dateHelpers.isToday(p.From)) {\n // remove the current pricing if it starts today\n continue\n }\n\n // set the end date of the current pricing\n p.To = moment().subtract(1, 'day').endOf('day').format()\n }\n\n newClientPricings.push(p)\n }\n\n // add the new pricing\n if (newPricing.ID !== \"DEFAULT\") {\n newClientPricings.push({\n From: moment().startOf('day').format(),\n To: newPricing.Validity ? dateHelpers.formatDateAPI(dateHelpers.addToDateTime(undefined, newPricing.Validity, 'months')) : null,\n PricingID: newPricing.ID,\n })\n }\n\n client.Pricings = newClientPricings \n\n // for compatibility, set the pricingID to the current period\n if (currentPeriodID) {\n client.Pricing[currentPeriodID] = newPricing.ID\n }\n\n return client\n },\n\n getDefaultClient() {\n return {\n ID: '',\n Firstname: '',\n Lastname: '',\n ClientType: 1,\n OrgInfo: {\n Name: '',\n Type: 0,\n TVA: '',\n SIRET: '',\n RCS: '',\n NAF: ''\n },\n BirthDate: null,\n Address: {\n Address: '',\n PostalCode: '',\n City: ''\n },\n Contact: {\n Phone: '',\n Email: ''\n },\n Pricing: {}\n }\n },\n\n assignCardToClient(client, cardType, cardNumber){\n if (!client.Cards){\n client.Cards = []\n }\n\n let cardIndex = client.Cards.findIndex(c => c.CardType === cardType)\n if (cardIndex === -1){\n cardIndex = client.Cards.length\n client.Cards.push({\n CardType: cardType,\n CardNumber: [],\n AttributionDate: []\n })\n }\n\n client.Cards[cardIndex].CardNumber.push(cardNumber)\n client.Cards[cardIndex].AttributionDate.push(dateHelpers.formatDateAPI())\n\n return client\n },\n\n dissociateCardFromClient(client, cardNumber){\n if (!client.Cards){\n return client\n }\n\n let cardIndex = client.Cards.findIndex(c => c.CardNumber && c.CardNumber.includes(cardNumber))\n if (cardIndex === -1){\n return client\n }\n\n let cardNumberIndex = client.Cards[cardIndex].CardNumber.findIndex(c => c === cardNumber)\n if (cardNumberIndex === -1){\n return client\n }\n\n client.Cards[cardIndex].CardNumber.splice(cardNumberIndex, 1)\n client.Cards[cardIndex].AttributionDate.splice(cardNumberIndex, 1)\n\n return client\n }\n}\n","import moment from 'moment'\nimport 'moment/dist/locale/fr'\n\nmoment.locale('fr')\n\nexport default {\n formatDate (d, format = 'DD/MM/YYYY') {\n return moment(d).format(format)\n },\n changeDateFormat (d, fIn, fOut) {\n return moment(d, fIn).format(fOut)\n },\n\n elapsedTimeSince (d, units = 'seconds') {\n return moment().diff(moment(d), units)\n },\n\n durationBetweenDates (d1, d2) {\n return this.formatDurationInSecondsHuman(moment(d2).diff(moment(d1), 'seconds'))\n },\n\n formatDurationInMinutesHuman (d) {\n // d is in minutes\n const abs = d >= 0 ? d : -d\n const minutes = abs % 60\n const hours = (abs - minutes) / 60\n if (hours === 0) {\n return (d < 0 ? '-' : '') + minutes + ' min'\n } else {\n return (d < 0 ? '-' : '') + hours + ' h ' + (minutes > 0 ? minutes + ' min' : '')\n }\n },\n\n inHours (min) {\n if (min < 60) {\n return min + 'min'\n }\n \n const minutes = min % 60\n const hours = (min - minutes) / 60\n\n if (minutes == 0) {\n return hours + 'h'\n }\n\n return hours + 'h' + (minutes < 10 ? '0' : '') + minutes + 'min'\n },\n\n // give months, days, hours, minutes, seconds\n humanReadableDuration (min) {\n if (min < 60) {\n return min + 'min'\n }\n const minutes = min % 60\n const hours = (min - minutes) / 60\n if (hours < 24) {\n return hours + 'h' + (minutes < 10 ? '0' : '') + minutes\n }\n const days = Math.floor(hours / 24)\n const hoursLeft = hours % 24\n return days + ' jours'\n },\n\n\n formatDurationInSecondsHuman (d) {\n let abs = d >= 0 ? d : -d\n var hours = Math.floor(abs / 3600) % 24\n abs -= hours * 3600\n var minutes = Math.floor(abs / 60) % 60\n abs -= minutes * 60\n var seconds = abs % 60\n\n if (minutes === 0) {\n return seconds + ' s'\n } else if (hours === 0) {\n return minutes + ' min ' + seconds + ' s'\n } else {\n return (d < 0 ? '-' : '') + hours + ' h ' + minutes + ' min ' + (seconds > 0 ? seconds + ' s' : '')\n }\n },\n formatDateAPI (d) {\n return moment(d).format()\n },\n formatDateUS (d) {\n return moment(d).format('YYYY-MM-DD')\n },\n formatBirthDate (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return parsedDate.format('DD/MM/YYYY')\n }\n },\n isDateFormatValid (date, format) {\n return moment(date, format, true).isValid()\n },\n formatDateTime (d) {\n return moment(d).format('DD/MM/YYYY HH:mm')\n },\n formatDateTimeFile (d) {\n return moment(d).format('DD.MM.YYYY-HH:mm')\n },\n formatDateTimeSeconds (d) {\n return moment(d).format('DD/MM/YYYY HH:mm:ss')\n },\n formatDateHuman (d) {\n return moment(d).format('ddd DD MMM YYYY')\n },\n formatDateWeek (d) {\n return moment(d).format('MMM YYYY ([S]WW)')\n },\n formatHumanBirthDate (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return this.formatDateHuman(date)\n }\n },\n formatDateTimeHuman (d) {\n return moment(d).format('ddd DD MMM YYYY, HH:mm')\n },\n formatTime (d) {\n return moment(d).format('HH:mm')\n },\n formatTimeSecs (d) {\n return moment(d).format('HH:mm:ss')\n },\n formatHourShort (d) {\n return moment(d).format('HH') + 'h'\n },\n formatWeekDay (d) {\n return moment(d).format('dddd')\n },\n formatWeekNumber (d) {\n return moment(d).format('W')\n },\n parseDate (d) {\n const date = moment(d, 'DD/MM/YYYY')\n if (date.isValid()) {\n return date.format('YYYY-MM-DD')\n } else {\n return ''\n }\n },\n addToDateTime (d, amount, unit) {\n return moment(d).add(amount, unit)\n },\n prevDay (d) {\n return moment(d).subtract(1, 'days').format('YYYY-MM-DD')\n },\n nextDay (d) {\n return moment(d).add(1, 'days').format('YYYY-MM-DD')\n },\n prevWeek (d) {\n return moment(d).subtract(1, 'week').format('YYYY-MM-DD')\n },\n nextWeek (d) {\n return moment(d).add(1, 'week').format('YYYY-MM-DD')\n },\n nextMonth (d) {\n return moment(d).add(1, 'month').format('YYYY-MM-DD')\n },\n isThisHour (hour) {\n return parseInt(moment().format('HH'), 10) === parseInt(hour, 10)\n },\n isToday (date) {\n return moment(date).format('YYYY-MM-DD') === moment().format('YYYY-MM-DD')\n },\n isAfter (d1, d2) {\n return moment(d1).isAfter(moment(d2))\n },\n isBefore (d1, d2) {\n return moment(d1).isBefore(moment(d2))\n },\n timeNow () {\n return moment().format('HH:mm')\n },\n dateNow () {\n return moment().format('YYYY-MM-DD')\n },\n datetimeNow () {\n return moment().format('DD/MM/YYYY HH:mm:ss')\n },\n isFuture (d) {\n return moment(d).isSameOrAfter(moment())\n },\n isPast (d) {\n return moment(d).isBefore(moment())\n },\n compareDate (d1, d2) {\n return moment(d1).isSame(moment(d2)) ? 0 : moment(d1).isBefore(moment(d2)) ? -1 : 1\n },\n compareDateDesc (d1, d2) {\n return moment(d1).isSame(moment(d2)) ? 0 : moment(d1).isAfter(moment(d2)) ? -1 : 1\n },\n getAge (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return moment().diff(parsedDate, 'years')\n }\n },\n getWeekdayLabel (dayNumber, locale = 'fr') {\n switch (dayNumber) {\n case 0:\n if (locale === 'fr') {\n return 'Dimanche'\n } else {\n return 'Sunday'\n }\n case 1:\n if (locale === 'fr') {\n return 'Lundi'\n } else {\n return 'Monday'\n }\n case 2:\n if (locale === 'fr') {\n return 'Mardi'\n } else {\n return 'Tuesday'\n }\n case 3:\n if (locale === 'fr') {\n return 'Mercredi'\n } else {\n return 'Wednesday'\n }\n case 4:\n if (locale === 'fr') {\n return 'Jeudi'\n } else {\n return 'Thursday'\n }\n case 5:\n if (locale === 'fr') {\n return 'Vendredi'\n } else {\n return 'Friday'\n }\n case 6:\n if (locale === 'fr') {\n return 'Samedi'\n } else {\n return 'Saturday'\n }\n }\n },\n getGolangWeekday (date) {\n const isoWeekday = moment(date).isoWeekday()\n switch (isoWeekday) {\n case 7: return 0 // In Golang, Sunday is 0 - Saturday 6\n default: return isoWeekday\n }\n },\n getWeekdayFromGolang (weekday) {\n switch (weekday) {\n case 0: return 7 // see getGolangWeekday\n default: return weekday\n }\n },\n getWeekNumber (date) {\n return moment(date).week()\n },\n getMonthLabel (m) {\n return moment.months()[m - 1]\n },\n getMonthShortLabel (m) {\n return moment.monthsShort()[m - 1]\n },\n formatDay (date) {\n return moment(date).format('dddd')\n },\n getDateDay (date, format) {\n return moment(date, format).day()\n },\n getDateMonth (date, format) {\n return moment(date, format).month()\n },\n isZeroDate (d) {\n return d == null || moment(d).format('YYYY-MM-DD') == '0001-01-01'\n },\n isSameDay (d1, d2) {\n return moment(d1).format('YYYY-MM-DD') === moment(d2).format('YYYY-MM-DD')\n },\n getDateAtWeekdayAfter (dateRef, weekday) {\n dateRef = moment(dateRef)\n let refDateWeekday = dateRef.weekday()\n\n let daysToAdd = 0\n if (refDateWeekday < weekday) {\n daysToAdd = weekday - refDateWeekday\n } else if (refDateWeekday > weekday) {\n daysToAdd = 7 - (refDateWeekday - weekday)\n }\n\n return dateRef.add(daysToAdd, 'days').format()\n },\n\n getDateAtWeekdayBefore (dateRef, weekday) {\n dateRef = moment(dateRef)\n let refDateWeekday = dateRef.weekday()\n\n let daysToSub = 0\n if (refDateWeekday > weekday) {\n daysToSub = refDateWeekday - weekday\n } else if (refDateWeekday < weekday) {\n // we must slice a week\n daysToSub = 7 - (weekday + refDateWeekday)\n }\n\n return dateRef.add(-daysToSub, 'days')\n },\n currentDate () {\n return moment().format('DD/MM/YYYY')\n },\n yesterday () {\n return moment().add(-1, 'days').format('DD/MM/YYYY')\n },\n previousWeekStart () {\n return moment().subtract(1, 'week').startOf('week').format('DD/MM/YYYY')\n },\n previousWeekEnd () {\n return moment().subtract(1, 'week').endOf('week').format('DD/MM/YYYY')\n },\n currentWeekStart () {\n return moment().startOf('week').format('DD/MM/YYYY')\n },\n currentWeekEnd () {\n return moment().endOf('week').format('DD/MM/YYYY')\n },\n previousMonthStart () {\n return moment().subtract(1, 'month').startOf('month').format('DD/MM/YYYY')\n },\n previousMonthEnd () {\n return moment().subtract(1, 'month').endOf('month').format('DD/MM/YYYY')\n },\n currentMonthStart () {\n return moment().startOf('month').format('DD/MM/YYYY')\n },\n currentMonthEnd () {\n return moment().endOf('month').format('DD/MM/YYYY')\n },\n currentYearStart () {\n return moment().startOf('year').format('DD/MM/YYYY')\n },\n currentYearEnd () {\n return moment().endOf('year').format('DD/MM/YYYY')\n },\n previousYearStart () {\n return moment().subtract(1, 'year').startOf('year').format('DD/MM/YYYY')\n },\n previousYearEnd () {\n return moment().subtract(1, 'year').endOf('year').format('DD/MM/YYYY')\n },\n startOfDay (date) {\n return moment(date).startOf('day').format()\n },\n endOfDay (date) {\n return moment(date).endOf('day').format()\n },\n}\n","import Decimal from \"decimal.js\"\nimport { isNumeric, isPositive, isPositiveOrZero, isInteger, isValidEmail } from \"./utils\"\nimport moment from \"moment\"\n\nexport default {\n requiredRule: v => !!v || 'Ce champ est requis',\n isRequiredAndNotEmptyRule: v => !!v && (!Array.isArray(v) || v.length > 0) || 'Ce champ est requis',\n isIntegerRule: v => isInteger(v) || 'Cette valeur doit être entière',\n isPositiveRule: v => isPositive(v) || 'Cette valeur doit être supérieure à zéro',\n isIntegerOrNullRule: v => (!v || isInteger(v)) || 'Cette valeur doit être entière',\n isPositiveOrNullRule: v => (!v || isPositive(v)) || 'Cette valeur doit être supérieure à zéro',\n isPositiveOrZeroRule: v => isPositiveOrZero(v) || 'Cette valeur doit être supérieure ou égale à zéro',\n isNumericRule: v => isNumeric(v) || 'Cette valeur doit être numérique',\n isNumericOrNullRule: v => (!v || isNumeric(v)) || 'Cette valeur doit être numérique',\n isGreatherThanRule: c => v => parseFloat(v) > c || `Cette valeur doit être supérieure à ${new Decimal(c).toFixed(2)}`,\n isGreatherOrEqualRule: c => (v, decimals) => parseFloat(v) >= c || `Cette valeur doit être supérieure ou égale à ${new Decimal(c).toFixed(decimals || 2)}`,\n isLessThanRule: c => v => parseFloat(v) < c || `Cette valeur doit être inférieure à ${new Decimal(c).toFixed(2)}`,\n isLessOrEqualRule: c => v => parseFloat(v) <= c || `Cette valeur doit être inférieure ou égale à ${new Decimal(c).toFixed(2)}`,\n isEmailRule: v => isValidEmail(v) || \"L'email doit être valide\",\n isEmailOrNullRule: v => (!v || isValidEmail(v)) || \"L'email doit être valide\",\n isTimeRule: v => /^([01]?[0-9]|2[0-3]):[0-5][0-9]$/.test(v) || \"Cette valeur doit être une heure valide (HH:mm)\",\n isDateFormatRule: f => v => moment(v, f, true).isValid() || `Cette valeur doit être une date valide (${f})`,\n containsUppercaseCharRule: v => /[A-Z]/.test(v) || 'Cette valeur doit contenir au moins une lettre majuscule',\n containsLowercaseCharRule: v => /[a-z]/.test(v) || 'Cette valeur doit contenir au moins une lettre minuscule',\n containsNumberRule: v => /[0-9]/.test(v) || 'Cette valeur doit contenir au moins un chiffre',\n containsSpecialCharRule: v => /[^a-zA-Z0-9]/.test(v) || 'Cette valeur doit contenir au moins un caractère spécial',\n isStringLongerThanRule: c => v => v.length >= c || `Cette valeur doit contenir au moins ${c} caractères`,\n}\n","import moment from 'moment'\nimport consts from '../consts'\nimport constants from '../consts'\n\nexport default {\n defaultParams (type) {\n let params = {\n autoPoweroffKiosks: true\n }\n\n if (type === 'main' || type === undefined) {\n params = Object.assign(params, {\n mainDefaultModule: 'planning',\n bookingCancellationDaysLimit: 2\n })\n }\n\n if (type === 'mailer' || type === undefined) {\n params = Object.assign(params, {\n mailerWebsiteName: 'Streamlor',\n mailerWebsiteLink: 'https://www.streamlor.io/',\n mailerLogoUrl: 'https://www.streamlor.io/wp-content/uploads/2019/05/logo_streamlor.png',\n mailerFrom: 'noreply@streamlor.io',\n mailerCopyright: 'Copyright 2019 STREAMLOR.IO ©',\n mailerCustomSpaCreate: '',\n mailerCustomSpaModify: '',\n mailerCustomSpaDelete: '',\n mailerCustomSpaReminder: '',\n mailerCustomActivitiesConfirm: '',\n mailerCustomActivitiesCancel: '',\n mailerCustomSaleConfirmation: '',\n mailerCustomSendAllDocuments: ''\n })\n }\n\n if (type === 'smser' || type === undefined) {\n params = Object.assign(params, {\n // global SMS context\n smserSender: '',\n smserGroupBy: constants.SMS.BY_ACTIVITY,\n // messages\n smserCustomMessageSpaBookings: '',\n smserAwaitingResponseSpaBookings: true,\n // related operator's client's informations\n smserOperator: constants.SMS.OPERATOR_UNKNOWN,\n smserEndpoint: '',\n smserApplicationKey: '',\n smserApplicationSecret: '',\n smserConsumerKey: '',\n smserSelectedService: ''\n })\n }\n\n if (type === 'planning' || type === undefined) {\n params = Object.assign(params, {\n planningStartHour: 7,\n planningStartMin: 0,\n planningEndHour: 21,\n planningEndMin: 0,\n planningDays: [1, 2, 3, 4, 5, 6, 0],\n planningShowFilling: true,\n bookingOpeningDate: moment().format('YYYY-MM-DD'),\n numberOfWeekVisible: 4,\n slotVisibilityUnlockWeekday: 1,\n slotVisibilityUnlockTime: \"08:00\",\n cancellingDelay: 24,\n limitTimeForBooking: 5,\n extendingValidityDateForSubscriptions: false,\n hoursBeforeImmediateBooking: 4,\n maxImmediateBookingsByDay: 0,\n bookingsLimit: 5,\n bookingsLimitNormalConstraint: 5,\n bookingsLimitHighConstraint: 2,\n bookingsLimitMode: constants.BOOKING_RESTRICTION_MODES.SLIDING,\n })\n }\n\n if (type === 'spa' || type === undefined) {\n params = Object.assign(params, {\n spaAbsencesAmountWarning: 0\n })\n }\n\n if (type === 'turnstiles' || type === undefined) {\n params = Object.assign(params, {\n bookingMarginMinutes: 40,\n subscriptionPassingDelayMinutes: 10,\n timePassMinDebit: 1,\n timePassMinRemaining: 1,\n timePassMinStop: 0,\n uniqueDebitPerZone: 0,\n requireCovidPass: 0,\n covidPassingDelayMinutes: 30,\n enableLateExitPenalty: 0,\n denyEmptyHourlyPassOnExit: false,\n lateExitDelay: 30,\n lateExitBookingTolerance: 120,\n enableSubExpirationBookingCheck: 0,\n bookingValidatesEntireDay: 0,\n exitDelayBeforePayLater: 10,\n exitDelayAfterPayLater: 5,\n exitUpdelayBeforePayLaterWithSpaBooking: 2,\n durationExitAuthAfterTimeslot: 480,\n showAccessControlProductFamilies: false,\n clubTimeslotsDisplayStartOffset: 0,\n })\n }\n\n if (type === 'exports' || type === undefined) {\n params = Object.assign(params, {\n autoExportEnabled: false, \n autoExportEmail: '',\n autoExportSelected: [],\n autoExportFrequency: '',\n autoExportDay: '',\n autoExportTime: '',\n sageEmail: '',\n })\n }\n\n if (type === 'vouchers' || type === undefined) {\n params = Object.assign(params, {\n generateSheetAfterSaleConfirmed: false,\n })\n }\n\n if (type === 'stats' || type === undefined) {\n params = Object.assign(params, {\n statsExportsExcelDisplayNoData: false,\n statsSeason: { start: '01/01', end: '31/12' },\n statsPerformanceTresholds: { first: 25, second: 50, third: 75 }\n })\n }\n\n if (type === 'lockers' || type === undefined) {\n params = Object.assign(params, {\n lockersDelayBetweenReservations: 5,\n lockersBlockOpeningIfLate: false,\n lockersScheduledHistoryFetch: [],\n lockersIntervalBetweenGatewayLoops: 2,\n lockersUniqueMasterCode: true,\n lockersGlobalMasterCode: '000000',\n lockersBuzzer: false,\n lockersBlockOnFails: false,\n lockersAutoOpening: false,\n lockersAutoOpeningHour: '00:00',\n lockersAutoOpeningDays: [],\n lockersAutoClosing: false,\n lockersLed: 3\n })\n }\n\n if (type === 'quotations' || type === undefined) {\n params = Object.assign(params, {\n quotationsPaymentTypesCreditCard: true,\n quotationsPaymentTypesDeferred: true,\n quotationsPaymentTypesBankTransfer: true,\n quotationsExpirationDelay: 90,\n quotationsSalesExpirationDelay: 30,\n quotationsVouchersExpirationDelay: 30,\n quotationsMinimumAmount: 0,\n quotationsOrderFooterText: '',\n quotationsAttachedFileId: '',\n })\n }\n\n if (type === 'front-office' || type === undefined) {\n params = Object.assign(params, {\n // paypal\n paypalEnabled: false,\n paypalLiveClientId: \"\",\n paypalSandboxClientId: \"\",\n paypalLiveSecretId: \"\",\n paypalSandboxSecretId: \"\",\n paypalMode: \"live\",\n\n // payfip\n payfipEnabled: false,\n payfipClientId: \"\",\n payfipMode: \"W\",\n\n webEstablishment: \"\"\n })\n }\n\n return params\n },\n\n formatParams (data, type) {\n /* Default values */\n const formattedParams = this.defaultParams(type)\n\n data.forEach((p) => {\n let res = this.formatParam(p)\n if (res.value != null && formattedParams[res.key] !== undefined) {\n formattedParams[res.key] = res.value\n }\n })\n\n return formattedParams\n },\n\n formatParam (p) {\n const camelCaseName = p.ID.replace(/([-_][a-z])/ig, ($1) => {\n return $1.toUpperCase()\n .replace('-', '')\n .replace('_', '')\n })\n\n let res = { key: camelCaseName, value: null }\n\n switch (p.ID) {\n /* int */\n case consts.RESA_PARAMS.SMSER_GROUP_BY:\n case consts.RESA_PARAMS.SMSER_OPERATOR:\n case consts.RESA_PARAMS.SPA_PLANNINGS_START_HOUR:\n case consts.RESA_PARAMS.SPA_PLANNINGS_START_MIN:\n case consts.RESA_PARAMS.SPA_PLANNINGS_END_HOUR:\n case consts.RESA_PARAMS.SPA_PLANNINGS_END_MIN:\n case consts.RESA_PARAMS.PLANNING_START_HOUR:\n case consts.RESA_PARAMS.PLANNING_START_MIN:\n case consts.RESA_PARAMS.PLANNING_END_HOUR:\n case consts.RESA_PARAMS.PLANNING_END_MIN:\n case consts.RESA_PARAMS.BOOKING_MARGIN_MINUTES:\n case consts.RESA_PARAMS.NUMBER_OF_WEEK_VISIBLE:\n case consts.RESA_PARAMS.SLOT_VISIBILITY_UNLOCK_WEEKDAY:\n case consts.RESA_PARAMS.CANCELLING_DELAY:\n case consts.RESA_PARAMS.LIMIT_TIME_FOR_BOOKING:\n case consts.RESA_PARAMS.HOURS_BEFORE_IMMEDIATE_BOOKING:\n case consts.RESA_PARAMS.MAX_IMMEDIATE_BOOKINGS_BY_DAY:\n case consts.RESA_PARAMS.MAX_ACTIVE_BOOKINGS:\n case consts.RESA_PARAMS.SUBSCRIPTION_PASSING_DELAY_MINUTES:\n case consts.RESA_PARAMS.TIME_PASS_MIN_DEBIT:\n case consts.RESA_PARAMS.TIME_PASS_MIN_REMAINING:\n case consts.RESA_PARAMS.TIME_PASS_MIN_STOP:\n case consts.RESA_PARAMS.UNIQUE_DEBIT_PER_ZONE:\n case consts.RESA_PARAMS.BOOKING_CANCELLATION_DAYS_LIMIT:\n case consts.RESA_PARAMS.ANONYMIZE_DELAY:\n case consts.RESA_PARAMS.REQUIRE_COVID_PASS:\n case consts.RESA_PARAMS.DELAY_BETWEEN_RESERVATIONS:\n case consts.RESA_PARAMS.INTERVAL_BETWEEN_GATEWAY_LOOPS:\n case consts.RESA_PARAMS.USERCODE_LENGTH:\n case consts.RESA_PARAMS.ENABLE_LATE_EXIT_PENALTY:\n case consts.RESA_PARAMS.LATE_EXIT_DELAY:\n case consts.RESA_PARAMS.LATE_EXIT_BOOKING_TOLERANCE:\n case consts.RESA_PARAMS.ENABLE_SUB_EXPIRATION_BOOKING_CHECK:\n case consts.RESA_PARAMS.BOOKING_VALIDATES_ENTIRE_DAY:\n case consts.RESA_PARAMS.LOCKERS_LED:\n case consts.RESA_PARAMS.COVID_PASSING_DELAY_MINUTES:\n case consts.RESA_PARAMS.LOCKERS_DELAY_BETWEEN_RESERVATIONS:\n case consts.RESA_PARAMS.SPA_ABSENCES_AMOUNT_WARNING:\n case consts.RESA_PARAMS.QUOTATIONS_EXPIRATION_DELAY:\n case consts.RESA_PARAMS.QUOTATIONS_SALES_EXPIRATION_DELAY:\n case consts.RESA_PARAMS.QUOTATIONS_VOUCHERS_EXPIRATION_DELAY:\n case consts.RESA_PARAMS.QUOTATIONS_MINIMUM_AMOUNT:\n case consts.RESA_PARAMS.EXIT_DELAY_BEFORE_PAY_LATER:\n case consts.RESA_PARAMS.EXIT_DELAY_AFTER_PAY_LATER:\n case consts.RESA_PARAMS.EXIT_UPDELAY_BEFORE_PAY_LATER_WITH_SPA_BOOKING:\n case consts.RESA_PARAMS.DURATION_EXIT_AUTH_AFTER_TIMESLOT:\n case consts.RESA_PARAMS.AUTO_EXPORT_DAY:\n case consts.RESA_PARAMS.MEDICERT_VALIDITY:\n case consts.RESA_PARAMS.CLUB_TIMESLOTS_DISPLAY_START_OFFSET:\n res.value = p.Value !== '' ? parseInt(p.Value, 10) : 0\n break\n /* boolean */\n case consts.RESA_PARAMS.SMSER_AWAITING_RESPONSE_SPA_BOOKINGS:\n case consts.RESA_PARAMS.SPA_HUMAN_CONFIRMATION:\n case consts.RESA_PARAMS.SPA_SHOW_SHORT_LABEL:\n case consts.RESA_PARAMS.PLANNING_SHOW_FILLING:\n case consts.RESA_PARAMS.PAYPAL_ENABLED:\n case consts.RESA_PARAMS.PAYFIP_ENABLED:\n case consts.RESA_PARAMS.DENY_EMPTY_HOURLY_PASS_ON_EXIT:\n case consts.RESA_PARAMS.STATS_EXPORTS_EXCEL_DISPLAY_NO_DATA:\n case consts.RESA_PARAMS.LOCKERS_UNIQUE_MASTER_CODE:\n case consts.RESA_PARAMS.LOCKERS_BUZZER:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_ON_FAILS:\n case consts.RESA_PARAMS.LOCKERS_AUTO_OPENING:\n case consts.RESA_PARAMS.LOCKERS_AUTO_CLOSING:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_BUZZER:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_BLOCK_ON_FAILS:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_AUTO_OPENING:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_AUTO_CLOSING:\n case consts.RESA_PARAMS.LOCKERS_BLOCK_OPENING_IF_LATE:\n case consts.RESA_PARAMS.QUOTATIONS_PAYMENT_TYPES_CREDIT_CARD:\n case consts.RESA_PARAMS.QUOTATIONS_PAYMENT_TYPES_BANK_TRANSFER:\n case consts.RESA_PARAMS.QUOTATIONS_PAYMENT_TYPES_DEFERRED:\n case consts.RESA_PARAMS.AUTO_POWEROFF_KIOSKS:\n case consts.RESA_PARAMS.GENERATE_SHEET_AFTER_SALE_CONFIRMED:\n case consts.RESA_PARAMS.WEB_STOCK_ENABLED:\n case consts.RESA_PARAMS.AUTO_EXPORT_ENABLED:\n case consts.RESA_PARAMS.SHOW_ACCESS_CONTROL_PRODUCT_FAMILIES:\n res.value = p.Value === 'true'\n break\n /* string */\n case consts.RESA_PARAMS.SMSER_SENDER:\n case consts.RESA_PARAMS.SMSER_CUSTOM_MESSAGE_SPA_BOOKINGS:\n case consts.RESA_PARAMS.SMSER_ENDPOINT:\n case consts.RESA_PARAMS.SMSER_APPLICATION_KEY:\n case consts.RESA_PARAMS.SMSER_APPLICATION_SECRET:\n case consts.RESA_PARAMS.SMSER_CONSUMER_KEY:\n case consts.RESA_PARAMS.SLOT_VISIBILITY_UNLOCK_TIME:\n case consts.RESA_PARAMS.SMSER_SELECTED_SERVICE:\n case consts.RESA_PARAMS.MAILER_WEBSITE_NAME:\n case consts.RESA_PARAMS.MAILER_WEBSITE_LINK:\n case consts.RESA_PARAMS.MAILER_LOGO_URL:\n case consts.RESA_PARAMS.MAILER_FROM:\n case consts.RESA_PARAMS.MAILER_COPYRIGHT:\n case consts.RESA_PARAMS.MAIN_DEFAULT_MODULE:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SPA_CREATE:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SPA_MODIFY:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SPA_DELETE:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SPA_REMINDER:\n case consts.RESA_PARAMS.PAYPAL_LIVE_CLIENT_ID:\n case consts.RESA_PARAMS.PAYPAL_SANDBOX_CLIENT_ID:\n case consts.RESA_PARAMS.PAYPAL_LIVE_SECRET_ID:\n case consts.RESA_PARAMS.PAYPAL_SANDBOX_SECRET_ID:\n case consts.RESA_PARAMS.PAYPAL_MODE:\n case consts.RESA_PARAMS.PAYFIP_CLIENT_ID:\n case consts.RESA_PARAMS.PAYFIP_MODE:\n case consts.RESA_PARAMS.WEB_ESTABLISHMENT:\n case consts.RESA_PARAMS.LOCKERS_AUTO_OPENING_HOUR:\n case consts.RESA_PARAMS.EXTENDING_VALIDITY_DATE_FOR_SUBSCRIPTIONS:\n case consts.RESA_PARAMS.BOOKING_TERMINAL_PLANNING_TYPE:\n case consts.RESA_PARAMS.MAILER_CUSTOM_ACTIVITIES_CONFIRM:\n case consts.RESA_PARAMS.MAILER_CUSTOM_ACTIVITIES_CANCEL:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SALE_CONFIRMATION:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SEND_ALL_DOCUMENTS:\n case consts.RESA_PARAMS.SAGE_EMAIL:\n case consts.RESA_PARAMS.DEFAULT_OUT_TURNSTILE:\n case consts.RESA_PARAMS.WEB_STOCK_ESTABLISHMENT:\n case consts.RESA_PARAMS.AUTO_EXPORT_EMAIL:\n case consts.RESA_PARAMS.AUTO_EXPORT_FREQUENCY:\n case consts.RESA_PARAMS.AUTO_EXPORT_TIME:\n case consts.RESA_PARAMS.QUOTATIONS_ORDER_FOOTER_TEXT:\n case consts.RESA_PARAMS.QUOTATIONS_ATTACHED_FILE_ID:\n res.value = p.Value || null\n break\n /* json */\n case consts.RESA_PARAMS.PLANNING_DAYS:\n case consts.RESA_PARAMS.STATS_SEASON:\n case consts.RESA_PARAMS.STATS_PERFORMANCE_TRESHOLDS:\n case consts.RESA_PARAMS.LOCKERS_AUTO_OPENING_DAYS:\n case consts.RESA_PARAMS.LOCKERS_SCHEDULED_HISTORY_FETCH:\n case consts.RESA_PARAMS.AUTO_EXPORT_SELECTED:\n res.value = JSON.parse(p.Value)\n break\n /* dates */\n case consts.RESA_PARAMS.BOOKING_OPENING_DATE:\n if (p.Value !== '') res.value = moment(p.Value).format('YYYY-MM-DD')\n break\n }\n\n return res\n },\n\n formatGlobalParams (params) {\n var formattedParams = {}\n for (let p of params) {\n switch (p.ID) {\n /* string */\n case constants.GLOBAL_PARAMS.PARAM_TICKET_TEMPLATE:\n break\n }\n\n formattedParams[p.ID] = p\n }\n\n return formattedParams\n },\n\n parseParams (params) {\n let parsedParams = []\n\n for (let id in params) {\n let value = params[id]\n if (value !== undefined && value !== null) {\n switch (typeof value) {\n case \"number\":\n case \"boolean\":\n value = value.toString()\n break\n case \"object\":\n value = JSON.stringify(value)\n break\n }\n } else {\n value = ''\n }\n parsedParams.push({\n ID: id.split(/(?=[A-Z])/).join('_').toLowerCase(),\n Value: value\n })\n }\n\n return parsedParams\n },\n}\n","import date from './date'\nimport constants from '../consts'\n\nvar self = {\n isSubscriptionValid(subscription, productData) {\n let product\n if (!productData){\n console.warn(\"Cannot check product subscription type for \"+subscription.ID+\", please provide product map\")\n } else {\n product = productData.ID == subscription.ProductID ? productData : productData[subscription.ProductID]\n }\n\n return (\n (!subscription.Discontinued && !subscription.Paused) &&\n (subscription.SubscriptionLimitDate == null || date.isFuture(subscription.SubscriptionLimitDate)) &&\n (subscription.SubscriptionStartDate == null || date.isPast(subscription.SubscriptionStartDate)) &&\n (subscription.Quantity > 0 || (product && product.Subscription && product.Subscription.Type === constants.SUBSCRIPTION_TYPE_SUBSCRIPTION))\n );\n },\n\n\n isSubscriptionCompatibleFor(subscription, bookingSlot, activity) {\n return (\n bookingSlot.Products.includes(subscription.ProductID) || (activity && activity.Products.includes(subscription.ProductID))\n );\n },\n\n // getClientCompatibleSubscriptions search for non-expired subscriptions on client that are compatible with the booking slot\n getClientCompatibleSubscriptions(client, bookingSlot, activity, productsMap) {\n if(!client || !client.Cards) {\n return []\n }\n const subs = []\n for (const c of client.Cards) {\n if(!c.Subscriptions){\n continue\n }\n for (const s of c.Subscriptions) {\n if (this.isSubscriptionValidFor(s, bookingSlot, activity, productsMap)) {\n subs.push(s)\n }\n }\n }\n\n return subs // TODO: sort by priority\n },\n\n isSubscriptionValidFor(subscription, bookingSlot, activity, productsMap) {\n return (\n self.isSubscriptionValid(subscription, productsMap) && self.isSubscriptionCompatibleFor(subscription, bookingSlot, activity)\n );\n },\n\n getCardsValidSubscriptionsFor(cards, slot, activity, productsMap) {\n var subscriptions = []\n for (let card of cards) {\n for (let subscription of card.Subscriptions) {\n if (self.isSubscriptionValidFor(subscription, slot, activity, productsMap)) subscriptions.push(subscription)\n }\n }\n\n return subscriptions\n },\n\n cardsHasValidSubscriptionFor(cards, slot, activity, productsMap) {\n for (var card of cards) {\n for (var subscription of card.Subscriptions) {\n if (self.isSubscriptionValidFor(subscription, slot, activity, productsMap)) {\n return true;\n }\n }\n }\n\n return false\n },\n\n subscriptionQuantity(sub, product) {\n product = sub.Product || product\n if (product && product.Subscription && product.Subscription.Type === constants.SUBSCRIPTION_TYPE_PASS_H) {\n if (sub.Quantity < 60) {\n return sub.Quantity + 'min'\n }\n const minutes = sub.Quantity % 60\n const hours = (sub.Quantity - minutes) / 60\n\n return hours + 'h' + (minutes < 10 ? '0' : '') + minutes + 'min'\n } else {\n return sub.Quantity\n }\n }\n}\n\nexport default self","import {Decimal} from \"decimal.js\"\n\nvar self = {\n getPaginationFromDataTableOptions(o) {\n return {\n Offset: (o.page - 1) * o.itemsPerPage,\n Limit: o.itemsPerPage,\n Sort: o.sortBy.map((field, fieldIdx) => (o.sortDesc[fieldIdx] ? \"-\" : \"\") + field),\n }\n },\n\n groupBy(xs, key) {\n return xs.reduce(function (rv, x) {\n (rv[x[key]] = rv[x[key]] || []).push(x)\n return rv\n }, {})\n },\n\n equals(a, b) {\n if (a === b) return true\n if (a instanceof Date && b instanceof Date) return a.getTime() === b.getTime()\n if (!a || !b || (typeof a !== \"object\" && typeof b !== \"object\")) return a === b\n if (a.prototype !== b.prototype) return false\n const keys = Object.keys(a)\n if (keys.length !== Object.keys(b).length) return false\n return keys.every((k) => this.equals(a[k], b[k]))\n },\n\n newUUID() {\n return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>\n (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)\n )\n },\n\n dataURLToBlob(dataURL) {\n const base64Data = dataURL.split(',')[1]\n const mimeType = dataURL.split(';')[0].split(':')[1]\n const binaryData = atob(base64Data)\n const arrayBuffer = new ArrayBuffer(binaryData.length)\n const uint8Array = new Uint8Array(arrayBuffer)\n\n for (let i = 0; i < binaryData.length; i++) {\n uint8Array[i] = binaryData.charCodeAt(i)\n }\n\n const blob = new Blob([arrayBuffer], { type: mimeType })\n\n return blob\n },\n\n fileToBase64(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader()\n reader.readAsDataURL(file)\n reader.onload = () => resolve(reader.result)\n reader.onerror = reject\n })\n },\n\n humanFileSize(size) {\n var i = size == 0 ? 0 : Math.floor(Math.log(size) / Math.log(1024))\n return (size / Math.pow(1024, i)).toFixed(2) * 1 + ' ' + ['B', 'kB', 'MB', 'GB', 'TB'][i]\n },\n\n capitalize(str) {\n if (!str) return ''\n str = str.toString()\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n\n negate (numberStr) {\n return numberStr ? new Decimal(numberStr).neg().toFixed(2) : ''\n },\n\n isUUID(v){\n var pattern = new RegExp('^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$')\n return pattern.test(v)\n }\n}\n\nexport var isInteger = v => (!isNaN(v) && Number.isInteger(parseFloat(v)))\nexport var isPositive = v => (parseFloat(v) > 0)\nexport var isPositiveOrZero = v => (parseFloat(v) >= 0)\nexport var isNumeric = v => (!isNaN(v) && !isNaN(parseFloat(v)))\nexport var isValidEmail = v => /.+@.+\\..+/.test(v)\nexport var isUUID = self.isUUID\n\nexport default self","import ui, { turnstilesTypes, passingTypes, passingDirections, turnstilesStates, accessControlEventTypes } from '../ui/access-control'\n\nexport default {\n data: () => ({\n turnstilesTypes,\n passingTypes,\n passingDirections,\n turnstilesStates,\n accessControlEventTypes\n }),\n methods: {\n ...ui,\n }\n}","import axios from 'axios';\nimport { h } from 'vue';\n\nexport default {\n searchAddressAPI(searchStr, type='street') {\n return new Promise((resolve,reject) => {\n let url = `https://api-adresse.data.gouv.fr/search?autocomplete=1&q=${searchStr}`\n if (type) {\n url += `&type=${type}`\n }\n \n axios.create().get(url).then((response) => {\n resolve (response.data.features.map((feature) => {\n return {\n Address: feature.properties.name,\n City: feature.properties.city,\n PostalCode: feature.properties.postcode,\n Streetnum : feature.properties.housenumber,\n _context: feature.properties.context,\n }\n }))\n }).catch((err) => {\n reject(err)\n })\n })\n },\n\n getFullAddress(address) {\n // address in an object with Address, City, PostalCode\n // returns a string with the full address, depending non empty fields\n let fullAddress = ''\n if (address.Address) {\n fullAddress += address.Address\n }\n\n if (address.PostalCode) {\n fullAddress += ', ' + address.PostalCode\n }\n\n if (address.City) {\n fullAddress += ' ' + address.City\n }\n }\n}\n","import addressHelpers from '../helpers/address'\n\nexport default {\n methods: addressHelpers\n}\n","import moment from 'moment'\nimport consts from '../consts'\n\nexport default {\n getSlotCancellationLimit(slot, cancelDelay) {\n return moment(slot.StartDate).subtract(cancelDelay, 'hours').format()\n },\n\n getAgeLimits(activity, slotRepeat) {\n let minAge = activity.MinAge\n let maxAge = activity.MaxAge\n let typeMinAge = activity.TypeMinAge\n let typeMaxAge = activity.TypeMaxAge\n let minAgeTolerance = activity.MinAgeToleranceMonths\n let maxAgeTolerance = activity.MaxAgeToleranceMonths\n\n // User slot repeat limits if defined\n if (slotRepeat && (slotRepeat.MinAge || slotRepeat.MaxAge)) {\n minAge = slotRepeat.MinAge\n typeMinAge = slotRepeat.AgeMinType\n minAgeTolerance = slotRepeat.MinAgeDelta\n maxAge = slotRepeat.MaxAge\n typeMaxAge = slotRepeat.AgeMaxType\n maxAgeTolerance = slotRepeat.MaxAgeDelta\n }\n\n return {\n MinAge: minAge, MaxAge: maxAge,\n TypeMinAge: typeMinAge, TypeMaxAge: typeMaxAge,\n MinAgeTolerance: minAgeTolerance, MaxAgeTolerance: maxAgeTolerance\n }\n },\n\n clientMatchAge(client, activity, slotRepeat, startDate) {\n if (client){\n const limits = this.getAgeLimits(activity, slotRepeat)\n\n let minAgeMonth = limits.MinAge\n if (limits.TypeMinAge === 1) {\n minAgeMonth *= 12\n }\n\n let maxAgeMonth = limits.MaxAge\n if (limits.TypeMaxAge === 1) {\n maxAgeMonth *= 12\n }\n\n if (!client.BirthDate) {\n return limits.MinAge === 0 && limits.MaxAge === 0\n } else {\n // Redefine start date if in past or according to slot repeat option\n // If it's an already started periodic session we want to check against now instead of session start\n // It would be better to check against the next coming slot of the session, but itwould be a little overkill\n if (moment(startDate).isBefore(moment()) || (slotRepeat && slotRepeat.DeltaMode === consts.DELTA_MODE.CURRENT_YEAR)) {\n startDate = moment().format()\n }\n\n const clientAgeInMonth = moment(startDate).diff(moment(client.BirthDate), 'months')\n\n if (limits.MinAge !== 0 && clientAgeInMonth < minAgeMonth - limits.MinAgeTolerance) {\n return false\n }\n if (limits.MaxAge !== 0 && clientAgeInMonth > maxAgeMonth + limits.MaxAgeTolerance) {\n return false\n }\n }\n }\n return true\n },\n\n clientMatchActivityMedicalCert(client, slot, certValidity = 3) {\n let validMedicert = true\n if (client) {\n let compareDate = moment()\n if (slot) {\n compareDate = moment(slot.StartDate)\n }\n\n if (slot.Activity && slot.Activity.IsMedicertRequired) {\n if (!!client.MedicertIssueDate) { \n validMedicert = moment(client.MedicertIssueDate).add(certValidity, 'years').isAfter(compareDate)\n } else if (!!client.MedicertLimitDate) {\n validMedicert = moment(client.MedicertLimitDate).isAfter(compareDate)\n }\n }\n }\n return validMedicert\n },\n\n getSlotAgeIntervalText(activity, slotRepeat) {\n const limits = this.getAgeLimits(activity, slotRepeat)\n let text = ''\n\n if (limits.MinAge === 0 && limits.MaxAge !== 0) {\n text = 'moins de ' + limits.MaxAge + ' ' + this.getSlotAgeUnit(limits.TypeMaxAge, limits.MaxAge)\n if (limits.MaxAgeTolerance) {\n text += ' (+/- ' + limits.MaxAgeTolerance + ' mois)'\n }\n } else if (limits.MinAge !== 0 && limits.MaxAge === 0) {\n text = 'plus de ' + limits.MinAge + ' ' + this.getSlotAgeUnit(limits.TypeMinAge, limits.MinAge)\n if (limits.MinAgeTolerance) {\n text += ' (+/- ' + limits.MinAgeTolerance + ' mois)'\n }\n } else if (limits.MinAge !== 0 && limits.MaxAge !== 0) {\n text = 'entre ' + limits.MinAge + ' ' + this.getSlotAgeUnit(limits.TypeMinAge, limits.MinAge)\n if (limits.MinAgeTolerance) {\n text += ' (+/- ' + limits.MinAgeTolerance + ' mois)'\n }\n text += ' et ' + limits.MaxAge + ' ' + this.getSlotAgeUnit(limits.TypeMaxAge, limits.MaxAge)\n if (limits.MaxAgeTolerance) {\n text += ' (+/- ' + limits.MaxAgeTolerance + ' mois)'\n }\n }\n\n return text\n },\n\n getSlotAgeUnit(type, value) {\n if (type === 1) {\n return value > 1 ? 'ans' : 'an'\n } else {\n return 'mois'\n }\n }\n}","import bookingsHelper from '../helpers/bookings'\nimport ui, { bookingStatuses, bookingRepeatStatuses, bookingSlotWebModes, bookingSlotRepeatPublicationStatuses, bookingCheckCodes} from '../ui/bookings'\n\n\nexport default {\n data: () => ({\n bookingStatuses,\n bookingRepeatStatuses,\n bookingSlotWebModes,\n bookingSlotRepeatPublicationStatuses,\n bookingCheckCodes\n }),\n methods: {\n ...bookingsHelper,\n ...ui,\n }\n}","import clientHelper from '../helpers/client'\nimport ui, { \n clientsGenders,\n clientFields,\n orgTypes\n} from '../ui/client'\n\nexport default {\n data: () => ({\n clientsGenders,\n clientFields,\n orgTypes\n }),\n\n methods: {\n ...clientHelper,\n ...ui,\n }\n}\n","import Consts from '../consts'\n\nconst daysOfWeek = [\n { text: 'Lundi', value: '1' },\n { text: 'Mardi', value: '2' },\n { text: 'Mercredi', value: '3' },\n { text: 'Jeudi', value: '4' },\n { text: 'Vendredi', value: '5' },\n { text: 'Samedi', value: '6' },\n { text: 'Dimanche', value: '0' }\n]\n\nconst daysOfMonth = function () {\n const dom = []\n for (let i = 1; i <= 31; i++) {\n dom.push({ text: `${i}`, value: `${i}` })\n }\n return dom\n}()\n\nconst exportFrequencies = [\n { text: 'Une fois par jour', value: 'daily' },\n { text: 'Une fois par semaine', value: 'weekly' },\n { text: 'Une fois par mois', value: 'monthly' }\n]\n\nexport default {\n exportFrequency (x) {\n return exportFrequencies.find(elem => elem.value == x)\n },\n\n dayOfWeek (x) {\n return daysOfWeek.find(elem => elem.value == x)\n }\n}\n\nexport {\n daysOfWeek,\n daysOfMonth,\n exportFrequencies\n}","import dateHelper from '../helpers/date'\nimport ui, {\n daysOfWeek,\n daysOfMonth,\n exportFrequencies\n} from '../ui/date'\n\nexport default {\n data: () => ({\n daysOfWeek,\n daysOfMonth,\n exportFrequencies\n }),\n\n methods: {\n ...dateHelper,\n ...ui,\n }\n}\n","// import Consts from '../consts'\n\nimport accessControl from \"./access-control\"\nimport bookings from \"./bookings\"\n\nfunction padZero(str, len) {\n len = len || 2\n const zeros = new Array(len).join('0')\n return (zeros + str).slice(-len)\n}\n\nvar self = {\n getColorForString(str) {\n let hash = 0\n for (let i = 0; i < str.length; i++) {\n hash = str.charCodeAt(i) + ((hash << 5) - hash)\n }\n\n const c = (hash & 0x00FFFFFF)\n .toString(16)\n .toUpperCase()\n\n return '00000'.substring(0, 6 - c.length) + c\n },\n\n lightOrDark(color) {\n // Variables for red, green, blue values\n let r, g, b\n\n // Check the format of the color, HEX or RGB?\n if (color.match(/^rgb/)) {\n // If HEX --> store the red, green, blue values in separate variables\n color = color.match(/^rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)(?:,\\s*(\\d+(?:\\.\\d+)?))?\\)$/)\n\n r = color[1]\n g = color[2]\n b = color[3]\n } else {\n // If RGB --> Convert it to HEX: http://gist.github.com/983661\n color = +('0x' + color.slice(1).replace(\n color.length < 5 && /./g, '$&$&'))\n\n r = color >> 16\n g = color >> 8 & 255\n b = color & 255\n }\n\n // HSP (Highly Sensitive Pool) equation from http://alienryderflex.com/hsp.html\n const hsp = Math.sqrt(\n 0.299 * (r * r) +\n 0.587 * (g * g) +\n 0.114 * (b * b)\n )\n\n // Using the HSP value, determine whether the color is light or dark\n if (hsp > 147.5) {\n return 'light'\n } else {\n return 'dark'\n }\n },\n\n invertColor(hex) {\n if (hex.indexOf('#') === 0) {\n hex = hex.slice(1)\n }\n // convert 3-digit hex to 6-digits.\n if (hex.length === 3) {\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]\n }\n if (hex.length !== 6) {\n throw new Error('Invalid HEX color.')\n }\n // invert color components\n const r = (255 - parseInt(hex.slice(0, 2), 16)).toString(16)\n const g = (255 - parseInt(hex.slice(2, 4), 16)).toString(16)\n const b = (255 - parseInt(hex.slice(4, 6), 16)).toString(16)\n // pad each with zeros and return\n return '#' + padZero(r) + padZero(g) + padZero(b)\n },\n\n HexToHSL(H) {\n // Convert hex to RGB first\n let r = 0; let g = 0; let b = 0\n if (H.length === 4) {\n r = '0x' + H[1] + H[1]\n g = '0x' + H[2] + H[2]\n b = '0x' + H[3] + H[3]\n } else if (H.length === 7) {\n r = '0x' + H[1] + H[2]\n g = '0x' + H[3] + H[4]\n b = '0x' + H[5] + H[6]\n }\n // Then to HSL\n r /= 255\n g /= 255\n b /= 255\n const cmin = Math.min(r, g, b)\n const cmax = Math.max(r, g, b)\n const delta = cmax - cmin\n let h = 0\n let s = 0\n let l = 0\n\n if (delta === 0) { h = 0 } else if (cmax === r) { h = ((g - b) / delta) % 6 } else if (cmax === g) { h = (b - r) / delta + 2 } else { h = (r - g) / delta + 4 }\n\n h = Math.round(h * 60)\n\n if (h < 0) { h += 360 }\n\n l = (cmax + cmin) / 2\n s = delta === 0 ? 0 : delta / (1 - Math.abs(2 * l - 1))\n s = +(s * 100).toFixed(1)\n l = +(l * 100).toFixed(1)\n\n return { h, s, l }\n },\n\n changeColorLum(hex, lum) {\n\n // validate hex string\n hex = String(hex).replace(/[^0-9a-f]/gi, '');\n if (hex.length < 6) {\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];\n }\n\n lum = lum || 0;\n\n // convert to decimal and change luminosity\n var rgb = \"#\", c, i;\n for (i = 0; i < 3; i++) {\n c = parseInt(hex.substr(i * 2, 2), 16);\n c = Math.round(Math.min(Math.max(0, c + (c * lum)), 255)).toString(16);\n rgb += (\"00\" + c).substr(c.length);\n }\n\n return rgb;\n },\n\n pastelizeColor(H) {\n let { h, s, l } = this.HexToHSL(H)\n\n s = 100\n l = 87.5\n\n return this.HSLToHex(h, s, l)\n },\n\n darkenizeColor(H) {\n let { h, s, l } = this.HexToHSL(H)\n\n s = 100\n l = 30.5\n\n return this.HSLToHex(h, s, l)\n },\n\n HSLToHex(h, s, l) {\n s /= 100\n l /= 100\n\n const c = (1 - Math.abs(2 * l - 1)) * s\n const x = c * (1 - Math.abs((h / 60) % 2 - 1))\n const m = l - c / 2\n let r = 0\n let g = 0\n let b = 0\n\n if (h >= 0 && h < 60) {\n r = c\n g = x\n b = 0\n } else if (h >= 60 && h < 120) {\n r = x\n g = c\n b = 0\n } else if (h >= 120 && h < 180) {\n r = 0\n g = c\n b = x\n } else if (h >= 180 && h < 240) {\n r = 0\n g = x\n b = c\n } else if (h >= 240 && h < 300) {\n r = x\n g = 0\n b = c\n } else if (h >= 300 && h < 360) {\n r = c\n g = 0\n b = x\n }\n // Having obtained RGB, convert channels to hex\n r = Math.round((r + m) * 255).toString(16)\n g = Math.round((g + m) * 255).toString(16)\n b = Math.round((b + m) * 255).toString(16)\n\n // Prepend 0s, if necessary\n if (r.length === 1) { r = '0' + r }\n if (g.length === 1) { g = '0' + g }\n if (b.length === 1) { b = '0' + b }\n\n return '#' + r + g + b\n },\n\n\n HexToRGBA(hexCode, opacity) {\n var hex = hexCode.replace('#', '');\n\n if (hex.length === 3) {\n hex += hex\n }\n\n var r = parseInt(hex.substring(0, 2), 16),\n g = parseInt(hex.substring(2, 4), 16),\n b = parseInt(hex.substring(4, 6), 16);\n\n return 'rgba(' + r + ',' + g + ',' + b + ',' + opacity + ')';\n },\n\n /**\n * @deprecated Please use ui/access-control/turnstilesState.color instead\n */\n turnstilesStateColor(state, parentState) {\n return accessControl.turnstilesState(state, parentState).color\n },\n\n /**\n * @deprecated Please use ui/bookings/bookingsStatus.color instead\n */\n bookingStatusColor(x) {\n return bookings.bookingStatus(x).color\n },\n\n parseColor (color) {\n const x = document.createElement('div')\n document.body.appendChild(x)\n let rgba\n let red = 0\n let green = 0\n let blue = 0\n let alpha = 0\n try {\n x.style = 'color: ' + color + '!important'\n color = window.getComputedStyle(x).color\n rgba = color\n .match(/rgba?\\((.*)\\)/)[1]\n .split(',')\n .map(Number)\n red = rgba[0]\n green = rgba[1]\n blue = rgba[2]\n alpha = '3' in rgba ? rgba[3] : 1\n } catch (e) {\n console.error(e)\n }\n x.parentNode.removeChild(x)\n return { r: red, g: green, b: blue, a: alpha }\n },\n}\n\nexport default self;","import colorsHelper from '../ui/colors'\n\nexport default {\n methods: colorsHelper\n}\n","import bookings from '../ui/bookings'\nimport subscriptions from '../ui/subscriptions'\nimport accessControl from '../ui/access-control'\nimport sales from '../ui/sales'\n\n\nexport default {\n /**\n * @deprecated Please use ui/subscriptions/subscriptionType.label instead\n */\n subscriptionTypeStr(x) {\n return subscriptions.subscriptionType(x).label\n },\n\n /**\n * @deprecated Please use ui/bookings/bookingStatus.label instead\n */\n bookingStatusStr(x) {\n return bookings.bookingStatus(x).label\n },\n\n /**\n * @deprecated Please use ui/bookings/bookingSource.label instead\n */\n bookingSourceStr(x) {\n return bookings.bookingSource(x).label\n },\n\n /**\n * @deprecated Please use ui/sales/saleTypeLabel instead\n */\n saleType(sale) {\n return sales.saleType(sale).label\n },\n\n /**\n * @deprecated Please use ui/access-control/turnstileType.label instead\n */\n turnstileTypeStr(t) {\n return accessControl.turnstileType(t).label\n },\n\n /**\n * @deprecated Please use ui/access-control/turnstileDirection.label instead\n */\n turnstileDirectionStr(t) {\n return accessControl.passingDirection(t).label\n },\n\n /**\n * @deprecated Please use ui/access-control/passingType.label instead\n */\n passingTypeStr(x) {\n return accessControl.passingType(x).label\n },\n\n /**\n * @deprecated Please use ui/access-control/passingDirectionLabel instead\n */\n passingDirectionStr(x) {\n return accessControl.passingDirection(x).label\n },\n\n /**\n * @deprecated Please use ui/access-control/accessControlEventTypeLabel instead\n */\n accessControlEventTypeStr(x) {\n return accessControl.accessControlEventType(x).label\n },\n}\n\n","import moment from 'moment'\nimport Consts from './consts'\n\n\nexport default {\n createdSinceOptions: [\n { text: 'Aujourd\\'hui', value: moment().format('YYYY-MM-DD') },\n { text: 'Moins de 48 heures', value: moment().subtract(2, 'days').format('YYYY-MM-DD') },\n { text: 'Cette semaine', value: moment().startOf('week').format('YYYY-MM-DD') },\n { text: 'Ce mois-ci', value: moment().startOf('month').format('YYYY-MM-DD') },\n { text: 'Ce trimestre', value: moment().startOf('quarter').format('YYYY-MM-DD') },\n { text: 'Ce semestre', value: moment().year() + (moment().month() < 7 ? '-01-01' : '-07-01') },\n { text: 'Cette année', value: moment().startOf('year').format('YYYY-MM-DD') }\n ],\n\n salesTypes: [\n { text: 'Ventes', value: 5 },\n { text: 'Arrhes', value: 9 },\n { text: 'Avoirs', value: -1 }\n ],\n\n turnstilesTypes: [\n { label: 'Autre', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_OTHER },\n { label: 'Lecteur RFID (tourniquet)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_TURNSTILE_RFID },\n { label: 'Lecteur QRcode (tourniquet)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_TURNSTILE_RFID },\n { label: 'Lecteur RFID (porte)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_DOOR_RFID },\n { label: 'Lecteur QRcode (porte)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_DOOR_QR},\n { label: 'Lecteur QRCode (borne d\\'information)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_KIOSK_QR },\n { label: 'Bouton poussoir', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_PUSH_BUTTON },\n { label: 'Mobile', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_PUSH_BUTTON },\n { label: 'Lecteur RFID (borne d\\'information)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_KIOSK_RFID }\n ],\n\n turnstilesTypeAvailablesForImmediateDebit: [3,4,5],\n\n turnstilesDirections: [\n { text: 'Non défini', value: 0 },\n { text: 'Entrée', value: 1 },\n { text: 'Sortie', value: 2 }\n ],\n\n subscriptionTypes: [\n { text: 'Crédit', value: Consts.SUBSCRIPTION_TYPE_CREDIT },\n { text: 'Abonnement', value: Consts.SUBSCRIPTION_TYPE_SUBSCRIPTION },\n { text: 'Quantité', value: Consts.SUBSCRIPTION_TYPE_PASS_Q },\n { text: 'Horaire', value: Consts.SUBSCRIPTION_TYPE_PASS_H },\n { text: 'Pack', value: Consts.SUBSCRIPTION_TYPE_PACK },\n { text: 'Autre', value: Consts.SUBSCRIPTION_TYPE_OTHER },\n { text: 'QR code', value: Consts.SUBSCRIPTION_TYPE_2DTAG }\n ],\n\n collectionLabels: {\n sale: \"Vente\",\n cashbook: \"Fond de caisse\",\n client: \"Client\",\n grandtotal: \"Grand total\",\n param: \"Paramètre\",\n period: \"Période\",\n pricing: \"Tarif\",\n product: \"Produit\",\n voucher: \"Bon\",\n bookings: \"Réservation\",\n passings: \"Passage\",\n booking_slot: \"Créneau\"\n },\n}","import labelizer from '../helpers/labelizer'\nimport textValues from '../text-values'\n\nexport default {\n data: () => textValues,\n methods: labelizer,\n}\n","import bookings from '../ui/bookings'\nimport accessControl from '../ui/access-control'\n\nexport default {\n /**\n * @deprecated Please use ui/bookings/bookingSource.icon instead\n */\n bookingSourceIcon(x) {\n return bookings.bookingSource(x).icon\n },\n\n /**\n * @deprecated Please use ui/bookings/bookingStatus.icon instead\n */\n bookingStatusIcon(x) {\n return bookings.bookingStatus(x).icon\n },\n\n /**\n * @deprecated Please use ui/access-control/turnstilesState.icon instead\n */\n turnstilesStateIcon(state, parentState) {\n return accessControl.turnstilesState(state, parentState).icon\n },\n\n /**\n * @deprecated Please use ui/access-control/turnstilesTypeIcons instead\n */\n turnstileTypeIcons(t) {\n return accessControl.turnstileType(t).icons\n },\n}\n","import iconizer from '../helpers/iconizer'\n\nexport default {\n methods: iconizer,\n}\n","import moment from 'moment'\n\nmoment.locale('fr')\n\nexport default {\n getDisableActivities(activities, activitiesId) {\n const disable = []\n if (Array.isArray(activitiesId)) {\n activitiesId.forEach(activityId => {\n const activity = activities.find(act => act.ID === activityId)\n if (activity !== undefined && !activity.State) {\n disable.push(activity)\n }\n })\n }\n return disable\n },\n\n activityDuration(activity, removeMarginBefore = false, removeMarginAfter = false) {\n let duration = activity.Duration\n if (!removeMarginBefore) {\n duration += activity.MarginDurationBefore\n }\n if (!removeMarginAfter) {\n duration += activity.MarginDurationAfter\n }\n return duration\n },\n\n activityEndMoment(spaBooking, activity) {\n if (!activity) {\n return moment(spaBooking.Timestamp)\n }\n const start = moment(spaBooking.Timestamp)\n const duration = this.activityDuration(activity, spaBooking.RemoveMarginBefore, spaBooking.RemoveMarginAfter)\n return start.add(duration, 'm')\n }\n}\n","import spaHelper from '../helpers/spa'\n\nexport default {\n methods: spaHelper\n}\n","import constants from './../consts'\n\nconst templateTypes = [\n { value: constants.TEMPLATE_TYPES.TICKET, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_TICKET_TEMPLATE, label: \"Ticket\" },\n { value: constants.TEMPLATE_TYPES.BILL, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_BILL_TEMPLATE, label: \"Facture\" },\n { value: constants.TEMPLATE_TYPES.ACCESS_CONTROL_VOUCHER, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_ACCESS_CONTROL_VOUCHER_TEMPLATE, label: \"Bon d'accès\" },\n { value: constants.TEMPLATE_TYPES.VOUCHER_DISCOUNT, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_VOUCHER_DISCOUNT_TEMPLATE, label: \"Code promotionnel\" },\n { value: constants.TEMPLATE_TYPES.WEB_ACCESS_CONTROL_VOUCHER, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_WEB_ACCESS_CONTROL_VOUCHER_TEMPLATE, label: \"Bon d'accès web\" },\n { value: constants.TEMPLATE_TYPES.VOUCHER, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_VOUCHER_TEMPLATE, label: \"Bon d'achat\" },\n { value: constants.TEMPLATE_TYPES.VOUCHER_GIFT_CARD, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_VOUCHER_GIFT_CARD_TEMPLATE, label: \"Carte cadeau\" },\n { value: constants.TEMPLATE_TYPES.VOUCHER_WEB_GIFT_CARD, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_VOUCHER_WEB_GIFT_CARD_TEMPLATE, label: \"Carte cadeau web\" },\n { value: constants.TEMPLATE_TYPES.VOUCHER_COLLECTABLE, selectedTemplateParam: constants.GLOBAL_PARAMS.PARAM_COLLECTABLE_VOUCHER_TEMPLATE, label: \"Bon acheté en ligne à récupérer\"},\n]\n\nexport default {\n templateType(x) {\n return templateTypes.find(t => t.value == x)\n }\n}\n\nexport { templateTypes }","import ui, { templateTypes } from '../ui/templates'\n\n\nexport default {\n data: () => ({\n templateTypes\n }),\n methods: {\n ...ui,\n }\n}","export default {\n \"AF\": \"Afghanistan\",\n \"ZA\": \"Afrique du Sud\",\n \"AL\": \"Albanie\",\n \"DZ\": \"Algérie\",\n \"DE\": \"Allemagne\",\n \"AD\": \"Andorre\",\n \"AO\": \"Angola\",\n \"AI\": \"Anguilla\",\n \"AQ\": \"Antarctique\",\n \"AG\": \"Antigua-et-Barbuda\",\n \"AN\": \"Antilles néerlandaises\",\n \"SA\": \"Arabie saoudite\",\n \"AR\": \"Argentine\",\n \"AM\": \"Arménie\",\n \"AW\": \"Aruba\",\n \"AU\": \"Australie\",\n \"AT\": \"Autriche\",\n \"AZ\": \"Azerbaïdjan\",\n \"BS\": \"Bahamas\",\n \"BH\": \"Bahreïn\",\n \"BD\": \"Bangladesh\",\n \"BB\": \"Barbade\",\n \"BY\": \"Bélarus\",\n \"BE\": \"Belgique\",\n \"BZ\": \"Belize\",\n \"BJ\": \"Bénin\",\n \"BM\": \"Bermudes\",\n \"BT\": \"Bhoutan\",\n \"BO\": \"Bolivie\",\n \"BA\": \"Bosnie-Herzégovine\",\n \"BW\": \"Botswana\",\n \"BR\": \"Brésil\",\n \"BN\": \"Brunéi Darussalam\",\n \"BG\": \"Bulgarie\",\n \"BF\": \"Burkina Faso\",\n \"BI\": \"Burundi\",\n \"KH\": \"Cambodge\",\n \"CM\": \"Cameroun\",\n \"CA\": \"Canada\",\n \"CV\": \"Cap-Vert\",\n \"EA\": \"Ceuta et Melilla\",\n \"CL\": \"Chili\",\n \"CN\": \"Chine\",\n \"CY\": \"Chypre\",\n \"CO\": \"Colombie\",\n \"KM\": \"Comores\",\n \"CG\": \"Congo-Brazzaville\",\n \"KP\": \"Corée du Nord\",\n \"KR\": \"Corée du Sud\",\n \"CR\": \"Costa Rica\",\n \"CI\": \"Côte d’Ivoire\",\n \"HR\": \"Croatie\",\n \"CU\": \"Cuba\",\n \"DK\": \"Danemark\",\n \"DG\": \"Diego Garcia\",\n \"DJ\": \"Djibouti\",\n \"DM\": \"Dominique\",\n \"EG\": \"Égypte\",\n \"SV\": \"El Salvador\",\n \"AE\": \"Émirats arabes unis\",\n \"EC\": \"Équateur\",\n \"ER\": \"Érythrée\",\n \"ES\": \"Espagne\",\n \"EE\": \"Estonie\",\n \"VA\": \"État de la Cité du Vatican\",\n \"FM\": \"États fédérés de Micronésie\",\n \"US\": \"États-Unis\",\n \"ET\": \"Éthiopie\",\n \"FJ\": \"Fidji\",\n \"FI\": \"Finlande\",\n \"FR\": \"France\",\n \"GA\": \"Gabon\",\n \"GM\": \"Gambie\",\n \"GE\": \"Géorgie\",\n \"GS\": \"Géorgie du Sud et les îles Sandwich du Sud\",\n \"GH\": \"Ghana\",\n \"GI\": \"Gibraltar\",\n \"GR\": \"Grèce\",\n \"GD\": \"Grenade\",\n \"GL\": \"Groenland\",\n \"GP\": \"Guadeloupe\",\n \"GU\": \"Guam\",\n \"GT\": \"Guatemala\",\n \"GG\": \"Guernesey\",\n \"GN\": \"Guinée\",\n \"GQ\": \"Guinée équatoriale\",\n \"GW\": \"Guinée-Bissau\",\n \"GY\": \"Guyana\",\n \"GF\": \"Guyane française\",\n \"HT\": \"Haïti\",\n \"HN\": \"Honduras\",\n \"HU\": \"Hongrie\",\n \"BV\": \"Île Bouvet\",\n \"CX\": \"Île Christmas\",\n \"CP\": \"Île Clipperton\",\n \"AC\": \"Île de l'Ascension\",\n \"IM\": \"Île de Man\",\n \"NF\": \"Île Norfolk\",\n \"AX\": \"Îles Åland\",\n \"KY\": \"Îles Caïmans\",\n \"IC\": \"Îles Canaries\",\n \"CC\": \"Îles Cocos - Keeling\",\n \"CK\": \"Îles Cook\",\n \"FO\": \"Îles Féroé\",\n \"HM\": \"Îles Heard et MacDonald\",\n \"FK\": \"Îles Malouines\",\n \"MP\": \"Îles Mariannes du Nord\",\n \"MH\": \"Îles Marshall\",\n \"UM\": \"Îles Mineures Éloignées des États-Unis\",\n \"SB\": \"Îles Salomon\",\n \"TC\": \"Îles Turks et Caïques\",\n \"VG\": \"Îles Vierges britanniques\",\n \"VI\": \"Îles Vierges des États-Unis\",\n \"IN\": \"Inde\",\n \"ID\": \"Indonésie\",\n \"IQ\": \"Irak\",\n \"IR\": \"Iran\",\n \"IE\": \"Irlande\",\n \"IS\": \"Islande\",\n \"IL\": \"Israël\",\n \"IT\": \"Italie\",\n \"JM\": \"Jamaïque\",\n \"JP\": \"Japon\",\n \"JE\": \"Jersey\",\n \"JO\": \"Jordanie\",\n \"KZ\": \"Kazakhstan\",\n \"KE\": \"Kenya\",\n \"KG\": \"Kirghizistan\",\n \"KI\": \"Kiribati\",\n \"KW\": \"Koweït\",\n \"LA\": \"Laos\",\n \"LS\": \"Lesotho\",\n \"LV\": \"Lettonie\",\n \"LB\": \"Liban\",\n \"LR\": \"Libéria\",\n \"LY\": \"Libye\",\n \"LI\": \"Liechtenstein\",\n \"LT\": \"Lituanie\",\n \"LU\": \"Luxembourg\",\n \"MK\": \"Macédoine\",\n \"MG\": \"Madagascar\",\n \"MY\": \"Malaisie\",\n \"MW\": \"Malawi\",\n \"MV\": \"Maldives\",\n \"ML\": \"Mali\",\n \"MT\": \"Malte\",\n \"MA\": \"Maroc\",\n \"MQ\": \"Martinique\",\n \"MU\": \"Maurice\",\n \"MR\": \"Mauritanie\",\n \"YT\": \"Mayotte\",\n \"MX\": \"Mexique\",\n \"MD\": \"Moldavie\",\n \"MC\": \"Monaco\",\n \"MN\": \"Mongolie\",\n \"ME\": \"Monténégro\",\n \"MS\": \"Montserrat\",\n \"MZ\": \"Mozambique\",\n \"MM\": \"Myanmar\",\n \"NA\": \"Namibie\",\n \"NR\": \"Nauru\",\n \"NP\": \"Népal\",\n \"NI\": \"Nicaragua\",\n \"NE\": \"Niger\",\n \"NG\": \"Nigéria\",\n \"NU\": \"Niue\",\n \"NO\": \"Norvège\",\n \"NC\": \"Nouvelle-Calédonie\",\n \"NZ\": \"Nouvelle-Zélande\",\n \"OM\": \"Oman\",\n \"UG\": \"Ouganda\",\n \"UZ\": \"Ouzbékistan\",\n \"PK\": \"Pakistan\",\n \"PW\": \"Palaos\",\n \"PA\": \"Panama\",\n \"PG\": \"Papouasie-Nouvelle-Guinée\",\n \"PY\": \"Paraguay\",\n \"NL\": \"Pays-Bas\",\n \"PE\": \"Pérou\",\n \"PH\": \"Philippines\",\n \"PN\": \"Pitcairn\",\n \"PL\": \"Pologne\",\n \"PF\": \"Polynésie française\",\n \"PR\": \"Porto Rico\",\n \"PT\": \"Portugal\",\n \"QA\": \"Qatar\",\n \"HK\": \"R.A.S. chinoise de Hong Kong\",\n \"MO\": \"R.A.S. chinoise de Macao\",\n \"QO\": \"régions éloignées de l’Océanie\",\n \"CF\": \"République centrafricaine\",\n \"CD\": \"République démocratique du Congo\",\n \"DO\": \"République dominicaine\",\n \"CZ\": \"République tchèque\",\n \"RE\": \"Réunion\",\n \"RO\": \"Roumanie\",\n \"GB\": \"Royaume-Uni\",\n \"RU\": \"Russie\",\n \"RW\": \"Rwanda\",\n \"EH\": \"Sahara occidental\",\n \"BL\": \"Saint-Barthélémy\",\n \"KN\": \"Saint-Kitts-et-Nevis\",\n \"SM\": \"Saint-Marin\",\n \"MF\": \"Saint-Martin\",\n \"PM\": \"Saint-Pierre-et-Miquelon\",\n \"VC\": \"Saint-Vincent-et-les Grenadines\",\n \"SH\": \"Sainte-Hélène\",\n \"LC\": \"Sainte-Lucie\",\n \"WS\": \"Samoa\",\n \"AS\": \"Samoa américaines\",\n \"ST\": \"Sao Tomé-et-Principe\",\n \"SN\": \"Sénégal\",\n \"RS\": \"Serbie\",\n \"CS\": \"Serbie-et-Monténégro\",\n \"SC\": \"Seychelles\",\n \"SL\": \"Sierra Leone\",\n \"SG\": \"Singapour\",\n \"SK\": \"Slovaquie\",\n \"SI\": \"Slovénie\",\n \"SO\": \"Somalie\",\n \"SD\": \"Soudan\",\n \"LK\": \"Sri Lanka\",\n \"SE\": \"Suède\",\n \"CH\": \"Suisse\",\n \"SR\": \"Suriname\",\n \"SJ\": \"Svalbard et Île Jan Mayen\",\n \"SZ\": \"Swaziland\",\n \"SY\": \"Syrie\",\n \"TJ\": \"Tadjikistan\",\n \"TW\": \"Taïwan\",\n \"TZ\": \"Tanzanie\",\n \"TD\": \"Tchad\",\n \"TF\": \"Terres australes françaises\",\n \"IO\": \"Territoire britannique de l'océan Indien\",\n \"PS\": \"Territoire palestinien\",\n \"TH\": \"Thaïlande\",\n \"TL\": \"Timor oriental\",\n \"TG\": \"Togo\",\n \"TK\": \"Tokelau\",\n \"TO\": \"Tonga\",\n \"TT\": \"Trinité-et-Tobago\",\n \"TA\": \"Tristan da Cunha\",\n \"TN\": \"Tunisie\",\n \"TM\": \"Turkménistan\",\n \"TR\": \"Turquie\",\n \"TV\": \"Tuvalu\",\n \"UA\": \"Ukraine\",\n \"EU\": \"Union européenne\",\n \"UY\": \"Uruguay\",\n \"VU\": \"Vanuatu\",\n \"VE\": \"Venezuela\",\n \"VN\": \"Viêt Nam\",\n \"WF\": \"Wallis-et-Futuna\",\n \"YE\": \"Yémen\",\n \"ZM\": \"Zambie\",\n \"ZW\": \"Zimbabwe\"\n }","import countries from \"../countries.js\"\n\nexport default {\n countries (uppercase) {\n return Object.values(countries).map(c => uppercase ? c.toUpperCase() : c)\n },\n\n isValidPostalCode (code, country) {\n const val = country ? country.toUpperCase() : ''\n let ok = false\n switch (val) {\n case 'ALLEMAGNE':\n case 'ESPAGNE':\n case 'FRANCE':\n case 'HONGRIE':\n case 'ITALIE':\n ok = /^\\d{5}$/.test(code)\n break\n case 'AUTRICHE':\n case 'BELGIQUE':\n case 'BULGARIE':\n case 'DANEMARK':\n case 'SUISSE':\n ok = /^\\d{4}$/.test(code)\n break\n case \"CANADA\":\n ok = /^([A-Z][0-9][A-Z])\\s*([0-9][A-Z][0-9])$/.test(code)\n break\n case \"CROATIE\":\n ok = /^HR-\\d{5}$/.test(code)\n break\n case 'ETATS-UNIS':\n ok = /(^\\d{5}$)|(^\\d{5}-\\d{4}$)/.test(code)\n break\n case 'GRÈCE':\n ok = /^\\d{3} \\d{2}$/.test(code)\n break\n case 'IRLANDE':\n ok = /^([A-Z][0-9][0-9W]) \\d{4}$/.test(code)\n break\n case \"LUXEMBOURG\":\n ok = /^L-\\d{4}$/.test(code)\n break\n case 'PAYS-BAS':\n ok = /^\\d{4} \\w{2}$/.test(code)\n break\n case 'PORTUGAL':\n ok = /^\\d{4}-\\d{3}$/.test(code)\n break\n case 'ROYAUME-UNI':\n ok = /(^\\d{5}$)|(^\\d{5}-\\d{4}$)/.test(code)\n break\n case 'SUÈDE':\n ok = /^SE-\\d{5}$/.test(code)\n break\n default:\n ok = true\n }\n\n return ok || \"Le code postal saisi n'est pas valide pour ce pays\"\n },\n}\n","import locationHelper from '../helpers/location'\n\nexport default {\n methods: locationHelper\n}\n","import Consts from '../consts'\n\nconst lockersStates = [\n { text: 'Ouvert', value: Consts.LOCKERS.LOCKER_STATE.STATE_OPENED, color: '#71DBBA' },\n { text: 'Fermé', value: Consts.LOCKERS.LOCKER_STATE.STATE_CLOSED, color: '#FA906A' },\n { text: 'Erreur', value: Consts.LOCKERS.LOCKER_STATE.STATE_ERROR, color: '#E35E7E' },\n { text: 'Déconnecté', value: Consts.LOCKERS.LOCKER_STATE.STATE_UNKNOWN, color: '#000000' }\n]\n\nconst lockersStatuses = [\n { text: 'Disponible', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_AVAILABLE },\n { text: 'Occupé', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_IN_USE },\n { text: 'Préparé', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_PREPARED },\n { text: 'En retard', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_OVERSTAY },\n { text: 'Désactivé', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_DISABLED },\n { text: 'En erreur', value: Consts.LOCKERS.LOCKER_STATUS.STATUS_IN_ERROR }\n]\n\nconst lockersAccessModes = [\n { text: 'Libre', value: Consts.LOCKERS.LOCKER_ACCESS_MODE.FREE_ACCESS },\n { text: 'Réservation', value: Consts.LOCKERS.LOCKER_ACCESS_MODE.RESERVATION },\n { text: 'Affectation', value: Consts.LOCKERS.LOCKER_ACCESS_MODE.AFFECTATION }\n]\n\nconst lockersBookingModes = [\n { \n text: 'Réservation ponctuelle', \n value: Consts.LOCKERS.LOCKER_BOOKING_MODE.MODE_BOOKING, \n icon: 'mdi-clock-outline', \n detail: 'Réservation pour une date donnée, avec une heure de début et de fin', \n },\n { \n text: 'Affectation', \n value: Consts.LOCKERS.LOCKER_BOOKING_MODE.MODE_AFFECTATION, \n icon: 'mdi-lock-outline', \n detail: 'Réservation pour une date indéfinie',\n },\n { \n text: 'Usage unique', \n value: Consts.LOCKERS.LOCKER_BOOKING_MODE.MODE_SINGLE_USE, \n icon: 'mdi-package-variant-closed', \n detail: \"Réservation du casier jusqu'à sa prochaine ouverture\", \n }\n]\n\nconst lockersIncidentsTypes = [\n { text: 'Autre incident', value: Consts.LOCKERS.INCIDENT_TYPE.OTHER_INCIDENT },\n { text: 'Echec d\\'attribution d\\'un casier', value: Consts.LOCKERS.INCIDENT_TYPE.NO_LOCKERS_AVAILABLE_AT_BOOKING_START_INCIDENT },\n { text: 'Echec de réattribution d\\'un casier', value: Consts.LOCKERS.INCIDENT_TYPE.NO_LOCKERS_AVAILABLE_AT_BOOKING_RETRY_INCIDENT },\n { text: 'Casier fermé après la fin de la réservation', value: Consts.LOCKERS.INCIDENT_TYPE.NOT_OPENED_AT_THE_END_OF_BOOKING_INCIDENT },\n { text: 'Batterie de casier faible', value: Consts.LOCKERS.INCIDENT_TYPE.LOW_BATTERY_LOCKER_INCIDENT },\n { text: 'L\\'ouverture du casier a échoué', value: Consts.LOCKERS.INCIDENT_TYPE.LOCKER_STATE_NOT_OPENED_INCIDENT },\n { text: 'La fermeture du casier a échoué', value: Consts.LOCKERS.INCIDENT_TYPE.LOCKER_STATE_NOT_CLOSED_INCIDENT },\n { text: 'Passerelle déconnectée', value: Consts.LOCKERS.INCIDENT_TYPE.OFFLINE_GATEWAY_INCIDENT },\n { text: 'Casier déconnecté', value: Consts.LOCKERS.INCIDENT_TYPE.OFFLINE_LOCKER_INCIDENT },\n { text: 'Code maitre invalide', value: Consts.LOCKERS.INCIDENT_TYPE.NON_VALID_MASTER_CODE_LOCKER_INCIDENT }\n]\n\nconst lockersBookingStates = [\n { text: 'A venir', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_REGISTERED, color:\"blue\" },\n { text: 'En cours', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_STARTED, color:\"green\" },\n { text: 'Terminée', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_ENDED, color:\"black\" },\n { text: 'Annulée', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_CANCELED, color:\"blue-grey lighten-3\" },\n { text: 'En retard', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_OVERSTAY, color:\"orange\" },\n { text: 'Erreur', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_ERROR, color:\"error accent-4\" },\n { text: 'Terminée en retard', value: Consts.LOCKERS.BOOKING_STATE.BOOKING_ENDED_WITH_OVERSTAY, color:\"error purple\" }\n]\n\nconst lockersEventTypes = [\n { text: 'DST time advance false', value: Consts.LOCKERS.EVENT_TYPE.TIME_ADVANCE },\n\t{ text: 'DST time delay false', value: Consts.LOCKERS.EVENT_TYPE.TIME_DELAY },\n\t{ text: 'Erreur mécanique lors de l\\'ouverture/fermeture', value: Consts.LOCKERS.EVENT_TYPE.MECHANICAL_FAILURE },\n\t{ text: 'Ouverture avec code utilisateur', value: Consts.LOCKERS.EVENT_TYPE.USER_OPENING },\n\t{ text: 'Ouverture applicative avec code maitre', value: Consts.LOCKERS.EVENT_TYPE.MASTER_OPENING},\n\t{ text: 'Fermeture avec code utilisateur', value: Consts.LOCKERS.EVENT_TYPE.USER_CLOSING },\n\t{ text: 'Configuration de la serrure terminée', value: Consts.LOCKERS.EVENT_TYPE.INITIALIZATION },\n\t{ text: 'Ouverture automatique à la fin de la location', value: Consts.LOCKERS.EVENT_TYPE.AUTOMATIC_OPEN_RENT_TIME },\n\t{ text: 'Code maitre saisi invalide', value: Consts.LOCKERS.EVENT_TYPE.NON_VALID_MASTER_CODE },\n\t{ text: 'Le code utilisateur a expiré', value: Consts.LOCKERS.EVENT_TYPE.TIMED_OUT_CODE },\n\t{ text: 'La serrure a un autre code utilisateur', value: Consts.LOCKERS.EVENT_TYPE.OCCUPIED_CARD },\n\t{ text: 'Aucun permis disponible', value: Consts.LOCKERS.EVENT_TYPE.NON_VALID_CARD },\n\t{ text: 'Ouverture au digicode', value: Consts.LOCKERS.EVENT_TYPE.USER_OPENING_KEYPAD },\n\t{ text: 'Fermeture au digicode', value: Consts.LOCKERS.EVENT_TYPE.USER_CLOSING_KEYPAD },\n\t{ text: 'Ouverture au digicode avec code maitre', value: Consts.LOCKERS.EVENT_TYPE.MASTER_OPENING_KEYPAD },\n\t{ text: 'Fermeture au digicode avec code maitre', value: Consts.LOCKERS.EVENT_TYPE.MASTER_CLOSING_KEYPAD },\n\t{ text: 'Ouverture automatiqe', value: Consts.LOCKERS.EVENT_TYPE.AUTOMATIC_OPENING },\n\t{ text: 'Fermeture applicative', value: Consts.LOCKERS.EVENT_TYPE.MASTER_CLOSING },\n\t{ text: 'Batterie faible', value: Consts.LOCKERS.EVENT_TYPE.LOW_BATTERY },\n\t{ text: 'User cannot close more locks at the same time', value: Consts.LOCKERS.EVENT_TYPE.FULL_CARD },\n\t{ text: 'Restauration de la configuration d\\'origine', value: Consts.LOCKERS.EVENT_TYPE.ERASE_BT },\n\t{ text: 'Configuration de la serrure en mode libre demandée à partir de Streamlor', value: Consts.LOCKERS.EVENT_TYPE.STREAMLOR_FREE_CONFIGURATION },\n\t{ text: 'Configuration de la serrure en mode réservable demandée à partir de Streamlor', value: Consts.LOCKERS.EVENT_TYPE.STREAMLOR_DEDICATED_CONFIGURATION },\n\t{ text: 'Ouverture demandée à partir de Streamlor', value: Consts.LOCKERS.EVENT_TYPE.STREAMLOR_MASTER_OPENING },\n\t{ text: 'Fermeture demandée à partir de Streamlor', value: Consts.LOCKERS.EVENT_TYPE.STREAMLOR_MASTER_CLOSING },\n]\n\nconst ledOptionsTypes = [\n { text: 'LED clignottante toutes les 2 secondes', value: 0 },\n { text: 'LED clignottante toutes les 900 millisecondes', value: 1 },\n { text: 'LED allumée', value: 2 },\n { text: 'LED éteinte', value: 3 }\n]\n\nconst daysTypes = [\n { text: 'Lundi', value: 1 },\n { text: 'Mardi', value: 2 },\n { text: 'Mercredi', value: 3 },\n { text: 'Jeudi', value: 4 },\n { text: 'Vendredi', value: 5 },\n { text: 'Samedi', value: 6 },\n { text: 'Dimanche', value: 7 }\n]\n\nexport { \n lockersStates, \n lockersStatuses, \n lockersAccessModes, \n lockersBookingModes,\n lockersIncidentsTypes,\n lockersBookingStates,\n lockersEventTypes,\n ledOptionsTypes,\n daysTypes \n}","import {\n lockersStates, \n lockersStatuses, \n lockersAccessModes, \n lockersBookingModes,\n lockersBookingStates,\n lockersIncidentsTypes, \n lockersEventTypes, \n ledOptionsTypes, \n daysTypes\n} from '../ui/lockers'\n\nexport default {\n lockersState(x) {\n return lockersStates.find(t => t.value == x)\n },\n lockersStatus(x) {\n return lockersStatuses.find(t => t.value == x)\n },\n lockersAccessMode(x) {\n return lockersAccessModes.find(t => t.value == x)\n },\n lockersBookingMode(x) {\n return lockersBookingModes.find(t => t.value == x)\n },\n lockersIncidentType(x) {\n return lockersIncidentsTypes.find(t => t.value == x)\n },\n lockersBookingState(x) {\n return lockersBookingStates.find(t => t.value == x)\n },\n lockersEventType(x) {\n return lockersEventTypes.find(t => t.value == x)\n },\n ledOptionsType(x) {\n return ledOptionsTypes.find(t => t.value == x)\n },\n daysType(x) {\n return daysTypes.find(t => t.value == x)\n }\n}\n","import helpers from '../helpers/lockers'\nimport {\n lockersStates, \n lockersStatuses, \n lockersAccessModes, \n lockersBookingModes, \n lockersIncidentsTypes, \n lockersBookingStates, \n lockersEventTypes, \n ledOptionsTypes, \n daysTypes \n} from '../ui/lockers'\n\n\nexport default {\n data: () => ({\n lockersStates,\n lockersStatuses,\n lockersAccessModes,\n lockersBookingModes,\n lockersIncidentsTypes,\n lockersBookingStates,\n lockersEventTypes,\n ledOptionsTypes,\n daysTypes\n }),\n methods: {\n ...helpers\n }\n}","import consts from \"../consts\"\n\nconst onlineModules = [\n { text: \"Planning\", value: \"planning\", requiredPerm: \"admin:planning\", hasLandingPage: true },\n { text: \"Contrôle d'accès\", value: \"ctm\", requiredPerm: \"admin:ctm\", hasLandingPage: true },\n { text: \"Clients\", value: \"clients\", requiredPerm: \"admin:clients\", hasLandingPage: true },\n { text: \"Statistiques\", value: \"stats\", requiredPerm: \"admin:stats\", hasLandingPage: true },\n { text: \"Spa\", value: \"spa\", requiredPerm: \"admin:spa\", hasLandingPage: true },\n { text: \"Casiers\", value: \"lockers\", requiredPerm: \"admin:lockers\", hasLandingPage: true },\n { text: \"Backoffice\", value: \"front\" },\n { text: \"Gestion commerciale\", requiredPerm: \"admin:business\", value: \"business\", hasLandingPage: true },\n { text: \"Odéon\", value: \"odeon\" },\n { text: \"Activités périodiques\", value: \"activities\", requiredPerm: \"admin:activities\", hasLandingPage: true },\n { text: \"Devis\", value: \"quotations\", requiredPerm: \"admin:quotations\", hasLandingPage: true },\n { text: \"Bornes\", value: \"kiosks\", requiredPerm: \"admin:kiosks\", hasLandingPage: true },\n { text: 'Affichage centralisé', value: 'displayland', requiredPerm: \"admin:displayland\", hasLandingPage: true }\n]\n\nconst bookingTerminalPlanningTypes = [\n { text: \"Créneaux groupés par activité\", value: consts.BOOKING_TERMINAL_PLANNING_TYPES.GROUPED_BY_ACTIVITY },\n { text: \"Créneaux mélangés\", value: consts.BOOKING_TERMINAL_PLANNING_TYPES.MIXED_ACTIVITIES },\n]\n\nconst billingModeTypes = [\n { text: \"Au créneau\", value: consts.BILLING_MODE_TYPES.SESSION, icon: \"mdi-calendar\" },\n { text: \"Horaire\", value: consts.BILLING_MODE_TYPES.TIME, icon: \"mdi-clock-time-four-outline\" },\n]\n\n\nexport { onlineModules, bookingTerminalPlanningTypes, billingModeTypes }\n","import paramsHelper from '../helpers/params'\n\nimport { onlineModules, bookingTerminalPlanningTypes, billingModeTypes } from '../ui/params'\n\nexport default {\n data: () => ({onlineModules, bookingTerminalPlanningTypes, billingModeTypes}),\n methods: paramsHelper\n}\n","import { groupExitModes, renewModeBalanceTypes, renewModeValiditytTypes } from \"../ui/products\";\nimport consts from \"../consts\";\nimport moment from \"moment\";\n\nexport default {\n renewModeBalanceType(x) {\n return renewModeBalanceTypes.find((t) => t.value == x);\n },\n renewModeValiditytType(x) {\n return renewModeValiditytTypes.find((t) => t.value == x);\n },\n\n groupExitMode(x) {\n return groupExitModes.find((t) => t.value == x);\n },\n\n getSubscriptionLimitDate(startDate, product) {\n let limitDate = null;\n if (product.Subscription) {\n if (product.Subscription.Type === consts.SUBSCRIPTION_TYPE_SUBSCRIPTION) {\n switch (product.Subscription.DurationType) {\n case consts.DURATION_PER_DAY:\n limitDate = moment(startDate).add(product.Subscription.Duration, \"d\");\n break;\n case consts.DURATION_PER_MONTH:\n limitDate = moment(startDate).add(product.Subscription.Duration, \"M\");\n break;\n case consts.DURATION_PER_YEAR:\n limitDate = moment(startDate).add(product.Subscription.Duration, \"y\");\n break;\n }\n } else {\n limitDate = moment(startDate).add(product.Subscription.ValidityDuration, \"d\");\n }\n if (!limitDate || moment(product.Subscription.EndValidityDate).isBefore(limitDate)) {\n limitDate = moment(product.Subscription.EndValidityDate);\n }\n return limitDate.format();\n } else {\n return null;\n }\n },\n\n isProductInStockAtDateUsingProductsStockConsumption(productID, date, productsStockConsumption) {\n const outOfStockDate = this.getProductOutOfStockDateFromProductsStockConsumption(productID, productsStockConsumption)\n if (outOfStockDate === true) {\n return true\n } else if (!outOfStockDate) {\n return false\n }\n\n return moment(date).isAfter(outOfStockDate)\n },\n\n getProductOutOfStockDateFromProductsStockConsumption(productID, productsStockConsumption) {\n if (!productsStockConsumption || !productsStockConsumption[productID] || !productsStockConsumption[productID].Consumptions) {\n return null\n }\n\n for (const consumption of productsStockConsumption[productID].Consumptions) {\n if (consumption.RemainingStock <= 0) {\n return consumption.Date\n }\n }\n\n return true\n },\n\n isEstablishmentStockEmpty(establishmentID, product, takenQuantity = 1, packedProducts) {\n if (!product) {\n return false\n }\n\n if (!takenQuantity) {\n takenQuantity = 1 // Stock is empty if we cannot take one more\n }\n\n if (product.Stock !== -1 && product.StocksByEstablishment) {\n const stockInfo = product.StocksByEstablishment.find((info) => info.EstablishmentID === establishmentID)\n if (stockInfo && (stockInfo.Stock - takenQuantity) < 0) {\n return true\n }\n }\n\n if (product.PackedProducts) {\n for (const prod of product.PackedProducts) {\n const productInPack = packedProducts.find(p => p.ID === prod.ProductID)\n if (!productInPack) {\n console.error('Product in pack not found', prod.ProductID)\n return true\n }\n\n const totalQuantity = prod.Amount * takenQuantity\n if (product && this.isEstablishmentStockEmpty(establishmentID, productInPack, totalQuantity, packedProducts)) {\n return true\n }\n }\n }\n\n return false\n },\n\n isEstablishmentStockBlocked(establishmentID, product, takenQuantity, packedProducts) {\n if (!product) {\n return false\n }\n\n if (!takenQuantity) {\n takenQuantity = 1 // Stock is blocked if we cannot take one more without going under min\n }\n\n if (product.Stock !== -1 && product.StocksByEstablishment) {\n const stockInfo = product.StocksByEstablishment.find((info) => info.EstablishmentID === establishmentID)\n if (stockInfo && (stockInfo.Stock - takenQuantity) < stockInfo.StockMinForSale) {\n return true\n }\n }\n\n if (product.PackedProducts) {\n for (const prod of product.PackedProducts) {\n const productInPack = packedProducts.find(p => p.ID === prod.ProductID)\n if (!productInPack) {\n console.error('Product in pack not found', prod.ProductID)\n return true\n }\n const totalQuantity = prod.Amount * takenQuantity\n if (product && this.isEstablishmentStockBlocked(establishmentID, productInPack, totalQuantity, packedProducts)) {\n return true\n }\n }\n }\n\n return false\n },\n\n getEstablishmentProductStockInfo(establishmentID, product) {\n return product && product.StocksByEstablishment && product.StocksByEstablishment.find((info) => info.EstablishmentID === establishmentID)\n },\n\n getEstablishmentProductStock(establishmentID, product) {\n if (!product) {\n return 0\n }\n if (product.Stock === -1 || !product.StocksByEstablishment) {\n return -1\n }\n const stockInfo = product.StocksByEstablishment.find((info) => info.EstablishmentID === establishmentID)\n return stockInfo ? stockInfo.Stock : 0\n },\n\n isProductAdjustable (product) {\n return product && product.Subscription && product.Subscription.Adjustable\n }\n};\n","import {\n familyType,\n familyTypeIcon,\n familyTypes,\n groupExitModes,\n pricingFilters,\n productFiltersTypes,\n renewModeBalanceTypes,\n renewModeValiditytTypes,\n selectablesPricingsFilters\n} from '../ui/products'\nimport helpers from '../helpers/products'\n\nexport default {\n data: () => ({\n familyTypes,\n groupExitModes,\n pricingFilters,\n productFiltersTypes,\n renewModeBalanceTypes, \n renewModeValiditytTypes,\n selectablesPricingsFilters\n }),\n methods: {\n ...helpers,\n familyType,\n familyTypeIcon,\n }\n}","import Decimal from \"decimal.js\"\nimport clientHelpers from './client'\n\nexport default {\n getPaymentName(ID, allPaymentType) {\n const paymentType = allPaymentType.find(pt => ID === pt.ID)\n if (paymentType) {\n return paymentType.Label.FR\n }\n return ''\n },\n\n getSaleProductsQuantity(sale) {\n let quantity = 0\n\n if (sale.Lines) {\n for (const client in sale.Lines) {\n if (sale.Lines[client]) {\n for (const line of sale.Lines[client]) {\n quantity += parseInt(line.Amount)\n }\n }\n }\n }\n \n return quantity;\n },\n\n getSaleLines(sale){\n if (!sale.Lines || sale.Lines.length == 0) {\n return []\n }\n\n return Object.values(sale.Lines).flat()\n },\n\n getSaleLine(id, sale){\n if (!sale.Lines || sale.Lines.length == 0) {\n return null\n }\n\n return this.getSaleLines(sale).find(line => line.ID == id)\n },\n\n forEachSaleLine(sale, func){\n if (!sale.Lines || sale.Lines.length == 0){\n return\n }\n for(var clientID of Object.keys(sale.Lines)){\n if (sale.Lines[clientID]){\n for(var line of sale.Lines[clientID]){\n func(line, clientID)\n }\n }\n }\n },\n\n getSaleTotalByClient(sale) {\n const out = {}\n\n if (!sale || !sale.Lines) {\n return out\n }\n\n for (let clientId in sale.Lines) {\n const lines = sale.Lines[clientId]\n let total = new Decimal(0)\n\n for (let i = 0; i < lines.length; ++i) {\n total = total.add(lines[i].Total)\n }\n\n out[clientId] = total.toFixed(2)\n }\n\n return out\n },\n\n isProductInSale(sale, productID, clientID){\n let inSale = false\n this.forEachSaleLine(sale, (line, cliID) => {\n if ((!clientID || cliID === clientID) && line.ProductID === productID){\n inSale = true\n return\n }\n })\n\n return inSale\n },\n\n getProductPriceForClient(product, client, currentPeriodID){\n if(!product.Pricings[currentPeriodID]){\n console.warn(\"no product pricing for current period\")\n return null\n }\n let clientPricingID = client ? clientHelpers.currentClientPricingID(client, currentPeriodID) : 'DEFAULT'\n let productPricing = product.Pricings[currentPeriodID][clientPricingID] || product.Pricings[currentPeriodID]['DEFAULT']\n if (!productPricing){\n console.warn(\"no default pricing on product for current period\")\n return null\n }\n\n return productPricing.Price\n },\n\n getSaleDiscountCodes(sale){\n return sale && sale.Lines ? Object.values(sale.Lines).map(clientLines => clientLines && clientLines.map(l => l.SpecialPrice && l.SpecialPrice.DiscountCodes ? Object.keys(l.SpecialPrice.DiscountCodes) : null)).flat().flat().concat(sale.DiscountCodes ? Object.keys(sale.DiscountCodes) : []).filter(id => !!id) : []\n },\n}\n","import ui, { saleTypes, saleStates, discountConditionTypes } from '../ui/sales'\nimport helpers from '../helpers/sales'\n\n\nexport default {\n data: () => ({\n saleTypes,\n saleStates,\n discountConditionTypes\n }),\n methods: {\n ...ui,\n ...helpers\n }\n}","import ui, { subscriptionTypes, validityTypes, durationTypes, frequencies, frequenciesAlt, firstPurchaseModes } from '../ui/subscriptions'\nimport helpers from '../helpers/subscriptions'\n\n\nexport default {\n data: () => ({\n subscriptionTypes,\n validityTypes, \n durationTypes, \n frequencies,\n frequenciesAlt,\n firstPurchaseModes\n }),\n methods: {\n ...ui,\n ...helpers\n }\n}","import Consts from '../consts'\nimport moment from 'moment'\n\nconst TURNSTILE_STATE_OFFLINE = \"OFFLINE\";\nconst TURNSTILE_STATE_READY = \"READY\";\nconst TURNSTILE_STATE_ERROR = \"ERROR\";\n\n\nconst turnstilesTypes = [\n { label: 'Autre', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_OTHER },\n { label: 'Lecteur RFID (tourniquet)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_TURNSTILE_RFID, icons: ['mdi-turnstile', 'mdi-nfc'] },\n { label: 'Lecteur QRcode (tourniquet)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_TURNSTILE_RFID, icons: ['mdi-turnstile', 'mdi-qrcode'] },\n { label: 'Lecteur RFID (porte)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_DOOR_RFID, icons: ['mdi-door', 'mdi-nfc'] },\n { label: 'Lecteur QRcode (porte)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_DOOR_QR, icons: ['mdi-door', 'mdi-qrcode'] },\n { label: 'Lecteur QRCode (borne d\\'information)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_KIOSK_QR, icons: ['mdi-laptop', 'mdi-qrcode'] },\n { label: 'Bouton poussoir', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_PUSH_BUTTON, icons: ['mdi-turnstile', 'mdi-gesture-tap-button'] },\n { label: 'Mobile', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_PUSH_BUTTON, icons: ['mdi-turnstile', 'mdi-laptop'] },\n { label: 'Lecteur RFID (borne d\\'information)', value: Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_KIOSK_RFID, icons: ['mdi-turnstile', 'mdi-nfc'] }\n]\n\nconst turnstilesGroupTypes = [\n { value: 0, label: 'Autre', icon: 'mdi-help-circle' },\n { value: 1, label: 'Tourniquet', icon: 'mdi-turnstile' },\n { value: 2, label: 'Portillon PMR', icon: 'mdi-wheelchair-accessibility' },\n { value: 3, label: 'Porte', icon: 'mdi-door' },\n { value: 4, label: 'Couloir rapide', icon: 'mdi-door' }\n]\n\nconst turnstilesStates = [\n { value: TURNSTILE_STATE_OFFLINE, icon: 'mdi-lightning-bolt-circle', color: '#888888' },\n { value: TURNSTILE_STATE_READY, icon: 'mdi-check-circle', color: '#41AC53' },\n { value: TURNSTILE_STATE_ERROR, icon: 'mdi-alert-circle', color: '#FF4444' }\n]\n\nconst passingDirections = [\n { label: 'N/A', value: Consts.PASSING_DIRECTION_UNSET },\n { label: 'Entrée', value: Consts.PASSING_DIRECTION_IN },\n { label: 'Sortie', value: Consts.PASSING_DIRECTION_OUT },\n]\n\nconst passingTypes = [\n { label: 'Lecture de badge', value: Consts.PASSING_TYPE_CARD_QUERY },\n { label: 'Passage', value: Consts.PASSING_TYPE_TURNSTILE_PASSING },\n { label: 'Sortie tardive', value: Consts.PASSING_TYPE_PUNISH_LATE_EXIT },\n]\n\nconst accessControlEventTypes = [\n { label: 'Inconnu', value: Consts.ACCESS_CONTROL_EVENT_UNK },\n { label: 'Box prête', value: Consts.ACCESS_CONTROL_EVENT_BOX_READY },\n { label: 'Box en erreur', value: Consts.ACCESS_CONTROL_EVENT_BOX_ERROR },\n { label: 'Box hors-ligne', value: Consts.ACCESS_CONTROL_EVENT_BOX_OFFLINE },\n { label: 'Tourniquet prêt', value: Consts.ACCESS_CONTROL_EVENT_TS_READY },\n { label: 'Tourniquet en erreur', value: Consts.ACCESS_CONTROL_EVENT_TS_ERROR },\n { label: 'Tourniquet hors-ligne', value: Consts.ACCESS_CONTROL_EVENT_TS_OFFLINE },\n { label: 'Carte inconnue', value: Consts.ACCESS_CONTROL_EVENT_UNK_CARD },\n { label: 'Passage autorisé', value: Consts.ACCESS_CONTROL_EVENT_PASSING_ALLOW },\n { label: 'Passage refusé', value: Consts.ACCESS_CONTROL_EVENT_PASSING_DENIED },\n { label: 'Temps de passage dépassé', value: Consts.ACCESS_CONTROL_EVENT_PASSING_TIMEOUT },\n { label: 'Passage réalisé', value: Consts.ACCESS_CONTROL_EVENT_PASSING_CONFIRM },\n { label: 'Message de la box', value: Consts.ACCESS_CONTROL_EVENT_BOX_LOG },\n { label: 'Erreur mécanique de la barrière', value: Consts.ACCESS_CONTROL_EVENT_BARRIER_MECHANICAL_FAULT },\n { label: 'Signal de sécurité', value: Consts.ACCESS_CONTROL_EVENT_SAFETY_SIGNAL },\n { label: 'Dispositif de sécurité manquant', value: Consts.ACCESS_CONTROL_EVENT_SAFETY_DEVICE_MISSING },\n { label: 'Barrière trop rapide', value: Consts.ACCESS_CONTROL_EVENT_BARRIER_TOO_FAST },\n { label: 'Contact de flèche / écarteur actif', value: Consts.ACCESS_CONTROL_EVENT_BOOM_CONTACT_SWING_AWAY },\n { label: 'Vandalisme', value: Consts.ACCESS_CONTROL_EVENT_VANDALISM },\n { label: 'Détection d\\'impact', value: Consts.ACCESS_CONTROL_EVENT_IMPACT_DETECTION },\n { label: 'Défaillance de l\\'alimentation secteur', value: Consts.ACCESS_CONTROL_EVENT_MAINS_POWER_FAILURE },\n { label: 'Erreur de somme de contrôle de l\\'EEPROM', value: Consts.ACCESS_CONTROL_EVENT_EEPROM_CHECKSUM_ERROR },\n { label: 'Réinitialisation du garde fou', value: Consts.ACCESS_CONTROL_EVENT_WATCHDOG_RESET },\n { label: 'Erreur logicielle VS', value: Consts.ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_VS },\n { label: 'Erreur logicielle du système de bus', value: Consts.ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_SYSTEMBUS },\n { label: 'Erreur de position d\\'origine', value: Consts.ACCESS_CONTROL_EVENT_ERROR_ON_HOMING },\n { label: 'Dépassement CAN', value: Consts.ACCESS_CONTROL_EVENT_CAN_OVERRUN },\n { label: 'Défaut matériel CAN', value: Consts.ACCESS_CONTROL_EVENT_CAN_HW_FAULT },\n { label: 'Erreur de rythme', value: Consts.ACCESS_CONTROL_EVENT_HEARTBEAT_ERROR },\n { label: 'Surintensité', value: Consts.ACCESS_CONTROL_EVENT_OVER_CURRENT },\n { label: 'Surtension', value: Consts.ACCESS_CONTROL_EVENT_OVER_VOLTAGE },\n { label: 'Sous-tension', value: Consts.ACCESS_CONTROL_EVENT_UNDER_VOLTAGE },\n { label: 'Surchauffe', value: Consts.ACCESS_CONTROL_EVENT_OVER_TEMPERATURE },\n { label: 'Erreur de déclassement', value: Consts.ACCESS_CONTROL_EVENT_DERATING_ERROR },\n { label: 'Détection d\\'impact 2', value: Consts.ACCESS_CONTROL_EVENT_IMPACT_DETECTION2 },\n { label: 'Erreur de communication du moteur', value: Consts.ACCESS_CONTROL_EVENT_MOTOR_COMMUNICATION_ERROR },\n { label: 'Dispositif de sécurité actif', value: Consts.ACCESS_CONTROL_EVENT_DBG_SAFETY_DEVICE_ACTIVE },\n { label: 'Échec du test de mise en marche du matériel', value: Consts.ACCESS_CONTROL_EVENT_HW_ENABLE_TEST_FAILED },\n { label: 'Échec du test du dispositif de sécurité', value: Consts.ACCESS_CONTROL_EVENT_SAFETY_DEVICE_TEST_FAILED },\n { label: 'Safety loop on detector 1 active', value: Consts.ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR1_ACTIVE },\n { label: 'Safety loop on detector 2 active', value: Consts.ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR2_ACTIVE },\n { label: 'Motor bootloader active', value: Consts.ACCESS_CONTROL_EVENT_MOTOR_BOOTLOADER_ACTIVE },\n { label: 'Motor update failure', value: Consts.ACCESS_CONTROL_EVENT_MOTOR_UPDATE_FAILURE },\n { label: 'Motor update performed', value: Consts.ACCESS_CONTROL_EVENT_MOTOR_UPDATE_PERFORMED },\n { label: 'Court-circuit loop A', value: Consts.ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_A },\n { label: 'Court-circuit loop B', value: Consts.ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_B },\n { label: 'Loop A broken', value: Consts.ACCESS_CONTROL_EVENT_WRNG_LOOP_A_BROKEN },\n { label: 'Loop B broken', value: Consts.ACCESS_CONTROL_EVENT_WRNG_LOOP_B_BROKEN },\n { label: 'Erreur de référence loop', value: Consts.ACCESS_CONTROL_EVENT_LOOP_REFERENCE_ERROR},\n { label: 'Erreur de mesure de fréquence', value: Consts.ACCESS_CONTROL_EVENT_DBG_FREQUENCY_MEASUREMENT_ERROR },\n { label: 'Erreur de surveillance de mesure A', value: Consts.ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_A },\n { label: 'Erreur de surveillance de mesure B', value: Consts.ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_B },\n { label: 'Erreur de multiplexage de loop', value: Consts.ACCESS_CONTROL_EVENT_DBG_LOOP_MULTIPLEX_ERROR },\n { label: 'Différence de fréquence négative', value: Consts.ACCESS_CONTROL_EVENT_DBG_NEGATIVE_FREQUENCY_DIFFERENCE }, \n { label: 'Erreur matérielle', value: Consts.ACCESS_CONTROL_EVENT_HARDWARE_ERROR },\n { label: 'Erreur loop A', value: Consts.ACCESS_CONTROL_EVENT_ERROR_LOOP_A },\n { label: 'Erreur loop B', value: Consts.ACCESS_CONTROL_EVENT_ERROR_LOOP_B },\n]\n\nexport default {\n turnstilesState(state, parentState) {\n // parentState is now deprecated. It is kept for compatibility with old code\n return turnstilesStates.find(s => s.value == state)\n },\n\n turnstilesACBoxState(box) {\n // Check turnstiles status\n let state = turnstilesStates.find(s => s.value == TURNSTILE_STATE_READY)\n if (!box.Turnstiles || box.Turnstiles.length == 0) {\n return state\n }\n for (let ts of box.Turnstiles) {\n if (ts.State !== TURNSTILE_STATE_READY) {\n state = turnstilesStates.find(s => s.value == TURNSTILE_STATE_OFFLINE)\n break\n }\n }\n return state\n },\n\n turnstileType(v) {\n return turnstilesTypes.find(t => t.value == v) || Consts.ACCESS_CONTROL_TYPE.ACCESS_CONTROL_OTHER\n },\n\n turnstileGroupType(v) {\n return turnstilesGroupTypes.find(t => t.value == v)\n },\n\n passingDirection(v) {\n return passingDirections.find(d => d.value == v)\n },\n\n passingType(t) {\n return passingTypes.find(p => p.value == t)\n },\n\n accessControlEventType(x) {\n return accessControlEventTypes.find(t => t.value == x)\n },\n\n isPassingDateValid (date) {\n if (!date) {\n return false\n }\n const mm = moment(date)\n return mm.isValid() && mm.isAfter(moment('2005-01-01'))\n }\n}\n\nexport { turnstilesTypes, passingTypes, passingDirections, turnstilesStates, accessControlEventTypes }","import Consts from '../consts'\n\nconst bookingStatuses = [\n { label: 'Sur liste d\\'attente', value: Consts.BOOKING_STATUS_WAITING, icon: 'mdi-clock-time-four-outline', color: 'grey' },\n { label: 'En attente', value: Consts.BOOKING_STATUS_PENDING, icon: 'mdi-clock-time-four-outline', color: '#d68800' },\n { label: 'Validée', value: Consts.BOOKING_STATUS_VALIDATED, icon: 'mdi-check', color: '#2bc700' },\n { label: 'Annulée', value: Consts.BOOKING_STATUS_CANCELLED, icon: 'mdi-cancel', color: '#c72400' }\n]\n\nconst bookingRepeatStatuses = [\n { label: 'Brouillon', value: Consts.BOOKING_SLOT_REPEAT_STATUS_DRAFT, color: \"grey\" },\n { label: 'Activé', value: Consts.BOOKING_SLOT_REPEAT_STATUS_VALID, color: \"green\" },\n { label: 'Supprimé', value: Consts.BOOKING_SLOT_REPEAT_STATUS_DELETED, color: \"red\" },\n]\n\nconst bookingSlotWebModes = [\n { value: Consts.BOOKING_SLOT_WEB_MODE_UNLIMITED, label: 'Sans limite' },\n { value: Consts.BOOKING_SLOT_WEB_MODE_ZERO, label: 'Back-office uniquement' },\n { value: Consts.BOOKING_SLOT_WEB_MODE_SPECIFIC, label: 'Limite fixée' }\n]\n\nconst bookingSlotRepeatPublicationStatuses = [\n { value: Consts.BOOKING_SLOT_REPEAT_WEB_PUBLISHED_NONE, label: 'Visible en back office et non réservable', color: 'error' },\n { value: Consts.BOOKING_SLOT_REPEAT_WEB_PUBLISHED_INFO, label: 'Visible en ligne mais non réservable', color: 'warning' },\n { value: Consts.BOOKING_SLOT_REPEAT_WEB_PUBLISHED_BOOK, label: 'Visible et réservable', color: 'success' }\n]\n\nconst bookingCheckCodes = [\n { value: Consts.BOOKING_CHECK_CODES.TIME_PASSED, label: 'Temps dépassé' },\n { value: Consts.BOOKING_CHECK_CODES.SLOT_OUT_OF_VISIBILITY, label: 'Créneau non visible' },\n { value: Consts.BOOKING_CHECK_CODES.NO_PRODUCT, label: 'Aucun produit compatible' },\n { value: Consts.BOOKING_CHECK_CODES.NO_VOUCHER, label: 'Unités non utilisables' },\n { value: Consts.BOOKING_CHECK_CODES.WRONG_CLIENT_GROUP, label: 'Mauvais groupe du client' },\n { value: Consts.BOOKING_CHECK_CODES.LEVEL_NOT_GOOD, label: 'Niveau incompatible' },\n { value: Consts.BOOKING_CHECK_CODES.BOOKING_CHECK_CODE_BOOKINGS_LIMIT_REACHED, label: 'Limite de réservations dépassée' },\n { value: Consts.BOOKING_CHECK_CODES.ALREADY_BOOKED, label: 'Déjà réservé' },\n { value: Consts.BOOKING_CHECK_CODES.NO_PLACE_AVAILABLE, label: 'Plus de place disponible' },\n { value: Consts.BOOKING_CHECK_CODES.NO_PLACE_AVAILABLE_WEB, label: 'Plus de place disponble pour le web' },\n { value: Consts.BOOKING_CHECK_CODES.WEB_MODE_UNAVAILABLE, label: 'Non disponible pour le web' },\n { value: Consts.BOOKING_CHECK_CODES.INCOMPATIBLE_AGE, label: 'Age incompatible' },\n { value: Consts.BOOKING_CHECK_CODES.NOT_ENOUGH_QUANTITY, label: 'Pas assez de quantité sur l\\'abonnement' },\n { value: Consts.BOOKING_CHECK_CODES.NOT_ENOUGH_UNITS, label: 'Pas assez d\\'unités' },\n { value: Consts.BOOKING_CHECK_CODES.SUBSCRIPTION_EXPIRED, label: 'Abonnement expiré' },\n { value: Consts.BOOKING_CHECK_CODES.BOOKING_NOT_OPEN, label: 'Réservation non ouverte' },\n { value: Consts.BOOKING_CHECK_CODES.MEDICERT_REQUIRED, label: 'Certificat médical requis' },\n { value: Consts.BOOKING_CHECK_CODES.PRODUCT_UNRECHARGEABLE, label: 'Produit non rechargeable' },\n { value: Consts.BOOKING_CHECK_CODES.PERIODIC_SLOT_UNALLOWED, label: 'Créneau périodique non réservable à la séance' }\n]\n\nexport default {\n bookingSource(x) {\n switch (x) {\n case Consts.BOOKING_SOURCE_WEB: return { icon: 'mdi-web', label: 'Réservation par le Web' }\n case Consts.BOOKING_SOURCE_CASHREGISTER: return { icon: 'mdi-cash-register', label: 'Réservation par la caisse' }\n case Consts.BOOKING_SOURCE_MOBILE: return { icon: 'mdi-cellphone-android', label: 'Réservation par l\\'application mobile' }\n case Consts.BOOKING_SOURCE_KIOSK: return { icon: 'mdi-monitor-screenshot', label: 'Réservation par la borne' }\n default: return { icon: 'mdi-help', label: 'Inconnue' }\n }\n },\n\n bookingStatus(v) {\n return bookingStatuses.find(s => s.value == v)\n },\n\n bookingRepeatStatus(v) {\n return bookingRepeatStatuses.find(s => s.value == v)\n },\n\n bookingSlotWebMode(v) {\n return bookingSlotWebModes.find(s => s.value == v)\n },\n\n bookingSlotRepeatPublicationStatus(v) {\n return bookingSlotRepeatPublicationStatuses.find(s => s.value == v)\n },\n\n bookingCheckCode(v) {\n return bookingCheckCodes.find(c => c.value == v)\n }\n}\n\nexport { bookingStatuses , bookingRepeatStatuses, bookingSlotWebModes, bookingSlotRepeatPublicationStatuses, bookingCheckCodes}\n","import Consts from '../consts'\n\nconst clientsGenders = [\n { text: 'M', value: Consts.CLIENTS.GENDERS.MALE, civilite: 'Monsieur', sex: \"Homme\", icon: 'mdi-gender-male' },\n { text: 'Mme', value: Consts.CLIENTS.GENDERS.FEMALE, civilite: 'Madame', sex: \"Femme\", icon: 'mdi-gender-female' },\n // { text: '', value: Consts.CLIENTS.GENDERS.UNKNOW , civilite: 'Non précisé', sex: \"Non précisé\", icon: 'mdi-gender-non-binary' }\n]\n\nconst clientFields = [\n { text: 'Prénom', value: 'Firstname' },\n { text: 'Nom', value: 'Lastname' },\n { text: 'Adresse', value: 'Address.Address' },\n { text: 'Code postal', value: 'Address.PostalCode' },\n { text: 'Ville', value: 'Address.City' },\n { text: 'Date de naissance', value: 'BirthDate' },\n { text: 'Téléphone fixe', value: 'Contact.Phone' },\n { text: 'Téléphone mobile', value: 'Contact.Mobile' },\n { text: 'E-mail', value: 'Contact.Email' }\n]\n\nconst orgTypes = [\n { text: 'Société', value: 1 },\n { text: 'Association', value: 2 },\n { text: 'École', value: 3 },\n { text: 'CE', value: 4 },\n { text: 'Collectivité', value: Consts.CLIENT_ORG_COLLECTIVITY },\n { text: 'Groupement', value: Consts.CLIENT_ORG_GROUPING },\n { text: 'Organisation', value: Consts.CLIENT_ORG_ORGANIZATION },\n { text: 'Particulier', value: Consts.CLIENT_ORG_INDIVIDUAL },\n { text: 'Privé', value: Consts.CLIENT_ORG_PRIVATE },\n { text: 'Établissement public', value: Consts.CLIENT_ORG_PUBLIC }\n]\n\n// - L'adresse (rue/n°)\n// - Le code postal\n// - La ville\n// - L'adresse e-mail\n// - La date de naissance\n// - Le numéro de téléphone fixe\n// - Le numéro de téléphone mobile\n\nexport default {\n /**\n * @param {string} x Gender code : 'M', 'F', etc.\n */\n clientsGender(x) {\n return clientsGenders.find(elem => elem.value == x)\n },\n\n orgType(x){\n return orgTypes.find(elem => elem.value == x)\n }\n}\n\nexport {\n clientsGenders,\n clientFields,\n orgTypes\n}","const fileTypes = [\n { label: \"PDF\", mimeTypes: [\"application/pdf\"], value: \"pdf\", icon: \"mdi-file-pdf-box\", color: 'red' },\n { label: \"Image\", mimeTypes:['image/jpeg', 'image/jpg', 'image/png'], value: \"png\", icon: \"mdi-image\", color: 'blue' },\n { label: \"Document Word\", mimeTypes:['application/msword', '.doc', '.docx', \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\"], value: \"docx\", icon: \"mdi-file-word\", color: 'blue' },\n\n]\n\nconst fileDocumentTypes = [\n { text: \"Contrat d'abonnement\", value: \"subscription-contract\", acceptedFileTypes: ['.docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'] },\n]\n\nexport { fileTypes, fileDocumentTypes }\n\nexport default {\n getFileType(mimeType){\n return fileTypes.find(t => t.mimeTypes.includes(mimeType)) || { label: \"Inconnu\", mimeTypes: \"\", value: \"unknow\", icon: \"mdi-file\", color: 'grey' }\n },\n\n getFileDocumentType(type){\n return fileDocumentTypes.find(t => t.value===type) || { label: \"Autre\", value: null }\n }\n}","import Consts from '../consts'\nimport { fileDocumentTypes } from \"./files\";\nimport { turnstilesStates } from \"./access-control\";\n\nconst productFiltersTypes = [\n { text: 'Crédit', value: \"credit\" },\n { text: 'Abonnement', value: \"subscription\" },\n { text: 'Pass quantité', value: \"passQ\" },\n { text: 'Pass horaire', value: \"passH\" },\n { text: 'QR code', value: \"QRCode\" },\n { text: 'Badge', value: \"card\" },\n { text: 'Pack', value: \"pack\" },\n]\n\nconst renewModeValiditytTypes = [\n { text: \"Ne pas ajouter le temps restant à la durée de validité\", value: Consts.RENEW_OPTIONS_USE_SUBSCRIPTION_VALIDITY_ONLY },\n { text: \"Ajouter le temps restant à la durée de validité\", value: Consts.RENEW_OPTIONS_ADD_REMAINING_VALIDITY },\n]\n\nconst renewModeBalanceTypes = [\n { text: \"Toujours conserver le solde existant\", value: Consts.RENEW_OPTIONS_KEEP_BALANCE_ALWAYS },\n { text: \"Conserver le solde existant si l'abonnement n'est pas expiré\", value: Consts.RENEW_OPTIONS_KEEP_BALANCE_IF_NOT_EXPIRED },\n { text: \"Ne jamais conserver le solde existant\", value: Consts.RENEW_OPTIONS_KEEP_BALANCE_NEVER },\n]\n\nconst groupExitModes = [\n { text: \"Jamais\", value: Consts.GROUP_EXIT_AUTO_NEVER },\n { text: \"Seulement pour les passages d'entrée de groupe créés depuis la caisse\", value: Consts.GROUP_EXIT_AUTO_MANUAL_ONLY },\n { text: \"Pour tous les passages d'entrée de groupe\", value: Consts.GROUP_EXIT_AUTO_ALWAYS },\n]\n\nconst familyTypes = [\n { text: \"Caisse\", value: Consts.FAMILIES_TYPES.CASHREGISTER, icon: 'mdi-cash-register' },\n { text: \"Borne\", value: Consts.FAMILIES_TYPES.KIOSK, icon: 'mdi-monitor' },\n { text: \"Web\", value: Consts.FAMILIES_TYPES.WEB, icon: 'mdi-web' },\n { text: \"Contrôle d'accès\", value: Consts.FAMILIES_TYPES.ACCESS_CONTROL, icon: \"mdi-turnstile\" },\n { text: \"Statistiques\", value: Consts.FAMILIES_TYPES.STATS, icon: 'mdi-finance' },\n { text: \"Exports financiers\", value: Consts.FAMILIES_TYPES.EXPORT, icon: 'mdi-file-table-box-multiple-outline' },\n { text: \"Exports journaliers\", value: Consts.FAMILIES_TYPES.DAILY, icon: 'mdi-calendar-cursor' },\n { text: \"CE\", value: Consts.FAMILIES_TYPES.QUOTATION, icon: 'mdi-file-sign' },\n]\n\nconst pricingFilters = [\n { text: 'Tous les types de clients', value: Consts.ALLOW_ACCOUNTS_MODE.ALL },\n { text: 'Personnes physiques uniquement', value: Consts.ALLOW_ACCOUNTS_MODE.PERSON },\n { text: 'Personnes morales uniquement', value: Consts.ALLOW_ACCOUNTS_MODE.ORG },\n]\n\nconst selectablesPricingsFilters = [\n { text: 'Tous les tarifs', value: -1 },\n { text: 'Tarifs pour tous les types de clients', value: Consts.ALLOW_ACCOUNTS_MODE.ALL },\n { text: 'Tarifs pour les personnes physiques uniquement', value: Consts.ALLOW_ACCOUNTS_MODE.PERSON },\n { text: 'Tarifs pour les personnes morales uniquement', value: Consts.ALLOW_ACCOUNTS_MODE.ORG },\n]\n\nexport function familyType(value) {\n return familyTypes.find(family => family.value === value)\n}\n\nexport function familyTypeIcon(value) {\n if (value) {\n return familyTypes.find(family => family.value === value).icon\n } else {\n return 'mdi-cash-register'\n }\n}\n\n\nexport { familyTypes, groupExitModes, pricingFilters, productFiltersTypes, renewModeBalanceTypes, renewModeValiditytTypes, selectablesPricingsFilters }","import Consts from '../consts'\nimport formsHelper from '../helpers/forms'\n\nconst SALE_TYPE_AVOIR = -1\nconst SALE_TYPE_CORRECTION = -2\n\nconst saleStates = [\n { label: 'Brouillon', value: Consts.SALE_STATE_DRAFT, icon: 'mdi-file', color: '#9c9c9c' },\n { label: 'En pause', value: Consts.SALE_STATE_PAUSED, icon: 'mdi-pause', color: '#9c9c9c' },\n { label: 'En attente de paiement', value: Consts.SALE_STATE_PAYING, icon: 'mdi-credit-card-clock', color: '#9c9c9c' },\n { label: 'En attente de confirmation', value: Consts.SALE_STATE_READY_CONFIRMED, icon: 'mdi-pause', color: '#9c9c9c' },\n { label: 'Confirmée', value: Consts.SALE_STATE_CONFIRMED, icon: 'mdi-check', color: '#50c246' },\n { label: 'Annulée', value: Consts.SALE_STATE_CANCELLED, icon: 'mdi-cancel', color: '#e34242' },\n { label: 'Paiement en pause', value: Consts.SALE_STATE_PAUSED_PAYING, icon: 'mdi-credit-card-clock', color: '#9c9c9c' },\n { label: 'En attente de paiement', value: Consts.SALE_STATE_PAYMENT_PENDING, icon: 'mdi-credit-card-clock', color: '#9c9c9c' },\n { label: 'Arrhes', value: Consts.SALE_STATE_ARRHES, icon: 'mdi-credit-card-settings', color: '#9c9c9c' },\n]\n\nconst discountConditionTypes = [\n {\n text: 'Lorsque le nombre produits achetés correspondants à la liste est égal à',\n value: Consts.DISCOUNT_CONDITION_TYPES.EQ_PRODUCTS_AMOUNT,\n valueDescription: 'Nombre de produits',\n useProductsIDs: true,\n icon: 'mdi-equal',\n validateValueRules: [formsHelper.requiredRule, formsHelper.isIntegerRule, formsHelper.isPositiveRule]\n },\n {\n text: 'Lorsque le nombre produits achetés correspondants à la liste est supérieur ou égal à',\n value: Consts.DISCOUNT_CONDITION_TYPES.GTE_PRODUCTS_AMOUNT,\n valueDescription: 'Minimum de produits achetés',\n useProductsIDs: true,\n icon: 'mdi-greater-than-or-equal',\n validateValueRules: [formsHelper.requiredRule, formsHelper.isIntegerRule, formsHelper.isPositiveRule]\n },\n {\n text: 'Lorsque le montant total de la vente dépasse',\n value: Consts.DISCOUNT_CONDITION_TYPES.GTE_SALE_TOTAL,\n valueDescription: 'Minimum du total de la vente',\n icon: 'mdi-cash',\n validateValueRules: [formsHelper.requiredRule, formsHelper.isPositiveRule]\n }\n]\n\n// Deprecared: use saleStates\nconst saleTypes = [\n { label: 'Vente confirmée', value: Consts.SALE_STATE_CONFIRMED },\n { label: 'Arrhes', value: Consts.SALE_STATE_ARRHES },\n { label: 'Avoir', value: SALE_TYPE_AVOIR },\n { label: 'Correction', value: SALE_TYPE_CORRECTION },\n { label: 'Vente non payée', value: Consts.SALE_STATE_PAYMENT_PENDING },\n]\n\n\nexport default {\n saleType (sale) {\n if (sale.CreditNote && !sale.Correction) {\n return saleTypes.find(t => t.value == SALE_TYPE_AVOIR)\n } else if (sale.Correction) {\n return saleTypes.find(t => t.value == SALE_TYPE_CORRECTION)\n } else if (!sale.CreditNote && sale.State === Consts.SALE_STATE_PAYMENT_PENDING) {\n return saleTypes.find(t => t.value == Consts.SALE_STATE_PAYMENT_PENDING)\n } else if (!sale.CreditNote && sale.State === Consts.SALE_STATE_ARRHES) {\n return saleTypes.find(t => t.value == Consts.SALE_STATE_ARRHES)\n } else if (!sale.CreditNote && sale.State !== Consts.SALE_STATE_PAYMENT_PENDING && sale.State !== Consts.SALE_STATE_ARRHES) {\n return saleTypes.find(t => t.value == Consts.SALE_STATE_CONFIRMED)\n }\n },\n\n saleState (state) {\n return saleStates.find(s => s.value == state)\n },\n\n discountType (type, curencySymbol = '€') {\n return this.discountTypes(curencySymbol).find(d => d.value == type)\n },\n\n discountTypes (curencySymbol = '€') {\n return [\n {\n label: \"Devise (toute la vente si présence d'un produit compatible)\",\n value: Consts.DISCOUNT_TYPES.PRICE,\n icon: 'mdi-cash',\n valueDescription: `Valeur de la remise en ${curencySymbol}`,\n prefix: curencySymbol,\n formatValue: (template) => `Remise de ${template.DiscountValue}${curencySymbol} sur la vente`,\n validateValueRules: [formsHelper.requiredRule, formsHelper.isNumericRule, formsHelper.isPositiveRule]\n },\n {\n label: 'Devise (par produit compatible)',\n value: Consts.DISCOUNT_TYPES.PRICE_BY_PRODUCT,\n icon: 'mdi-cash',\n valueDescription: `Valeur de la remise en ${curencySymbol}`,\n prefix: curencySymbol,\n formatValue: (template) => `Remise de ${template.DiscountValue}${curencySymbol} sur chaque produit compatible`,\n validateValueRules: [formsHelper.requiredRule, formsHelper.isNumericRule, formsHelper.isPositiveRule]\n },\n {\n label: 'Pourcentage',\n value: Consts.DISCOUNT_TYPES.PERCENT,\n icon: 'mdi-percent',\n valueDescription: 'Valeur de la remise en %',\n prefix: '%',\n formatValue: (template) => `Remise de ${template.DiscountValue}%`,\n validateValueRules: [formsHelper.requiredRule, formsHelper.isIntegerRule, formsHelper.isPositiveRule, formsHelper.isLessOrEqualRule(100), formsHelper.isGreatherThanRule(0)]\n },\n {\n label: 'Produits offerts',\n value: Consts.DISCOUNT_TYPES.OFFERED_PRODUCTS,\n icon: 'mdi-cursor-default-click-outline',\n iconColor: 'deep-purple accent-4',\n valueDescription: 'Nombre de produits offerts sélectionnables',\n formatValue: (template) => {\n let productOfferedAmount = parseInt(template.DiscountValue)\n if (template.UnchoosableProductsIDs) {\n productOfferedAmount += template.UnchoosableProductsIDs.length\n }\n\n return `${productOfferedAmount} produit${productOfferedAmount > 1 ? 's' : ''} offert${productOfferedAmount > 1 ? 's' : ''} `\n },\n validateValueRules: []\n },\n ]\n },\n\n discountConditionType (type) {\n return discountConditionTypes.find(d => d.value == type)\n }\n}\n\nexport { saleTypes, saleStates, discountConditionTypes }","import date from '../helpers/date'\nimport Consts from '../consts'\n\nconst subscriptionTypes = [\n { label: 'Crédit', value: Consts.SUBSCRIPTION_TYPE_CREDIT },\n { label: 'Abonnement', value: Consts.SUBSCRIPTION_TYPE_SUBSCRIPTION },\n { label: 'Quantité', value: Consts.SUBSCRIPTION_TYPE_PASS_Q },\n { label: 'Horaire', value: Consts.SUBSCRIPTION_TYPE_PASS_H },\n { label: 'Pack', value: Consts.SUBSCRIPTION_TYPE_PACK },\n { label: 'Autre', value: Consts.SUBSCRIPTION_TYPE_OTHER },\n { label: 'QR code', value: Consts.SUBSCRIPTION_TYPE_2DTAG }\n]\n\nconst validityTypes = [\n {\n value: Consts.PRODUCT_VALIDITY_SALE_DATE,\n label: \"À l'achat\",\n description: \"La validité du produit débutera dès l'achat du produit\"\n },\n {\n value: Consts.PRODUCT_VALIDITY_FIRST_USE,\n label: 'À la première utilisation',\n description: 'Le validité du produit débutera au premier passage'\n },\n {\n value: Consts.PRODUCT_VALIDITY_FIXED,\n label: 'Date fixe',\n description: 'Le validité du produit débutera à la date fixée dans la fiche produit'\n },\n {\n value: Consts.PRODUCT_VALIDITY_CUSTOM_DATE,\n label: \"Date fixée à l'achat\",\n description: \"Le produit sera valable à compter de la date fixée lors de l'ajout du produit au panier\"\n },\n {\n value: Consts.PRODUCT_VALIDITY_MATCH_BOOKING_DATE,\n label: \"Date calée sur la réservation périodique\",\n description: \"Le produit sera valable à compter du début de la réservation périodique et jusqu'à sa fin\",\n },\n {\n value: Consts.PRODUCT_VALIDITY_CUSTOM_PERIOD,\n label: \"Période de validité fixée à l'achat\",\n description: \"Le produit sera valable dans l'intervalle des dates fixées lors de l'ajout du produit au panier\",\n } \n]\n\nconst durationTypes = [\n {value: Consts.DURATION_PER_DAY, label: 'jour(s)'},\n {value: Consts.DURATION_PER_MONTH, label: 'mois'},\n {value: Consts.DURATION_PER_YEAR, label: 'année(s)'}\n]\n\nconst frequencies = [\n { label: 'Ne pas renouveler', value: Consts.FREQUENCY_NEVER},\n { label: 'Mensuel', value: Consts.FREQUENCY_MONTHLY },\n { label: 'Annuel', value: Consts.FREQUENCY_YEARLY }\n]\n\nconst frequenciesAlt = [\n {text: \"Mois\", value: 2},\n {text: \"An\", value: 3}\n]\n\nconst firstPurchaseModes = [\n {label: \"Ne pas renouveler\", value: null},\n {label: 'Date fixe', value: Consts.MODE_FIRST_PURCHASE_FIX_DATES},\n {label: 'Date à date', value: Consts.MODE_FIRST_PURCHASE_DATE_TO_DATE}\n]\n\nexport default {\n durationType(x) {\n return durationTypes.find(t => t.value == x)\n },\n\n subscriptionType(x) {\n return subscriptionTypes.find(t => t.value == x)\n },\n\n productSubscriptionDurationText(productSubscription){\n let durationTypeLabel\n switch (productSubscription.DurationType) {\n case Consts.DURATION_PER_DAY:\n durationTypeLabel= \"jour\"\n case Consts.DURATION_PER_MONTH:\n durationTypeLabel= \"mois\"\n case Consts.DURATION_PER_YEAR:\n durationTypeLabel= \"an\"\n }\n\n if (productSubscription.Duration > 1 && productSubscription.DurationType != Consts.DURATION_PER_MONTH) {\n durationTypeLabel += \"s\"\n }\n\n return `${productSubscription.Duration} ${durationTypeLabel}`\n },\n\n subscriptionStatus(subscription) {\n if (subscription.Discontinued == true) {\n return { label: \"Stoppé\", color: \"red\", icon: \"mdi-cancel\" };\n }\n else if (subscription.Paused) {\n return { label: \"En pause\", color: \"grey\", icon: \"mdi-pause\" };\n }\n else if (subscription.SubscriptionLimitDate && !date.isFuture(subscription.SubscriptionLimitDate)) {\n return { label: \"Expiré\", color: \"red\", icon: \"mdi-timer-sand-empty\" };\n }\n else if (subscription.Quantity <= 0) {\n return { label: \"Épuisé\", color: \"grey\", icon: \"mdi-cancel\" };\n }\n return { label: \"Actif\", color: \"green\", icon: \"mdi-check\" };\n },\n}\n\nexport { subscriptionTypes, validityTypes, durationTypes, frequencies, frequenciesAlt, firstPurchaseModes }","import './common'\nimport axios from 'axios'\n\nexport default {\n getTimeslots: (params) => axios.get('/access-control/timeslots', { params }),\n createTimeslots: (data) => axios.post('/access-control/timeslots', data),\n updateTimeslots: (data) => axios.put(`/access-control/timeslots/${data.ID}`, data),\n deleteTimeslot: (id) => axios.delete(`/access-control/timeslots/${id}`),\n getTimeslotGroup: (id) => axios.get(`/access-control/timeslots-groups/${id}`),\n getTimeslotsGroup: (params) => axios.get('/access-control/timeslots-groups', { params }),\n updateTimeslotGroup: (data) => axios.put(`/access-control/timeslots-groups/${data.GroupID}`, data),\n deleteTimeslotGroup: (id) => axios.delete(`/access-control/timeslots-groups/${id}`),\n getTimeslotTemplates: (params) => axios.get('/access-control/timeslots-templates', { params }),\n createTimeslotTemplate: (data) => axios.post('/access-control/timeslots-templates', data),\n updateTimeslotTemplate: (data) => axios.put(`/access-control/timeslots-templates/${data.ID}`, data),\n deleteTimeslotTemplate: (id) => axios.delete(`/access-control/timeslots-templates/${id}`),\n postRefreshTimeslots: (filters) => axios.post('/access-control/timeslots-refresh', filters),\n getScan: (id) => axios.get(`/access-control/scan/${id}`),\n postScanFlash: (id, data) => axios.post(`/access-control/scan/${id}/flash`, data),\n getPenalties: (params) => axios.get('/access-control/penalties', { params }),\n recreditPenaltyPassing: (data) => axios.post('/access-control/recredit-penalty', data),\n updateZoneProfile: (data) => axios.put(`/access-control/zone-profile/${data.ID}`, data),\n getZoneProfiles: (params) => axios.get('/access-control/zone-profiles', { params }),\n deleteZoneProfile: (id) => axios.delete(`/access-control/zone-profiles/${id}`),\n addTurnstilesOnZoneProfile: (data) => axios.post(`/access-control/zone-profile/${data.ZoneProfileID}/addTurnstiles`, data),\n refreshTurnstiles: (id) => axios.post(`/access-control/zone-profile/${id}/refresh-turnstiles`),\n getTurnstilesInZoneProfileByAreaID: (id) => axios.get(`/access-control/zone-profile/turnstiles-area/${id}`),\n getAccessControlLogs: (params) => axios.get('/access-control/logs', { params })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getClientAccounts: (clientId, params) => axios.get(`/clients/${clientId}/accounts`, { params }),\n postClientCreateAccount: (clientId, data) => axios.post(`/clients/${clientId}/create-account`, data),\n postClientDisableAccount: (clientId, data) => axios.post(`/clients/${clientId}/disable-account`, data),\n patchClientOnlineUser: (clientId, data) => axios.patch(`/clients/${clientId}/online-user`, data),\n postClientEnableAccount: (clientId, data) => axios.post(`/clients/${clientId}/enable-account`, data),\n postClientPermissions: (clientId, data) => axios.post(`/clients/${clientId}/permissions`, data),\n\n getTrainers: () => axios.get('/trainers'),\n getSellers: (params) => axios.get('/sellers', { params }),\n getSellersProfils: (params) => axios.get('/sellers-profils', { params }),\n postSeller: (data) => axios.post('/sellers', data),\n putSeller: (data) => axios.put(`/sellers/${data.ID}`, data),\n\n updateAccountPassword: (accountId, data) => axios.put(`/accounts/${accountId}/change-password`, data),\n\n getPermissionsProfiles: () => axios.get('/profiles'),\n createPermissionsProfile: (data) => axios.post('/profiles', data),\n updatePermissionsProfile: (data) => axios.put(`/profiles/${data.ID}`, data)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getActivities: (params) => axios.get('/activities', { params }),\n getPeriodicActivities: (params) => axios.get('/periodic/activities', { params }),\n getActivity: (id) => axios.get(`/activities/${id}`),\n getActivitiesFamilies: (params) => axios.get('/activities-families', { params }),\n getLevels: (params) => axios.get('/levels', { params })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getAreas: (params) => axios.get('/areas', { params }),\n createArea: (data) => axios.post('/areas', data),\n updateArea: (data) => axios.put(`/areas/${data.ID}`, data),\n getAreasAttendance: (areas) => axios.get('/areas-attendance', { params: { AreaID: areas } })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n login: user => axios.post('/auth/login', user),\n loginToken: token => axios.post('/auth/login-token', { Token: token }),\n logout: () => axios.post('/auth/logout'),\n getAuthToken: data => axios.post('/auth-cas/token', data),\n checkAuthToken: (token) => axios.get(`/auth-cas/token/${token}`),\n lostPassword: (payload) => axios.post('/auth/lost-password', payload),\n getRenewPasswordToken: (token) => axios.get(`/auth/renew-password-token/${token}`),\n renewPassword: (payload) => axios.post('/auth/renew-password', payload)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getClients: (params) => axios.get('/clients', { params }),\n getPaginatedClients: (params) => axios.get('/paginated-clients', { params }),\n getClient: (id) => axios.get(`/clients/${id}`),\n getClientUnits: (id) => axios.get(`/clients/${id}/units`),\n getClientAlerts: (id) => axios.get(`/clients/${id}/alerts`),\n createClient: (data) => axios.post('/clients', data),\n updateClient: (id, client) => axios.put(`/clients/${id}`, client),\n upsertClientMandate: (id, mandate) => axios.post(`/clients/${id}/mandates`, mandate),\n updateClientSubscriptions: (id, subscriptions) => axios.put(`/clients/${id}/subscriptions`, subscriptions),\n deleteClient: (id) => axios.delete(`/clients/${id}`),\n reactivateClient: (id) => axios.post(`/clients/${id}/reactivate`),\n\n checkMail: (mail) => axios.get('/check-mail', { params: { mail } }),\n addSubscriptionToClient: (clientID, productID) => axios.post(`/clients/${clientID}/subscriptions`, { ProductID: productID }),\n mergeClients: (data) => axios.post('/merge-clients', data)\n}\n","import axios from 'axios'\nimport store from '~/store/store'\nimport router from '~/router/router'\nimport Config from '~/config'\nimport EventBus from '~/eventbus'\n\naxios.defaults.baseURL = Config.BaseURL\n\naxios.interceptors.request.use(function (config) {\n if (store.getters.isLoggedIn) {\n if (config.headers.common) {\n config.headers.common.Authorization = store.getters.authToken\n } else {\n config.headers.common = { Authorization: store.getters.authToken }\n }\n } else if (router.currentRoute.name === 'displayland-view') {\n config.headers.common = { 'X-Displayland-Authorization': router.currentRoute.params.id }\n }\n\n return config\n}, function (error) {\n return Promise.reject(error)\n})\n\naxios.interceptors.response.use(function (res) {\n return res\n}, function (res) {\n if (res.response) {\n if (res.response && res.response.status >= 500) {\n // Notification.error({title: 'Erreur ' + res.response.status, message: 'Une erreur serveur est survenue, veuillez réessayer ultérieurement'});\n } else if (res.response.status === 401) {\n if (store.getters.isLoggedIn) {\n // Token likely expired, clear authentication\n store.dispatch('logout')\n setTimeout(() => {\n // yes, we check AGAIN, but we avoid getting spammed if multiple calls are set at the same time\n if (store.getters.isLoggedIn) {\n EventBus.$emit('toast-message', {\n type: 'error',\n message: 'Votre session a expiré, veuillez vous reconnecter'\n })\n }\n }, 50)\n }\n\n if (global.cashRegisterIPC && global.cashRegisterIPC.emit) {\n global.cashRegisterIPC.emit('auth-error', `session expired, received 401 on ${res.config.url}`)\n }\n\n router.push('/').catch(() => {\n })\n }\n }\n\n return Promise.reject(res)\n})\n\nexport default {}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getTurnstiles: () => axios.get('/ctm/turnstiles'),\n getPassings: (params) => axios.get('/ctm/passings', { params }),\n sendTurnstilePassing: (data) => axios.post('/ctm/passings', data),\n getPassingsExcel: (params) => axios.get('/ctm/passings', { params, responseType: 'blob' }),\n postGroups: (group) => axios.post('/ctm/groups', group),\n putGroups: (group, params = {}) => axios.put(`/ctm/groups/${group.ID}`, { Params: params, Data: group }), // Params : { updateConfig: false } (updateConfig for send config signal to turnstile electronic card)\n deleteGroups: (group) => axios.delete(`/ctm/groups/${group.ID}`, group),\n sendAccessControlGroupSignal: (data) => axios.post('/ctm/groups/send-signal', data),\n getHardwareDiscovery: () => axios.get('/ctm/hardware/discovery'),\n getHardwareNodeInfo: (address) => axios.get(`/ctm/hardware/node-info/${address}`),\n getHardwareConfigPuppet: (address) => axios.get(`/ctm/hardware/config/puppet/${address}`),\n postHardwareConfigPuppet: (address, config) => axios.post(`/ctm/hardware/config/puppet/${address}`, config),\n getHardwareConfigStreambox: (address) => axios.get(`/ctm/hardware/config/streambox/${address}`),\n getHardwareConfigPreRunSH: (address) => axios.get(`/ctm/hardware/config/pre-run-sh/${address}`),\n getHardwarePuppetFacts: () => axios.get('/ctm/hardware/puppet-facts'),\n postHardwarePuppetApply: (address) => axios.post(`/ctm/hardware/puppet-apply/${address}`),\n postHardwareNetworkIpInterface: (address, intf, config, udp) => axios.post(`/ctm/hardware/network/${address}/${encodeURI(intf)}?udp=${udp}`, config),\n postHardwareConfigStreambox: (address, config) => axios.post(`/ctm/hardware/config/streambox/${address}`, config),\n postHardwareConfigPreRunSH: (address, config) => axios.post(`/ctm/hardware/config/pre-run-sh/${address}`, config),\n postHardwareRestartStreambox: (address) => axios.post(`/ctm/hardware/restart-streambox/${address}`),\n postHardwareReboot: (address) => axios.post(`/ctm/hardware/reboot/${address}`),\n postHardwareHostname: (address, hostname) => axios.post(`/ctm/hardware/hostname/${address}`, hostname, { headers: { 'Content-Type': 'application/json' } })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getDisplays: () => axios.get('/displays'),\n getDisplay: (id) => axios.get(`/displays/${id}`),\n postDisplay: (data) => axios.post('/displays', data),\n updateDisplay: (id, data) => axios.put(`/displays/${id}`, data),\n removeDisplay: (id) => axios.delete(`/displays/${id}`),\n\n getFile: (filename) => axios.get(`/file/${filename}`),\n\n getMedia: (id) => axios.get(`/media/${id}`),\n postMedia: (data) => axios.post('/media', data),\n removeMedia: (id) => axios.delete(`/media/${id}`),\n\n getVideos: () => axios.get('/videos'),\n getPdfs: () => axios.get('/pdfs'),\n getImages: () => axios.get('/images'),\n\n getFiles: (id) => axios.get(`/file/${id}`),\n\n getActivityForPlanning: (moduleId) => axios.get(`/modules/${moduleId}/getActivityForPlanning`)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n // gateways\n getLockerGateways: () => axios.get('/lockers/locker-gateways'),\n putLockerGateways: (id, data) => axios.put(`/lockers/locker-gateway/${id}`, data),\n\n // lockers\n getLockers: () => axios.get('/lockers/lockers'),\n getLocker: (id) => axios.get(`/lockers/locker/${id}`),\n getUnassociatedLockers: () => axios.get('/lockers/unassociated'),\n putLocker: (id, data) => axios.put(`/lockers/locker/${id}`, data),\n putLockerSettings: (id, data) => axios.put(`lockers/settings/${id}`, data),\n deleteLocker: (id) => axios.delete(`/lockers/locker/${id}`),\n\n // lockers actions\n changeAreaLockersState: (data) => axios.post('/lockers/area/change-state', data),\n changeBlockLockersState: (data) => axios.post('/lockers/block/change-state', data),\n changeLockersState: (data) => axios.post('/lockers/lockers/change-state', data),\n changeLockerState: (id, state) => axios.post(`/lockers/locker/${id}/change-state?state=` + state),\n changeLockersConfig: (id, data) => axios.post(`/lockers/locker/${id}/change-config`, data),\n associateLocker: (data) => axios.post('/lockers/locker/associate', data),\n dissociateLocker: (id) => axios.post(`/lockers/locker/${id}/dissociate`),\n changeLockerPreparation: (id, data) => axios.post(`/lockers/locker/${id}/preparation`, data),\n putLockersMastercode: (data) => axios.put('/lockers/change-mastercode', data),\n\n // lockers's types\n getLockersTypes: () => axios.get('/lockers/types'),\n getLockersType: (id) => axios.get(`/lockers/type/${id}`),\n postLockersType: (data) => axios.post('/lockers/type', data),\n putLockersType: (id, data) => axios.put(`/lockers/type/${id}`, data),\n deleteLockersType: (id) => axios.delete(`/lockers/type/${id}`),\n\n // lockers's blocs\n getLockersBlocks: (params) => axios.get('/lockers/blocks', { params }),\n getLockersBlock: (id) => axios.get(`/lockers/block/${id}`),\n postLockersBlock: (data) => axios.post('/lockers/block', data),\n putLockersBlock: (id, data) => axios.put(`/lockers/block/${id}`, data),\n deleteLockersBlock: (id) => axios.delete(`/lockers/block/${id}`),\n putLockersBlockSettings: (id, data) => axios.put(`/lockers/block-settings/${id}`, data),\n\n // lockers's bookings\n getLockerBookings: (params) => axios.get('/lockers/bookings', { params }),\n getLockerBooking: (id) => axios.get(`/lockers/bookings/${id}`),\n putLockerBooking: (id, data) => axios.put(`/lockers/bookings/${id}`, data),\n getLockerBookingIncidents: (bookingId) => axios.get(`/lockers/bookings/${bookingId}/incidents`),\n checkAttributedLockersAllOpened: (bookingId) => axios.get(`/lockers/bookings/${bookingId}/check-lockers-opened`),\n\n // lockers's bookings actions\n newLockerBooking: (data) => axios.post('/lockers/bookings', data),\n stopLockerBooking: (id) => axios.post(`/lockers/bookings/${id}/stop`),\n cancelLockerBooking: (id) => axios.post(`/lockers/bookings/${id}/cancel`),\n retryLockerAttribution: (bookingId) => axios.post(`/lockers/bookings/${bookingId}/retry-attribution`),\n\n // locker's incidents\n getLockersIncidents: (params) => axios.get('/lockers/incidents', { params }),\n putLockersIncidents: (id, data) => axios.put(`/lockers/incidents/${id}`, data),\n\n // locker's events\n getLockersEvents: (params) => axios.get('/lockers/events', { params }),\n refreshHistory: (params) => axios.get('/lockers/events/refresh-history', { params }),\n\n // locker's global params\n putLockersGlobalSettings: (data) => axios.put('/lockers/global-settings', data),\n\n // Locations\n getEstablishmentWithLockersStats: (id) => axios.get(`/lockers/establishment-with-stats/${id}`),\n getEstablishmentsWithLockersStats: () => axios.get('/lockers/establishments-with-stats'),\n getEstablishmentsWithAffectableLockers: (params) => axios.get('lockers/establishments-with-affectable', { params }),\n\n getAreaWithLockersStats: (id) => axios.get(`/lockers/area-with-stats/${id}`),\n getAreasWithLockersStats: () => axios.get('/lockers/areas-with-stats'),\n getAreasWithAffectableLockers: (params) => axios.get('lockers/areas-with-affectable', { params }),\n\n getBlockWithLockersStats: (id) => axios.get(`/lockers/block-with-stats/${id}`),\n getBlocksWithLockersStats: () => axios.get('/lockers/blocks-with-stats'),\n getBlocksWithAffectableLockers: (params) => axios.get('lockers/blocks-with-affectable', { params })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getModules: () => axios.get('config.modules.json', { baseURL: '/' }),\n\n getParams: () => axios.get('/resa-params'),\n postParams: (data) => axios.post('/resa-params', data),\n\n getCities: () => axios.get('/cities'),\n\n updateMailer: () => axios.get('/params/update-mailer'),\n updateSMSer: () => axios.get('/params/update-smser'),\n getMailerPreview: (previewType) => axios.get(`/params/mailer-preview/${previewType}`),\n\n getGlobalParams: () => axios.get('/global-params'),\n postGlobalParams: (data) => axios.post('/global-params', data),\n\n getPeriods: (params) => axios.get('/periods', { params }),\n addOrUpdatePeriod: (data) => axios.post('/periods', data),\n newPeriod: (data) => axios.post('/periods-create', data),\n deletePeriod: (id) => axios.delete(`/periods/${id}`),\n\n getPricings: (params) => axios.get('/pricings', { params }),\n postPricing: (data) => axios.post('/pricings', data),\n postPercentagePricing: (data) => axios.post('/pricing-percentage', data),\n\n getWristbandTemplates: () => axios.get('/wristband-templates'),\n getWristbandPrinterType: () => axios.get('/wristband-printer-templates'),\n upsertWristbandTemplate: (data) => axios.post('/wristband-templates', data),\n upsertWristbandPrinterType: (data) => axios.post('/wristband-printer-templates', data),\n deleteWristbandTemplate: (id) => axios.delete(`/wristband-templates/${id}`),\n deleteWristbandPrinterType: (id) => axios.delete(`/wristband-printer-templates/${id}`),\n getPaymentType: (params) => axios.get('/paymenttype', { params }),\n getEstablishments: () => axios.get('/establishments'),\n getEstablishment: (id) => axios.get(`/establishments/${id}`),\n postEstablishment: (data) => axios.post('/establishments', data),\n putEstablishment: (data) => axios.put(`/establishments/${data.ID}`, data),\n setDefaultEstablishment: (id) => axios.post(`/establishments/set-default/${id}`),\n\n getSuppliers: () => axios.get('/suppliers'),\n postSuppliers: (data) => axios.post('/suppliers', data),\n getTvaTypes: () => axios.get('/tva-types'),\n addOrUpdateTvaType: (data) => axios.post('/tva-types', data),\n getChartOfAccounts: () => axios.get('/chart-of-accounts'),\n getAutoDebitModes: () => axios.get('/auto-debit-modes'),\n GetAutodebitsSchedules: (data) => axios.get('/auto-debit-modes-schedules', data),\n UpsertAutodebitMode: (data) => axios.post('/auto-debit-modes', data),\n getDiscountsTemplates: () => axios.get('/discounts-templates'),\n\n getActionHistory: (params) => axios.get('/action-history', { params })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getProducts: (params) => axios.get('/products', { params }),\n getProductsStats: (params) => axios.get('/products-stats', { params }),\n getProductsByIDs: (params) => axios.get('/products-by-ids', { params }),\n getPaginatedProducts: (params, cancelToken = null) => axios.get('/products-paginated', { params, cancelToken }),\n\n getFamilies: (params) => axios.get('/families', { params }),\n getCardTypes: () => axios.get('/card-types'),\n GetListSubscriptionType: () => axios.get('list-subscription-type'),\n getProductsStockConsumption: (params) => axios.get('/products-stock-consumption', { params }),\n pickFromStock: (data) => axios.post('/products-stock-consumption', data),\n getFamiliesTreeWithProducts: (params) => axios.get('/families-tree-with-products', { params }),\n\n getProduct: (id) => axios.get(`/products/${id}`),\n postProduct: (data) => axios.post('/products', data),\n putProduct: (productUUID, data) => axios.put(`/products/${productUUID}`, data),\n postFamily: (data) => axios.post('/families', data),\n putFamily: (familyUUID, data) => axios.put(`/families/${familyUUID}`, data),\n deletePricingFromPeriod: (data) => axios.delete('/pricing-period', { data }),\n\n AddOrUpdateProductStockParams: (data) => axios.post('/stock-params', data),\n DeleteLastStockEntry: (data) => axios.put('/stock-delete-last-entry', data),\n AddOrUpdateProductStock: (data) => axios.post('/stock', data),\n TransferStock: (data) => axios.post('/stock-transfer', data),\n\n postCollection: (data) => axios.post('/product-collections', data),\n putCollection: (id, data) => axios.put(`/product-collections/${id}`, data),\n getCollections: (params) => axios.get('/product-collections', { params }),\n getCollection: (id) => axios.get(`/product-collections/${id}`),\n deleteCollection: (id) => axios.delete(`/product-collections/${id}`)\n\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n // Quotations\n getQuotation: (quotationuuid, params) => axios.get(`/quotations/${quotationuuid}`, { params }),\n getPaginatedQuotations: (params) => axios.get('/quotations-paginated', { params }),\n getQuotations: (params) => axios.get('/quotations', { params }),\n postQuotation: (data) => axios.post('/quotations', data),\n putQuotation: (quotationuuid, data) => axios.put(`/quotations/${quotationuuid}`, data),\n cancelQuotation: (quotationuuid) => axios.post(`/quotations/${quotationuuid}/cancel`),\n\n getQuotationLine: (quotationuuid, lineuuid, params) => axios.get(`/quotations/${quotationuuid}/lines/${lineuuid}`, { params }),\n getQuotationLines: (quotationuuid, params) => axios.get(`/quotations/${quotationuuid}`, { params }),\n postQuotationLine: (quotationuuid, data) => axios.post(`/quotations/${quotationuuid}`, data),\n putQuotationLine: (quotationuuid, lineuuid, data) => axios.put(`/quotations/${quotationuuid}/lines/${lineuuid}`, data),\n deleteQuotationLine: (quotationuuid, lineuuid) => axios.delete(`/quotations/${quotationuuid}/lines/${lineuuid}`),\n\n getQuotationhHistory: (quotationuuid, version, params) => axios.get(`/quotations/${quotationuuid}/history/${version}`, { params }),\n getQuotationhHistories: (quotationuuid, params) => axios.get(`/quotations/${quotationuuid}/history`, { params }),\n\n getQuotationSale: (quotationuuid) => axios.get(`/quotations/${quotationuuid}/sales`),\n getQuotationSales: (params) => axios.get('/quotes/sales', { params }),\n postQuotationSale: (quotationuuid, data) => axios.post(`/quotations/${quotationuuid}/sales`, data),\n putQuotationSale: (quotationuuid, saleuuid, data) => axios.put(`/quotations/${quotationuuid}/sales/${saleuuid}`, data),\n getQuotationSaleBill: (orderuuid) => axios.get(`/quotes/bill/${orderuuid}/`, { responseType: 'blob' }),\n\n getQuotationExportPDF: (quotationuuid, params) => axios.get(`/quotations/${quotationuuid}/export/pdf`, { responseType: 'blob', params }),\n getQuotationExportExcel: (quotationuuid, params) => axios.get(`/quotations/${quotationuuid}/export/excel`, { responseType: 'blob', params }),\n getQuotationsExportExcel: (params) => axios.get('/quotes/export/excel', { responseType: 'blob', params }),\n\n postQuotationSendMail: (quotationuuid, data) => axios.post(`/quotations/${quotationuuid}/send/mail`, data),\n\n // Pricings\n getQuotationPricing: (pricinguuid, params) => axios.get(`/quotes/pricings/${pricinguuid}`, { params }),\n getQuotationPricings: (params) => axios.get('/quotes/pricings', { params }),\n postQuotationPricing: (data) => axios.post('/quotes/pricings', data),\n putQuotationPricing: (pricinguuid, data) => axios.put(`/quotes/pricings/${pricinguuid}`, data),\n deleteQuotationPricing: (pricinguuid) => axios.delete(`/quotes/pricings/${pricinguuid}`),\n // Products\n getQuotationProduct: (productuuid, params) => axios.get(`/quotes/products/${productuuid}`, { params }),\n getQuotationProducts: (params) => axios.get('/quotes/products', { params }),\n postQuotationProduct: (data) => axios.post('/quotes/products', data),\n putQuotationProduct: (productuuid, data) => axios.put(`/quotes/products/${productuuid}`, data),\n deleteQuotationProduct: (productuuid) => axios.delete(`/quotes/products/${productuuid}`),\n initQuotationProducts: () => axios.get('/quotes/products-init'),\n // Families\n getQuotationProductsFamilie: (familyuuid, params) => axios.get(`/quotes/families/${familyuuid}`, { params }),\n getQuotationProductsFamilies: (params) => axios.get('/quotes/families', { params }),\n postQuotationProductsFamily: (data) => axios.post('/quotes/families', data),\n putQuotationProductsFamily: (familyuuid, data) => axios.put(`/quotes/families/${familyuuid}`, data),\n deleteQuotationProductsFamily: (familyuuid) => axios.delete(`/quotes/families/${familyuuid}`),\n // Catalogs\n getQuotationProductsCatalogue: (catalogueuuid, params) => axios.get(`/quotes/catalogues/${catalogueuuid}`, { params }),\n getQuotationProductsCatalogues: (params) => axios.get('/quotes/catalogues', { params }),\n postQuotationProductsCatalogue: (data) => axios.post('/quotes/catalogues', data),\n putQuotationCatalogue: (catalogueuuid, data) => axios.put(`/quotes/catalogues/${catalogueuuid}`, data),\n deleteQuotationCatalogue: (catalogueuuid) => axios.delete(`/quotes/catalogues/${catalogueuuid}`),\n\n // Clients\n getQuotationClient: (clientuuid, params) => axios.get(`/quotes/clients/${clientuuid}`, { params }),\n getQuotationClients: (params) => axios.get('/quotes/clients', { params }),\n postQuotationClient: (data) => axios.post('/quotes/clients', data),\n putQuotationClient: (clientuuid, data) => axios.put(`/quotes/clients/${clientuuid}`, data),\n importClients: (data) => axios.post('/quotes/import-clients', data),\n deleteQuotationClient: (clientuuid) => axios.delete(`/quotes/clients/${clientuuid}`),\n getQuotationClientProductsAndFamilies: (clientuuid, params) => axios.get(`/quotes/clients/${clientuuid}/products-and-families`, { params }),\n\n // Sales Representatives\n getQuotationSalesRepresentative: (clientuuid, params) => axios.get(`/quotes/sales-representatives/${clientuuid}`, { params }),\n getQuotationSalesRepresentatives: (params) => axios.get('/quotes/sales-representatives', { params }),\n postQuotationSalesRepresentative: (data) => axios.post('/quotes/sales-representatives', data),\n putQuotationSalesRepresentative: (clientuuid, data) => axios.put(`/quotes/sales-representatives/${clientuuid}`, data),\n deleteQuotationSalesRepresentative: (clientuuid) => axios.delete(`/quotes/sales-representatives/${clientuuid}`)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getSales: (params) => axios.get('/sales', { params }),\n getPaginatedSales: (params) => axios.get('/paginated-sales', { params }),\n getSale: (id) => axios.get(`/sales/${id}`),\n getSaleBill: (id) => axios.get(`/front/sales/${id}/bill`),\n getPendingSubscription: (id, params) => axios.get(`sales/${id}/pending-subscription`, { params })\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n // SPA Universes\n getSpaUniverses: (params) => axios.get('/spa/universes', { params }),\n getSpaUniverse: (id) => axios.get(`/spa/universes/${id}`),\n createSpaUniverse: (data) => axios.post('/spa/universes', data),\n updateSpaUniverse: (id, data) => axios.put(`/spa/universes/${id}`, data),\n\n // SPA web availabilities models\n getSpaWebAvailabilitiesModels: (params) => axios.get('/spa/web-availabilities-models', { params }),\n getSpaWebAvailabilitiesModel: (id) => axios.get(`/spa/web-availabilities-models/${id}`),\n postSpaWebAvailabilitiesModel: (data) => axios.post('/spa/web-availabilities-models', data),\n putSpaWebAvailabilitiesModel: (id, data) => axios.put(`/spa/web-availabilities-models/${id}`, data),\n\n // SPA universe web availabilities\n getSpaUniverseWebAvailabilities: (universeUUID) => axios.get(`/spa/universe/${universeUUID}/web-availabilities`),\n postSpaUniverseWebAvailabilities: (universeUUID, data) => axios.post(`/spa/universe/${universeUUID}/web-availabilities`, data),\n putSpaUniverseWebAvailabilities: (universeUUID, webAvailabilityUUID, data) => axios.put(`/spa/universe/${universeUUID}/web-availabilities/${webAvailabilityUUID}`, data),\n deleteSpaUniverseWebAvailabilities: (universeUUID, params) => axios.delete(`/spa/universe/${universeUUID}/web-availabilities`, { params }),\n deleteSpaUniverseWebAvailabilitie: (universeUUID, params) => axios.delete(`/spa/universe/${universeUUID}/web-availabilitie`, { params }),\n\n // SPA Resources\n getSpaResources: (params) => axios.get('/spa/resources', { params }),\n getSpaResource: (id) => axios.get(`/spa/resources/${id}`),\n createSpaResource: (data) => axios.post('/spa/resources', data),\n updateSpaResource: (id, data) => axios.put(`/spa/resources/${id}`, data),\n updateSpaResourceActivities: (id, data) => axios.put(`/spa/resources/${id}/activities`, data),\n\n // SPA Personnels\n getSpaPersonnels: (params) => axios.get('/spa/personnels', { params }),\n getSpaPersonnel: (id) => axios.get(`/spa/personnels/${id}`),\n createSpaPersonnel: (data) => axios.post('/spa/personnels', data),\n updateSpaPersonnel: (id, data) => axios.put(`/spa/personnels/${id}`, data),\n updateSpaPersonnelActivities: (id, data) => axios.put(`/spa/personnels/${id}/activities`, data),\n\n // SPA Personnels unavailabilities\n getSpaPersonnelsUnavailabilities: (params) => axios.get('/spa/unavailabilities', { params }),\n createSpaPersonnelUnavailability: (data) => axios.post('/spa/unavailabilities', data),\n updateSpaPersonnelUnavailability: (id, data) => axios.put(`/spa/unavailabilities/${id}`, data),\n deleteSpaPersonnelUnavailability: (id) => axios.delete(`/spa/unavailabilities/${id}`),\n deleteSpaPersonnelUnavailabilityMass: (data) => axios.post('/spa/unavailabilities-mass', data),\n getSpaUnavailabilitiesModels: (params) => axios.get('/spa/unavailabilities-models', { params }),\n createSpaUnavailabilityModel: (data) => axios.post('/spa/unavailabilities-models', data),\n updateSpaUnavailabilityModel: (id, data) => axios.put(`/spa/unavailabilities-models/${id}`, data),\n deleteSpaUnavailabilityModel: (id) => axios.delete(`/spa/unavailabilities-models/${id}`),\n createSpaApplyUnavailabilityModel: (data) => axios.post('/spa/apply-unavailability-model', data),\n\n // SPA Activities\n getSpaActivities: (params) => axios.get('/spa/activities', { params }),\n getSpaActivity: (id) => axios.get(`/spa/activities/${id}`),\n createSpaActivity: (data) => axios.post('/spa/activities', data),\n updateSpaActivity: (id, data) => axios.put(`/spa/activities/${id}`, data),\n\n // SPA ActivityFamilies\n getSpaActivityFamilies: (params) => axios.get('/spa/activity-families', { params }),\n createSpaActivityFamily: (data) => axios.post('/spa/activity-families', data),\n updateSpaActivityFamily: (id, data) => axios.put(`/spa/activity-families/${id}`, data),\n deleteSpaActivityFamily: (id) => axios.delete(`/spa/activity-families/${id}`),\n\n // SPA Products\n getSpaProducts: (params) => axios.get('/spa/products', { params }),\n getSpaProduct: (id) => axios.get(`/spa/products/${id}`),\n createSpaProduct: (data) => axios.post('/spa/products', data),\n updateSpaProduct: (id, data) => axios.put(`/spa/products/${id}`, data),\n\n // SPA Booking\n getSpaBookings: (params) => axios.get('/spa/bookingsv1', { params }), // Deprecated, use getPaginatedSpaBookings instead\n getPaginatedSpaBookings: (params) => axios.get('/spa/bookings', { params }), // Use this instead of getSpaBookings\n\n updateSpaBooking: (id, data) => axios.put(`/spa/bookings/${id}`, data),\n sendSpaBookingNotification: (id, type) => axios.post(`/spa/bookings/${id}/notification/${type}`),\n getClientsWithUnplacedSpaBookings: (params) => axios.get('/spa/bookings/unplaced/clients', { params }),\n\n // SPA Sales\n createSpaSale: (data) => axios.post('/spa/sales', data),\n getSpaPendingSales: (params) => axios.get('/spa/sales/pending', { params }),\n getSpaPendingProducts: (params) => axios.get('/spa/sales/pending-products', { params }),\n enableSpaPendingSale: (data) => axios.post('/spa/sales/enable', data),\n deleteSpaSale: (id) => axios.delete(`/spa/sales/${id}`)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n // Setups\n syncAllStats: (params) => axios.get('/stats/sync-all-stats', { params }),\n deleteAllStats: (params) => axios.get('/stats/delete-all-stats', { params }),\n resetAllStats: (params) => axios.get('/stats/reset-all-stats', { params }),\n refreshAllStats: (params) => axios.get('/stats/refresh-all-stats', { params }),\n\n getSyncAllStatsTimetables: (params) => axios.get('/stats/setup/sync-timetables-import', { params }),\n getNewSyncAllStatsTimetables: (params) => axios.get('/stats/setup/sync-timetables-refresh', { params }),\n getSyncAllStatsTimetablesFormatted: (params) => axios.get('/stats/setup/sync-timetables-formatted', { params }),\n\n // Predictions\n getPredictionsPassings: (params) => axios.get('/stats/predictions/passings', { params }),\n\n // Dashboard\n getStatsDashboardLayouts: (params) => axios.get('/stats/dashboard/layout', { params }),\n upsertStatsDashboardLayout: (data, params) => axios.post('/stats/dashboard/layout', data, { params }),\n\n // Utils\n getStatsResaYearsWithData: (params) => axios.get('/stats-resa/years-with-data', { params }),\n getStatsResaFirstYearWithData: (params) => axios.get('/stats-resa/years-with-data/first', { params }),\n getStatsResaLastYearWithData: (params) => axios.get('/stats-resa/years-with-data/last', { params }),\n\n // Passings\n getStatsPassingsFrequentations: (params) => axios.get('/stats/passings/frequentations', { params }),\n getStatsPassingsPlannings: (params) => axios.get('/stats/passings/plannings', { params }),\n\n getStatsPassingsByProductTypeExcelGlobal: (params) => axios.get('/stats/passings/excel/global/by-product-type', { params, responseType: 'blob' }),\n getStatsPassingsByProductExcelGlobal: (params) => axios.get('/stats/passings/excel/global/by-product', { params, responseType: 'blob' }),\n getStatsPassingsByActivityExcelGlobal: (params) => axios.get('/stats/passings/excel/global/by-activity', { params, responseType: 'blob' }),\n postStatsPassingsExcelClientsDataTable: (data) => axios.post('/stats/passings/excel/clients-data-table', data, { responseType: 'blob' }),\n\n // Sales\n getStatsSalesPeriodicReport: (params) => axios.get('/stats/sales/periodic-report', { params }),\n\n // Spa\n getSoldProductsPeriodicReport: (params) => axios.get('/stats/spa/periodic-report', { params }),\n getStatsSpaResourcesOccupationRates: (params) => axios.get('/stats/spa/occupation-rates/resources', { params }),\n getStatsSpaPersonnelsOccupationRates: (params) => axios.get('/stats/spa/occupation-rates/personnels', { params }),\n\n /// RESA\n // Descriptives : Totaux\n\n /// /////////////////////////////////////// Pre-select Filters ///////////////////////////////////////////////////////\n\n // All resa\n selectSavedFiltersResaNames: (params) => axios.get('/stats-resa/saved-filters/resa/select/names', { params }),\n selectSavedFiltersResa: (params) => axios.get('/stats-resa/saved-filters/resa/select', { params }),\n insertSavedFilterResa: (data) => axios.post('/stats-resa/saved-filters/resa/insert', data),\n updateSavedFilterResa: (data) => axios.post('/stats-resa/saved-filters/resa/update', data),\n deleteSavedFilterResa: (params) => axios.get('/stats-resa/saved-filters/resa/delete', { params }),\n\n /// /////////////////////////////////////// Fréquentations ///////////////////////////////////////////////////////\n\n getStatsResaFrequentationsParActivite: (params) => axios.get('/stats-resa/frequentations/par-activite', { params }),\n\n /// /////////////////////////////////////// Bilans Périodiques ///////////////////////////////////////////////////////\n // Réservations\n getStatsResaDescriptivesProportionsTypesResa: (params) => axios.get('/stats-resa/bilans-periodiques/reservations/proportions-types-resa', { params }),\n\n // Activités\n getStatsResaDescriptivesActivitiesData: (params) => axios.get('/stats-resa/bilans-periodiques/activites/activities-data', { params }),\n\n // Clients\n getStatsResaDescriptivesClientsAge: (params) => axios.get('/stats-resa/bilans-periodiques/clients/activities-by-age', { params }),\n\n // Articles\n\n // Bookings Slots\n getBookingsSlotsDetailled: (params) => axios.get('/stats-resa/bilans-periodiques/bookings-slots/detailled', { params }),\n getBookingsSlotsCount: (params) => axios.get('/stats-resa/bilans-periodiques/bookings-slots/count', { params }),\n\n // Trainers\n getTrainersDetailled: (params) => axios.get('/stats-resa/bilans-periodiques/trainers/detailled', { params }),\n\n /// /////////////////////////////////////// Plannings ///////////////////////////////////////////////////////\n\n // Plannings CR\n getStatsResaPlanningsCRByDateRange: (params) => axios.get('/stats-resa/plannings/cr/by-date-range', { params })\n\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getTemplates: (filters) => axios.get('/templates', { params: filters }),\n getTemplate: (id) => axios.get(`/templates/${id}`),\n createTemplate: (data) => axios.post('/templates', data),\n updateTemplate: (id, data) => axios.put(`/templates/${id}`, data),\n getTemplatePreview: (id) => axios.get(`/templates/${id}/preview`, { responseType: 'blob' }),\n getDynamicValues: (id) => axios.get('/templates-dynamic-values')\n\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n scanVoucher: (id) => axios.get(`/vouchers/${id}/scan`),\n validateVoucher: (data) => axios.post(`/vouchers/${data.VoucherID}/validate`, data),\n getVouchers: (options) => axios.get('/vouchers', { params: options }),\n getPaginatedVouchers: (options) => axios.get('/paginated-vouchers', { params: options }),\n convertVoucherGiftToCredit: (data) => axios.post(`/vouchers/${data.VoucherID}/convert-to-credit`, data),\n getGiftVouchers: (params) => axios.get('/vouchers-gift', { params }),\n getGiftVouchersExcel: (params) => axios.get('/vouchers-gift', { params, responseType: 'blob' }),\n downloadVoucher: (id, params) => axios.get(`/vouchers/${id}/pdf`, { params, responseType: 'blob' }),\n updateVoucher: (voucher) => axios.put(`/vouchers/${voucher.ID}`, voucher),\n massPushVouchers: (data) => axios.post('/vouchers-mass-push', data),\n postSheets: (data) => axios.post('/vouchers-sheets', data),\n putSheet: (id, data) => axios.put(`/vouchers-sheets/${id}`, data),\n getSheets: (params) => axios.get('/vouchers-sheets', { params }),\n getPaginatedSheets: (params) => axios.get('/vouchers-sheets-paginated', { params }),\n getSheet: (id, params) => axios.get(`/vouchers-sheets/${id}`, { params }),\n getSheetsPdf: (id, params) => axios.get(`/vouchers-sheets/${id}/pdf`, { params, responseType: 'blob' }),\n postSheetsPdfPreview: (data, params) => axios.post('/vouchers-sheets-preview/pdf', data, { params, responseType: 'blob' }),\n getSheetsExcel: (id, params) => axios.get(`/vouchers-sheets/${id}/excel`, { params, responseType: 'blob' }),\n getSheetsInvoice: (id, params) => axios.get(`/vouchers-sheets/${id}/invoice`, { params }),\n getVoucherSheetsExcel: (params) => axios.get('/vouchers-sheets-export', { params, responseType: 'blob' }),\n postVoucherSale: (data) => axios.post('/vouchers-sale', data)\n}\n","import './common'\nimport axios from 'axios'\n\nexport default {\n getWeekTypes: (params) => axios.get('/week-types', { params }),\n putWeekType: (id, data) => axios.put(`/week-types/${id}`, data),\n postWeekType: (data) => axios.post('/week-types', data),\n deleteWeekType: (id) => axios.delete(`/week-types/${id}`)\n}\n","export default {\n// BaseURL: 'http://localhost:8085/api/v1',\n// WSURL: 'localhost:8085'\n// BaseURL: 'https://swimlor.stream.netlor.fr/api/v1'\n BaseURL: (process.env.VUE_APP_API_HOST || '') + '/api/v1',\n ServerURL: new URL(process.env.VUE_APP_API_HOST || window.location.origin),\n WSURL: process.env.VUE_APP_API_HOST ?? window.location.host\n}\n","import Vue from 'vue'\n\nconst eventbus = new Vue()\n\nglobal.eventbus = eventbus // for cashregister ipc\n\nexport default eventbus\n","import moment from 'moment'\n\nexport default {\n methods: {\n formatDate (d) {\n return moment(d).format('DD/MM/YYYY')\n },\n formatDateUS (d) {\n return moment(d).format('YYYY-MM-DD')\n },\n formatDateCustom (d, layout) {\n return moment(d).format(layout)\n },\n formatBirthDate (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return parsedDate.format('DD/MM/YYYY')\n }\n },\n formatDateTime (d) {\n return moment(d).format('DD/MM/YYYY HH:mm')\n },\n formatDateTimeSeconds (d) {\n return moment(d).format('DD/MM/YYYY HH:mm:ss')\n },\n formatDateHuman (d) {\n return moment(d).format('ddd DD MMM YYYY')\n },\n formatDateWeek (d) {\n return moment(d).format('MMM YYYY ([S]WW)')\n },\n formatHumanBirthDate (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return this.formatDateHuman(date)\n }\n },\n formatDateTimeHuman (d) {\n return moment(d).format('ddd DD MMM YYYY, HH:mm')\n },\n formatTime (d) {\n return moment(d).format('HH:mm')\n },\n formatTimeSecs (d) {\n return moment(d).format('HH:mm:ss')\n },\n formatWeekNumber (d) {\n return moment(d).format('W')\n },\n parseDate (d) {\n const date = moment(d, 'DD/MM/YYYY')\n if (date.isValid()) {\n return date.format('YYYY-MM-DD')\n } else {\n return ''\n }\n },\n prevDay (d) {\n return moment(d).subtract(1, 'days').format('YYYY-MM-DD')\n },\n nextDay (d) {\n return moment(d).add(1, 'days').format('YYYY-MM-DD')\n },\n prevWeek (d) {\n return moment(d).subtract(1, 'week').format('YYYY-MM-DD')\n },\n nextWeek (d) {\n return moment(d).add(1, 'week').format('YYYY-MM-DD')\n },\n isThisHour (hour) {\n return parseInt(moment().format('HH'), 10) === parseInt(hour, 10)\n },\n isToday (date) {\n return (\n moment(date).format('YYYY-MM-DD') ===\n moment().format('YYYY-MM-DD')\n )\n },\n dateNow () {\n return moment().format('YYYY-MM-DD')\n },\n timeNow () {\n return moment().format('HH:mm')\n },\n isFuture (d) {\n return moment(d).isSameOrAfter(moment())\n },\n getAge (date) {\n const parsedDate = moment(date)\n if (!parsedDate.isValid() || parsedDate.year() <= 1901) {\n return ''\n } else {\n return moment().diff(parsedDate, 'years')\n }\n },\n\n getDiff (d1, d2, unitOfTime) {\n const parsedDate1 = moment(d1).startOf('day')\n const parsedDate2 = d2 ? moment(d2).startOf('day') : moment().startOf('day')\n if (!parsedDate1.isValid() || parsedDate1.year() <= 1901 || !parsedDate2.isValid() || parsedDate2.year() <= 1901) {\n return ''\n } else {\n return parsedDate1.diff(parsedDate2, unitOfTime || 'days')\n }\n },\n getWeekDayName (date, capitalize) {\n let d = moment(date).format('dddd')\n if (capitalize) {\n d = d.charAt(0).toUpperCase() + d.slice(1)\n }\n return d\n },\n getWeekDayNumber (date) {\n return moment(date).day()\n },\n\n getWeekNumber (date) {\n return moment(date).week()\n },\n compareDate (d1, d2) {\n return moment(d1).isSame(moment(d2))\n ? 0\n : moment(d1).isBefore(moment(d2))\n ? -1\n : 1\n },\n dateBetween (date, start, end) {\n return moment(date).isBetween(start, end, undefined, '[)')\n }\n }\n}\n","import { mapGetters } from 'vuex'\n\nexport default {\n computed: {\n ...mapGetters(['establishments', 'areas', 'products', 'modules'])\n },\n\n methods: {\n getEstablishmentFromID (establishmentID) {\n const establishment = this.establishments.find(a => a.ID === establishmentID)\n if (!establishment) {\n return { Label: '-' }\n }\n return establishment\n },\n\n getEstablishmentAreas (establishmentID) {\n const areas = this.areas.filter(e => e.EstablishmentID === establishmentID)\n if (!areas) {\n return { Label: '-' }\n }\n return areas\n },\n\n getAreaFromID (areaID) {\n const area = this.areas.find(a => a.ID === areaID)\n if (!area) {\n return { Label: '-' }\n }\n return area\n },\n\n getProductByID (productID) {\n const product = this.products.find(p => p.ID === productID)\n if (!product) {\n return { Label: { FR: '-' } }\n }\n return product\n },\n\n async getDefaultRoute () {\n const defaultRoutes = {\n planning: 'planning-index',\n ctm: 'turnstiles-status',\n clients: 'clients-index',\n spa: 'spa-index',\n cashregister: 'cashregister-index',\n stats: 'stats-dashboard',\n lockers: 'lockers-manager',\n activities: 'activities-index',\n kiosks: 'kiosks-index',\n quotations: 'quotation-index',\n displayland: 'displayland-index'\n }\n let nextRoute\n\n if (this.$store.getters.authUser && this.$store.getters.authUser.DefaultModule) {\n nextRoute = defaultRoutes[this.$store.getters.authUser.DefaultModule]\n } else {\n const res = await this.$store.dispatch('getParams')\n if (res.data !== null && defaultRoutes[this.formatParams(res.data, 'main').mainDefaultModule]) {\n nextRoute = defaultRoutes[this.formatParams(res.data, 'main').mainDefaultModule]\n }\n }\n\n if (!nextRoute) {\n nextRoute = 'planning-index'\n }\n\n return nextRoute\n }\n }\n}\n","import eventbus from '../eventbus'\n\nexport default {\n data: () => ({\n webviewData: global.cashRegisterIPC ? global.cashRegisterIPC.data : null\n }),\n\n mounted () {\n if (!global.eventbus) {\n global.eventbus = eventbus\n }\n },\n methods: {\n // need to be a method, if computed, it is not triggered because global.cashRegisterIPC is not part of vuejs reactivity\n wvEnabled () {\n return !!global.cashRegisterIPC\n },\n\n wvGetData () {\n return this.wvEnabled() ? global.cashRegisterIPC.data : null\n },\n\n wvGetDataValue (key) {\n return this.wvEnabled() && global.cashRegisterIPC.data ? global.cashRegisterIPC.data[key] : null\n },\n\n wvEmit (channel, args) {\n if (this.wvEnabled()) {\n global.cashRegisterIPC.emit(channel, args)\n } else {\n console.error(`can't emit ${channel} from webview mixin: no cashregister ipc`)\n }\n },\n\n wvEmitPromise (channel, args) {\n if (this.wvEnabled()) {\n return global.cashRegisterIPC.emitPromise(channel, args)\n } else {\n console.error(`can't emit ${channel} from webview mixin: no cashregister ipc`)\n }\n },\n\n wvReady () {\n this.wvEmit('ready')\n },\n\n wvClose () {\n this.wvEmit('close')\n },\n\n wvAuthError (message) {\n this.wvEmit('auth-error', message)\n },\n\n wvLogout () {\n this.wvEmit('logout')\n },\n\n wvLoggedIn () {\n this.wvEmit('logged-in')\n },\n\n wvResumeSale (saleId) {\n this.wvEmit('resume-sale', { SaleID: saleId })\n },\n\n wvRemoveSaleLine (saleLineID, clientID) {\n this.wvEmit('remove-saleline', { saleLineID, clientID })\n },\n\n wvVoucherValidated (voucher) {\n this.wvEmit('voucher-validated', voucher)\n },\n\n wvAssociateCard (cardType, clientID) {\n return this.wvEmitPromise('associate-card', { cardType, clientID })\n },\n\n wvToast (type, message) {\n this.wvEmit('toast-message', { type, message })\n },\n\n wvOdeonUnreadAmount (unreadAmount) {\n this.wvEmit('odeon-unread-amount', unreadAmount)\n },\n\n wvPeriodicBookingSaved (periodicBookingID) {\n this.wvEmit('periodic-booking-saved', periodicBookingID)\n },\n\n wvPrintSlotParticipants (slotID) {\n this.wvEmit('print-slot-participants', slotID)\n }\n }\n}\n","import { mapGetters } from 'vuex'\nimport EventBus from '~/eventbus'\n\nconst WSFrameTypeKeepAlive = (-1)\nconst WSFrameTypeError = (0)\nconst WSFrameTypeSubscribe = (1)\nconst WSFrameTypeNotify = (2)\nconst WSFrameTypeRequestAuth = (3)\nconst WSFrameTypeResponseAuth = (4)\nconst WSFrameTypeUpdateTurnstile = (5)\nconst WSFrameTypeUnsubscribe = (6)\n\nexport default {\n data () {\n return {\n wsState: {\n Authenticated: false\n }\n }\n },\n\n computed: {\n ...mapGetters(['getSubscribersFor']),\n\n ws_IsConnected () {\n return this.$socket.readyState === 1\n },\n\n ws_IsAuthenticated () {\n return this.wsState.Authenticated\n }\n },\n\n methods: {\n _ws_Register () {\n this.$options.sockets.onmessage = this._ws_OnMessage\n },\n\n _ws_Unregister () {\n delete this.$options.sockets.onmessage\n },\n\n _ws_OnMessage (data) {\n const lines = data.data.split('\\n')\n\n for (let i = 0; i < lines.length; ++i) {\n const json = JSON.parse(lines[i])\n\n switch (json.Type) {\n case WSFrameTypeError:\n if (this.ws_cb_onError) {\n this.ws_cb_onError(json.Data)\n }\n break\n\n case WSFrameTypeResponseAuth:\n if (this.ws_cb_ResponseAuth) {\n this.ws_cb_ResponseAuth(json.Data)\n }\n break\n\n case WSFrameTypeSubscribe:\n // ignore\n break\n\n case WSFrameTypeNotify:\n if (this.ws_cb_onNotify) {\n this.ws_cb_onNotify(json.Data)\n }\n break\n\n case WSFrameTypeUpdateTurnstile:\n // ignore\n break\n\n case WSFrameTypeUnsubscribe:\n // ignore\n break\n\n default:\n // eslint-disable-next-line\n console.warn(\"Unhandled message type: \", json.Type)\n break\n }\n }\n },\n\n _ws_sendWithRetry (type, data, skipRetry) {\n if (this.$socket.readyState === 1) {\n this.$socket.sendObj({\n Type: type,\n Data: data\n })\n } else if (!skipRetry) {\n // Not connected yet, retry in a bit\n console.warn('Not connected yet, postponing sending message', type)\n setTimeout(() => {\n this._ws_sendWithRetry(type, data)\n }, 100)\n }\n },\n\n ws_KeepAlive () {\n this._ws_sendWithRetry(WSFrameTypeKeepAlive, null, true)\n },\n\n ws_Authenticate (token) {\n this._ws_sendWithRetry(WSFrameTypeRequestAuth, { Token: token })\n },\n\n ws_AuthenticateByDisplayID (displayID) {\n this._ws_sendWithRetry(WSFrameTypeRequestAuth, { DisplayID: displayID })\n },\n\n ws_Subscribe (channel) {\n this._ws_sendWithRetry(WSFrameTypeSubscribe, { Resource: channel })\n },\n\n ws_Unsubscribe (channel) {\n this._ws_sendWithRetry(WSFrameTypeUnsubscribe, { Resource: channel })\n },\n\n ws_On (channel, callbacks) {\n if (this.$socket.readyState === 1) {\n const numSubs = this.getSubscribersFor(channel)\n if (isNaN(numSubs) || numSubs === 0) {\n this.ws_Subscribe(channel)\n }\n this.$store.dispatch('subscribeTo', channel)\n EventBus.$on(channel, callbacks)\n } else {\n // Not connected yet, retry in a bit\n console.warn('Not connected yet (' + this.$socket.readyState + '), postponing ws_On')\n setTimeout(() => {\n this.ws_On(channel, callbacks)\n }, 100)\n }\n },\n\n ws_Off (channel, callbacks) {\n this.$store.dispatch('unsubscribeFrom', channel)\n EventBus.$off(channel, callbacks)\n if (this.getSubscribersFor(channel) === 0) {\n this.ws_Unsubscribe(channel)\n }\n },\n\n ws_UpdateTurnstile (turnstile) {\n this._ws_sendWithRetry(WSFrameTypeUpdateTurnstile, turnstile)\n }\n }\n}\n","export default [\n {\n path: '/',\n name: 'home',\n redirect: '/login',\n meta: {\n title: 'Accueil'\n },\n component: () => import('~/views/Home.vue')\n },\n {\n path: '/login',\n name: 'login',\n meta: {\n title: 'Connexion',\n disableDashboardLayout: true\n },\n component: () => import('~/views/Login.vue')\n },\n {\n path: '/renew-password/:token',\n name: 'renew-password',\n meta: {\n title: 'Renouvellement du mot de passe',\n disableDashboardLayout: true\n },\n component: () => import('~/views/RenewPassword.vue')\n },\n {\n path: '/autologin/:autologin',\n name: 'autologin',\n meta: {\n title: 'Auto-connexion',\n disableDashboardLayout: true\n },\n component: () => import('~/views/Login.vue')\n },\n {\n path: '/profil',\n name: 'profil',\n meta: {\n title: 'Profil'\n },\n component: () => import('~/views/profil/Index.vue')\n }\n]\n","export default [\n {\n path: '/planning',\n name: 'planning-index',\n meta: {\n title: 'Planning'\n },\n component: () => import('~/views/planning/Index.vue')\n }\n]\n","export default [\n {\n path: '/turnstiles',\n name: 'turnstiles-index',\n meta: {\n title: 'Tourniquets'\n },\n redirect: { name: 'turnstiles-status' },\n component: () => import('~/views/turnstiles/Index.vue'),\n children: [\n {\n path: 'status',\n name: 'turnstiles-status',\n meta: {\n title: 'État des terminaux'\n },\n component: () => import('~/views/turnstiles/Status.vue')\n },\n {\n path: 'hardware',\n name: 'turnstiles-hardware',\n meta: {\n title: 'Configuration du matériel'\n },\n component: () => import('~/views/turnstiles/Hardware.vue')\n },\n {\n path: 'planning',\n name: 'turnstiles-planning',\n meta: {\n title: 'Planning d\\'accès'\n },\n component: () => import('~/views/turnstiles/PlanningAccess.vue')\n },\n {\n path: 'area-configuration',\n name: 'turnstiles-area-configuration',\n meta: {\n title: 'Administration des zones'\n },\n component: () => import('~/views/turnstiles/ZoneAdministration.vue'),\n children: [\n {\n path: ':id',\n name: 'planning-area-details',\n meta: {\n title: 'Détail de la zone'\n },\n props: true,\n component: () => import('@/views/turnstiles/ZoneConfiguration.vue')\n }\n ]\n },\n {\n path: 'templates',\n name: 'timeslots-templates',\n meta: {\n title: 'Modèles de créneaux'\n },\n component: () => import('~/views/turnstiles/timeslotsTemplates.vue')\n },\n {\n path: 'weeks',\n name: 'turnstiles-weeks',\n meta: {\n title: 'Types de semaines'\n },\n component: () => import('~/views/turnstiles/Weeks.vue')\n },\n {\n path: 'scan',\n name: 'turnstiles-scan',\n meta: {\n title: 'Scan de billets'\n },\n component: () => import('~/views/turnstiles/Scan.vue')\n },\n {\n path: 'history',\n name: 'turnstiles-history',\n meta: {\n title: 'Historique de passage'\n },\n component: () => import('~/views/turnstiles/History.vue')\n },\n {\n path: 'penalties',\n name: 'turnstiles-penalties',\n meta: {\n title: 'Pénalités'\n },\n component: () => import('~/views/turnstiles/Penalties.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/clients',\n name: 'clients-index',\n meta: {\n title: 'Clients'\n },\n redirect: { name: 'clients-list' },\n component: () => import('~/views/clients/Index.vue'),\n children: [\n {\n path: 'show/:id',\n name: 'clients-show',\n meta: {\n title: 'Clients'\n },\n component: () => import('~/views/clients/ClientsShow.vue')\n },\n\n {\n path: 'list',\n name: 'clients-list',\n meta: {\n title: 'Liste des clients'\n },\n component: () => import('~/views/clients/ClientsList.vue')\n },\n {\n path: 'clubs',\n name: 'clubs',\n meta: {\n title: 'Liste des organisations'\n },\n component: () => import('~/views/clients/Clubs.vue')\n },\n {\n path: 'planning-clubs',\n name: 'planning-clubs',\n meta: {\n title: 'Planning des organisations'\n },\n component: () => import('~/views/clients/ClubsPlanning.vue')\n },\n {\n path: 'billing-clubs',\n name: 'billing-clubs',\n meta: {\n title: 'Facturation des organisations'\n },\n component: () => import('~/views/clients/ClubsBilling.vue')\n },\n {\n path: 'clubs/show/:id',\n name: 'clubs-show',\n meta: {\n title: 'Organisations'\n },\n component: () => import('~/views/clients/ClubShow.vue')\n },\n\n {\n path: 'clubs/new',\n name: 'clubs-new',\n meta: {\n title: 'Création d\\'une organisation'\n },\n component: () => import('~/components/clients/CreateClub.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/products',\n name: 'products-index',\n meta: { title: 'Produits' },\n component: () => import('@/views/products/Index.vue'),\n redirect: { name: 'products-form', params: { id: 'list' } },\n children: [\n {\n path: 'form/:id',\n name: 'products-form',\n params: { id: 'list' },\n meta: { title: 'Liste des produits' },\n component: () => import('@/views/products/ProductsManager.vue')\n },\n {\n path: 'prices-families',\n name: 'prices-families',\n meta: { title: 'Tarifs et familles' },\n component: () => import('@/views/products/PriceFamilyManager.vue')\n },\n {\n path: 'suppliers',\n name: 'suppliers',\n meta: { title: 'Fournisseurs' },\n component: () => import('@/views/products/SupplierList.vue')\n },\n {\n path: 'suppliers/:id',\n name: 'supplierDetails',\n meta: { title: 'Détails du Fournisseur' },\n component: () => import('@/views/products/SupplierEdit.vue')\n },\n {\n path: 'stocks',\n name: 'stocks',\n meta: { title: 'Stock du produit' },\n component: () => import('@/views/products/StockManager.vue')\n },\n {\n path: 'stocks/:id',\n name: 'stocksDetails',\n meta: { title: 'Stock du produit' },\n component: () => import('@/views/products/StockManager.vue')\n },\n {\n path: 'periods',\n name: 'periods',\n meta: { title: 'Gestion des périodes' },\n component: () => import('@/views/products/PeriodManager.vue')\n },\n {\n path: 'collections',\n name: 'collections',\n meta: { title: 'Gestion des collections' },\n component: () => import('@/views/products/CollectionList.vue')\n },\n {\n path: 'collections/:id',\n name: 'collections-edit',\n meta: { title: 'Edition d\\'une collection' },\n component: () => import('@/views/products/CollectionEdit.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/quotation',\n name: 'quotation-index',\n meta: {\n title: 'Gestion des comptes pro'\n },\n redirect: { name: 'quotation-quotations' },\n component: () => import('~/views/quotation/Index.vue'),\n children: [\n {\n path: 'accounts',\n name: 'quotation-accounts',\n meta: {\n title: 'Liste des comptes'\n },\n component: () => import('~/views/quotation/Accounts.vue')\n },\n {\n path: 'accounts/:id',\n name: 'quotation-accounts-show',\n meta: {\n title: 'Compte'\n },\n component: () => import('~/views/quotation/AccountsShow.vue')\n },\n {\n path: 'requests',\n name: 'quotation-requests',\n meta: {\n title: 'Liste des demandes'\n },\n component: () => import('~/views/quotation/Requests.vue')\n },\n {\n path: 'requests/:id',\n name: 'quotation-requests-show',\n meta: {\n title: 'Demande'\n },\n component: () => import('~/views/quotation/RequestShow.vue')\n },\n {\n path: 'quotations',\n name: 'quotation-quotations',\n meta: {\n title: 'Liste des devis'\n },\n component: () => import('~/views/quotation/Quotations.vue')\n },\n {\n path: 'quotations/new',\n name: 'quotation-quotations-new',\n meta: {\n title: \"Création d'un devis\"\n },\n component: () => import('~/views/quotation/QuotationEdit.vue')\n },\n {\n path: 'quotations/:id',\n name: 'quotations-show',\n meta: {\n title: 'Devis'\n },\n component: () => import('~/views/quotation/QuotationEdit.vue')\n },\n {\n path: 'orders',\n name: 'quotation-orders',\n meta: {\n title: 'Liste des bons de commande'\n },\n component: () => import('~/views/quotation/Orders.vue')\n },\n {\n path: 'orders/:id',\n name: 'quotation-orders-show',\n meta: {\n title: 'Bon de commande'\n },\n component: () => import('~/views/quotation/OrderShow.vue')\n },\n {\n path: 'settings',\n name: 'quotation-settings',\n meta: {\n title: 'Paramètres'\n },\n component: () => import('~/views/quotation/Settings.vue'),\n redirect: { name: 'quotation-settings-families' },\n children: [\n {\n path: 'families',\n name: 'quotation-settings-families',\n meta: {\n title: 'Familles de produits'\n },\n component: () =>\n import('~/components/quotation/ProductFamiliesList.vue')\n },\n {\n path: 'pricings',\n name: 'quotation-settings-pricings',\n meta: {\n title: 'Tarifs'\n },\n component: () => import('~/components/quotation/PricingList.vue')\n },\n {\n path: 'products',\n name: 'quotation-settings-products',\n meta: {\n title: 'Produits'\n },\n component: () => import('~/components/quotation/ProductList.vue')\n },\n {\n path: 'catalogs',\n name: 'quotation-settings-catalogs',\n meta: {\n title: 'Catalogues'\n },\n component: () => import('~/components/quotation/CatalogList.vue')\n },\n {\n path: 'settings',\n name: 'quotation-settings-settings',\n meta: {\n title: 'Configuration'\n },\n component: () =>\n import('~/components/quotation/QuotationsSettings.vue')\n }\n ]\n }\n ]\n }\n]\n","export default [\n {\n path: '/spa',\n name: 'spa-index',\n meta: {\n title: 'Spa'\n },\n redirect: { name: 'spa-planning' },\n component: () => import('~/views/spa/Index.vue'),\n children: [\n {\n path: 'planning',\n name: 'spa-planning',\n meta: {\n title: 'Planning Spa'\n },\n component: () => import('~/views/spa/planning/Planning.vue')\n },\n {\n path: 'personnels',\n name: 'spa-personnels',\n meta: {\n title: 'Gestion des personnels Spa'\n },\n component: () => import('~/views/spa/Personnel.vue')\n },\n {\n path: 'personnels/:id',\n name: 'spa-personnels-edit',\n meta: {\n title: 'Édition d\\'un employé'\n },\n component: () => import('~/views/spa/PersonnelsEdit.vue')\n },\n {\n path: 'resources',\n name: 'spa-resources',\n meta: {\n title: 'Gestion des ressources Spa'\n },\n component: () => import('~/views/spa/Resources.vue')\n },\n {\n path: 'resources/:id',\n name: 'spa-resources-edit',\n meta: {\n title: 'Édition d\\'une ressource'\n },\n component: () => import('~/views/spa/ResourcesEdit.vue')\n },\n {\n path: 'activities',\n name: 'spa-activities',\n meta: {\n title: 'Gestion des activités Spa'\n },\n component: () => import('~/views/spa/Activities.vue')\n },\n {\n path: 'activities/:id',\n name: 'spa-activities-edit',\n meta: {\n title: 'Édition d\\'une activité'\n },\n component: () => import('~/views/spa/ActivitiesEdit.vue')\n },\n {\n path: 'products',\n name: 'spa-products',\n meta: {\n title: 'Produits Spa'\n },\n component: () => import('~/views/spa/Products.vue')\n },\n {\n path: 'products/:id',\n name: 'spa-products-edit',\n meta: {\n title: 'Édition d\\'une association produit'\n },\n component: () => import('~/views/spa/ProductsEdit.vue')\n },\n {\n path: 'stocks',\n name: 'spa-products-stocks',\n meta: {\n title: 'Stocks des produits SPA'\n },\n component: () => import('~/views/spa/Stocks.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/stats',\n name: 'stats-index',\n meta: { title: 'Statistiques' },\n component: () => import('@/views/stats/Index.vue'),\n redirect: { name: 'stats-dashboard' },\n children: [\n {\n path: 'dashboard',\n name: 'stats-dashboard',\n meta: { title: 'Tableau de bord' },\n component: () => import('@/views/stats/Dashboard.vue'),\n redirect: 'dashboard/layout/default',\n children: [\n {\n path: 'layout/:id',\n name: 'stats-dashboard-layout',\n meta: { title: 'Mon tableau de bord' },\n component: () => import('@/views/stats/dashboard/Layout.vue')\n },\n {\n path: 'activities',\n name: 'stats-dashboard-activities',\n meta: { title: 'Activités' },\n component: () => import('@/views/stats/dashboard/Activities.vue')\n },\n {\n path: 'attendance',\n name: 'stats-dashboard-attendance',\n meta: { title: 'Créneaux & Fréquentation' },\n component: () => import('@/views/stats/dashboard/Attendance.vue')\n },\n {\n path: 'passings',\n name: 'stats-dashboard-passings',\n meta: { title: 'Entrées' },\n component: () => import('@/views/stats/dashboard/Passings.vue')\n },\n {\n path: 'sales',\n name: 'stats-dashboard-sales',\n meta: { title: 'Ventes' },\n component: () => import('@/views/stats/dashboard/Sales.vue')\n }\n ]\n },\n {\n path: 'activity',\n name: 'stats-activity',\n meta: { title: 'Analyse d\\'une activité' },\n component: () => import('@/views/stats/Activity.vue')\n },\n {\n path: 'activity/compare',\n name: 'stats-activity-compare',\n meta: { title: 'Comparaison d\\'activités' },\n component: () => import('@/views/stats/Activities.vue')\n },\n {\n path: 'passings',\n name: 'stats-passings',\n meta: { title: 'Analyse des entrées' },\n component: () => import('@/views/stats/Passings.vue')\n },\n {\n path: 'sales',\n name: 'stats-sales',\n meta: { title: 'Ventes' },\n component: () => import('@/views/stats/Sales.vue')\n },\n {\n path: 'predictions',\n name: 'stats-predictions',\n meta: { title: 'Prévisions' },\n component: () => import('@/views/stats/Predictions.vue')\n },\n {\n path: 'spa',\n name: 'stats-spa',\n meta: { title: 'Spa' },\n component: () => import('@/views/stats/Spa.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/business',\n name: 'business-index',\n redirect: { name: 'business-exports-financial' },\n meta: {\n title: 'Gestion commerciale'\n },\n component: () => import('~/views/business/Index.vue'),\n children: [\n {\n path: 'business-exports-exports-financial',\n name: 'business-exports-financial',\n meta: {\n title: 'Exports financiers'\n },\n component: () => import('~/views/business/exports/Financial.vue')\n },\n {\n path: 'business-exports-families-daily',\n name: 'business-families-daily',\n meta: {\n title: 'Gestions des familles de produits pour les exports journaliers'\n },\n component: () => import('~/views/business/families/Daily.vue')\n },\n {\n path: 'business-exports-families-financial',\n name: 'business-families-financial',\n meta: {\n title: 'Gestions des familles de produits pour les exports financiers'\n },\n component: () => import('~/views/business/families/Financial.vue')\n },\n {\n path: 'business-exports-daily',\n name: 'business-exports-daily',\n meta: {\n title: 'Exports journaliers'\n },\n component: () => import('~/views/business/exports/Daily.vue')\n },\n {\n path: 'business-gift-manager',\n name: 'business-gift-manager',\n meta: {\n title: 'Bons cadeaux'\n },\n component: () => import('~/views/business/giftmanager/Index.vue')\n },\n {\n path: 'plancha',\n name: 'business-gift-manager-plancha',\n meta: {\n title: 'Mes planches de bons cadeaux'\n },\n component: () => import('~/views/business/giftmanager/plancha/Index.vue')\n },\n {\n path: 'plancha/:id',\n name: 'business-gift-manager-plancha-create',\n meta: {\n title: 'Créer une planche de bons cadeaux'\n },\n component: () => import('~/views/business/giftmanager/plancha/Create.vue')\n },\n {\n path: 'business-discounts-manager/templates',\n name: 'business-discounts-manager-templates',\n meta: {\n title: 'Modèles de promotions'\n },\n component: () => import('~/views/business/discounts/Index.vue')\n },\n {\n path: 'business-discounts-manager/templates/edit/:id?',\n name: 'business-gift-manager-template-edit',\n meta: {\n title: 'Éditer un modèle de promotions'\n },\n component: () => import('~/views/business/discounts/EditDiscountTemplate.vue')\n },\n {\n path: 'business-discounts-manager/show',\n name: 'business-discounts-manager-show',\n meta: {\n title: 'Codes promotionnels'\n },\n component: () => import('~/views/business/discounts/Show.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/lockers',\n name: 'lockers-index',\n meta: {\n title: 'Casiers'\n },\n redirect: { name: 'lockers-manager' },\n component: () => import('@/views/lockers/Index.vue'),\n children: [\n {\n path: 'dashboard',\n name: 'lockers-dashboard',\n meta: {\n title: 'Tableau de bord'\n },\n component: () => import('@/views/lockers/dashboard/LockersDashboard.vue')\n },\n // BOOKINGS\n {\n path: 'bookings',\n name: 'lockers-bookings',\n meta: {\n title: 'Réservations'\n },\n component: () => import('@/views/lockers/bookings/LockersBookings.vue')\n },\n {\n path: 'bookings/new-booking-export-mode',\n name: 'lockers-new-booking-export-mode',\n meta: {\n title: 'Nouvelle réservation'\n },\n component: () => import('@/views/lockers/bookings/NewBookingExpertMode.vue')\n },\n {\n path: 'bookings/new-booking-guided-mode',\n name: 'lockers-new-booking-guided-mode',\n meta: {\n title: 'Nouvelle réservation'\n },\n component: () => import('@/views/lockers/bookings/NewBookingGuidedMode.vue')\n },\n // MANAGER\n {\n path: 'manager',\n name: 'lockers-manager',\n meta: {\n title: 'Gérer les casiers'\n },\n component: () => import('@/views/lockers/manager/Index.vue'),\n children: [\n {\n path: 'establishment/:id',\n name: 'lockers-establishment-details',\n meta: {\n title: \"Détail de l'établissement\"\n },\n props: true,\n component: () => import('@/views/lockers/manager/EstablishmentDetails.vue')\n }, {\n path: 'area/:id',\n name: 'lockers-area-details',\n meta: {\n title: 'Détail de la zone'\n },\n props: true,\n component: () => import('@/views/lockers/manager/AreaDetails.vue')\n }, {\n path: 'block/:id',\n name: 'lockers-block-details',\n meta: {\n title: 'Détail du bloc'\n },\n props: true,\n component: () => import('@/views/lockers/manager/BlockDetails.vue')\n },\n {\n path: 'locker/:id',\n name: 'lockers-locker-details',\n meta: {\n title: 'Détail du casier'\n },\n props: true,\n component: () => import('@/views/lockers/manager/LockerDetails.vue')\n }\n ]\n },\n // INCIDENTS\n {\n path: 'incidents',\n name: 'lockers-incidents',\n meta: {\n title: 'Gérer les incidents'\n },\n component: () => import('@/components/lockers/incidents/LockersIncidents.vue')\n },\n // GATEWAYS\n {\n path: 'gateways',\n name: 'lockers-gateways',\n meta: {\n title: 'Gérer les passerelles'\n },\n component: () => import('@/views/lockers/gateways/GatewaysManager.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/activities',\n name: 'activities-index',\n meta: {\n title: 'Activités périodiques'\n },\n redirect: { name: 'sessions' },\n component: () => import('~/views/activities/Index.vue'),\n children: [\n {\n path: 'sessions',\n name: 'sessions',\n meta: {\n title: 'Sessions périodiques'\n },\n component: () => import('~/views/activities/Sessions.vue')\n },\n {\n path: 'sessions/new',\n name: 'activities-sessions-new',\n meta: {\n title: 'Création d\\'une session'\n },\n component: () => import('~/components/sessions/show/SessionNew.vue')\n },\n {\n path: 'sessions/:id',\n name: 'activities-sessions-show',\n meta: {\n title: 'Activités périodiques'\n },\n component: () => import('~/views/activities/Sessions.vue')\n },\n {\n path: 'registrations',\n name: 'registrations',\n meta: {\n title: 'Inscriptions périodiques'\n },\n component: () => import('~/components/sessions/Registrations.vue')\n },\n {\n path: 'registrations/new',\n name: 'registrations-new',\n meta: {\n title: 'Création d\\'une inscription périodique'\n },\n component: () => import('~/components/sessions/RegistrationEdit.vue')\n },\n {\n path: 'registrations/:id',\n name: 'registrations-edit',\n meta: {\n title: 'Modification d\\'une inscription périodique'\n },\n component: () => import('~/components/sessions/RegistrationEdit.vue')\n },\n {\n path: 'phases',\n name: 'phases',\n meta: {\n title: 'Phases d\\'inscriptions'\n },\n component: () => import('~/views/activities/Phases.vue')\n },\n {\n path: 'phases/new',\n name: 'phases-new',\n meta: {\n title: 'Création d\\'une phase'\n },\n component: () => import('~/components/sessions/PhaseEdit.vue')\n },\n {\n path: 'phases/:id',\n name: 'phases-show',\n meta: {\n title: 'Phases'\n },\n component: () => import('~/components/sessions/PhaseEdit.vue')\n },\n {\n path: 'cashregister/new',\n name: 'cashregister-new',\n meta: {\n title: 'Création d\\'une inscription périodique depuis la caisse',\n disableDashboardLayout: true\n },\n component: () => import('~/components/sessions/RegistrationEdit.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/setup',\n name: 'setup',\n meta: {\n title: 'Configuration'\n },\n component: () => import('~/views/setup/Index.vue'),\n children: [\n {\n path: 'main',\n name: 'setup-main',\n meta: {\n title: 'Paramètres généraux'\n },\n component: () => import('~/views/setup/Main.vue')\n },\n {\n path: 'establishments',\n name: 'setup-establishments',\n meta: {\n title: 'Établissements'\n },\n component: () =>\n import('~/views/setup/establishments/Index.vue')\n },\n {\n path: 'establishments/new',\n name: 'setup-establishments-new',\n meta: {\n title: \"Création de l'établissement\",\n new: true\n },\n component: () =>\n import('~/views/setup/establishments/Edit.vue')\n },\n {\n path: 'establishments/:id',\n name: 'setup-establishments-edit',\n meta: {\n title: \"Configuration de l'établissement\",\n new: false\n },\n component: () =>\n import('~/views/setup/establishments/Edit.vue')\n },\n {\n path: 'establishments/:id/map',\n name: 'setup-establishments-edit-map',\n meta: {\n title: \"Plan 3D de l'établissement\",\n new: false\n },\n component: () =>\n import('~/views/setup/establishments/EditMap.vue')\n },\n {\n path: 'mailer',\n name: 'setup-mailer',\n meta: {\n title: 'Configuration e-mail'\n },\n component: () => import('~/views/setup/Mailer.vue')\n },\n {\n path: 'smser',\n name: 'setup-smser',\n meta: {\n title: 'Configuration SMS'\n },\n component: () => import('~/views/setup/SMSer.vue')\n },\n {\n path: 'front-office-general',\n name: 'setup-front-office-general',\n meta: {\n title: 'Configuration du front office'\n },\n component: () => import('~/views/setup/front/Main.vue')\n },\n {\n path: 'front-office-payments',\n name: 'setup-front-office-payments',\n meta: {\n title: 'Configuration des paiements front office'\n },\n component: () => import('~/views/setup/front/Payments.vue')\n },\n {\n path: 'templates',\n name: 'setup-templates',\n meta: {\n title: 'Modèles éditables'\n },\n component: () => import('~/views/setup/templates/Index.vue')\n },\n {\n path: 'documents',\n name: 'setup-documents',\n meta: {\n title: 'Documents'\n },\n component: () => import('~/views/setup/Documents.vue')\n },\n {\n path: 'pricings',\n name: 'setup-pricings',\n meta: {\n title: 'Tarifications par défaut'\n },\n component: () => import('~/views/setup/Pricings.vue')\n },\n {\n path: 'templates/new',\n name: 'setup-templates-new',\n meta: {\n title: 'Nouveau modèle'\n },\n component: () => import('~/views/setup/templates/Edit.vue')\n },\n {\n path: 'templates/:id',\n name: 'setup-templates-edit',\n meta: {\n title: \"Edition d'un modèle\"\n },\n component: () => import('~/views/setup/templates/Edit.vue')\n },\n {\n path: 'planning',\n name: 'setup-planning',\n meta: {\n title: 'Configuration du planning'\n },\n component: () => import('~/views/setup/Planning.vue')\n },\n {\n path: 'turnstiles',\n name: 'setup-turnstiles',\n meta: {\n title: 'Configuration des tourniquets'\n },\n component: () => import('~/views/setup/Turnstiles.vue')\n },\n {\n path: 'lockers-global',\n name: 'setup-lockers-global',\n meta: {\n title: 'Gestion des casiers'\n },\n component: () => import('~/views/setup/LockersGlobal.vue')\n },\n {\n path: 'lockers-params',\n name: 'setup-lockers-params',\n meta: {\n title: 'Paramètres des casiers'\n },\n component: () => import('~/views/setup/LockersParams.vue')\n },\n {\n path: 'lockers-booking',\n name: 'setup-lockers-booking',\n meta: {\n title: 'Gestion des réservations'\n },\n component: () => import('~/views/setup/LockersBookings.vue')\n },\n {\n path: 'spa/universe',\n name: 'setup-spa',\n meta: {\n title: 'Configuration Spa'\n },\n component: () => import('~/views/setup/spa/Index.vue')\n },\n {\n path: 'spa/universe/:id',\n name: 'setup-universe-edit',\n meta: {\n title: \"Configuration d'un univers Spa\"\n },\n component: () => import('~/views/setup/spa/UniverseEdit.vue')\n },\n {\n path: 'spa/universe/:id/params',\n name: 'setup-universe-params',\n meta: {\n title: \"Configuration de l'univers\"\n },\n component: () =>\n import('~/views/setup/establishments/Edit.vue')\n },\n {\n path: 'areas',\n name: 'setup-areas',\n meta: {\n title: 'Configuration des zones'\n },\n component: () => import('~/views/setup/Areas.vue')\n },\n {\n path: 'stats',\n name: 'setup-stats',\n meta: {\n title: 'Configuration des statistiques'\n },\n component: () => import('~/views/setup/Statistiques.vue')\n },\n {\n path: 'exports',\n name: 'setup-exports',\n meta: {\n title: 'Configuration des exports'\n },\n component: () => import('~/views/setup/Exports.vue')\n },\n {\n path: 'vouchers',\n name: 'setup-vouchers',\n meta: {\n title: 'Configuration des bons cadeaux et planches'\n },\n component: () => import('~/views/setup/Vouchers.vue')\n },\n {\n path: 'tva',\n name: 'setup-tva',\n meta: {\n title: 'Configuration de la TVA'\n },\n component: () => import('~/views/setup/Tva.vue')\n },\n {\n path: 'auto-debit',\n name: 'setup-auto-debit',\n meta: {\n title: 'Configuration du prélèvement automatique'\n },\n component: () => import('~/views/setup/autodebits/index.vue')\n },\n {\n path: 'wristband',\n name: 'setup-wristband',\n meta: {\n title: 'Configuration des bracelets'\n },\n component: () => import('~/views/setup/Wristband.vue')\n },\n {\n path: 'variants',\n name: 'setup-variants',\n meta: {\n title: 'Configuration des variantes'\n },\n component: () => import('~/views/setup/Variants.vue')\n },\n {\n path: 'billing-modes',\n name: 'setup-clubs-billing-modes',\n meta: {\n title: 'Modes de facturation'\n },\n component: () => import('~/views/setup/clubs/BillingModes.vue')\n }\n ]\n }\n]\n","export default [\n {\n path: '/webview/scan-voucher',\n name: 'voucher-scan-webview',\n meta: {\n disableDashboardLayout: true\n },\n component: () => import('~/views/webviews/VoucherScanDialog.vue')\n },\n {\n path: '/webview/scan-voucher/:id',\n name: 'voucher-scan-webview-id',\n meta: {\n disableDashboardLayout: true\n },\n component: () => import('~/views/webviews/VoucherScanDialog.vue')\n },\n {\n path: '/webview/periodic-registration',\n name: 'periodic-registration-webview',\n meta: {\n disableDashboardLayout: true\n },\n component: () => import('~/views/webviews/PeriodicRegistrationDialog.vue')\n },\n {\n path: '/webview/book',\n name: 'book-webview',\n meta: {\n disableDashboardLayout: true\n },\n component: () => import('~/views/webviews/BookingsDialog.vue')\n },\n {\n path: '/webview/odeon',\n name: 'webbiew-odeon',\n meta: {\n disableDashboardLayout: true\n },\n component: () => import('~/views/webviews/OdeonPopup.vue')\n }\n]\n","export default [\n {\n path: '/kiosks',\n name: 'kiosks-index',\n meta: {\n title: 'Bornes'\n },\n component: () => import('@/views/kiosks/Index.vue')\n }\n]\n","import store from '../store/store.js'\n\nfunction hasRights (...rights) {\n const user = store.getters.authUser\n return (user && user.Permissions && rights.every((el) => user.Permissions.includes(el)))\n}\n\nexport function isAuthenticated () {\n return !!store.getters.authUser\n}\n\nexport function setForbidden (val) {\n store.commit('set_forbidden', val)\n}\n\nexport function checkRights (routeName) {\n let allowed = true\n switch (routeName) {\n // Planning\n case 'planning-index':\n allowed = hasRights('admin:planning')\n break\n // CTM\n case 'turnstiles-status':\n allowed = hasRights('admin:ctm')\n break\n case 'turnstiles-planning':\n allowed = hasRights('admin:ctm:planning')\n break\n case 'turnstiles-area-configuration':\n case 'planning-area-details':\n allowed = hasRights('admin:ctm:area')\n break\n case 'timeslots-templates':\n allowed = hasRights('admin:ctm:planning:manage')\n break\n case 'turnstiles-weeks':\n allowed = hasRights('admin:ctm:type-week')\n break\n case 'turnstiles-scan':\n allowed = hasRights('admin:ctm:scan')\n break\n case 'turnstiles-history':\n allowed = hasRights('admin:ctm:passings')\n break\n case 'turnstiles-penalties':\n allowed = hasRights('admin:ctm:penalty')\n break\n // CLients\n case 'list':\n case 'clubs':\n case 'planning-clubs':\n case 'clubs-show':\n case 'clients-show':\n case 'clubs-new':\n allowed = hasRights('admin:clients')\n break\n\n // Business\n case 'business-exports-financial':\n case 'business-families-daily':\n case 'business-families-financial':\n case 'business-exports-daily':\n allowed = hasRights('admin:business:export')\n break\n case 'business-gift-manager':\n allowed = hasRights('admin:business:voucher')\n break\n case 'business-gift-manager-plancha':\n allowed = hasRights('admin:business:voucher-sheet')\n break\n case 'business-gift-manager-plancha-create':\n allowed = hasRights('admin:business:voucher-sheet:manage')\n break\n case 'business-discounts-manager-templates':\n case 'business-gift-manager-template-edit':\n allowed = hasRights('admin:business:discount:template')\n break\n case 'business-discounts-manager-show':\n allowed = hasRights('admin:business:discount:code')\n break\n // SPA\n case 'spa-planning':\n allowed = hasRights('admin:spa')\n break\n case 'spa-personnels':\n case 'spa-personnels-edit':\n case 'spa-resources':\n case 'spa-resources-edit':\n case 'spa-activities':\n case 'spa-activities-edit':\n case 'spa-products':\n case 'spa-products-edit':\n case 'spa-products-stocks':\n allowed = hasRights('admin:spa:manage')\n break\n // Stats\n case 'stats-index':\n case 'stats-dashboard-layout':\n case 'stats-dashboard-activities':\n case 'stats-dashboard-attendance':\n case 'stats-dashboard-passings':\n case 'stats-dashboard-sales':\n case 'stats-activity':\n case 'stats-activity-compare':\n case 'stats-passings':\n case 'stats-sales':\n case 'stats-predictions':\n allowed = hasRights('admin:stats')\n break\n // Periodic\n case 'sessions':\n case 'activities-sessions-show':\n case 'registrations':\n case 'phases':\n allowed = hasRights('admin:periodic')\n break\n case 'activities-sessions-new':\n case 'phases-new':\n case 'phases-show':\n allowed = hasRights('admin:periodic:manage')\n break\n case 'registrations-new':\n case 'registrations-edit':\n case 'cashregister-new':\n allowed = hasRights('admin:periodic:booking')\n break\n // Lockers\n case 'lockers-dashboard':\n case 'lockers-bookings':\n case 'lockers-new-booking-export-mode':\n case 'lockers-new-booking-guided-mode':\n case 'lockers-manager':\n case 'lockers-establishment-details':\n case 'lockers-area-details':\n case 'lockers-block-details':\n case 'lockers-locker-details':\n case 'lockers-incidents':\n case 'lockers-gateways':\n allowed = hasRights('admin:lockers')\n break\n // Kiosks\n case 'kiosks-index':\n allowed = hasRights('admin:kiosks')\n break\n // Quotations\n case 'quotation-accounts':\n case 'quotation-accounts-show':\n case 'quotation-requests':\n case 'quotation-requests-show':\n case 'quotation-quotations':\n case 'quotations-show':\n case 'quotation-orders':\n case 'quotation-orders-show':\n allowed = hasRights('admin:quotations')\n break\n case 'quotation-quotations-new':\n case 'quotation-settings':\n allowed = hasRights('admin:quotations:manage')\n break\n // Params\n case 'setup-main':\n allowed = hasRights('admin:params', 'admin:params:settings')\n break\n case 'setup-establishments':\n case 'setup-establishments-new':\n case 'setup-establishments-edit':\n case 'setup-establishments-edit-map':\n allowed = hasRights('admin:params', 'admin:params:establishments')\n break\n case 'setup-mailer':\n allowed = hasRights('admin:params', 'admin:params:mail')\n break\n case 'setup-smser':\n allowed = hasRights('admin:params', 'admin:params:sms')\n break\n case 'setup-templates':\n case 'setup-templates-new':\n case 'setup-templates-edit':\n allowed = hasRights('admin:params', 'admin:params:template')\n break\n case 'setup-documents':\n allowed = hasRights('admin:params', 'admin:params:document')\n break\n case 'setup-pricings':\n allowed = hasRights('admin:params', 'admin:params:pricings')\n break\n case 'setup-planning':\n allowed = hasRights('admin:params', 'admin:params:planning')\n break\n case 'setup-lockers-global':\n case 'setup-lockers-params':\n case 'setup-lockers-booking':\n allowed = hasRights('admin:params', 'admin:params:lockers')\n break\n case 'setup-spa':\n case 'setup-universe-edit':\n case 'setup-universe-params':\n allowed = hasRights('admin:params', 'admin:params:spa')\n break\n case 'setup-turnstiles':\n allowed = hasRights('admin:params', 'admin:params:ctm')\n break\n case 'setup-areas':\n allowed = hasRights('admin:params', 'admin:params:area')\n break\n case 'setup-stats':\n allowed = hasRights('admin:params', 'admin:params:stats')\n break\n case 'setup-business':\n allowed = hasRights('admin:params', 'admin:params:business')\n break\n case 'setup-front-office-general':\n case 'setup-front-office-payments':\n allowed = hasRights('admin:params', 'admin:params:front')\n break\n\n // products\n case 'products-index':\n case 'products-form':\n case 'stocks':\n allowed = hasRights('admin:products')\n break\n case 'prices-families':\n allowed = hasRights('admin:products:family-price')\n break\n case 'suppliers':\n case 'supplierDetails':\n allowed = hasRights('admin:products:supplier')\n break\n case 'periods':\n allowed = hasRights('admin:products:period')\n break\n }\n\n return allowed\n}\n","export default [\n {\n path: '/displayland',\n name: 'displayland-index',\n meta: {\n title: 'Gestion des affichages'\n },\n redirect: { name: 'displayland-dashboard' },\n component: () => import('~/views/displayland/Index.vue'),\n children: [\n {\n path: 'dashboard',\n name: 'displayland-dashboard',\n meta: {\n title: 'Tableau de bord'\n },\n component: () => import('~/views/displayland/Dashboard.vue')\n },\n {\n path: 'configurations',\n name: 'displayland-configurations',\n meta: {\n title: 'Configuration des écrans'\n },\n component: () => import('~/views/displayland/Configurations.vue')\n },\n {\n path: 'media',\n name: 'displayland-media',\n meta: {\n title: 'Medias'\n },\n component: () => import('~/views/displayland/Medias.vue')\n },\n {\n path: '/display/:id',\n name: 'displayland-view',\n meta: {\n title: 'Ecran',\n disableDashboardLayout: true\n },\n component: () => import('~/views/displayland/View.vue')\n }\n ]\n }\n]\n","import Vue from 'vue'\nimport Router from 'vue-router'\n\nimport AuthRoutes from './auth'\nimport PlanningRoutes from './planning'\nimport TurnstilesRoutes from './turnstiles'\nimport ClientsRoutes from './clients'\nimport ProductsRoutes from './products'\nimport QuotationRoutes from './quotation'\nimport SpaRoutes from './spa'\nimport StatsRoutes from './stats'\nimport BusinessRoutes from './business'\nimport LockersRoutes from './lockers'\nimport ActivitiesRoutes from './activities'\nimport SetupRoutes from './setup'\nimport CashregisterWebviewsRoutes from './cashregisterWebviews'\nimport KiosksRoutes from './kiosks'\nimport { checkRights, isAuthenticated, setForbidden } from './permissions'\nimport DisplaylandRoutes from './displayland'\n\nVue.use(Router)\n\nconst router = new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n ...AuthRoutes,\n ...PlanningRoutes,\n ...TurnstilesRoutes,\n ...ClientsRoutes,\n ...ProductsRoutes,\n ...QuotationRoutes,\n ...SpaRoutes,\n ...StatsRoutes,\n ...BusinessRoutes,\n ...LockersRoutes,\n ...ActivitiesRoutes,\n ...SetupRoutes,\n ...CashregisterWebviewsRoutes,\n ...KiosksRoutes,\n ...DisplaylandRoutes\n ]\n})\n\nrouter.beforeEach((to, from, next) => {\n // This goes through the matched routes from last to first, finding the closest route with a title.\n // eg. if we have /some/deep/nested/route and /some, /deep, and /nested have titles, nested's will be chosen.\n const nearestWithTitle = to.matched.slice().reverse().find(r => r.meta && r.meta.title)\n\n // If a route with a title was found, set the document (page) title to that value.\n if (nearestWithTitle) {\n document.title = 'Streamlor - ' + nearestWithTitle.meta.title\n }\n\n setForbidden(false)\n // Check auth and perms\n if (checkRights(to.name)) {\n next()\n } else if (!isAuthenticated()) {\n next('/')\n } else {\n setForbidden(true)\n next()\n }\n})\n\nexport default router\n","import ApiAuth from '~/api/auth'\nimport ApiCtm from '~/api/ctm'\nimport ApiProducts from '~/api/products'\nimport ApiAreas from '~/api/areas'\nimport ApiWeekTypes from '~/api/weekTypes'\nimport ApiAccessControl from '~/api/accessControl'\nimport _ from 'lodash'\n\nconst initialState = () => ({\n auth: {\n status: 'idle',\n token: null,\n user: null,\n seller: null\n },\n tsBoxes: [],\n products: [],\n areas: [],\n weekTypes: [],\n accessTimeslots: [],\n families: [],\n accessTimeslotsLoading: false,\n navigation_drawer_permanent: false,\n expandMainMenu: null, // null, 'mini' or 'full'\n forbidden: false\n})\n\nexport default {\n state: initialState,\n getters: {\n isLoggedIn: state => !!state.auth.token && !!state.auth.user,\n authStatus: state => state.auth.status,\n authToken: state => state.auth.token,\n authUser: state => state.auth.user,\n authSeller: state => state.auth.seller,\n hasRight: state => rightName => state.auth.user && state.auth.user.Permissions && state.auth.user.Permissions.findIndex(el => el === rightName) !== -1,\n hasRights: state => rightNames => state.auth.user && state.auth.user.Permissions && rightNames.every(el => state.auth.user.Permissions.includes(el)),\n dimsBackofficeUrl: state => state.auth.dimsBackofficeUrl,\n forbidden: state => state.forbidden,\n vcrUrl: state => state.auth.vcrUrl,\n tsBoxes: state => state.tsBoxes,\n products: state => state.products,\n getProductByID: (state) => (id) => {\n return state.products.find(p => p.ID === id)\n },\n getProductLabel: (state) => (id) => {\n const product = state.products.find(p => p.ID === id)\n return product ? product.Label.FR : ''\n },\n getProductLabelShort: (state) => (id) => {\n const product = state.products.find(p => p.ID === id)\n return product ? product.LabelShort.FR : ''\n },\n families: state => state.families,\n familiesById: state => _.keyBy(state.families, 'ID'),\n familiesTree (state) {\n const out = []\n\n const recurseGetParents = function (id) {\n for (let i = 0; i < state.families.length; ++i) {\n const fam = state.families[i]\n if (fam.Subfamilies && fam.Subfamilies.includes(id)) {\n return recurseGetParents(fam.ID) + fam.Label.FR + ' / '\n }\n }\n\n return ''\n }\n\n if (state.families) {\n for (let i = 0; i < state.families.length; ++i) {\n const fam = state.families[i]\n fam.FullPathLabel = recurseGetParents(fam.ID) + fam.Label.FR\n\n out.push(fam)\n }\n }\n\n out.sort(function (a, b) {\n if (a.FullPathLabel === b.FullPathLabel) {\n return 0\n } else if (a.FullPathLabel < b.FullPathLabel) {\n return -1\n } else {\n return 1\n }\n })\n\n return out\n },\n areas: state => state.areas,\n weekTypes: state => state.weekTypes,\n accessTimeslots: state => state.accessTimeslots,\n accessTimeslotsLoading: state => state.accessTimeslotsLoading,\n navigationDrawerState: state => state.navigation_drawer_permanent,\n expandMainMenu: state => state.expandMainMenu\n },\n actions: {\n login ({ commit }, user) {\n return new Promise((resolve, reject) => {\n commit('auth_request')\n\n ApiAuth.login(user)\n .then(res => {\n if (res.data.Result === 0) {\n const token = res.data.Token\n const userInfo = res.data.User\n const dimsBackofficeUrl = res.data.DimsBackofficeURL\n const vcrUrl = res.data.VcrURL\n commit('auth_success', { token, user: userInfo, dimsBackofficeUrl, vcrUrl, seller: res.data.Seller })\n }\n\n // Forward in any case (e.g. for 2FA)\n resolve(res)\n })\n .catch(err => {\n commit('auth_error', err)\n reject(err)\n })\n })\n },\n\n autologin ({ commit }, token) {\n return new Promise((resolve, reject) => {\n commit('auth_request')\n\n ApiAuth.loginToken(token)\n .then(res => {\n console.warn('loginToken result success:', res.data)\n const authToken = res.data.Token\n const user = res.data.User\n const dimsBackofficeUrl = res.data.DimsBackofficeURL\n const vcrUrl = res.data.VcrURL\n commit('auth_success', { token: authToken, user, dimsBackofficeUrl, vcrUrl, seller: res.data.Seller })\n resolve(res)\n })\n .catch(err => {\n commit('auth_error', err)\n reject(err)\n })\n })\n },\n\n logout ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiAuth.logout().then(res => {\n commit('logout')\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getTurnstiles ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiCtm.getTurnstiles().then(res => {\n commit('set_turnstiles_boxes', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getProducts ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiProducts.getProducts({ IsSubscription: true }).then(res => {\n commit('set_products', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getFamilies ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiProducts.getFamilies({ State: [true] }).then(res => {\n commit('set_families', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getAreas ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiAreas.getAreas().then(res => {\n commit('set_areas', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n updateArea ({ commit }, area) {\n return new Promise((resolve, reject) => {\n ApiAreas.updateArea(area).then(res => {\n let found = false\n\n for (let i = 0; i < this.state.main.areas.length; ++i) {\n const a = this.state.main.areas[i]\n if (a.ID === area.ID) {\n this.state.main.areas[i] = area\n commit('set_areas', this.state.main.areas)\n found = true\n break\n }\n }\n\n if (!found) {\n this.state.main.areas.push(area)\n commit('set_areas', this.state.main.areas)\n }\n\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n createArea ({ commit }, area) {\n return new Promise((resolve, reject) => {\n ApiAreas.createArea(area).then(res => {\n this.state.main.areas.push(area)\n commit('set_areas', this.state.main.areas)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getWeekTypes ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiWeekTypes.getWeekTypes().then(res => {\n commit('set_weekTypes', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getAccessTimeslots ({ commit }, filters) {\n commit('set_accessTimeslotsLoading', true)\n return new Promise((resolve, reject) => {\n ApiAccessControl.getTimeslots(filters).then(res => {\n commit('set_accessTimeslots', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n }\n },\n mutations: {\n reset_main (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n auth_request (state) {\n state.auth.status = 'loading'\n },\n set_auth_status (state, val) {\n state.auth.status = val\n },\n auth_success (state, val) {\n state.auth.status = 'success'\n state.auth.token = val.token\n state.auth.user = val.user\n state.auth.dimsBackofficeUrl = val.dimsBackofficeUrl\n state.auth.vcrUrl = val.vcrUrl\n state.auth.seller = val.seller\n state.navigation_drawer_permanent = true\n },\n auth_error (state) {\n state.auth.status = 'error'\n state.auth.token = null\n state.auth.user = null\n state.navigation_drawer_permanent = false\n },\n set_auth_permissions (state, perms) {\n state.auth.user.Permissions = perms\n },\n logout (state) {\n state.auth.status = 'idle'\n state.auth.token = null\n state.auth.user = null\n state.navigation_drawer_permanent = false\n },\n set_forbidden (state, val) {\n state.forbidden = val\n },\n set_turnstiles_boxes (state, val) {\n state.tsBoxes = val\n },\n set_products (state, val) {\n state.products = val\n },\n set_families (state, val) {\n state.families = val\n },\n set_areas (state, val) {\n state.areas = val\n },\n set_weekTypes (state, val) {\n state.weekTypes = val\n },\n set_accessTimeslots (state, val) {\n state.accessTimeslots = val\n state.accessTimeslotsLoading = false\n },\n set_accessTimeslotsLoading (state, val) {\n state.accessTimeslotsLoading = val\n },\n setExpandMainMenu (state, val) {\n state.expandMainMenu = val\n }\n }\n}\n","import ApiParams from '~/api/params'\nimport moment from 'moment'\nimport eventbus from '~/eventbus'\nimport consts from 'neptune/consts'\nimport _ from 'lodash'\nimport paramsMixin from 'neptune/helpers/params'\n\nconst initialState = () => ({\n modules: {\n planning: false,\n ctm: false,\n clients: false,\n spa: false,\n stats: false,\n indoorpos: false\n },\n params: null,\n formattedParams: paramsMixin.defaultParams(),\n globalParams: null,\n\n periods: [],\n pricings: [],\n tva: [],\n chartOfAccounts: [],\n suppliers: [],\n paymentType: [],\n establishments: [],\n wristband: [],\n wristbandPrinterTypes: [],\n selectedEstablishments: [],\n autodebitModes: [],\n discountsTemplates: []\n\n})\n\nexport default {\n state: initialState,\n getters: {\n modules: state => state.modules,\n params: state => state.params,\n cities: state => state.cities,\n formattedParams: state => state.formattedParams,\n globalParams: state => state.globalParams,\n periods: state => state.periods,\n currentPeriod: function (state) {\n if (state.periods) {\n let current = state.periods.find(p => moment().isBetween(moment(p.StartDate), moment(p.EndDate)))\n if (current === undefined) {\n current = state.periods[state.periods.length - 1]\n }\n return current\n }\n return {}\n },\n pricing: state => state.pricings, // deprecated\n pricings: state => state.pricings,\n tva: state => state.tva,\n chartOfAccounts: state => state.chartOfAccounts,\n discountsTemplates: state => state.discountsTemplates,\n suppliers: state => state.suppliers,\n autodebitModes: state => state.autodebitModes,\n paymentType: state => state.paymentType,\n establishments: state => state.establishments,\n wristband: state => state.wristband,\n wristbandPrinterTypes: state => state.wristbandPrinterTypes,\n establishmentsById: state => _.keyBy(state.establishments, 'ID'),\n defaultEstablishment: state => state.establishments.find(e => e.IsDefault) || null,\n selectedEstablishments: state => state.selectedEstablishments,\n statsSeason: state => {\n const season = (state.formattedParams && state.formattedParams.statsSeason) ? state.formattedParams.statsSeason : { start: '01/01', end: '31/12' }\n const start = moment(season.start, 'DD/MM')\n const end = moment(season.end, 'DD/MM')\n return {\n start: {\n day: start.format('D'),\n month: start.format('M')\n },\n end: {\n day: end.format('D'),\n month: end.format('M')\n }\n }\n },\n currencySymbol: state => {\n if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_CURRENCY_SIGN]) {\n return '?'\n } else if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_CURRENCY_SIGN].Value) {\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_CURRENCY_SIGN].DefaultValue\n }\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_CURRENCY_SIGN].Value\n },\n\n creditLabel: state => {\n if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_CREDIT_LABEL]) {\n return 'cagnotte'\n } else if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_CREDIT_LABEL].Value) {\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_CREDIT_LABEL].DefaultValue\n }\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_CREDIT_LABEL].Value\n },\n\n unitsLabel: state => {\n if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_UNITS_LABEL]) {\n return 'unités'\n } else if (!state.globalParams[consts.GLOBAL_PARAMS.PARAM_UNITS_LABEL].Value) {\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_UNITS_LABEL].DefaultValue\n }\n return state.globalParams[consts.GLOBAL_PARAMS.PARAM_UNITS_LABEL].Value\n }\n },\n actions: {\n getModules ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getModules().then(res => {\n commit('set_modules', res.data || {})\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getParams ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getParams().then(res => {\n commit('set_params', res.data || [])\n commit('set_formatted_params', paramsMixin.formatParams(res.data || []))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getCities ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getCities().then(res => {\n commit('set_cities', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getGlobalParams ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getGlobalParams().then(res => {\n const params = paramsMixin.formatGlobalParams(res.data)\n commit('set_global_params', params || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getPeriods ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getPeriods().then(res => {\n let periods = []\n if (res.data) {\n periods = res.data.filter(p => p.Label && p.Label.FR)\n }\n commit('set_periods', periods)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getPricings ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getPricings().then(res => {\n commit('set_pricings', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getAutoDebitModes ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getAutoDebitModes().then(res => {\n commit('set_auto_debit_mode', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getWristband ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getWristbandTemplates().then(res => {\n commit('set_wristband', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getWristbandPrinter ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getWristbandPrinterType().then(res => {\n commit('set_wristband_printer', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getChartOfAccounts ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getChartOfAccounts().then(res => {\n commit('set_chart_of_accounts', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getDiscountsTemplates ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getDiscountsTemplates().then(res => {\n commit('set_discounts_templates', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getSuppliers ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getSuppliers().then(res => {\n commit('set_suppliers', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n getTvaTypes ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getTvaTypes().then(res => {\n commit('set_tva', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getPaymentType ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getPaymentType().then(res => {\n commit('set_paymentType', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getEstablishments ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiParams.getEstablishments().then(res => {\n commit('set_establishments', res.data || [])\n // By default select no one etab (so no etab condition in filter : so all data are display for all etabs)\n // commit('set_selectedEstablishments', [])\n // Depend of the etabs (comment or not those lines)\n // if (this.state.params.selectedEstablishments.length === 0) { // Select At Least One Establishment\n // commit('add_selectedEstablishments', res.data[0].Label || []) // by default the first one\n // }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getSelectAllEstablishments ({ commit }) {\n commit('set_selectedEstablishments', []) // on vide avant au cas où\n const establishments = JSON.parse(JSON.stringify(this.state.params.establishments))\n establishments.forEach(establishment => {\n commit('add_selectedEstablishments', establishment.ID)\n })\n }\n },\n\n mutations: {\n reset_params (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n set_modules (state, val) {\n state.modules = val\n },\n\n set_params (state, val) {\n state.params = val\n },\n\n set_cities (state, val) {\n state.cities = val\n },\n\n set_formatted_params (state, val) {\n state.formattedParams = val\n },\n\n set_global_params (state, val) {\n state.globalParams = val\n },\n\n set_periods (state, val) {\n state.periods = val.sort((a, b) => moment(a.EndDate).diff(moment(b.EndDate)))\n },\n\n set_pricings (state, val) {\n state.pricings = val\n },\n\n set_auto_debit_mode (state, val) {\n state.autodebitModes = val\n },\n\n set_discounts_templates (state, val) {\n state.discountsTemplates = val\n },\n\n set_suppliers (state, val) {\n state.suppliers = val\n },\n\n set_tva (state, val) {\n state.tva = val\n },\n\n set_chart_of_accounts (state, val) {\n state.chartOfAccounts = val\n },\n\n set_wristband (state, val) {\n state.wristband = val\n },\n\n set_wristband_printer (state, val) {\n state.wristbandPrinterTypes = val\n },\n\n set_paymentType (state, val) {\n state.paymentType = val\n },\n\n set_establishments (state, val) {\n state.establishments = val\n },\n\n upsert_establishment (state, val) {\n const index = state.establishments.findIndex(e => e.ID === val.ID)\n if (index === -1) {\n state.establishments.push(val)\n } else {\n state.establishments[index] = val\n }\n },\n\n set_selectedEstablishments (state, val) {\n const enabledEstablishments = state.establishments.filter(e => e.Status)\n if (enabledEstablishments.length < 2) { // Select nothing if there are only one enabled establishment\n state.selectedEstablishments = []\n } else {\n state.selectedEstablishments = val\n }\n eventbus.$emit('establishments-selected', true)\n },\n\n add_selectedEstablishments (state, val) {\n state.selectedEstablishments.push(val)\n }\n }\n}\n","// no one JS import\n\nconst initialState = () => ({\n filter: {\n\n preSelectFilterSelectedName: 'Aucun',\n\n /// //////////// General cdt to allow fonctionnalities\n\n conditionsSatisfied: true,\n\n /// ////////////\n\n toggle_multiple: [],\n second_toggle_multiple: [],\n\n /// //////////// Activities & activities'Families Picker :\n\n selectedActivities: [],\n selectedFamilies: [],\n\n /// //////////// Planning Saison Picker :\n\n saison: '2018',\n second_saison: '2019',\n\n /// //////////// Planning_Switch : \"Date Mode\" - \"Season Mode\" :\n\n saison_picker_checkbox: null,\n\n /// //////////// Switch : \"Date Compare\" - \"Date du - au\" :\n\n date_picker_checkbox: null,\n\n /// //////////// Date Picker \"Du\" et Date Picker \"Au\" :\n\n du_annee: null,\n du_mois: null,\n du_jour: null,\n\n au_annee: null,\n au_mois: null,\n au_jour: null,\n\n du_menu: false,\n du_picker: new Date().toISOString().substr(0, 10),\n\n au_menu: false,\n au_picker: new Date().toISOString().substr(0, 10),\n\n second_date_range_checkbox: null,\n\n second_du_annee: null,\n second_du_mois: null,\n second_du_jour: null,\n\n second_au_annee: null,\n second_au_mois: null,\n second_au_jour: null,\n\n second_du_menu: false,\n second_du_picker: new Date().toISOString().substr(0, 10),\n\n second_au_menu: false,\n second_au_picker: new Date().toISOString().substr(0, 10),\n\n /// //////////// Annee Picker 1 & 2 (param for data DL : send to backend) :\n\n annee: null,\n mois: null,\n jour: null,\n\n second_annee: null,\n second_mois: null,\n second_jour: null,\n\n /// //////////// Date Picker 1 (param for data displayed on screen) :\n\n year: false,\n month: false,\n day: false,\n\n picker: new Date().toISOString().substr(0, 10),\n picker_diplay: new Date().toISOString().substr(0, 10),\n\n menu: false,\n\n /// //////////// Date Picker 2 (param for data displayed on screen) :\n\n second_year: false,\n second_month: false,\n second_day: false,\n\n second_picker: new Date().toISOString().substr(0, 10),\n second_picker_diplay: new Date().toISOString().substr(0, 10),\n\n second_menu: false\n }\n})\n\nexport default {\n state: initialState,\n getters: {\n statsFilterResaBilansPeriodiques: state => state.filter\n },\n actions: {\n /// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n reset_stats_resa_bilans_periodiques (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n // DATE INITIALE : Standard Périodes ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsActuDateBtnJour ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (!this.state.stats.resa.bilansperiodiques.filter.day) {\n // Btn Jour va s'enclencher\n commit('set_statsPickerDisplay', this.state.stats.resa.bilansperiodiques.filter.picker)\n // commit('set_statsPickerDisplay', \"Jour\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Jour s'arrête\n // Btn Année et Mois pas enclenchés\n commit('set_statsPickerDisplay', 'Aucun filtre sur les données')\n } else if (this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Année enclenché mais pas Mois\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n // commit('set_statsPickerDisplay', \"Année\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Mois enclenché mais pas Année\n commit('set_statsPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10)])\n // commit('set_statsPickerDisplay', \"Mois\");\n } else if (this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Année et Mois enclenchés\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n // commit('set_statsPickerDisplay', \"Année + Mois\");\n }\n },\n\n getStatsActuDateBtnMois ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (!this.state.stats.resa.bilansperiodiques.filter.day && !this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Mois va s'enclencher (aucun des 3 btn n'étaient enclechés)\n commit('set_statsPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10)])\n // commit('set_statsPickerDisplay', \"Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Mois va s'enclencher (seul btn Année est encleché)\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n // commit('set_statsPickerDisplay', \"Année + Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && !this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Mois va s'arrêter (aucun des 2 autres btn n'étaient enclechés)\n commit('set_statsPickerDisplay', 'Aucun filtre sur les données')\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Mois va s'arrêter (seul btn Année est encleché)\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n // commit('set_statsPickerDisplay', \"Année\");\n }\n },\n\n getStatsActuDateBtnAnnee ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (!this.state.stats.resa.bilansperiodiques.filter.day && !this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Annee va s'enclencher (aucun des 3 btn n'étaient enclechés)\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n // commit('set_statsPickerDisplay', \"Année\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && !this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Année va s'enclencher (seul btn Mois est encleché)\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n // commit('set_statsPickerDisplay', \"Année + Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Année va s'arrêter (aucun des 2 autres btn n'étaient enclechés)\n commit('set_statsPickerDisplay', 'Aucun filtre sur les données')\n } else if (!this.state.stats.resa.bilansperiodiques.filter.day && this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n // Btn Année va s'arrêter (seul btn Mois est encleché)\n commit('set_statsPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10)])\n // commit('set_statsPickerDisplay', \"Mois\");\n }\n },\n\n getStatsActuDateBtnValidate ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (this.state.stats.resa.bilansperiodiques.filter.day) {\n commit('set_statsPickerDisplay', this.state.stats.resa.bilansperiodiques.filter.picker)\n } else if (this.state.stats.resa.bilansperiodiques.filter.year && !this.state.stats.resa.bilansperiodiques.filter.month) {\n commit('set_statsPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n } else if (!this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n commit('set_statsPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10)])\n // commit('set_statsPickerDisplay', \"Mois : \" + parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10));\n } else if (this.state.stats.resa.bilansperiodiques.filter.year && this.state.stats.resa.bilansperiodiques.filter.month) {\n commit('set_statsPickerDisplay', +parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10) + ' - ' + +parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n }\n },\n\n // DATE TO COMPARE //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsSecondActuDateBtnJour ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n // Btn Jour va s'enclencher\n if (!this.state.stats.resa.bilansperiodiques.filter.second_day) {\n // commit('set_statsSecondPickerDisplay', \"Jour\");\n commit('set_statsSecondPickerDisplay', this.state.stats.resa.bilansperiodiques.filter.second_picker)\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Jour s'arrête\n // Btn Année et Mois pas enclenchés\n commit('set_statsSecondPickerDisplay', 'Aucun filtre sur les données')\n } else if (this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Année enclenché mais pas Mois\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n // commit('set_statsSecondPickerDisplay', \"Année\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Mois enclenché mais pas Année\n commit('set_statsSecondPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10)])\n // commit('set_statsSecondPickerDisplay', \"Mois\");\n } else if (this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Année et Mois enclenchés\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n // commit('set_statsSecondPickerDisplay', \"Année + Mois\");\n }\n },\n\n getStatsSecondActuDateBtnMois ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (!this.state.stats.resa.bilansperiodiques.filter.second_day && !this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Mois va s'enclencher (aucun des 3 btn n'étaient enclechés)\n commit('set_statsSecondPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10)])\n // commit('set_statsSecondPickerDisplay', \"Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Mois va s'enclencher (seul btn Année est encleché)\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n // commit('set_statsSecondPickerDisplay', \"Année + Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && !this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Mois va s'arrêter (aucun des 2 autres btn n'étaient enclechés)\n commit('set_statsSecondPickerDisplay', 'Aucun filtre sur les données')\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Mois va s'arrêter (seul btn Année est encleché)\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n // commit('set_statsSecondPickerDisplay', \"Année\");\n }\n },\n\n getStatsSecondActuDateBtnAnnee ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (!this.state.stats.resa.bilansperiodiques.filter.second_day && !this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Annee va s'enclencher (aucun des 3 btn n'étaient enclechés)\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n // commit('set_statsSecondPickerDisplay', \"Année\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && !this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Année va s'enclencher (seul btn Mois est encleché)\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10) + ' - ' + parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n // commit('set_statsSecondPickerDisplay', \"Année + Mois\");\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Année va s'arrêter (aucun des 2 autres btn n'étaient enclechés)\n commit('set_statsSecondPickerDisplay', 'Aucun filtre sur les données')\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_day && this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // Btn Année va s'arrêter (seul btn Mois est encleché)\n commit('set_statsSecondPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10)])\n // commit('set_statsSecondPickerDisplay', \"Mois\");\n }\n },\n\n getStatsSecondActuDateBtnValidate ({ commit }) {\n const monthsList = ['Aucun', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']\n if (this.state.stats.resa.bilansperiodiques.filter.second_day) {\n commit('set_statsSecondPickerDisplay', this.state.stats.resa.bilansperiodiques.filter.second_picker)\n } else if (this.state.stats.resa.bilansperiodiques.filter.second_year && !this.state.stats.resa.bilansperiodiques.filter.second_month) {\n commit('set_statsSecondPickerDisplay', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n } else if (!this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n // commit('set_statsSecondPickerDisplay', \"Mois : \" + parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10));\n commit('set_statsSecondPickerDisplay', monthsList[parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10)])\n } else if (this.state.stats.resa.bilansperiodiques.filter.second_year && this.state.stats.resa.bilansperiodiques.filter.second_month) {\n commit('set_statsSecondPickerDisplay', +parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10) + ' - ' + +parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n }\n },\n\n // DOWNLOAD DATA //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsActuDateRange ({ commit }) {\n // DU var : annee, mois, jour\n commit('set_statsDuAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.du_picker.split('-')[0], 10))\n commit('set_statsDuMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.du_picker.split('-')[1], 10))\n commit('set_statsDuJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.du_picker.split('-')[2], 10))\n // AU var : annee, mois, jour\n commit('set_statsAuAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.au_picker.split('-')[0], 10))\n commit('set_statsAuMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.au_picker.split('-')[1], 10))\n commit('set_statsAuJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.au_picker.split('-')[2], 10))\n\n if (this.state.stats.resa.bilansperiodiques.filter.second_date_range_checkbox) {\n // SECOND DU var : annee, mois, jour\n commit('set_statsSecondDuAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_du_picker.split('-')[0], 10))\n commit('set_statsSecondDuMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_du_picker.split('-')[1], 10))\n commit('set_statsSecondDuJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_du_picker.split('-')[2], 10))\n // SECOND AU var : annee, mois, jour\n commit('set_statsSecondAuAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_au_picker.split('-')[0], 10))\n commit('set_statsSecondAuMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_au_picker.split('-')[1], 10))\n commit('set_statsSecondAuJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_au_picker.split('-')[2], 10))\n }\n },\n\n getStatsActuDate ({ commit }) {\n // var annee, mois, jour\n if (this.state.stats.resa.bilansperiodiques.filter.year) {\n commit('set_statsAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n } else {\n commit('set_statsAnnee', -1)\n }\n if (this.state.stats.resa.bilansperiodiques.filter.month) {\n commit('set_statsMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n } else {\n commit('set_statsMois', -1)\n }\n if (this.state.stats.resa.bilansperiodiques.filter.day) {\n commit('set_statsAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[0], 10))\n commit('set_statsMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[1], 10))\n commit('set_statsJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.picker.split('-')[2], 10))\n } else {\n commit('set_statsJour', -1)\n }\n\n // SECOND var annee, mois, jour\n if (this.state.stats.resa.bilansperiodiques.filter.second_year) {\n commit('set_statsSecondAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n } else {\n commit('set_statsSecondAnnee', -1)\n }\n if (this.state.stats.resa.bilansperiodiques.filter.second_month) {\n commit('set_statsSecondMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n } else {\n commit('set_statsSecondMois', -1)\n }\n if (this.state.stats.resa.bilansperiodiques.filter.second_day) {\n commit('set_statsSecondAnnee', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[0], 10))\n commit('set_statsSecondMois', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[1], 10))\n commit('set_statsSecondJour', parseInt(this.state.stats.resa.bilansperiodiques.filter.second_picker.split('-')[2], 10))\n } else {\n commit('set_statsSecondJour', -1)\n }\n }\n },\n mutations: {\n /// //////////////////////////////////////////////////////////////////////\n set_statPreSelectFilterSelectedName (state, val) {\n state.filter.preSelectFilterSelectedName = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Date Switch : \"Season Mode\" - \"Standard Period\"\n set_statsSaisonPickerCheckbox (state, val) {\n state.filter.saison_picker_checkbox = val\n },\n // Date Switch : \"Date Range\" - \"Standard Period\"\n set_statsDatePickerCheckbox (state, val) {\n state.filter.date_picker_checkbox = val\n },\n // Do some comparisons\n set_statsSecondDateRangeCheckbox (state, val) {\n state.filter.second_date_range_checkbox = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Saison : Values 1 : in order to data downlaod\n set_statsSaison (state, val) {\n state.filter.saison = val\n },\n // Saison : Values 2 : in order to data downlaod\n set_statsSecondSaison (state, val) {\n state.filter.second_saison = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Date : Values \"DU\" : in order to data downlaod\n set_statsDuAnnee (state, val) {\n state.filter.du_annee = val\n },\n set_statsDuMois (state, val) {\n state.filter.du_mois = val\n },\n set_statsDuJour (state, val) {\n state.filter.du_jour = val\n },\n set_statsSecondDuAnnee (state, val) {\n state.filter.second_du_annee = val\n },\n set_statsSecondDuMois (state, val) {\n state.filter.second_du_mois = val\n },\n set_statsSecondDuJour (state, val) {\n state.filter.second_du_jour = val\n },\n // Date : Values \"AU\" : in order to data downlaod\n set_statsAuAnnee (state, val) {\n state.filter.au_annee = val\n },\n set_statsAuMois (state, val) {\n state.filter.au_mois = val\n },\n set_statsAuJour (state, val) {\n state.filter.au_jour = val\n },\n set_statsSecondAuAnnee (state, val) {\n state.filter.second_au_annee = val\n },\n set_statsSecondAuMois (state, val) {\n state.filter.second_au_mois = val\n },\n set_statsSecondAuJour (state, val) {\n state.filter.second_au_jour = val\n },\n // Date : Pickers : \"DU\" et \"AU\"\n set_statsDuPicker (state, val) {\n state.filter.du_picker = val\n },\n set_statsAuPicker (state, val) {\n state.filter.au_picker = val\n },\n set_statsSecondDuPicker (state, val) {\n state.filter.second_du_picker = val\n },\n set_statsSecondAuPicker (state, val) {\n state.filter.second_au_picker = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Date : Values 1 : in order to data downlaod\n set_statsAnnee (state, val) {\n state.filter.annee = val\n },\n set_statsMois (state, val) {\n state.filter.mois = val\n },\n set_statsJour (state, val) {\n state.filter.jour = val\n },\n // Date : Values 2 : in order to data downlaod\n set_statsSecondAnnee (state, val) {\n state.filter.second_annee = val\n },\n set_statsSecondMois (state, val) {\n state.filter.second_mois = val\n },\n set_statsSecondJour (state, val) {\n state.filter.second_jour = val\n },\n // Date : Pickers\n set_statsPicker (state, val) {\n state.filter.picker = val\n },\n set_statsSecondPicker (state, val) {\n state.filter.second_picker = val\n },\n // Date : Pickers Display\n set_statsPickerDisplay (state, val) {\n state.filter.picker_display = val\n },\n set_statsSecondPickerDisplay (state, val) {\n state.filter.second_picker_display = val\n }\n }\n}\n","// no one JS import\n\nconst initialState = () => ({\n filter: {\n\n preSelectFilterSelectedName: 'Aucun',\n\n // Valeur du Group Radio Btn pour savoir quel type doit être utilisé (Mode SEASON, YEAR, MONTH, WEEK ou DAY)\n date_mode_choisi: 0,\n\n date_mode_annee_value: 0,\n date_mode_mois_value: 1,\n date_mode_semaine_value: 2,\n date_mode_jour_value: 3,\n date_mode_saison_value: 4,\n\n // mode SEASON\n mode_saison_annee: null,\n\n // mode YEAR\n mode_annee_du_annee: null,\n mode_annee_au_annee: null,\n\n // mode MONTH\n mode_mois_du_annee: null,\n mode_mois_au_annee: null,\n\n mode_mois_du_mois: '1',\n mode_mois_au_mois: '12',\n\n // mode WEEK\n mode_semaine_du_annee: null,\n mode_semaine_au_annee: null,\n\n mode_semaine_du_semaine: '1',\n mode_semaine_au_semaine: '52',\n\n /// //////////// Dates Picker :\n\n // mode DAY\n du_menu: false,\n du_picker: new Date().toISOString().substr(0, 10),\n\n au_menu: false,\n au_picker: new Date().toISOString().substr(0, 10),\n\n /// //////////// Animateurs Picker :\n\n selected_animateurs: [],\n\n /// //////////// Horaires Picker :\n\n selected_horaires: [],\n\n /// //////////// Activités Picker :\n\n selected_activites: [],\n\n /// //////////// Articles Picker :\n\n selected_articles: []\n }\n})\n\nexport default {\n\n state: initialState,\n\n getters: {\n statsFilterResaFrequentations: state => state.filter\n },\n\n actions: {\n\n reset_stats_resa_frequentations (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n /// //////////// Animateurs Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsSelectAllTrainers ({ commit }) {\n commit('set_selected_animateurs', [])\n this.state.stats.resa.filter.animateurs.forEach(function (anim) {\n commit('add_selected_animateurs', anim)\n })\n },\n\n /// //////////// Horaires Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsSelectAllTimetables ({ commit }) {\n commit('set_selected_horaires', [])\n this.state.stats.resa.filter.horaires.forEach(function (horaire) {\n commit('add_selected_horaires', horaire)\n })\n },\n\n /// //////////// Activités Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsSelectAllActivities ({ commit }) {\n commit('set_selected_activites', [])\n this.state.stats.resa.filter.activites.forEach(function (activite) {\n commit('add_selected_activites', activite)\n })\n },\n\n /// //////////// Articles Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsSelectAllProducts ({ commit }) {\n commit('set_selected_articles', [])\n this.state.stats.resa.filter.articles.forEach(function (article) {\n commit('add_selected_articles', article)\n })\n }\n\n },\n\n mutations: {\n /// //////////////////////////////////////////////////////////////////////\n set_statPreSelectFilterSelectedName (state, val) {\n state.filter.preSelectFilterSelectedName = val\n },\n /// //////////////////////////////////////////////////////////////////////\n /// //////////// Dates Picker :\n\n // Valeur du Group Radio Btn pour savoir quel type doit être utilisé (Mode SEASON, YEAR, MONTH, WEEK ou DAY)\n set_date_mode_choisi (state, val) {\n state.filter.planning_second_au_annee = val\n },\n\n set_date_mode_annee_value (state, val) {\n state.filter.date_mode_annee_value = val\n },\n set_date_mode_mois_value (state, val) {\n state.filter.date_mode_mois_value = val\n },\n set_date_mode_semaine_value (state, val) {\n state.filter.date_mode_semaine_value = val\n },\n set_date_mode_jour_value (state, val) {\n state.filter.date_mode_jour_value = val\n },\n set_date_mode_saison_value (state, val) {\n state.filter.date_mode_saison_value = val\n },\n\n // mode SEASON\n set_mode_saison_annee (state, val) {\n state.filter.mode_saison_annee = val\n },\n\n // mode YEAR\n set_mode_annee_du_annee (state, val) {\n state.filter.mode_annee_du_annee = val\n },\n set_mode_annee_au_annee (state, val) {\n state.filter.mode_annee_au_annee = val\n },\n\n // mode MONTH\n set_mode_mois_du_annee (state, val) {\n state.filter.mode_mois_du_annee = val\n },\n set_mode_mois_au_annee (state, val) {\n state.filter.mode_mois_au_annee = val\n },\n\n set_mode_mois_du_mois (state, val) {\n state.filter.mode_mois_du_mois = val\n },\n set_mode_mois_au_mois (state, val) {\n state.filter.mode_mois_au_mois = val\n },\n\n // mode WEEK\n set_mode_semaine_du_annee (state, val) {\n state.filter.mode_semaine_du_annee = val\n },\n set_mode_semaine_au_annee (state, val) {\n state.filter.mode_semaine_au_annee = val\n },\n\n set_mode_semaine_du_semaine (state, val) {\n state.filter.mode_semaine_du_semaine = val\n },\n set_mode_semaine_au_semaine (state, val) {\n state.filter.mode_semaine_au_semaine = val\n },\n\n /// //////////// Animateurs Picker :\n\n set_selected_animateurs (state, val) {\n state.filter.selected_animateurs = val\n },\n add_selected_animateurs (state, val) {\n state.filter.selected_animateurs.push(val)\n },\n\n /// //////////// Horaires Picker :\n\n set_selected_horaires (state, val) {\n state.filter.selected_horaires = val\n },\n add_selected_horaires (state, val) {\n state.filter.selected_horaires.push(val)\n },\n\n /// //////////// Activités Picker :\n\n set_selected_activites (state, val) {\n state.filter.selected_activites = val\n },\n add_selected_activites (state, val) {\n state.filter.selected_activites.push(val)\n },\n\n /// //////////// Articles Picker :\n\n set_selected_articles (state, val) {\n state.filter.selected_articles = val\n },\n add_selected_articles (state, val) {\n state.filter.selected_articles.push(val)\n }\n }\n}\n","// moment\nimport moment from 'moment'\n\nconst initialState = () => ({\n filter: {\n\n preSelectFilterSelectedName: 'Aucun',\n\n /// //////////// General cdt to allow fonctionnalities\n\n conditionsSatisfied: true,\n\n /// ////////////\n\n toggle_multiple: [],\n second_toggle_multiple: [],\n\n // /////////////\n\n planning_selectedColorsForEventsPerformances: [],\n planning_selectedColorsForEventsEvolutions: [],\n\n /// //////////// Planning Activities & activities'Families :\n\n planning_selectedActivities: [],\n planning_selectedFamilies: [],\n\n /// //////////// Planning Threshold :\n\n planning_threshold_one: 25,\n planning_threshold_two: 50,\n planning_threshold_three: 75,\n\n /// //////////// Planning Time mode Picker :\n\n planning_timeModeSelected: 'Mode Saison',\n\n /// //////////// Planning Saison Picker :\n\n planning_saisonChoisie: moment().format('YYYY'),\n planning_second_saisonChoisie: moment().subtract(1, 'year').format('YYYY'),\n\n /// //////////// Planning Annee Picker :\n\n planning_anneeChoisissables: [],\n\n planning_anneeChoisie: 'Aucune',\n planning_second_anneeChoisie: 'Aucune',\n\n /// //////////// Planning Month Picker :\n\n planning_moisChoisi: 'Aucun',\n planning_second_moisChoisi: 'Aucun',\n\n /// //////////// Planning_Date Picker \"Du\" et Date Picker \"Au\" :\n\n planning_du_annee: null,\n planning_du_mois: null,\n planning_du_jour: null,\n\n planning_au_annee: null,\n planning_au_mois: null,\n planning_au_jour: null,\n\n planning_du_menu: false,\n planning_du_picker: new Date().toISOString().substr(0, 10),\n\n planning_au_menu: false,\n planning_au_picker: new Date().toISOString().substr(0, 10),\n\n planning_second_du_annee: null,\n planning_second_du_mois: null,\n planning_second_du_jour: null,\n\n planning_second_au_annee: null,\n planning_second_au_mois: null,\n planning_second_au_jour: null,\n\n planning_second_du_menu: false,\n planning_second_du_picker: new Date().toISOString().substr(0, 10),\n\n planning_second_au_menu: false,\n planning_second_au_picker: new Date().toISOString().substr(0, 10)\n }\n})\n\nexport default {\n state: initialState,\n getters: {\n statsFilterResaPlannings: state => state.filter\n },\n actions: {\n /// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n reset_stats_resa_plannings (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n // DOWNLOAD DATA //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsActuDateRangePlanningCR ({ commit }) {\n // DU var : annee, mois, jour\n commit('set_statsPlanningCRDuAnnee', parseInt(this.state.stats.resa.plannings.filter.planning_du_picker.split('-')[0], 10))\n commit('set_statsPlanningCRDuMois', parseInt(this.state.stats.resa.plannings.filter.planning_du_picker.split('-')[1], 10))\n commit('set_statsPlanningCRDuJour', parseInt(this.state.stats.resa.plannings.filter.planning_du_picker.split('-')[2], 10))\n // AU var : annee, mois, jour\n commit('set_statsPlanningCRAuAnnee', parseInt(this.state.stats.resa.plannings.filter.planning_au_picker.split('-')[0], 10))\n commit('set_statsPlanningCRAuMois', parseInt(this.state.stats.resa.plannings.filter.planning_au_picker.split('-')[1], 10))\n commit('set_statsPlanningCRAuJour', parseInt(this.state.stats.resa.plannings.filter.planning_au_picker.split('-')[2], 10))\n\n // SECOND DU var : annee, mois, jour\n commit('set_statsPlanningCRSecondDuAnnee', parseInt(this.state.stats.resa.plannings.filter.planning_second_du_picker.split('-')[0], 10))\n commit('set_statsPlanningCRSecondDuMois', parseInt(this.state.stats.resa.plannings.filter.planning_second_du_picker.split('-')[1], 10))\n commit('set_statsPlanningCRSecondDuJour', parseInt(this.state.stats.resa.plannings.filter.planning_second_du_picker.split('-')[2], 10))\n // SECOND AU var : annee, mois, jour\n commit('set_statsPlanningCRSecondAuAnnee', parseInt(this.state.stats.resa.plannings.filter.planning_second_au_picker.split('-')[0], 10))\n commit('set_statsPlanningCRSecondAuMois', parseInt(this.state.stats.resa.plannings.filter.planning_second_au_picker.split('-')[1], 10))\n commit('set_statsPlanningCRSecondAuJour', parseInt(this.state.stats.resa.plannings.filter.planning_second_au_picker.split('-')[2], 10))\n }\n },\n mutations: {\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Events/Activities to display in function of booking rate, etc. :\n set_planning_selectedColorsForEventsPerformances (state, val) {\n state.filter.planning_selectedColorsForEventsPerformances = val\n },\n add_planning_selectedColorsForEventsPerformances (state, val) {\n state.filter.planning_selectedColorsForEventsPerformances.push(val)\n },\n // Plannings CR : Events/Activities to display in function of evolution between time periods :\n set_planning_selectedColorsForEventsEvolutions (state, val) {\n state.filter.planning_selectedColorsForEventsEvolutions = val\n },\n add_planning_selectedColorsForEventsEvolutions (state, val) {\n state.filter.planning_selectedColorsForEventsEvolutions.push(val)\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Activities and Families :\n set_planning_selectedActivities (state, val) {\n state.filter.planning_selectedActivities = val\n },\n add_planning_selectedActivities (state, val) {\n state.filter.planning_selectedActivities.push(val)\n },\n\n set_planning_selectedFamilies (state, val) {\n state.filter.planning_selectedEvolutionsForEvents = val\n },\n add_planning_selectedFamilies (state, val) {\n state.filter.planning_selectedFamilies.push(val)\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Thresholds :\n set_planning_threshold_one (state, val) {\n state.filter.planning_threshold_one = val\n },\n set_planning_threshold_two (state, val) {\n state.filter.planning_threshold_two = val\n },\n set_planning_threshold_three (state, val) {\n state.filter.planning_threshold_three = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Time Mode Picker\n set_statPreSelectFilterSelectedName (state, val) {\n state.filter.preSelectFilterSelectedName = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Années choisissables (où il y a des données stats précalculée)\n set_anneeChoisissables (state, val) {\n state.filter.planning_anneeChoisissables = val\n },\n add_anneeChoisissables (state, val) {\n state.filter.planning_anneeChoisissables.push(val)\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Time Mode Picker\n set_statsPlanningCRTimeModeSelected (state, val) {\n state.filter.planning_timeModeSelected = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Saison Pickers\n set_saisonChoisie (state, val) {\n state.filter.planning_saisonChoisie = val\n },\n set_second_saisonChoisie (state, val) {\n state.filter.planning_second_saisonChoisie = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Date Pickers\n set_anneeChoisie (state, val) {\n state.filter.planning_anneeChoisie = val\n },\n set_moisChoisi (state, val) {\n state.filter.planning_moisChoisi = val\n },\n set_second_anneeChoisie (state, val) {\n state.filter.planning_second_anneeChoisie = val\n },\n set_second_moisChoisi (state, val) {\n state.filter.planning_second_moisChoisi = val\n },\n /// //////////////////////////////////////////////////////////////////////\n // Plannings CR : Date : Values \"DU\" : in order to data downlaod\n set_statsPlanningCRDuAnnee (state, val) {\n state.filter.planning_du_annee = val\n },\n set_statsPlanningCRDuMois (state, val) {\n state.filter.planning_du_mois = val\n },\n set_statsPlanningCRDuJour (state, val) {\n state.filter.planning_du_jour = val\n },\n set_statsPlanningCRSecondDuAnnee (state, val) {\n state.filter.planning_second_du_annee = val\n },\n set_statsPlanningCRSecondDuMois (state, val) {\n state.filter.planning_second_du_mois = val\n },\n set_statsPlanningCRSecondDuJour (state, val) {\n state.filter.planning_second_du_jour = val\n },\n // Plannings CR : Date : Values \"AU\" : in order to data downlaod\n set_statsPlanningCRAuAnnee (state, val) {\n state.filter.planning_au_annee = val\n },\n set_statsPlanningCRAuMois (state, val) {\n state.filter.planning_au_mois = val\n },\n set_statsPlanningCRAuJour (state, val) {\n state.filter.planning_au_jour = val\n },\n set_statsPlanningCRSecondAuAnnee (state, val) {\n state.filter.planning_second_au_annee = val\n },\n set_statsPlanningCRSecondAuMois (state, val) {\n state.filter.planning_second_au_mois = val\n },\n set_statsPlanningCRSecondAuJour (state, val) {\n state.filter.planning_second_au_jour = val\n },\n // Plannings CR : Date : Pickers : \"DU\" et \"AU\"\n set_statsPlanningCRDuPicker (state, val) {\n state.filter.planning_du_picker = val\n },\n set_statsPlanningCRAuPicker (state, val) {\n state.filter.planning_au_picker = val\n },\n set_statsPlanningCRSecondDuPicker (state, val) {\n state.filter.planning_second_du_picker = val\n },\n set_statsPlanningCRSecondAuPicker (state, val) {\n state.filter.planning_second_au_picker = val\n }\n }\n}\n","// moment\nimport moment from 'moment'\n// api\nimport AccountsApi from '~/api/accounts'\nimport ActivitiesApi from '~/api/activities'\nimport ProductsApi from '~/api/products'\nimport StatsApi from '~/api/stats'\n// store modules\nimport bilansperiodiques from './bilansperiodiques'\nimport frequentations from './frequentations'\nimport plannings from './plannings'\nimport SC from '~/utils/stats/consts'\n\nconst initialState = () => ({\n filter: {\n conditionsSatisfied: true,\n\n /// //////////// Time Scale for all stats views :\n selectedTimeScale: SC.TimeScales.SEASON,\n selectedStepMode: SC.StepModes.BY_DAY,\n timeScaleBegin: moment().startOf('year'),\n timeScaleEnd: moment().endOf('year'),\n\n /// //////////// Year/Season selector for Activity Analysis View :\n selectedSeason: moment().year().toString(),\n\n /// //////////// Selected values shared between views and used by filters :\n selectedActivitiesFamilies: null,\n selectedActivities: null,\n selectedActivity: null,\n\n recursiveProductsFamilies: false,\n selectedProductsFamilies: null,\n selectedProducts: null,\n\n selectedClients: null,\n\n selectedSellers: null,\n\n selectedTurnstiles: null,\n\n // Spa\n selectedUniverses: null,\n selectedPersonnels: null,\n\n /// //////////// Years Picker :\n annees_choisissables: null, // Used by all \"v-menu\" with years (date to choose)\n\n /// //////////// Activities & Activities' Families Picker :\n\n activites: [],\n familles: [],\n\n /// //////////// Animateurs Picker :\n\n animateurs: [],\n\n /// //////////// Horaires Picker :\n\n horaires: [],\n\n /// //////////// Articles Picker :\n\n articles: [],\n\n /// //////////// Colors to analyse activities performances (booking rate, etc.) :\n\n colorVeryBad: '#FF0000', // red\n colorBad: '#FFA500', // orange\n colorGood: '#FFFF00', // yellow\n colorVeryGood: '#008000', // green\n\n colorVeryLow: 'indigo lighten-3',\n colorLow: 'indigo lighten-1',\n colorHigh: 'indigo darken-2',\n colorVeryHigh: 'indigo darken-4',\n\n /// //////////// Colors to compare activities evolutions between time periods :\n\n colorNone: 'grey',\n colorBetter: 'green',\n colorWorst: 'red',\n colorSame: 'blue'\n }\n})\n\nexport default {\n modules: {\n bilansperiodiques,\n frequentations,\n plannings\n },\n state: initialState,\n getters: {\n statsFilterResa: state => state.filter\n },\n actions: {\n\n reset_stats_resa (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n /// //////////// Years Checkers : //////////////////////////////////////////////////////////////////////////////////////////\n\n checkIfYearsWithDataAreLoaded ({ commit }) {\n return new Promise((resolve, reject) => {\n StatsApi.getStatsResaYearsWithData().then(res => {\n commit('set_annees_choisissables', [])\n if (res.data.Res && res.data.Res.length > 0) {\n res.data.Res.forEach(function (element) {\n commit('add_annees_choisissables', element)\n })\n } else {\n console.warn('Attention : aucune année choisissables pour les statistiques ! Initialisation avec l\\'année courante.')\n commit('add_annees_choisissables', moment().year().toString())\n }\n resolve(res)\n }).catch(err => {\n console.error('PB in Vue.js fct checkIfYearsWithDataAreLoaded() => StatsApi.getStatsResaYearsWithData()')\n reject(err)\n })\n })\n },\n\n checkIfYearsWithDataAreLoadedNP ({ commit }) {\n StatsApi.getStatsResaYearsWithData().then(res => {\n commit('set_annees_choisissables', [])\n if (res.data.Res && res.data.Res.length > 0) {\n res.data.Res.forEach(function (element) {\n commit('add_annees_choisissables', element)\n })\n } else {\n console.warn('Attention : aucune année choisissables pour les statistiques ! Initialisation avec l\\'année courante.')\n commit('add_annees_choisissables', moment().year().toString())\n }\n }, () => {\n console.error('PB in Vue.js fct checkIfYearsWithDataAreLoaded() => StatsApi.getStatsResaYearsWithData()')\n })\n },\n\n checkIfFirstYearWithDataIsLoaded ({ commit }) {\n if (this.state.stats.resa.frequentations.filter.mode_annee_du_annee === null ||\n this.state.stats.resa.frequentations.filter.mode_mois_du_annee === null ||\n this.state.stats.resa.frequentations.filter.mode_semaine_du_annee === null) {\n StatsApi.getStatsResaFirstYearWithData().then(res => {\n commit('set_mode_annee_du_annee', res.data)\n commit('set_mode_mois_du_annee', res.data)\n commit('set_mode_semaine_du_annee', res.data)\n }, () => {\n console.error('PB in Vue.js fct checkIfFirstYearWithDataIsLoaded() => StatsApi.getStatsResaFirstYearWithData()')\n })\n }\n },\n\n checkIfLastYearWithDataIsLoaded ({ commit }) {\n if (this.state.stats.resa.frequentations.filter.mode_annee_au_annee === null ||\n this.state.stats.resa.frequentations.filter.mode_mois_au_annee === null ||\n this.state.stats.resa.frequentations.filter.mode_semain_au_annee === null ||\n this.state.stats.resa.frequentations.filter.mode_saison_annee === null) {\n StatsApi.getStatsResaLastYearWithData().then(res => {\n commit('set_mode_annee_au_annee', res.data)\n commit('set_mode_mois_au_annee', res.data)\n commit('set_mode_semaine_au_annee', res.data)\n commit('set_mode_saison_annee', res.data)\n }, () => {\n console.error('PB in Vue.js fct checkIfLastYearWithDataIsLoaded() => StatsApi.getStatsResaLastYearWithData()')\n })\n }\n },\n\n /// //////////// Animateurs Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsLoadTrainers ({ commit }) {\n return new Promise((resolve, reject) => {\n AccountsApi.getTrainers().then(res => {\n commit('set_animateurs', [])\n res.data.forEach(function (element) {\n commit('add_animateurs', element)\n })\n const tmp = this.state.stats.resa.filter.animateurs.sort(function (x, y) {\n const a = x.Firstname + ' ' + x.Lastname\n const b = y.Firstname + ' ' + y.Lastname\n if (a > b) {\n return 1\n }\n if (b > a) {\n return -1\n }\n return 0\n })\n commit('set_animateurs', tmp)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n /// //////////// Activités Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsLoadActivities ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getActivities().then(res => {\n commit('set_activites', [])\n res.data.forEach(function (element) {\n if (element.Label.trim()) {\n commit('add_activites', element)\n }\n })\n const tmp = this.state.stats.resa.filter.activites.sort(function (x, y) {\n const a = x.Label\n const b = y.Label\n if (a > b) {\n return 1\n }\n if (b > a) {\n return -1\n }\n return 0\n })\n commit('set_activites', tmp)\n if (this.state.stats.resa.filter.activites && this.state.stats.resa.filter.activites.length) {\n if (!this.state.stats.resa.filter.selectedActivity || this.state.stats.resa.filter.selectedActivity === '') {\n commit('set_selectedActivity', this.state.stats.resa.filter.activites[0])\n }\n\n if (!this.state.stats.resa.filter.selectedActivities || !this.state.stats.resa.filter.selectedActivities.length) {\n commit('set_selectedActivities', [this.state.stats.resa.filter.activites[0]])\n }\n }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getStatsLoadFamilies ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getActivitiesFamilies().then(res => {\n commit('set_familles', [])\n res.data.forEach(function (element) {\n if (element.Label.trim()) {\n commit('add_familles', element)\n }\n })\n const tmp = this.state.stats.resa.filter.familles.sort(function (x, y) {\n const a = x.Label\n const b = y.Label\n if (a > b) {\n return 1\n }\n if (b > a) {\n return -1\n }\n return 0\n })\n commit('set_familles', tmp)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n /// //////////// Articles Picker : //////////////////////////////////////////////////////////////////////////////////////////\n\n getStatsLoadProducts ({ commit }) {\n return new Promise((resolve, reject) => {\n ProductsApi.getProducts().then(res => {\n commit('set_articles', [])\n res.data.Products.forEach(function (element) {\n if (element.Label.FR.trim()) {\n commit('add_articles', element)\n }\n })\n const tmp = this.state.stats.resa.filter.articles.sort(function (x, y) {\n const a = x.Label.FR\n const b = y.Label.FR\n if (a > b) {\n return 1\n }\n if (b > a) {\n return -1\n }\n return 0\n })\n commit('set_articles', tmp)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n }\n },\n mutations: {\n /// //////////// Time Scale Selector :\n\n set_selectedTimeScale (state, val) {\n state.filter.selectedTimeScale = val\n },\n\n set_selectedStepMode (state, val) {\n state.filter.selectedStepMode = val\n },\n\n set_timeScaleBegin (state, val) {\n state.filter.timeScaleBegin = val\n },\n\n set_timeScaleEnd (state, val) {\n state.filter.timeScaleEnd = val\n },\n\n /// //////////// Season Selector :\n\n set_selectedSeason (state, val) {\n state.filter.selectedSeason = val\n },\n\n /// //////////// Activity Selector :\n\n set_selectedActivity (state, val) {\n state.filter.selectedActivity = val\n },\n\n set_selectedActivities (state, val) {\n state.filter.selectedActivities = val\n },\n\n /// //////////// Clients Selector :\n\n set_selectedClients (state, val) {\n state.filter.selectedClients = val\n },\n\n add_selectedClients (state, val) {\n state.filter.selectedClients.push(val)\n },\n\n /// //////////// Recursive Products Families :\n\n set_recursiveProductsFamilies (state, val) {\n state.filter.recursiveProductsFamilies = val\n },\n\n /// //////////// Products Families Selector :\n\n set_selectedProductsFamilies (state, val) {\n state.filter.selectedProductsFamilies = val\n },\n\n add_selectedProductsFamilies (state, val) {\n state.filter.selectedProductsFamilies.push(val)\n },\n\n /// //////////// Products Selector :\n\n set_selectedProducts (state, val) {\n state.filter.selectedProducts = val\n },\n\n add_selectedProducts (state, val) {\n state.filter.selectedProducts.push(val)\n },\n\n /// //////////// Sellers Selector :\n\n set_selectedSellers (state, val) {\n state.filter.selectedSellers = val\n },\n\n /// //////////// Spa Univers Selector :\n\n set_selectedUniverses (state, val) {\n state.filter.selectedUniverses = val\n },\n\n /// //////////// Spa Personnels Selector :\n\n set_selectedPersonnels (state, val) {\n state.filter.selectedPersonnels = val\n },\n\n /// //////////// Turnstiles Picker :\n\n set_selectedTurnstiles (state, val) {\n state.filter.selectedTurnstiles = val\n },\n add_selectedTurnstiles (state, val) {\n state.filter.selectedTurnstiles.push(val)\n },\n\n /// //////////////////////////////////////////////////////////////////////////\n\n /// //////////// Years Picker :\n\n set_annees_choisissables (state, val) {\n state.filter.annees_choisissables = val\n },\n add_annees_choisissables (state, val) {\n state.filter.annees_choisissables.push(val)\n },\n\n /// //////////// Animateurs Picker :\n\n set_animateurs (state, val) {\n state.filter.animateurs = val\n },\n add_animateurs (state, val) {\n state.filter.animateurs.push(val)\n },\n\n /// //////////// Horaires Picker :\n\n set_horaires (state, val) {\n state.filter.horaires = val\n },\n add_horaires (state, val) {\n state.filter.horaires.push(val)\n },\n\n /// //////////// Activités Picker :\n\n set_activites (state, val) {\n state.filter.activites = val\n },\n add_activites (state, val) {\n state.filter.activites.push(val)\n },\n\n /// //////////// Familles d'activités Picker :\n\n set_familles (state, val) {\n state.filter.familles = val\n },\n add_familles (state, val) {\n state.filter.familles.push(val)\n },\n\n /// //////////// Articles Picker :\n\n set_articles (state, val) {\n state.filter.articles = val\n },\n add_articles (state, val) {\n state.filter.articles.push(val)\n }\n }\n}\n","// store modules\nimport resa from './stats/resa/resa.js'\n\nconst initialState = () => ({\n setup: {\n navigationDrawer: {\n visible: false,\n miniState: false,\n prefenreceMiniState: false\n }\n }\n})\n\nexport default {\n modules: {\n resa\n },\n state: initialState,\n actions: {\n /// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n reset_stats (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n }\n }\n}\n","const initialState = () => ({\n locationsZoneTree: [],\n selectedZoneTreeLocation: []\n})\n\nexport default {\n state: initialState,\n\n getters: {\n locationsZoneTree: state => state.locationsZoneTree,\n selectedZoneTreeLocation: state => state.selectedZoneTreeLocation\n },\n\n mutations: {\n set_locations_zone_tree (state, tree) {\n state.locationsZoneTree = tree\n },\n set_selected_zone_tree_location (state, location) {\n state.selectedZoneTreeLocation = location\n }\n }\n}\n","import SpaApi from '~/api/spa'\nimport _ from 'lodash'\nimport moment from 'moment'\nimport Vue from 'vue'\n\nconst initialState = () => ({\n /* remote */\n universes: [],\n universe: { ID: 'default' },\n spaActivities: [],\n spaProducts: [],\n personnels: [],\n resources: [],\n /* local */\n spaParams: {\n spaPlanningsStartHour: 7,\n spaPlanningsStartMin: 0,\n spaPlanningsEndHour: 20,\n spaPlanningsEndMin: 0,\n spaHumanConfirmation: false,\n spaShowShortLabel: false,\n spaColumnsShortLabel: false,\n spaGoBackToday: false,\n firstInterval: 7,\n intervalCount: 14,\n allowedHours: [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20],\n dayDuration: 14,\n unavailabilitiesReasons: [],\n unavailabilitiesColors: []\n },\n planningDate: { default: moment().format('YYYY-MM-DD') },\n planningPersonnels: { default: [] },\n planningResources: { default: [] },\n showPersonnels: { default: true },\n showResources: { default: true },\n intervalMinutes: { default: 10 },\n intervalHeight: { default: 25 }\n})\n\nexport default {\n state: initialState,\n getters: {\n universes: state => state.universes,\n universe: state => state.universe,\n spaActivities: state => state.spaActivities[state.universe.ID] ?? [],\n spaActivitiesById: state => _.keyBy(state.spaActivities[state.universe.ID] ?? [], 'ID'),\n spaProducts: state => state.spaProducts[state.universe.ID] ?? [],\n spaProductsById: state => _.keyBy(state.spaProducts[state.universe.ID] ?? [], 'Product.ID'),\n personnels: state => state.personnels[state.universe.ID] ?? [],\n personnelsById: state => _.keyBy(state.personnels[state.universe.ID] ?? [], 'ID'),\n resources: state => state.resources[state.universe.ID] ?? [],\n spaParams: state => state.spaParams,\n resourcesById: state => _.keyBy(state.resources[state.universe.ID] ?? [], 'ID'),\n planningDate: state => state.planningDate[state.universe.ID] ?? moment().format('YYYY-MM-DD'),\n planningPersonnels: state => state.planningPersonnels[state.universe.ID] ?? [],\n planningResources: state => state.planningResources[state.universe.ID] ?? [],\n showPersonnels: state => state.showPersonnels[state.universe.ID] ?? true,\n showResources: state => state.showResources[state.universe.ID] ?? true,\n intervalMinutes: state => state.intervalMinutes[state.universe.ID] ?? 10,\n intervalHeight: state => state.intervalHeight[state.universe.ID] ?? 25\n },\n actions: {\n getUniverses ({ commit, state }) {\n return new Promise((resolve, reject) => {\n SpaApi.getSpaUniverses().then(res => {\n const universes = res.data ?? []\n commit('set_universes', universes)\n if (state.universe === {} || universes.findIndex(u => u.ID === state.universe.ID) === -1) {\n commit('set_universe', universes.find(u => u.State) ?? {})\n } else {\n const uIdx = universes.findIndex(u => u.ID === state.universe.ID)\n commit('set_universe', universes[uIdx])\n }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getSpaActivities ({ commit }, params) {\n return new Promise((resolve, reject) => {\n SpaApi.getSpaActivities(params).then(res => {\n commit('set_spa_activities', _.groupBy(res.data ?? [], 'UniverseID'))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getSpaProducts ({ commit }) {\n return new Promise((resolve, reject) => {\n SpaApi.getSpaProducts({ State: true }).then(res => {\n commit('set_spa_products', _.groupBy(res.data ?? [], 'Link.UniverseID'))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getPersonnels ({ commit, state }) {\n return new Promise((resolve, reject) => {\n SpaApi.getSpaPersonnels({ State: true }).then(res => {\n commit('set_personnels', _.groupBy(res.data ?? [], 'UniverseID'))\n\n // Ensure that there is no disabled personnel still in planning\n if (res.data && state.planningPersonnels[state.universe.ID]) {\n commit('set_planning_personnels', state.planningPersonnels[state.universe.ID].filter(id => res.data.some(r => r.ID === id)))\n }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getResources ({ commit }) {\n return new Promise((resolve, reject) => {\n SpaApi.getSpaResources({ State: true }).then(res => {\n commit('set_resources', _.groupBy(res.data ?? [], 'UniverseID'))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n }\n },\n mutations: {\n reset_spa (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n set_universes (state, val) {\n state.universes = val\n },\n set_universe (state, val) {\n state.universe = val\n\n const startTime = moment(state.universe.Params.plannings_start_time, 'hh:mm')\n const endTime = moment(state.universe.Params.plannings_end_time, 'hh:mm')\n const intervalCount = endTime.hour() - startTime.hour() + (endTime.minute() !== 0 ? 1 : 0)\n\n state.spaParams = {\n spaPlanningsStartHour: startTime.hour(),\n spaPlanningsStartMin: startTime.minute(),\n spaPlanningsEndHour: endTime.hour(),\n spaPlanningsEndMin: endTime.minute(),\n spaHumanConfirmation: state.universe.Params.human_confirmation,\n spaShowShortLabel: state.universe.Params.show_short_label,\n spaColumnsShortLabel: state.universe.Params.columns_short_label,\n spaGoBackToday: state.universe.Params.go_back_today,\n spaSmallCalendarIntervalWidth: state.universe.Params.small_calendar_interval_width,\n spaWebAllowedTimetables: state.universe.Params.web_allowed_timetables,\n unavailabilitiesReasons: state.universe.Params.unavailabilities_reasons,\n unavailabilitiesColors: state.universe.Params.unavailabilities_colors,\n firstInterval: startTime.hour(),\n intervalCount,\n allowedHours: Array.from(Array(intervalCount), (x, index) => startTime.hour() + index),\n dayDuration: endTime.diff(startTime, 'minutes')\n }\n },\n set_spa_activities (state, val) {\n state.spaActivities = val\n },\n set_spa_products (state, val) {\n state.spaProducts = val\n },\n set_personnels (state, val) {\n state.personnels = val\n },\n set_resources (state, val) {\n state.resources = val\n },\n set_planning_date (state, val) {\n Vue.set(state.planningDate, state.universe.ID, val)\n },\n set_planning_personnels (state, val) {\n Vue.set(state.planningPersonnels, state.universe.ID, val)\n },\n set_planning_resources (state, val) {\n Vue.set(state.planningResources, state.universe.ID, val)\n },\n set_show_personnels (state, val) {\n Vue.set(state.showPersonnels, state.universe.ID, val)\n },\n set_show_resources (state, val) {\n Vue.set(state.showResources, state.universe.ID, val)\n },\n set_interval_minutes (state, val) {\n Vue.set(state.intervalMinutes, state.universe.ID, val)\n },\n set_interval_height (state, val) {\n Vue.set(state.intervalHeight, state.universe.ID, val)\n }\n }\n}\n","import ActivitiesApi from '~/api/activities'\nimport AccountsApi from '~/api/accounts'\nimport _ from 'lodash'\nimport Vue from 'vue'\n\nconst initialState = () => ({\n /* remote */\n planningActivities: [],\n planningActivityFamilies: [],\n trainers: [],\n levels: []\n /* local */\n})\n\nexport default {\n state: initialState,\n getters: {\n planningActivities: state => state.planningActivities,\n planningActivityFamilies: state => state.planningActivityFamilies,\n trainers: state => state.trainers,\n levels: state => state.levels\n },\n actions: {\n getPlanningActivities ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getActivities({ State: true }).then(res => {\n commit('set_activities', _.keyBy(res.data ?? [], 'ID'))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n getPlanningActivityFamilies ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getActivitiesFamilies().then(res => {\n commit('set_activity_families', _.keyBy(res.data ?? [], 'ID'))\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n getTrainers ({ commit }) {\n return new Promise((resolve, reject) => {\n AccountsApi.getTrainers().then(res => {\n if (res.data) {\n res.data.forEach(train => {\n Vue.set(train, 'Fullname', `${train.Firstname} ${train.Lastname}`)\n })\n commit('set_trainers', _.keyBy(res.data ?? [], 'ID'))\n } else {\n commit('set_trainers', {})\n }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n getLevels ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getLevels().then(res => {\n if (res.data) {\n commit('set_levels', _.keyBy(res.data ?? [], 'ID'))\n } else {\n commit('set_levels', {})\n }\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n }\n },\n mutations: {\n set_activities (state, val) {\n state.planningActivities = val\n },\n set_activity_families (state, val) {\n state.planningActivityFamilies = val\n },\n set_trainers (state, val) {\n state.trainers = val\n },\n set_levels (state, val) {\n state.levels = val\n }\n }\n}\n","const initialState = () => ({\n subscribers: {\n 'r://turnstile-info': 0,\n 'r://turnstile-history': 0,\n 'r://access-control-vouchers': 0,\n 'r://clients': 0,\n 'r://spa-bookings': 0,\n 'r://area-attendance': 0,\n 'r://establishments': 0,\n 'r://areas': 0,\n 'r://lockers': 0,\n 'r://locker-action/state': 0,\n 'r://locker-action/config': 0,\n 'r://locker-action/history': 0,\n 'r://locker-blocks': 0,\n 'r://locker-gateways': 0,\n 'r://locker-bookings': 0,\n 'r://locker-bookings-new': 0,\n 'r://locker-incidents-new': 0,\n 'r://locker-incidents-update': 0,\n 'r://vouchersheets': 0,\n 'r://vouchersheet-progress': 0,\n 'r://kiosks': 0,\n 'r://displays': 0,\n 'r://products': 0,\n 'r://quotations': 0\n }\n})\n\nexport default {\n state: initialState,\n getters: {\n getSubscribersFor: state => r => {\n return isNaN(state.subscribers[r]) ? 0 : state.subscribers[r]\n }\n },\n actions: {\n resetSubscribers ({ commit }) {\n commit('reset_subscribers')\n },\n subscribeTo ({ commit }, r) {\n commit('subscribe', r)\n },\n unsubscribeFrom ({ commit }, r) {\n commit('unsubscribe', r)\n }\n },\n mutations: {\n reset_ws (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => {\n state[key] = initial[key]\n })\n },\n reset_subscribers (state) {\n state.subscribers = {\n 'r://turnstile-info': 0,\n 'r://turnstile-history': 0,\n 'r://access-control-vouchers': 0,\n 'r://clients': 0,\n 'r://spa-bookings': 0,\n 'r://area-attendance': 0,\n 'r://establishments': 0,\n 'r://areas': 0,\n 'r://lockers': 0,\n 'r://locker-action/state': 0,\n 'r://locker-action/config': 0,\n 'r://locker-action/history': 0,\n 'r://locker-blocks': 0,\n 'r://locker-gateways': 0,\n 'r://locker-bookings': 0,\n 'r://locker-bookings-new': 0,\n 'r://locker-incidents-new': 0,\n 'r://locker-incidents-update': 0,\n 'r://vouchersheets': 0,\n 'r://vouchersheet-progress': 0,\n 'r://kiosks': 0,\n 'r://displays': 0,\n 'r://products': 0,\n 'r://quotations': 0\n }\n },\n subscribe (state, r) {\n state.subscribers[r]++\n },\n unsubscribe (state, r) {\n if (state.subscribers[r] > 0) {\n state.subscribers[r]--\n }\n }\n }\n}\n","import TemplatesApi from '@/api/templates'\n\nfunction getDefault () {\n return {\n dynamicValues: [],\n iterableContext: false,\n template: {\n ID: null,\n Label: '',\n Type: 'ticket',\n Area: {\n Width: 9.0,\n Height: 5.0,\n PageBreakHeight: 0,\n HeaderHeight: 0,\n FooterHeight: 0,\n Background: {\n StoredFileName: '',\n OriginalFileName: '',\n DateCreated: null\n },\n BackgroundCover: 'cover'\n },\n Holders: [],\n Editable: true\n },\n focusedHolder: null,\n focusedBlock: null,\n zoom: 100\n\n }\n}\n\nconst state = getDefault()\n\nconst mutations = {\n clear (state) {\n Object.assign(state, getDefault())\n },\n resetTemplate (state) {\n state.template = getDefault().template\n },\n setDynamicValues (state, dynamicValues) {\n state.dynamicValues = dynamicValues\n },\n setTemplate (state, template) {\n state.template = template\n },\n updateTemplateArea (state, area) {\n state.template.Area = Object.assign({}, state.template.Area, area)\n },\n addHolder (state, holder) {\n state.template.Holders.push(holder)\n },\n updateHolder (state, update) {\n const holder = state.template.Holders.find(h => h.ID === update.ID)\n Object.assign(holder, update)\n },\n unfocus (state) {\n state.focusedHolder = null\n state.focusedBlock = null\n },\n setIterableContext (state, iterableContext) {\n state.iterableContext = iterableContext\n },\n focusBlock (state, block) {\n // reset iterale context\n state.iterableContext = false\n\n state.focusedBlock = block\n },\n focusHolder (state, holderID) {\n state.focusedHolder = state.template.Holders.find(h => h.ID === holderID)\n },\n deleteFocusedHolder (state) {\n const focusedHolderIndex = state.template.Holders.findIndex(h => h === state.focusedHolder)\n state.template.Holders.splice(focusedHolderIndex, 1)\n state.focusedHolder = null\n state.focusedBlock = null\n },\n zoomIn (state) {\n if (state.zoom + 25 <= 200) state.zoom += 25\n },\n zoomOut (state) {\n if (state.zoom - 25 >= 25) state.zoom -= 25\n }\n}\n\nconst actions = {\n loadDynamicValues ({ commit }) {\n return new Promise((resolve, reject) => {\n TemplatesApi.getDynamicValues()\n .then((res) => {\n commit('setDynamicValues', res.data)\n resolve()\n })\n .catch((err) =>\n reject(err)\n )\n })\n },\n loadTemplate ({ commit, state }, id) {\n return new Promise((resolve, reject) => {\n if (state.template.ID !== id) {\n TemplatesApi.getTemplate(id)\n .then((res) => {\n // save\n commit('setTemplate', res.data)\n resolve(res.data)\n })\n .catch((err) =>\n reject(err)\n )\n } else {\n resolve(state.template)\n }\n })\n },\n\n upsertTemplate ({ commit, state }) {\n return new Promise((resolve, reject) => {\n if (state.template.ID) {\n TemplatesApi.updateTemplate(state.template.ID, state.template)\n .then((res) => {\n resolve(res)\n })\n .catch((err) =>\n reject(err)\n )\n } else {\n // Create and redirect URL\n TemplatesApi.createTemplate(state.template)\n .then((res) => {\n commit('setTemplate', res.data)\n resolve()\n })\n .catch((err) =>\n reject(err)\n )\n }\n })\n },\n\n getPreview ({ state }) {\n return new Promise((resolve, reject) => {\n TemplatesApi.getTemplatePreview(state.template.ID)\n .then((res) => {\n const url = window.URL.createObjectURL(\n new Blob([res.data])\n )\n const link = document.createElement('a')\n link.href = url\n link.setAttribute('download', 'preview.pdf') // or any other extension\n document.body.appendChild(link)\n link.click()\n resolve()\n })\n .catch((err) =>\n reject(err)\n )\n })\n }\n}\n\nconst getters = {\n dynamicValues (state) {\n const templateDynamicValues = []\n state.dynamicValues.forEach(v => {\n const entry = Object.assign({}, v)\n const inIterable = v.IterableAvailability && Object.keys(v.IterableAvailability).includes(state.template.Type)\n if (inIterable) {\n entry.IterableAvailability = v.IterableAvailability[state.template.Type]\n } else {\n delete entry.IterableAvailability\n }\n const inSingle = v.SingleAvailability && v.SingleAvailability.includes(state.template.Type)\n\n if (inIterable || inSingle) templateDynamicValues.push(entry)\n })\n\n return templateDynamicValues\n },\n\n contextDynamicValues (state, getters) {\n return getters.dynamicValues.filter(v => {\n let available = false\n\n if (state.iterableContext) {\n available = v.IterableAvailability && v.IterableAvailability.includes(state.focusedHolder.MainBlock.Type)\n } else {\n available = v.SingleAvailability && v.SingleAvailability.includes(state.template.Type)\n }\n\n if (state.focusedBlock) {\n available = available && state.focusedBlock.Type === v.BlockType\n }\n\n return available\n }) ?? []\n },\n\n existIterableDynamicValues (state) {\n return state.dynamicValues.some(v => v.IterableAvailability && Object.keys(v.IterableAvailability).includes(state.template.Type))\n },\n\n getHolderByID: (state) => (id) => {\n return state.template.Holders.find(h => h.ID === id)\n }\n\n}\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n}\n","import Vue from 'vue'\nimport LockersApi from '@/api/lockers.js'\n\nconst initialState = () => ({\n gateways: [],\n lockerTypes: [],\n newIncidentsCounter: 0,\n locationsTree: [],\n selectedTreeLocation: [],\n establishmentsWithLockersStats: [],\n areasWithLockersStats: [],\n blocksWithLockersStats: []\n})\n\nexport default {\n state: initialState,\n\n getters: {\n gateways: state => state.gateways,\n lockerTypes: state => state.lockerTypes,\n newIncidentsCounter: state => state.newIncidentsCounter,\n establishmentsWithLockersStats: state => state.establishmentsWithLockersStats,\n areasWithLockersStats: state => state.areasWithLockersStats,\n blocksWithLockersStats: state => state.blocksWithLockersStats,\n locationsTree: state => state.locationsTree,\n selectedTreeLocation: state => state.selectedTreeLocation\n },\n\n mutations: {\n reset_lockers (state) {\n const initial = initialState()\n Object.keys(initial).forEach(key => { state[key] = initial[key] })\n },\n\n set_gateways (state, gateways) {\n state.gateways = gateways\n },\n update_gateways (state, gateway) {\n const updatedGatewayIndex = state.gateways.findIndex(\n gtw => gtw.ID === gateway.ID\n )\n if (updatedGatewayIndex === -1) {\n state.gateways.push(gateway)\n } else {\n Vue.set(state.gateways, updatedGatewayIndex, gateway)\n }\n },\n\n set_lockerTypes (state, types) {\n state.lockerTypes = types\n },\n\n reset_locker_incidents (state) {\n state.newIncidentsCounter = 0\n },\n\n new_locker_incident (state) {\n state.newIncidentsCounter++\n },\n\n set_establishments_with_lockers_stats (state, establishments) {\n state.establishmentsWithLockersStats = establishments\n },\n\n update_establishment_with_lockers_stats (state, establishment) {\n const updatedEstablishmentIndex = state.establishmentsWithLockersStats.findIndex(\n e => e.ID === establishment.ID\n )\n if (updatedEstablishmentIndex === -1) {\n state.establishmentsWithLockersStats.push(establishment)\n } else {\n Vue.set(state.establishmentsWithLockersStats, updatedEstablishmentIndex, establishment)\n }\n },\n\n set_areas_with_lockers_stats (state, areas) {\n state.areasWithLockersStats = areas\n },\n\n update_area_with_lockers_stats (state, area) {\n const updatedAreakIndex = state.areasWithLockersStats.findIndex(\n a => a.ID === area.ID\n )\n if (updatedAreakIndex === -1) {\n state.areasWithLockersStats.push(area)\n } else {\n Vue.set(state.areasWithLockersStats, updatedAreakIndex, area)\n }\n },\n\n set_blocks_with_lockers_stats (state, blocks) {\n state.blocksWithLockersStats = blocks\n },\n\n update_block_with_lockers_stats (state, block) {\n const updatedBlockIndex = state.blocksWithLockersStats.findIndex(\n b => b.ID === block.ID\n )\n if (updatedBlockIndex === -1) {\n state.blocksWithLockersStats.push(block)\n } else {\n Vue.set(state.blocksWithLockersStats, updatedBlockIndex, block)\n }\n },\n\n set_locations_tree (state, tree) {\n state.locationsTree = tree\n },\n\n set_selected_tree_location (state, location) {\n state.selectedTreeLocation = location\n }\n },\n\n actions: {\n getGateways ({ commit }) {\n return new Promise((resolve, reject) => {\n LockersApi.getLockerGateways()\n .then(res => {\n commit('set_gateways', res.data)\n resolve(res)\n })\n .catch(err => {\n reject(err)\n })\n })\n },\n\n onGatewayUpdate ({ commit }, gateway) {\n commit('update_gateways', gateway)\n },\n\n getLockers ({ commit }, filters) {\n return new Promise((resolve, reject) => {\n LockersApi.getLockers({ ...filters })\n .then(res => {\n commit('set_lockers', res.data)\n resolve(res)\n })\n .catch(err => {\n reject(err)\n })\n })\n },\n\n onLockerUpdate ({ commit }, locker) {\n commit('update_lockers', locker)\n },\n\n getLockerTypes ({ commit }) {\n return new Promise((resolve, reject) => {\n LockersApi.getLockersTypes()\n .then(res => {\n commit('set_lockerTypes', res.data)\n resolve(res)\n })\n .catch(err => {\n reject(err)\n })\n })\n },\n\n onNewLockerIncident ({ commit }) {\n commit('new_locker_incident')\n },\n\n onLockerIncidentsViewed ({ commit }) {\n commit('reset_locker_incidents')\n },\n\n loadLocationsStats ({ commit }) {\n return new Promise((resolve, reject) => {\n LockersApi.getEstablishmentsWithLockersStats()\n .then(res => {\n commit('set_establishments_with_lockers_stats', res.data)\n LockersApi.getAreasWithLockersStats()\n .then(res => {\n commit('set_areas_with_lockers_stats', res.data)\n LockersApi.getBlocksWithLockersStats()\n .then(res => {\n commit('set_blocks_with_lockers_stats', res.data)\n resolve('ok')\n }).catch(err => {\n reject(err)\n })\n }).catch(err => {\n reject(err)\n })\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n updateLocationsStats ({ commit }, { establishmentID, areaID, blockID }) {\n return new Promise((resolve, reject) => {\n const concurrentLoad = [\n LockersApi.getEstablishmentWithLockersStats(establishmentID)\n .then(res => {\n commit('update_establishment_with_lockers_stats', res.data)\n }).catch(err => {\n reject(err)\n }),\n LockersApi.getAreaWithLockersStats(areaID)\n .then(res => {\n commit('update_area_with_lockers_stats', res.data)\n }).catch(err => {\n reject(err)\n }),\n LockersApi.getBlockWithLockersStats(blockID)\n .then(res => {\n commit('update_block_with_lockers_stats', res.data)\n }).catch(err => {\n reject(err)\n })\n ]\n\n Promise.all(concurrentLoad).then(() => {\n resolve('ok')\n })\n })\n }\n }\n}\n","import ApiDisplayland from '@/api/displayland.js'\nimport ActivitiesApi from '~/api/activities'\n\nconst initialState = () => ({\n displays: [],\n videos: [],\n pdfs: [],\n images: []\n})\n\nexport default {\n state: initialState,\n\n getters: {\n displays: state => state.displays,\n videos: state => state.videos,\n pdfs: state => state.pdfs,\n images: state => state.images,\n activities: state => state.activities\n },\n\n mutations: {\n set_displays (state, val) {\n state.displays = val\n },\n set_videos (state, val) {\n state.videos = val\n },\n set_pdfs (state, val) {\n state.pdfs = val\n },\n set_images (state, val) {\n state.images = val\n },\n set_activities (state, val) {\n state.activities = val\n }\n\n },\n actions: {\n getDisplays ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiDisplayland.getDisplays().then(res => {\n commit('set_displays', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getImages ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiDisplayland.getImages().then(res => {\n commit('set_images', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getVideos ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiDisplayland.getVideos().then(res => {\n commit('set_videos', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getPdfs ({ commit }) {\n return new Promise((resolve, reject) => {\n ApiDisplayland.getPdfs().then(res => {\n commit('set_pdfs', res.data || [])\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n },\n\n getActivities ({ commit }) {\n return new Promise((resolve, reject) => {\n ActivitiesApi.getActivities({ State: true }).then(res => {\n commit('set_activities', res.data)\n resolve(res)\n }).catch(err => {\n reject(err)\n })\n })\n }\n }\n}\n","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport moment from 'moment'\nimport createPersistedState from 'vuex-persistedstate'\n\nimport main from './main'\nimport params from './params'\nimport stats from './stats.js'\nimport turnstiles from './turnstiles.js'\nimport spa from './spa'\nimport planning from './planning'\nimport ws from './ws'\nimport template from './template'\nimport lockers from './lockers'\nimport displayland from './displayland'\n\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n plugins: [createPersistedState({\n reducer: (state) => {\n const reduced = JSON.parse(JSON.stringify(state))\n reduced.main.auth.status = 'idle'\n delete reduced.main.products\n reduced.main.accessTimeslots = []\n reduced.ws.subscribers = []\n\n return (reduced)\n },\n rehydrated (store) {\n // TODO: Make this dynamic per module\n if (typeof store.state.stats.resa.filter.timeScaleBegin === 'string') {\n store.state.stats.resa.filter.timeScaleBegin = moment(store.state.stats.resa.filter.timeScaleBegin)\n }\n if (typeof store.state.stats.resa.filter.timeScaleEnd === 'string') {\n store.state.stats.resa.filter.timeScaleEnd = moment(store.state.stats.resa.filter.timeScaleEnd)\n }\n }\n })],\n modules: {\n main,\n params,\n stats,\n spa,\n planning,\n ws,\n template,\n turnstiles,\n lockers,\n displayland\n },\n state: {},\n getters: {},\n mutations: {},\n actions: {\n resetAll ({ commit }) {\n commit('reset_main')\n commit('reset_params')\n commit('reset_stats')\n commit('reset_stats_spa')\n commit('reset_stats_resa')\n commit('reset_stats_resa_frequentations')\n commit('reset_stats_resa_bilans_periodiques')\n commit('reset_stats_resa_plannings')\n commit('reset_spa')\n commit('reset_ws')\n commit('reset_turnstiles')\n commit('reset_lockers')\n commit('reset_displayland')\n }\n }\n})\n","const out = {\n TimeScales: {\n DAY: 1,\n WEEK: 2,\n MONTH: 3,\n // YEAR: 4, // hide for BrickTimeScale.vue\n SEASON: 5,\n CUSTOM: 6\n },\n TimeScalesLabels: {\n 1: 'Jour',\n 2: 'Semaine',\n 3: 'Mois',\n // 4: 'Année', // hide for BrickTimeScale.vue\n 5: 'Saison',\n 6: 'Personnalisé'\n },\n TimeScalesValues: {\n DAY: 'day',\n WEEK: 'week',\n MONTH: 'month',\n YEAR: 'year',\n SEASON: 'season',\n CUSTOM: 'custom'\n },\n\n StepModes: {\n BY_YEAR: 0,\n BY_MONTH: 1,\n BY_WEEK: 2,\n BY_DAY: 3,\n BY_SEASON: 4,\n BY_HOUR: 5\n },\n StepModesLabels: {\n 0: 'par année',\n 1: 'par mois',\n 2: 'par semaine',\n 3: 'par jour',\n 4: 'par saison',\n 5: 'par heure'\n },\n StepModesValues: {\n BY_YEAR: 'byYear',\n BY_MONTH: 'byMonth',\n BY_WEEK: 'byWeek',\n BY_DAY: 'byDay',\n BY_SEASON: 'bySeason',\n BY_HOUR: 'byHour'\n },\n\n // TODO: Replace it\n DateModeChosen: {\n BY_YEAR: 0,\n BY_MONTH: 1,\n BY_WEEK: 2,\n BY_DAY: 3,\n BY_SEASON: 4,\n BY_HOUR: 5\n },\n // TODO: Replace it\n DateModeStep: {\n BY_YEAR: 'byYear',\n BY_MONTH: 'byMonth',\n BY_WEEK: 'byWeek',\n BY_DAY: 'byDay',\n BY_SEASON: 'bySeason',\n BY_HOUR: 'byHour'\n },\n PassingsOptions: {\n TYPES: 1,\n FAMILIES: 2,\n PRODUCTS: 3\n },\n TrainersOptions: {\n COUNT_BOOKINGS_SLOTS: 1,\n COUNT_BOOKINGS: 2,\n COUNT_BOOKINGS_SLOTS_WITHOUT_ACCOUNT: 3,\n COUNT_PARTICIPATIONS: 4,\n RATE_BOOKINGS_PER_PLACES_ON_SALES: 5,\n RATE_PARTICIPATIONS_PER_PLACES_ON_SALES: 6,\n RATE_PARTICIPATIONS_PER_BOOKINGS: 7,\n COUNT_WORKING_HOUR: 8,\n COUNT_WORKING_MINUTE: 9\n }\n}\n\nout.TimeScalesKP = []\nfor (const i in out.TimeScalesLabels) {\n const val = out.TimeScalesLabels[i]\n out.TimeScalesKP.push({ value: parseInt(i), text: val })\n}\n\nout.StepModesKP = []\nfor (const i in out.StepModesLabels) {\n const val = out.StepModesLabels[i]\n out.StepModesKP.push({ value: parseInt(i), text: val })\n}\n\nexport default out\n","var map = {\n\t\"./af\": 25177,\n\t\"./af.js\": 25177,\n\t\"./ar\": 61509,\n\t\"./ar-dz\": 41488,\n\t\"./ar-dz.js\": 41488,\n\t\"./ar-kw\": 58676,\n\t\"./ar-kw.js\": 58676,\n\t\"./ar-ly\": 42353,\n\t\"./ar-ly.js\": 42353,\n\t\"./ar-ma\": 24496,\n\t\"./ar-ma.js\": 24496,\n\t\"./ar-ps\": 6947,\n\t\"./ar-ps.js\": 6947,\n\t\"./ar-sa\": 82682,\n\t\"./ar-sa.js\": 82682,\n\t\"./ar-tn\": 89756,\n\t\"./ar-tn.js\": 89756,\n\t\"./ar.js\": 61509,\n\t\"./az\": 95533,\n\t\"./az.js\": 95533,\n\t\"./be\": 28959,\n\t\"./be.js\": 28959,\n\t\"./bg\": 47777,\n\t\"./bg.js\": 47777,\n\t\"./bm\": 54903,\n\t\"./bm.js\": 54903,\n\t\"./bn\": 61290,\n\t\"./bn-bd\": 17357,\n\t\"./bn-bd.js\": 17357,\n\t\"./bn.js\": 61290,\n\t\"./bo\": 31545,\n\t\"./bo.js\": 31545,\n\t\"./br\": 11470,\n\t\"./br.js\": 11470,\n\t\"./bs\": 44429,\n\t\"./bs.js\": 44429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 56464,\n\t\"./cs.js\": 56464,\n\t\"./cv\": 73635,\n\t\"./cv.js\": 73635,\n\t\"./cy\": 64226,\n\t\"./cy.js\": 64226,\n\t\"./da\": 93601,\n\t\"./da.js\": 93601,\n\t\"./de\": 77853,\n\t\"./de-at\": 26111,\n\t\"./de-at.js\": 26111,\n\t\"./de-ch\": 54697,\n\t\"./de-ch.js\": 54697,\n\t\"./de.js\": 77853,\n\t\"./dv\": 60708,\n\t\"./dv.js\": 60708,\n\t\"./el\": 54691,\n\t\"./el.js\": 54691,\n\t\"./en-au\": 53872,\n\t\"./en-au.js\": 53872,\n\t\"./en-ca\": 28298,\n\t\"./en-ca.js\": 28298,\n\t\"./en-gb\": 56195,\n\t\"./en-gb.js\": 56195,\n\t\"./en-ie\": 66584,\n\t\"./en-ie.js\": 66584,\n\t\"./en-il\": 65543,\n\t\"./en-il.js\": 65543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 79402,\n\t\"./en-nz.js\": 79402,\n\t\"./en-sg\": 43004,\n\t\"./en-sg.js\": 43004,\n\t\"./eo\": 32934,\n\t\"./eo.js\": 32934,\n\t\"./es\": 97650,\n\t\"./es-do\": 20838,\n\t\"./es-do.js\": 20838,\n\t\"./es-mx\": 17730,\n\t\"./es-mx.js\": 17730,\n\t\"./es-us\": 56575,\n\t\"./es-us.js\": 56575,\n\t\"./es.js\": 97650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 90527,\n\t\"./fi.js\": 90527,\n\t\"./fil\": 95995,\n\t\"./fil.js\": 95995,\n\t\"./fo\": 52477,\n\t\"./fo.js\": 52477,\n\t\"./fr\": 85498,\n\t\"./fr-ca\": 26435,\n\t\"./fr-ca.js\": 26435,\n\t\"./fr-ch\": 37892,\n\t\"./fr-ch.js\": 37892,\n\t\"./fr.js\": 85498,\n\t\"./fy\": 37071,\n\t\"./fy.js\": 37071,\n\t\"./ga\": 41734,\n\t\"./ga.js\": 41734,\n\t\"./gd\": 70217,\n\t\"./gd.js\": 70217,\n\t\"./gl\": 77329,\n\t\"./gl.js\": 77329,\n\t\"./gom-deva\": 32124,\n\t\"./gom-deva.js\": 32124,\n\t\"./gom-latn\": 93383,\n\t\"./gom-latn.js\": 93383,\n\t\"./gu\": 95050,\n\t\"./gu.js\": 95050,\n\t\"./he\": 11713,\n\t\"./he.js\": 11713,\n\t\"./hi\": 43861,\n\t\"./hi.js\": 43861,\n\t\"./hr\": 26308,\n\t\"./hr.js\": 26308,\n\t\"./hu\": 90609,\n\t\"./hu.js\": 90609,\n\t\"./hy-am\": 17160,\n\t\"./hy-am.js\": 17160,\n\t\"./id\": 74063,\n\t\"./id.js\": 74063,\n\t\"./is\": 89374,\n\t\"./is.js\": 89374,\n\t\"./it\": 88383,\n\t\"./it-ch\": 21827,\n\t\"./it-ch.js\": 21827,\n\t\"./it.js\": 88383,\n\t\"./ja\": 23827,\n\t\"./ja.js\": 23827,\n\t\"./jv\": 89722,\n\t\"./jv.js\": 89722,\n\t\"./ka\": 41794,\n\t\"./ka.js\": 41794,\n\t\"./kk\": 27088,\n\t\"./kk.js\": 27088,\n\t\"./km\": 96870,\n\t\"./km.js\": 96870,\n\t\"./kn\": 84451,\n\t\"./kn.js\": 84451,\n\t\"./ko\": 63164,\n\t\"./ko.js\": 63164,\n\t\"./ku\": 98174,\n\t\"./ku-kmr\": 6181,\n\t\"./ku-kmr.js\": 6181,\n\t\"./ku.js\": 98174,\n\t\"./ky\": 78474,\n\t\"./ky.js\": 78474,\n\t\"./lb\": 79680,\n\t\"./lb.js\": 79680,\n\t\"./lo\": 15867,\n\t\"./lo.js\": 15867,\n\t\"./lt\": 45766,\n\t\"./lt.js\": 45766,\n\t\"./lv\": 69532,\n\t\"./lv.js\": 69532,\n\t\"./me\": 58076,\n\t\"./me.js\": 58076,\n\t\"./mi\": 41848,\n\t\"./mi.js\": 41848,\n\t\"./mk\": 30306,\n\t\"./mk.js\": 30306,\n\t\"./ml\": 73739,\n\t\"./ml.js\": 73739,\n\t\"./mn\": 99053,\n\t\"./mn.js\": 99053,\n\t\"./mr\": 86169,\n\t\"./mr.js\": 86169,\n\t\"./ms\": 73386,\n\t\"./ms-my\": 92297,\n\t\"./ms-my.js\": 92297,\n\t\"./ms.js\": 73386,\n\t\"./mt\": 77075,\n\t\"./mt.js\": 77075,\n\t\"./my\": 72264,\n\t\"./my.js\": 72264,\n\t\"./nb\": 22274,\n\t\"./nb.js\": 22274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 92572,\n\t\"./nl-be\": 43784,\n\t\"./nl-be.js\": 43784,\n\t\"./nl.js\": 92572,\n\t\"./nn\": 54566,\n\t\"./nn.js\": 54566,\n\t\"./oc-lnc\": 69330,\n\t\"./oc-lnc.js\": 69330,\n\t\"./pa-in\": 29849,\n\t\"./pa-in.js\": 29849,\n\t\"./pl\": 94418,\n\t\"./pl.js\": 94418,\n\t\"./pt\": 79834,\n\t\"./pt-br\": 48303,\n\t\"./pt-br.js\": 48303,\n\t\"./pt.js\": 79834,\n\t\"./ro\": 24457,\n\t\"./ro.js\": 24457,\n\t\"./ru\": 82271,\n\t\"./ru.js\": 82271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 33478,\n\t\"./se.js\": 33478,\n\t\"./si\": 17538,\n\t\"./si.js\": 17538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 46637,\n\t\"./sl.js\": 46637,\n\t\"./sq\": 86794,\n\t\"./sq.js\": 86794,\n\t\"./sr\": 45719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 45719,\n\t\"./ss\": 56000,\n\t\"./ss.js\": 56000,\n\t\"./sv\": 41011,\n\t\"./sv.js\": 41011,\n\t\"./sw\": 40748,\n\t\"./sw.js\": 40748,\n\t\"./ta\": 11025,\n\t\"./ta.js\": 11025,\n\t\"./te\": 11885,\n\t\"./te.js\": 11885,\n\t\"./tet\": 28861,\n\t\"./tet.js\": 28861,\n\t\"./tg\": 86571,\n\t\"./tg.js\": 86571,\n\t\"./th\": 55802,\n\t\"./th.js\": 55802,\n\t\"./tk\": 59527,\n\t\"./tk.js\": 59527,\n\t\"./tl-ph\": 29231,\n\t\"./tl-ph.js\": 29231,\n\t\"./tlh\": 31052,\n\t\"./tlh.js\": 31052,\n\t\"./tr\": 85096,\n\t\"./tr.js\": 85096,\n\t\"./tzl\": 79846,\n\t\"./tzl.js\": 79846,\n\t\"./tzm\": 81765,\n\t\"./tzm-latn\": 97711,\n\t\"./tzm-latn.js\": 97711,\n\t\"./tzm.js\": 81765,\n\t\"./ug-cn\": 48414,\n\t\"./ug-cn.js\": 48414,\n\t\"./uk\": 16618,\n\t\"./uk.js\": 16618,\n\t\"./ur\": 57777,\n\t\"./ur.js\": 57777,\n\t\"./uz\": 57609,\n\t\"./uz-latn\": 72475,\n\t\"./uz-latn.js\": 72475,\n\t\"./uz.js\": 57609,\n\t\"./vi\": 21135,\n\t\"./vi.js\": 21135,\n\t\"./x-pseudo\": 64051,\n\t\"./x-pseudo.js\": 64051,\n\t\"./yo\": 82218,\n\t\"./yo.js\": 82218,\n\t\"./zh-cn\": 52648,\n\t\"./zh-cn.js\": 52648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 31541,\n\t\"./zh-mo.js\": 31541,\n\t\"./zh-tw\": 50304,\n\t\"./zh-tw.js\": 50304\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"104\":\"2176afe0\",\"230\":\"a25549b1\",\"238\":\"684cbc00\",\"261\":\"578da022\",\"490\":\"5ecd4105\",\"537\":\"7e8bcb5e\",\"678\":\"b6f0e414\",\"731\":\"0bfe6e94\",\"743\":\"5e46dfb5\",\"756\":\"20a263c0\",\"790\":\"8ac18eb8\",\"884\":\"11457ccb\",\"938\":\"9cb5579e\",\"1179\":\"fc2ce469\",\"1209\":\"941b0f67\",\"1228\":\"b2535521\",\"1265\":\"b3feedd9\",\"1303\":\"4369c3e3\",\"1377\":\"412cbeff\",\"1593\":\"fcca6e1e\",\"1605\":\"af5bf456\",\"1647\":\"99da5802\",\"1651\":\"b515f54f\",\"1688\":\"aa03512a\",\"1792\":\"c785bdd9\",\"1949\":\"2b62cbab\",\"1986\":\"3768ee2b\",\"2041\":\"7ddc45e6\",\"2081\":\"0b260d80\",\"2272\":\"03f50119\",\"2345\":\"dfcaed6c\",\"2491\":\"ef3e7a8a\",\"2495\":\"36167d7b\",\"2559\":\"b7eb5e60\",\"2560\":\"d505120e\",\"2602\":\"c260826a\",\"2606\":\"a696af1f\",\"2697\":\"6f46e9e7\",\"2715\":\"8e01ab5f\",\"2947\":\"5e44eb35\",\"3029\":\"4ea214bd\",\"3031\":\"0659835a\",\"3040\":\"91e28db2\",\"3069\":\"b7dc935f\",\"3108\":\"0588b906\",\"3143\":\"70836d02\",\"3205\":\"cc96e564\",\"3276\":\"018e0bcb\",\"3316\":\"afcaa652\",\"3328\":\"7c82f51f\",\"3416\":\"a3e29866\",\"3515\":\"2efacbf5\",\"3541\":\"9a2fcd35\",\"3556\":\"fd4064bb\",\"3614\":\"0f7dd909\",\"3621\":\"896993de\",\"3639\":\"2b961985\",\"3658\":\"3c8e86e0\",\"3681\":\"63b85a4a\",\"3744\":\"5fd380f9\",\"3769\":\"91c1c690\",\"3789\":\"73c450b8\",\"3790\":\"c5529c5a\",\"3893\":\"766e3007\",\"3961\":\"78fa04b7\",\"3997\":\"cc9aa1dd\",\"4069\":\"938b04b5\",\"4183\":\"cf0bdd66\",\"4330\":\"73a36264\",\"4478\":\"0c1e78fc\",\"4492\":\"47596a92\",\"4521\":\"f25b1919\",\"4530\":\"d32459d1\",\"4545\":\"b62d7330\",\"4578\":\"084ed6be\",\"4636\":\"ea30ed72\",\"4705\":\"56b388b1\",\"4747\":\"6fcbef50\",\"4765\":\"19c87e0b\",\"4890\":\"744ef205\",\"4924\":\"e7de9646\",\"4944\":\"3355ec6a\",\"4948\":\"0038be87\",\"4964\":\"46553e35\",\"5124\":\"af8bdadf\",\"5234\":\"247178b0\",\"5238\":\"521cbcb9\",\"5254\":\"dd063d42\",\"5297\":\"09009f0b\",\"5302\":\"b0fc1a3b\",\"5308\":\"2c04193d\",\"5327\":\"fb4e728b\",\"5385\":\"c46c0f6d\",\"5388\":\"4c1f33b7\",\"5448\":\"4dd113cc\",\"5503\":\"9dc43dc3\",\"5532\":\"737dcf90\",\"5552\":\"a7a0ad2c\",\"5560\":\"3f801fb5\",\"5591\":\"f5851712\",\"5592\":\"35de36ac\",\"5603\":\"0594fc71\",\"5639\":\"d46da4f0\",\"5676\":\"96940a2c\",\"5743\":\"d4cb7309\",\"5752\":\"7fa00b8a\",\"5753\":\"002a1c07\",\"5987\":\"4eeda495\",\"6028\":\"6fdaf46c\",\"6094\":\"9f26c99b\",\"6147\":\"bba40078\",\"6178\":\"bab5f50f\",\"6312\":\"9a327910\",\"6329\":\"15272c2e\",\"6383\":\"055241f1\",\"6450\":\"5515fe71\",\"6485\":\"9b8f1987\",\"6660\":\"5e116591\",\"6830\":\"e2ee1803\",\"6873\":\"e09216d7\",\"6885\":\"3dd5deb4\",\"6933\":\"5b6d9483\",\"6941\":\"83d25b98\",\"7099\":\"ccd259b0\",\"7140\":\"7d116021\",\"7153\":\"bfed2d20\",\"7159\":\"4f5c974e\",\"7169\":\"24d76c8c\",\"7278\":\"d732a52f\",\"7290\":\"a2478cd7\",\"7449\":\"0bfa5ca2\",\"7476\":\"1758d13b\",\"7548\":\"7ed17b97\",\"7554\":\"fa1313ba\",\"7577\":\"4b30350c\",\"7632\":\"a2ccce13\",\"7677\":\"473021d6\",\"7678\":\"72f4bee0\",\"7795\":\"e58620ae\",\"7901\":\"903c20e4\",\"7984\":\"ba9ad7df\",\"7998\":\"a6f3cc5c\",\"8010\":\"24043eaf\",\"8048\":\"52abf474\",\"8061\":\"b47a8670\",\"8062\":\"18f8408c\",\"8068\":\"037f8193\",\"8075\":\"10e330d9\",\"8081\":\"ea5754df\",\"8199\":\"52842193\",\"8273\":\"4644e4bb\",\"8307\":\"ce2b8363\",\"8382\":\"285d4c11\",\"8410\":\"fde7ab31\",\"8496\":\"e9ad836a\",\"8576\":\"86464019\",\"8622\":\"85159acc\",\"8734\":\"95365ae2\",\"8772\":\"d98224ad\",\"8942\":\"d069f440\",\"8944\":\"d4c34aa8\",\"9016\":\"b9e1bb10\",\"9019\":\"687977e4\",\"9031\":\"b6f689df\",\"9042\":\"0ded423f\",\"9048\":\"a2048632\",\"9138\":\"adf9f474\",\"9249\":\"a7ed55c4\",\"9283\":\"bf028aaf\",\"9334\":\"20986a38\",\"9375\":\"d4ebc2cb\",\"9520\":\"553a00d2\",\"9719\":\"f5b9bf09\",\"9732\":\"3b5146fa\",\"9857\":\"7840cd9b\",\"9888\":\"8358f4d7\",\"9895\":\"865ab3ab\",\"9916\":\"bcc304c7\",\"9930\":\"d48a1f1b\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"104\":\"1cf848a0\",\"238\":\"74eb71df\",\"261\":\"5dbdd97f\",\"678\":\"99106d8f\",\"756\":\"8bb54fe6\",\"790\":\"c42dbcd5\",\"1179\":\"848387da\",\"1265\":\"37c28bf7\",\"1303\":\"58854080\",\"1377\":\"ed9d8038\",\"1605\":\"e9f824d7\",\"1651\":\"8d670143\",\"1792\":\"ea204b68\",\"2491\":\"6573a75f\",\"2495\":\"d949e550\",\"2560\":\"5116cd11\",\"2602\":\"111d19b0\",\"2715\":\"5dbdd97f\",\"2947\":\"94dad22a\",\"3029\":\"c75788af\",\"3031\":\"5116cd11\",\"3069\":\"acaf14a5\",\"3143\":\"a399af0c\",\"3205\":\"35f5f839\",\"3276\":\"f9ad1e8f\",\"3316\":\"9d181209\",\"3328\":\"c60ee201\",\"3416\":\"b1095802\",\"3515\":\"d6e2ee48\",\"3556\":\"42b44602\",\"3614\":\"3505d4d9\",\"3621\":\"29b51e0c\",\"3681\":\"1114111e\",\"3744\":\"d6e2ee48\",\"3769\":\"30443208\",\"3789\":\"a222c22b\",\"3790\":\"e23f6920\",\"3997\":\"5116cd11\",\"4069\":\"c0ae0726\",\"4183\":\"78e02590\",\"4330\":\"bd7c5ed9\",\"4492\":\"1841acf6\",\"4521\":\"098d8842\",\"4636\":\"69c70abf\",\"4747\":\"c7d90cc1\",\"4890\":\"cf6405b4\",\"4924\":\"ba53b08e\",\"4944\":\"c4ab70e3\",\"4964\":\"202016ba\",\"5124\":\"a37656e6\",\"5234\":\"afe255b7\",\"5238\":\"b8f0364d\",\"5254\":\"be3a5c6d\",\"5327\":\"d6e2ee48\",\"5503\":\"7108cc9e\",\"5532\":\"e4223b64\",\"5552\":\"25794e57\",\"5560\":\"c1235856\",\"5591\":\"8a6ee14f\",\"5743\":\"3237e9f6\",\"5752\":\"ed9d9c87\",\"5987\":\"2becbf4c\",\"6094\":\"e08f75d8\",\"6178\":\"d949e550\",\"6312\":\"abbc0043\",\"6383\":\"1ee60e3d\",\"6933\":\"be866625\",\"7140\":\"c598dcb1\",\"7153\":\"29b51e0c\",\"7159\":\"ed9d8038\",\"7169\":\"b1f8b9b8\",\"7278\":\"f09c0e0e\",\"7290\":\"f55ea089\",\"7476\":\"cea9df41\",\"7554\":\"9b161c34\",\"7577\":\"b86e48b5\",\"7632\":\"322b3637\",\"7677\":\"b290962b\",\"7795\":\"e503b99c\",\"7901\":\"d6d7e786\",\"8048\":\"e889ceaf\",\"8075\":\"c168102a\",\"8273\":\"e1e59dec\",\"8382\":\"ed9d8038\",\"8410\":\"06973736\",\"8496\":\"3505d4d9\",\"8576\":\"35f5f839\",\"8622\":\"b1095802\",\"8944\":\"fdb94d41\",\"9016\":\"5116cd11\",\"9138\":\"bd638efc\",\"9249\":\"5116cd11\",\"9283\":\"95cbac10\",\"9375\":\"d1060dd9\",\"9520\":\"a5ebc230\",\"9857\":\"b627beb4\",\"9888\":\"8bb54fe6\",\"9895\":\"54de615e\",\"9930\":\"028ea142\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.hmd = (module) => {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: () => {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var inProgress = {};\nvar dataWebpackPrefix = \"resa-frontend:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = (chunkId, fullhref, oldTag, resolve, reject) => {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tif (__webpack_require__.nc) {\n\t\tlinkTag.nonce = __webpack_require__.nc;\n\t}\n\tvar onLinkComplete = (event) => {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && event.type;\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + errorType + \": \" + realHref + \")\");\n\t\t\terr.name = \"ChunkLoadError\";\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = (href, fullhref) => {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = (chunkId) => {\n\treturn new Promise((resolve, reject) => {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t3524: 0\n};\n\n__webpack_require__.f.miniCss = (chunkId, promises) => {\n\tvar cssChunks = {\"104\":1,\"238\":1,\"261\":1,\"678\":1,\"756\":1,\"790\":1,\"1179\":1,\"1265\":1,\"1303\":1,\"1377\":1,\"1605\":1,\"1651\":1,\"1792\":1,\"2491\":1,\"2495\":1,\"2560\":1,\"2602\":1,\"2715\":1,\"2947\":1,\"3029\":1,\"3031\":1,\"3069\":1,\"3143\":1,\"3205\":1,\"3276\":1,\"3316\":1,\"3328\":1,\"3416\":1,\"3515\":1,\"3556\":1,\"3614\":1,\"3621\":1,\"3681\":1,\"3744\":1,\"3769\":1,\"3789\":1,\"3790\":1,\"3997\":1,\"4069\":1,\"4183\":1,\"4330\":1,\"4492\":1,\"4521\":1,\"4636\":1,\"4747\":1,\"4890\":1,\"4924\":1,\"4944\":1,\"4964\":1,\"5124\":1,\"5234\":1,\"5238\":1,\"5254\":1,\"5327\":1,\"5503\":1,\"5532\":1,\"5552\":1,\"5560\":1,\"5591\":1,\"5743\":1,\"5752\":1,\"5987\":1,\"6094\":1,\"6178\":1,\"6312\":1,\"6383\":1,\"6933\":1,\"7140\":1,\"7153\":1,\"7159\":1,\"7169\":1,\"7278\":1,\"7290\":1,\"7476\":1,\"7554\":1,\"7577\":1,\"7632\":1,\"7677\":1,\"7795\":1,\"7901\":1,\"8048\":1,\"8075\":1,\"8273\":1,\"8382\":1,\"8410\":1,\"8496\":1,\"8576\":1,\"8622\":1,\"8944\":1,\"9016\":1,\"9138\":1,\"9249\":1,\"9283\":1,\"9375\":1,\"9520\":1,\"9857\":1,\"9888\":1,\"9895\":1,\"9930\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(() => {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, (e) => {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr\n\n// no prefetching\n\n// no preloaded","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t3524: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^(3328|4521|8048|9930)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkresa_frontend\"] = self[\"webpackChunkresa_frontend\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], () => (__webpack_require__(67032)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","style","_vm","attrs","clientSearch","multiple","chips","deletableChips","fieldLabel","dense","filled","rules","$set","onChange","scopedSlots","key","fn","item","_c","showDetails","model","callback","expression","staticRenderFns","mixins","DateMixins","props","value","type","String","Array","default","required","disabled","Boolean","returnObject","label","clearable","icon","prependInnerIcon","autocompleteStyle","externalFilters","attach","hideDetails","mandatory","readonly","appendIcon","ignore","solo","data","loading","search","items","selectedClients","requiredRule","v","computed","val","get","set","x","$emit","watch","select","ClientHelper","clientFullname","performClientSearch","addCurrentValueToItemsIfNeeded","mounted","methods","_","filters","Search","Deleted","ClientTypes","consts","CLIENT_TYPE_PERSON","CLIENT_TYPE_ORG","ClientsApi","getPaginatedClients","then","res","setTimeout","results","Clients","filter","c","includes","ID","push","some","c2","ids","isArray","onClear","r","selected","getClient","component","render","_e","_u","on","_v","staticClass","client","OrgInfo","TVA","$$v","SIRET","Type","clientsGenders","ClientType","isClientFieldRule","birthdateDatepicker","menuBirthday","menu1","quotationsSalesRepresentatives","Firstname","loadingQuotationsSalesRepresentatives","bottom","quotationsProductsCatalogues","loadingQuotationsProductsCatalogues","name","params","tab","proxy","quotationsPricings","loadingQuotationsPricings","showAddressPossibilities","possibleAddresses","idx","City","Address","Mobile","hasQuotationAccess","mailValidation","Contact","Email","mailValidationLoading","slot","class","MAIL_STATUS_OK","Status","pricingOptions","currentClientPricing","expiration","formatDate","isValidParent","isParent","displayLockersFields","LockerCode","lockerCodeReveal","accountFusionDialog","target","step","accountKey","isFieldSelectedFor","selectFieldFrom","account","accounts","subscriptions","length","sales","mandat","MandateID","voucher","Used","formatDateTimeHuman","UsageDate","isFuture","hasSameSubscription","regroupSubscriptions","loadingStep2","CLIENT_MERGE_FIELDS","FIRSTNAME","LASTNAME","BIRTHDATE","CONTACT_EMAIL","ADDRESS","SDDMANDATE","PRICING","components","ClientAutocomplete","DateMixin","ClientMixin","SaleMixin","fusionned","mergedFields","productsByIds","clientsSales","clientsVouchers","merging","mapGetters","assign","getSubscriptions","preparesales","s","vouchers","ClientGiftID","s1","s2","ProductID","pricingsAreNotTheSame","currentClientPricingID","currentPeriod","deep","handler","preselectFusionnedAccountFields","clear","field","fromKey","splice","indexOf","getPricingLabel","pricingID","p","pricings","find","Label","FR","selectAllFrom","fromFusionned","isMerged","values","BirthDate","isZeroDate","goToStep2","salePromise","getClientsSales","productPromise","getClientsProducts","vouchersPromise","getClientsVouchers","Promise","all","catch","err","console","error","$snotify","finally","productsIDs","Cards","Subscriptions","flat","concat","reject","ProductsApi","getProductsByIDs","SalesApi","getSales","Items","VouchersApi","getPaginatedVouchers","ClientGiftIDs","Types","C","VOUCHER_TYPES","GIFT_CARD","COLLECTABLE","DISCOUNT","Vouchers","lines","getSaleLines","secureIban","IBAN","substring","validate","mergeClients","MergedID","TargetID","MergedFields","RegroupSubscriptions","success","cancel","AddressMixin","ClientsMixin","LocationMixin","WebviewMixin","ClientFusion","clientType","Number","orgTypes","text","userCodeFormat","isNaN","parseInt","userCodeMin","LOCKERS","USER_CODE","MIN_LENGTH","userCodeMax","MAX_LENGTH","birthdateFormatted","Msg","clientTypes","hasRight","out","pricing","forEach","PeriodID","findIndex","modules","$store","getters","lockers","Pricings","accountPricing","isPast","From","To","PricingID","clientAddress","trim","requiredClientFields","globalParams","GLOBAL_PARAMS","PARAM_REQUIRED_CLIENT_FIELDS","Value","JSON","parse","moment","format","formatBirthDate","parseDate","checkIsParent","checkMail","QuotationAccess","QuotationsApi","getQuotationSalesRepresentatives","getQuotationProductsCatalogues","getQuotationPricings","isValid","$refs","form","resetForm","reset","resetValidation","isClientFieldRequired","getClients","ParentsIDs","Limit","formatParent","Lastname","_updateClientPricing","newPricingID","updateClientPricing","searchAddressDebounced","searchAddress","finalSearch","defaultEstablishment","PostalCode","searchAddressAPI","slice","selectAddressFromAPI","address","Country","selectAddress","setAddress","PARAM_ADDRESS_FORCE_UPPERCASE","toUpperCase","openAccountFusionDialog","onMerged","goToDocs","slide","ticketWasUpdated","domProps","_s","getTicketStatus","slideSecondType","ref","newTicket","Category","onFileSelected","attachments","closeNewTicket","isTicketSending","stripTags","InitialMessage","getTickets","axios","createTicket","getTicket","getTicketMessages","createTicketMessage","TicketID","createTicketAttachment","getOdeonParams","getBookstackToken","getOdeonAuthToken","postFile","file","formData","FormData","append","headers","showImage","m","SendByName","MessageType","Note","editorMessage","staticStyle","customer","this","_self","editor","_l","index","_b","action","title","Function","isActive","MenuItem","chain","focus","toggleBold","run","toggleItalic","toggleStrike","toggleCode","toggleHighlight","toggleBulletList","toggleOrderedList","toggleCodeBlock","addImage","clearNodes","unsetAllMarks","undo","redo","imageUpload","click","files","OdeonApi","setImage","src","URL","dropImagePlugin","upload","Plugin","handlePaste","view","event","from","clipboardData","schema","state","image","getAsFile","preventDefault","node","nodes","create","transaction","tr","replaceSelectionWith","dispatch","reader","FileReader","onload","readerEvent","result","readAsDataURL","handleDOMEvents","drop","_event$dataTransfer$f","hasFiles","dataTransfer","images","test","coordinates","posAtCoords","left","clientX","top","clientY","async","insert","pos","IMAGE_INPUT_REGEX","createImageExtension","uploadFn","Node","inline","group","draggable","addAttributes","alt","parseHTML","tag","getAttrs","dom","element","getAttribute","renderHTML","HTMLAttributes","addCommands","selection","position","$cursor","$to","addInputRules","nodeInputRule","getAttributes","match","addProseMirrorPlugins","TiptapMenuBar","EditorContent","placeholder","self","Editor","content","extensions","StarterKit","Placeholder","configure","Image","Dropcursor","onUpdate","getHTML","beforeDestroy","destroy","commands","clearContent","TiptapEditor","activeTicket","messages","messageTypeColor","messageTypeIcon","System","Information","Chat","Resolution","showImageSrc","fetchMessages","$nextTick","messageImages","document","querySelectorAll","messageImage","onclick","eventbus","$on","handleNewTicketMessage","$off","back","input","replace","getShortTitle","parseMessage","messageContent","parser","DOMParser","doc","parseFromString","imgs","img","imageSrc","setAttribute","links","link","href","querySelector","innerHTML","formatMessage","sendChat","uploadRes","Filename","AttachmentID","Identifier","MimeType","Message","doScroll","objDiv","getElementById","scrollTop","scrollHeight","addAttachement","fileUpload","deleteAttachment","status","TICKET_STATUS","ts","color","deliveryVoucherStatuses","Consts","DELIVERY_VOUCHER_STATUS","DRAFT","READY_TO_SEND","SENDED","PAID","REFUSED","CANCELLED","deliveryVoucherStatus","odeonHelper","ui","OdeonMixin","TicketDetailsPanel","vm","visible","categories","wvEnabled","tickets","ticket","ticketMessages","odeonUserID","odeonHost","bookstackLoading","odeonLoading","ticketStatusById","filteredTickets","diff","LastUpdate","sort","a","b","isAfter","odeon","UserID","Host","fetchTickets","handleTicketUpdated","window","open","Cookie","goToOdeon","Token","LastSeen","userLastSeen","Seen","isBefore","numUnread","i","IsPrivate","wvOdeonUnreadAmount","warn","send","newTicketForm","relevantData","currentSeller","wvGetDataValue","currentCashregister","Name","Version","currentEstablishment","currentClient","currentSale","BeginDate","authUser","ClientAccountID","FirstName","LastName","RelevantData","ticketRes","screenRecording","blob","utils","dataURLToBlob","File","Private","openTicket","t","resetEticket","voucherID","searchEticket","UsedAmount","Amount","selectedProductID","productId","active","toggle","Voucher","convertToCredit","ClientGift","$event","deliveredSubscriptions","targetClientHasOne","cardType","productCardAssignation","searchHeaders","giftVouchers","itemsPerPageOptions","infoOnly","ClientForm","validating","selectedClient","cardTypes","failedToCheckVoucher","newClientMode","newClient","validationLoading","giftVouchersLoading","align","sortable","pagination","page","itemsPerPage","sortBy","sortDesc","totalGiftVouchers","associatedCards","spaProducts","focusInterval","seller","targetClient","loadGiftVouchers","created","focusInput","setInterval","SpaApi","getSpaProducts","State","destroyed","clearInterval","voucherDeliveredProducts","deliveredProducts","product","mappedProducts","getProductAction","p1","mapped","Products","mappedCardTypes","CardType","selectedProduct","hasClient","hasAllCardsAssociated","deliveredCards","deliveredCardIndex","allCanGoOnQRCode","DeliveredItems","every","cardtypes","productCompatibleCardTypes","allGoesOnQRCode","cardtype","di","packedProducts","recurseGetPackedProducts","packedProduct","existingIndex","amount","Subscription","cards","card","hasQRCodeAssigned","hasProductAssignedToCardTypeWithoutCard","productID","cardSlot","formatMoney","Decimal","toFixed","setCode","validateEticket","setSeller","PackedProducts","subPackedProducts","spp","states","ApiVouchers","getGiftVouchers","getPaginationFromDataTableOptions","Total","voucherField","associateCard","wvAssociateCard","cardNumber","CardNumber","associatedSpaProduct","Product","VoucherCreditValue","CREDIT","creditLabel","VoucherCreditUnitValue","CREDIT_UNIT","unitsLabel","clientCardTypes","cardTypeIdx","compatibleCardTypes","qrCardTypes","setProductCardtype","useSearchedVoucher","Code","resetAssociation","scanVoucher","onProductSelected","ApiProducts","getCardTypes","_res$data","IDs","validConsumeEticket","clientForm","validateVoucher","VoucherID","SelectedProductID","IsNewClient","NewClient","undefined","ProductCardAssignation","AssociatedCards","ClientID","SellerName","successMessage","EventBus","wvVoucherValidated","wvToast","AccessControlVouchersGenerationNeeded","convertEticketToCredit","convertVoucherGiftToCredit","close","isPartiallyUsed","productsAlreadyCreditCagnotte","Vue","use","Vuetify","directives","Ripple","theme","dark","themes","light","primary","secondary","accent","info","warning","titleProduct","customProperties","icons","iconfont","lang","locales","fr","current","Snotify","toast","SnotifyPosition","rightBottom","closeOnClick","timeout","titleMaxLength","showProgressBar","stopPropagation","hasVcr","mobile","_g","goToVCR","onMenu","odeonPopup","onUnreadCount","logout","wvClose","voucherScanDialog","goBack","history","$router","go","ForbiddenPage","OdeonPopup","VoucherScan","MainMixin","WsMixin","version","changelogDialog","unread","barcode","reading","$connect","ws_IsConnected","ws_Authenticate","authToken","_ws_Register","$options","sockets","onopen","onclose","$socket","readyState","$disconnect","route","loadWebviewForcedRoute","opts","onerror","ws_KeepAlive","message","ws_On","WS_RESOURCE_LOCKER_INCIDENTS_NEW","onNewLockerIncident","addEventListener","keyCode","isLoggedIn","ApiAuth","checkAuthToken","commit","location","pathname","getDefaultRoute","$route","wvReady","ws_Off","ws_IsAuthenticated","showMenu","$vuetify","breakpoint","expandMenu","hasDimsBackoffice","dimsBackofficeUrl","vcrUrl","userInitials","substr","matched","meta","isDashboardLayoutDisabled","disableDashboardLayout","navDrawerItems","planning","alert","ctm","clients","products","business","routeName","spa","stats","activities","kiosks","newIncidentsCounter","quotations","displayland","mapMutations","wvLogout","fullPath","forceReload","reload","ws_cb_ResponseAuth","Success","confirm","buttons","bold","remove","ws_cb_onNotify","payload","Resource","Event","goToDims","urlVCR","startsWith","endsWith","AccountID","infos","getAuthToken","toggleDrawer","_events","setExpandMainMenu","expandMainMenu","handleMainMenuClick","VueNativeSock","config","ServerURL","protocol","host","reconnection","connectManually","LottieVuePlayer","productionTip","mixin","iconizer","labelizer","colors","date","accessControl","router","store","vuetify","h","App","$mount","WS_RESOURCE_TURNSTILE_INFO","WS_RESOURCE_TURNSTILE_HISTORY","WS_RESOURCE_ACCESS_CONTROL_VOUCHERS","WS_RESOURCE_CLIENTS","WS_RESOURCE_SPA_BOOKINGS","WS_RESOURCE_AREA_ATTENDANCE","WS_RESOURCE_ESTABLISHMENTS","WS_RESOURCE_AREAS","WS_RESOURCE_LOCKERS","WS_RESOURCE_LOCKERS_STATE","WS_RESOURCE_LOCKERS_CONFIG","WS_RESOURCE_LOCKERS_HISTORY","WS_RESOURCE_LOCKER_BLOCKS","WS_RESOURCE_LOCKER_GATEWAYS","WS_RESOURCE_LOCKER_BOOKINGS","WS_RESOURCE_LOCKER_BOOKINGS_NEW","WS_RESOURCE_LOCKER_BOOKINGS_STOP","WS_RESOURCE_LOCKER_BOOKINGS_CANCEL","WS_RESOURCE_LOCKER_INCIDENTS_UPDATE","WS_RESOURCE_INDOOR_POSITIONING","WS_RESOURCE_KIOVID","WS_RESOURCE_DISPLAYS","WS_RESOURCE_VOUCHERSHEETS","WS_RESOURCE_VOUCHERSHEET_PROGRESS","WS_RESOURCE_KIOSKS","WS_RESOURCE_PRODUCTS","WS_RESOURCE_ACTIVITIES","WS_RESOURCE_HARDWARE_DISCOVERY","WS_RESOURCE_QUOTATIONS","ACCESS_CONTROL_EVENT_UNK","ACCESS_CONTROL_EVENT_BOX_READY","ACCESS_CONTROL_EVENT_BOX_ERROR","ACCESS_CONTROL_EVENT_BOX_OFFLINE","ACCESS_CONTROL_EVENT_TS_READY","ACCESS_CONTROL_EVENT_TS_ERROR","ACCESS_CONTROL_EVENT_TS_OFFLINE","ACCESS_CONTROL_EVENT_UNK_CARD","ACCESS_CONTROL_EVENT_PASSING_ALLOW","ACCESS_CONTROL_EVENT_PASSING_DENIED","ACCESS_CONTROL_EVENT_PASSING_TIMEOUT","ACCESS_CONTROL_EVENT_PASSING_CONFIRM","ACCESS_CONTROL_EVENT_BOX_LOG","ACCESS_CONTROL_EVENT_BARRIER_MECHANICAL_FAULT","ACCESS_CONTROL_EVENT_SAFETY_SIGNAL","ACCESS_CONTROL_EVENT_SAFETY_DEVICE_MISSING","ACCESS_CONTROL_EVENT_BARRIER_TOO_FAST","ACCESS_CONTROL_EVENT_BOOM_CONTACT_SWING_AWAY","ACCESS_CONTROL_EVENT_VANDALISM","ACCESS_CONTROL_EVENT_IMPACT_DETECTION","ACCESS_CONTROL_EVENT_MAINS_POWER_FAILURE","ACCESS_CONTROL_EVENT_EEPROM_CHECKSUM_ERROR","ACCESS_CONTROL_EVENT_WATCHDOG_RESET","ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_VS","ACCESS_CONTROL_EVENT_SOFTWARE_ERROR_SYSTEMBUS","ACCESS_CONTROL_EVENT_ERROR_ON_HOMING","ACCESS_CONTROL_EVENT_CAN_OVERRUN","ACCESS_CONTROL_EVENT_CAN_HW_FAULT","ACCESS_CONTROL_EVENT_HEARTBEAT_ERROR","ACCESS_CONTROL_EVENT_OVER_CURRENT","ACCESS_CONTROL_EVENT_OVER_VOLTAGE","ACCESS_CONTROL_EVENT_UNDER_VOLTAGE","ACCESS_CONTROL_EVENT_OVER_TEMPERATURE","ACCESS_CONTROL_EVENT_DERATING_ERROR","ACCESS_CONTROL_EVENT_IMPACT_DETECTION2","ACCESS_CONTROL_EVENT_MOTOR_COMMUNICATION_ERROR","ACCESS_CONTROL_EVENT_DBG_SAFETY_DEVICE_ACTIVE","ACCESS_CONTROL_EVENT_HW_ENABLE_TEST_FAILED","ACCESS_CONTROL_EVENT_SAFETY_DEVICE_TEST_FAILED","ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR1_ACTIVE","ACCESS_CONTROL_EVENT_DBG_SAFETY_LOOP_ON_DETECTOR2_ACTIVE","ACCESS_CONTROL_EVENT_MOTOR_BOOTLOADER_ACTIVE","ACCESS_CONTROL_EVENT_MOTOR_UPDATE_FAILURE","ACCESS_CONTROL_EVENT_MOTOR_UPDATE_PERFORMED","ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_A","ACCESS_CONTROL_EVENT_SHORT_CIRCUIT_LOOP_B","ACCESS_CONTROL_EVENT_LOOP_A_BROKEN","ACCESS_CONTROL_EVENT_LOOP_B_BROKEN","ACCESS_CONTROL_EVENT_LOOP_REFERENCE_ERROR","ACCESS_CONTROL_EVENT_DBG_FREQUENCY_MEASUREMENT_ERROR","ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_A","ACCESS_CONTROL_EVENT_DBG_MEASUREMENT_MONITORING_B","ACCESS_CONTROL_EVENT_DBG_LOOP_MULTIPLEX_ERROR","ACCESS_CONTROL_EVENT_DBG_NEGATIVE_FREQUENCY_DIFFERENCE","ACCESS_CONTROL_EVENT_HARDWARE_ERROR","ACCESS_CONTROL_EVENT_ERROR_LOOP_A","ACCESS_CONTROL_EVENT_ERROR_LOOP_B","PASSING_TYPE_CARD_QUERY","PASSING_TYPE_TURNSTILE_PASSING","PASSING_TYPE_PUNISH_LATE_EXIT","PASSING_DIRECTION_UNSET","PASSING_DIRECTION_IN","PASSING_DIRECTION_OUT","BOOKING_PERIOD_DAYTIME","BOOKING_PERIOD_MORNING","BOOKING_PERIOD_AFTERNOON","BOOKING_PERIOD_EVENING","BOOKING_SOURCE_WEB","BOOKING_SOURCE_CASHREGISTER","BOOKING_SOURCE_MOBILE","BOOKING_SOURCE_KIOSK","BOOKING_STATUS_PENDING","BOOKING_STATUS_VALIDATED","BOOKING_STATUS_CANCELLED","BOOKING_STATUS_WAITING","BOOKING_SLOT_WEB_MODE_ZERO","BOOKING_SLOT_WEB_MODE_UNLIMITED","BOOKING_SLOT_WEB_MODE_SPECIFIC","BOOKING_SLOT_REPEAT_WEB_PUBLISHED_NONE","BOOKING_SLOT_REPEAT_WEB_PUBLISHED_INFO","BOOKING_SLOT_REPEAT_WEB_PUBLISHED_BOOK","SUBSCRIPTION_TYPE_CREDIT","SUBSCRIPTION_TYPE_SUBSCRIPTION","SUBSCRIPTION_TYPE_PASS_Q","SUBSCRIPTION_TYPE_PASS_H","SUBSCRIPTION_TYPE_PACK","SUBSCRIPTION_TYPE_OTHER","SUBSCRIPTION_TYPE_2DTAG","SPA_PRODUCT_MODE_ALL","SPA_PRODUCT_MODE_MULTI_OF","SPA_NOTIFICATION_CREATE","SPA_NOTIFICATION_UPDATE","SPA_NOTIFICATION_DELETE","SPA_NOTIFICATION_REMINDER","RENEW_OPTIONS_USE_SUBSCRIPTION_VALIDITY_ONLY","RENEW_OPTIONS_ADD_REMAINING_VALIDITY","RENEW_OPTIONS_KEEP_BALANCE_ALWAYS","RENEW_OPTIONS_KEEP_BALANCE_IF_NOT_EXPIRED","RENEW_OPTIONS_KEEP_BALANCE_NEVER","GROUP_EXIT_AUTO_NEVER","GROUP_EXIT_AUTO_MANUAL_ONLY","GROUP_EXIT_AUTO_ALWAYS","PRODUCT_VALIDITY_SALE_DATE","PRODUCT_VALIDITY_FIXED","PRODUCT_VALIDITY_FIRST_USE","PRODUCT_VALIDITY_CUSTOM_DATE","PRODUCT_VALIDITY_MATCH_BOOKING_DATE","PRODUCT_VALIDITY_CUSTOM_PERIOD","DURATION_PER_DAY","DURATION_PER_MONTH","DURATION_PER_YEAR","FREQUENCY_NEVER","FREQUENCY_OCCASIONAL","FREQUENCY_MONTHLY","FREQUENCY_YEARLY","MODE_FIRST_PURCHASE_FIX_DATES","MODE_FIRST_PURCHASE_DATE_TO_DATE","SALE_STATE_DRAFT","SALE_STATE_PAUSED","SALE_STATE_PAYING","SALE_STATE_READY_CONFIRMED","SALE_STATE_CONFIRMED","SALE_STATE_CANCELLED","SALE_STATE_PAUSED_PAYING","SALE_STATE_PAYMENT_PENDING","SALE_STATE_ARRHES","SALE_STATE_SCHEDULED","BOOKING_SLOT_REPEAT_STATUS_DRAFT","BOOKING_SLOT_REPEAT_STATUS_VALID","BOOKING_SLOT_REPEAT_STATUS_DELETED","MAIL_STATUS_UNDETERMINED","MAIL_STATUS_BAD_FORMAT","MAIL_STATUS_HOST_UNRESOLVABLE","MAIL_STATUS_UNKNOWN_USER","BOOKING_IS_AUTHORIZED","LIMIT_BOOKING_TIME_PASSED","SLOT_OUT_OF_VISIBILITY","NO_PRODUCT","WRONG_CLIENT_GROUP","SWIMING_LEVEL_NOT_GOOD","MAX_BOOKING_PER_WEEK_REACHED","ALREADY_BOOKED","NO_PLACE_AVAILABLE","NO_PLACE_AVAILABLE_WEB","WEB_MODE_UNAVAILABLE","UNKNOWN_KIOVID","KIOSK_KIOVID","CASHREGISTER_KIOVID","CLIENTS","GENDERS","UNKNOW","FEMALE","MALE","STATE","DISABLED","VALID","CLIENT_TYPE_OTHER","CLIENT_ORG_CE","CLIENT_ORG_COLLECTIVITY","CLIENT_ORG_GROUPING","CLIENT_ORG_ORGANIZATION","CLIENT_ORG_INDIVIDUAL","CLIENT_ORG_PRIVATE","CLIENT_ORG_PUBLIC","PRICING_DEFAULT","PARAM_DECIMAL_AMOUNT","PARAM_CURRENCY_SIGN","PARAM_ALERT_STOCK","PARAM_THEME_DEFAULT","PARAM_ASSOCIATION_CLIENT_AUTO","PARAM_LANGUAGE","PARAM_KEYPAD","PARAM_RECEIPT_CHECKED","PARAM_DATA_PATH","PARAM_PRODUCT_LIST_FIRST","PARAM_PRODUCT_FIRST_IN_SALE","PARAM_PRODUCT_FAV","PARAM_MULTI_CLIENT","PARAM_POSTAL_CODE_AFTER_SALE","PARAM_CHANGE_PRICE_ON_LINE","PARAM_PAYMENT_LATER","PARAM_MULTI_PAYMENT","PARAM_CARD_ENABLE","PARAM_CHANGE_TYPE_PAYMENT_AFTER_SALE","PARAM_PAUSE_SALE","PARAM_MAX_CLIENTS_IN_SALE","PARAM_ARCHIVE_AUTO","PARAM_KEYPAD_DISCOUNT","PARAM_BEGIN_PERIOD","PARAM_NBR_WRONG_CASHFUND","PARAM_CASHBOOK_TYPE_VERIF","PARAM_SALE_LOST","PARAM_PRINTER_RECEIPT","PARAM_PRINTER_BILL","PARAM_VOUCHER","PARAM_UNIT_POINT","PARAM_DELAYED_PAYEMENT","PARAM_CREDIT","PARAM_PAYMENT_SELECT_TYPE_FIRST","PARAM_MQTT_ENABLE","PARAM_BROKER_ADDRESS","PARAM_SYNCHRO_WEB","PARAM_DEV_TOOLS","PARAM_API_KEY","PARAM_CENTRAL_ADDRESS","PARAM_SQL_ADDRESS","PARAM_USE_TPE","PARAM_TPE_COM_PORT","PARAM_INTERNET","PARAM_SWITCH_CLIENT_AUTO","PARAM_CASH_DRAWER","PARAM_UI_ZOOM_FACTOR","PARAM_UPDATER_ADDRESS","PARAM_UPDATER_API_KEY","PARAM_MESSAGES_JUSTIFICATION","PARAM_VALIDATION_PAYMENT_AUTO","PARAM_PAYMENT_MODE_NORMAL","PARAM_AUTO_DECO_TIME","PARAM_CASH_DRAWER_ENABLE","PARAM_WIDTH_RECEIPT","PARAM_QRCODE_MESSAGE","PARAM_QRCODE_PRINTER","PARAM_BARCODE_PRINTER","PARAM_BARCODE_SIZE","PARAM_QRCODE_PARAMS","PARAM_COLOR_PRICINGS_PRIORITY","PARAM_USE_EXTERNAL_DISPLAY","PARAM_PAYMENT_DIFF_FOR_CLIENT","PARAM_AUTOCREATE_ONLINE_ACCOUNT","PARAM_ASK_FOR_OTHER_CARD","PARAM_SHOW_MORE_TOOLBAR","PARAM_SHOW_SUBS_IN_TICKET","PARAM_PRODUCTS_IN_CASHBOOK_TICKET","PARAM_AUTO_PRINT_CASHBOOK_TICKET","PARAM_DIMS1_URL","PARAM_DIMS2_URL","PARAM_DIMS2_API_KEY","PARAM_DENY_ASSIGNED_CARD","PARAM_SHORT_CASHBOOK_TICKET","PARAM_EXPORT_SKIP_AVOIRS","PARAM_PRINT_ON_FAST_TICKET","PARAM_EXPORT_ADD_NEW_PAGE","PARAM_EXPORT_SKIP_DIFFERED","PARAM_DUPLICATE_FOR_ORG","PARAM_AUTO_PRINT_CASH_FUND_START","PARAM_AUTO_PRINT_CASH_FUND_END","PARAM_CLIENTS_NAME_STANDARDIZATION","PARAM_CORRECTION_GRAND_TOTAL","PARAM_SUB_INITIAL_CASHFUND","PARAM_MAILMAN_ADDRESS","PARAM_SHOW_MQTT_STATUS","PARAM_USE_CHEQUE_READER","PARAM_CHEQUE_READER_COM","PARAM_SHOW_TOTAL_QTY_ON_CARD","PARAM_REFRESH_ALL_SUBS_ON_CARD","PARAM_CASHREGISTER_ESTABLISHMENT","PARAM_BILL_SUMMARY_TOP_MARGIN","PARAM_ARRHES","PARAM_TVA_ON_PAYMENTS_STATS","PARAM_SPA_BOOKINGS_ON_TRACKING","PARAM_SHOW_PERCENTAGE_ON_EXPORT","PARAM_TICKET_TEMPLATE","PARAM_ACCESS_CONTROL_VOUCHER_TEMPLATE","PARAM_ADD_MORE_INFOS_AT_SALE_END","PARAM_SHOW_ESTABLISHMENT_LOGO_ON_TICKET","PARAM_BILL_TEMPLATE","PARAM_VOUCHER_TEMPLATE","PARAM_VOUCHER_GIFT_CARD_TEMPLATE","PARAM_VOUCHER_DISCOUNT_TEMPLATE","PARAM_VOUCHER_WEB_GIFT_CARD_TEMPLATE","PARAM_ENABLE_SALE_GIFT","PARAM_HIDE_FAMILIES_IN_SALE","PARAM_PREVENT_CREDIT_CARD_CANCEL","PARAM_WEB_ACCESS_CONTROL_VOUCHER_TEMPLATE","PARAM_LOCKER_DELAY_BETWEEN_BOOKINGS","PARAM_LOCKER_GATEWAY_SCAN_LOOP_INTERVAL","PARAM_UPDATE_IN_PLACE","PARAM_USE_EXIT_BOXES_FOR_MANUAL_ACCESS","PARAM_SKIP_EXTERNAL_DEFERED_IN_PRODUCTS_EXPORT","PARAM_ENABLE_COVID_PASS","PARAM_AUTOCREATE_PERIODS","PARAM_EXPORT_ADD_CAGNOTTE_COLLECTIONS","PARAM_CREDIT_VOUCHER_REMAINING_AMOUNT","PARAM_SHOW_ALL_DEFERRED_PAYMENTS","PARAM_ZEBRA_WB_TEMPLATE","PARAM_ACV_ON_ZEBRA_WB","PARAM_VOUCHER_GIFT_CARD_VALIDITY","PARAM_CANCEL_SALE_WITH_ALL_PAYMENT_MEAN","PARAM_PAUSE_SALE_STARTED_PAYING","PARAM_CREDIT_UNITS_FOR_GIFTING_CLIENT","PARAM_USE_TURNSTILE_MODE","PARAM_ENABLE_CIVIL_REF","PARAM_DEFAULT_AUTODEBIT_DAY","PARAM_COLLECTABLE_VOUCHER_TEMPLATE","PARAM_ZEBRA_PRINTER","PARAM_IMAGE_USED_FOR_BILL","PARAM_PRINTS_WITH_SELLER_NAME","PARAM_OPEN_DRAWER_ON_CREDIT_CARD_PAYMENT","PARAM_TPE_COM_MODE","PARAM_TPE_COM_IP","PARAM_EXPORT_PRICING_VENTILATION","PARAM_TPE_PROTOCOL_VERSION","PARAM_ENABLE_DISCOUNTS","PARAM_BILL_FOOTER_NOTE","PARAM_CASHDRAWER_JUSTIFICATION_MESSAGES","PARAM_FORBID_EXCEEDING_VOUCHER_PAYMENT","PARAM_ENABLE_CLIENT_PICTURES","PARAM_WEBCAM_DEVICE","PARAM_DEFAULT_PRICING_CODES","PARAM_PRIORITY_CITIES","PARAM_DIMS2_LOCAL_URL","PARAM_HIDE_OTHER_ESTABLISHMENTS_ACCESS_CONTROL","PARAM_SHOW_BOOKINGS_ON_TICKET","PARAM_RESET_SUB_START_DATE_ON_RECHARGE","PARAM_TPE_INTERVENTION_DELAY","PARAM_DISABLE_SCREEN_RECORDING","PARAM_STOP_SUBSCRIPTION_JUSTIFICATION_MESSAGES","PARAM_HIDE_ARRHES_ON_EXPORT","PARAM_CREDIT_EXPIRATION_MODE","PARAM_CREDIT_EXPIRATION_DELAY","PARAM_CHANGE_DEFAULT_CLIENT_TAB","PARAM_EXPORT_ONE_DEFERED_PER_CLIENT","PARAM_CREDIT_LABEL","PARAM_UNITS_LABEL","PARAM_STRONGLY_SUGGEST_CAGNOTTE","PARAM_STOCK_REGUL_CUSTOM_REASONS","PARAM_MQTTV2_FLAGS","PARAM_OVERPAYMENT_CHART_ACCOUNT_NUMBER_ID","PARAM_EXPORT_COUNT_DIFFERED","PARAM_FORBID_CREDIT_PARTIAL_PAYMENT","PARAM_FORCE_PARENT_FOR_UNDERAGED_CLIENTS","PARAM_ENABLE_NON_NF525_OPTIONS","PARAM_VARIANTS_TYPES","SMS","SERVICE_UNKNOWN","ENDPOINT_UNKNOWN","OPERATOR_UNKNOWN","OPERATOR_OVH","OPERATORS","BY_ACTIVITY","BY_DAY","GROUP_BY","description","CONFIRMATION_STATUS","NONE","DESIRED","NO_PHONENUMBER","UNDELIVERED","AWAITING","NO_REPLY","REPLY_YES","REPLY_NO","REPLY_OTHER","NO_REPLY_EXPECTED","PRODUCT","ORDER","VOUCHER_STATE","PENDING","USED","EXPIRED","TEMPLATE_TYPES","TICKET","VOUCHER","VOUCHER_WEB_GIFT_CARD","VOUCHER_GIFT_CARD","VOUCHER_DISCOUNT","ACCESS_CONTROL_VOUCHER","WEB_ACCESS_CONTROL_VOUCHER","VOUCHER_COLLECTABLE","BILL","RENEWABLE_SUBSCRIPTION_CONTRACT","COMMUNICATIONS","CHANNEL_KEEP_ALIVE","CHANNEL_SUBSCRIBE","CHANNEL_UNSUBSCRIBE","CHANNEL_NOTIFY","CHANNEL_ERROR","RESOURCE_ENVIRONMENT","RESOURCE_CONNECTIVITY","RESOURCE_SESSION_ID","RESOURCE_CASHREGISTER","RESOURCE_CASHREGISTER_HEALTH","RESOURCE_CASHREGISTER_UPDATE_PROGRESS","RESOURCE_CASHREGISTER_SYNC_PROGRESS","RESOURCE_CASHREGISTER_SYNC_OUT_PROGRESS","RESOURCE_CASHREGISTER_SCREEN_RECORDING","RESOURCE_TURNSTILE_INFO","RESOURCE_TURNSTILE_HISTORY","RESOURCE_ACCESS_CONTROL_VOUCHERS","RESOURCE_CLIENTS","RESOURCE_SPA_BOOKINGS","RESOURCE_AREA_ATTENDANCE","RESOURCE_COMPARISON_PROGRESS","RESOURCE_RESYNC_PROGRESS","EXPORT_TYPES","EXCEL","PRODUCT_SIMPLE","PRODUCT_WITH_PRICING","PAYMENTS","EXCEPTED_PAYMENTS","SALES_SIMPLE","SALES_LINES","SALES_PAYMENTS","CASHFUND_SIMPLE","CASHFUND_DETAILS","GENERAL","SALES_CREDIT_NOTE","CHEQUES","DEFERREDPAYMENTS","DISCOUNTS","SALES_CORRECTIONS","JET","STOCKS","DOCUMENTS","GT","POSTAL_CODES","PAYMENT_TYPES","DEFERRED_PAYMENTS_BY_CLIENTS","SALES_NOMINATIVE_PAYMENTS","MODIFICATIONS","DEFERRED_EXTERNAL_PAYMENTS_BY_CLIENTS","DEFERRED_EXTERNAL_PAYMENTS","SLIPS","PAUSED_SUBSCRIPTIONS","PAYMENT_TYPES_PER_DAY","PDF","COLLECTION","PRODUCTS","FAMILIES","PRODUCTS_BY_FAMILIES","CLIENT_SALES","CREDIT_CARD_PAYMENTS","HOLIDAY_VOUCHER_SLIPS","SPORTS_COUPONS","CREDIT_NOTES","SPECIAL_PRICES","DEFERRED_PAYMENTS","ARRHES","TVA_BY_FAMILIES","KIOSKS","TYPE","SCHOOL_KIOSK","TIME_KIOSK","BOOKING_KIOSK","PURCHASE_KIOSK","PAY_LATER_KIOSK","CONSULTATION_KIOSK","ESTABLISHMENTS_FILTER","SHOW_ONLY_KIOSK_ESTABLISHMENT","SHOW_PREFILTER_KIOSK_ESTABLISHMENT","SHOW_ALL_ESTABLISHMENTS","MASTER_CODE","LOCKER_STATE","STATE_OPENED","STATE_CLOSED","STATE_ERROR","STATE_UNKNOWN","LOCKER_STATUS","STATUS_AVAILABLE","STATUS_IN_USE","STATUS_PREPARED","STATUS_OVERSTAY","STATUS_DISABLED","STATUS_IN_ERROR","LOCKER_ACCESS_MODE","FREE_ACCESS","RESERVATION","AFFECTATION","LOCKER_BOOKING_MODE","MODE_BOOKING","MODE_AFFECTATION","MODE_SINGLE_USE","INCIDENT_TYPE","OTHER_INCIDENT","NO_LOCKERS_AVAILABLE_AT_BOOKING_START_INCIDENT","NO_LOCKERS_AVAILABLE_AT_BOOKING_RETRY_INCIDENT","NOT_OPENED_AT_THE_END_OF_BOOKING_INCIDENT","LOW_BATTERY_LOCKER_INCIDENT","LOCKER_STATE_NOT_OPENED_INCIDENT","LOCKER_STATE_NOT_CLOSED_INCIDENT","OFFLINE_GATEWAY_INCIDENT","OFFLINE_LOCKER_INCIDENT","NON_VALID_MASTER_CODE_LOCKER_INCIDENT","BOOKING_STATE","BOOKING_REGISTERED","BOOKING_STARTED","BOOKING_ENDED","BOOKING_CANCELED","BOOKING_OVERSTAY","BOOKING_ERROR","BOOKING_ENDED_WITH_OVERSTAY","EVENT_TYPE","TIME_ADVANCE","TIME_DELAY","MECHANICAL_FAILURE","USER_OPENING","MASTER_OPENING","USER_CLOSING","INITIALIZATION","AUTOMATIC_OPEN_RENT_TIME","NON_VALID_MASTER_CODE","TIMED_OUT_CODE","OCCUPIED_CARD","NON_VALID_CARD","USER_OPENING_KEYPAD","USER_CLOSING_KEYPAD","MASTER_OPENING_KEYPAD","MASTER_CLOSING_KEYPAD","AUTOMATIC_OPENING","MASTER_CLOSING","LOW_BATTERY","FULL_CARD","ERASE_BT","STREAMLOR_FREE_CONFIGURATION","STREAMLOR_DEDICATED_CONFIGURATION","STREAMLOR_MASTER_OPENING","STREAMLOR_MASTER_CLOSING","STATS","SALES_SELLERS","SALES_CLIENTS","SALES_SPA_SERVICES","SALES_SPA_CARES","SALES_SPA_BOOKINGS","RESA_PARAMS","SMSER_GROUP_BY","SMSER_OPERATOR","SPA_PLANNINGS_START_HOUR","SPA_PLANNINGS_START_MIN","SPA_PLANNINGS_END_HOUR","SPA_PLANNINGS_END_MIN","PLANNING_START_HOUR","PLANNING_START_MIN","PLANNING_END_HOUR","PLANNING_END_MIN","BOOKING_MARGIN_MINUTES","NUMBER_OF_WEEK_VISIBLE","SLOT_VISIBILITY_UNLOCK_WEEKDAY","SLOT_VISIBILITY_UNLOCK_TIME","CANCELLING_DELAY","LIMIT_TIME_FOR_BOOKING","HOURS_BEFORE_IMMEDIATE_BOOKING","MAX_IMMEDIATE_BOOKINGS_BY_DAY","MAX_ACTIVE_BOOKINGS","SUBSCRIPTION_PASSING_DELAY_MINUTES","TIME_PASS_MIN_DEBIT","TIME_PASS_MIN_REMAINING","TIME_PASS_MIN_STOP","UNIQUE_DEBIT_PER_ZONE","BOOKING_CANCELLATION_DAYS_LIMIT","ANONYMIZE_DELAY","REQUIRE_COVID_PASS","DELAY_BETWEEN_RESERVATIONS","INTERVAL_BETWEEN_GATEWAY_LOOPS","USERCODE_LENGTH","ENABLE_LATE_EXIT_PENALTY","LATE_EXIT_DELAY","LATE_EXIT_BOOKING_TOLERANCE","ENABLE_SUB_EXPIRATION_BOOKING_CHECK","BOOKING_VALIDATES_ENTIRE_DAY","LOCKERS_LED","COVID_PASSING_DELAY_MINUTES","SMSER_AWAITING_RESPONSE_SPA_BOOKINGS","SPA_HUMAN_CONFIRMATION","SPA_SHOW_SHORT_LABEL","PLANNING_SHOW_FILLING","PAYPAL_ENABLED","PAYFIP_ENABLED","STATS_EXPORTS_EXCEL_DISPLAY_NO_DATA","LOCKERS_UNIQUE_MASTER_CODE","LOCKERS_BUZZER","LOCKERS_BLOCK_ON_FAILS","LOCKERS_AUTO_OPENING","LOCKERS_AUTO_CLOSING","LOCKERS_BLOCK_BUZZER","LOCKERS_BLOCK_BLOCK_ON_FAILS","LOCKERS_BLOCK_AUTO_OPENING","LOCKERS_BLOCK_AUTO_CLOSING","LOCKERS_DELAY_BETWEEN_RESERVATIONS","LOCKERS_BLOCK_OPENING_IF_LATE","LOCKERS_SCHEDULED_HISTORY_FETCH","SMSER_SENDER","SMSER_CUSTOM_MESSAGE_SPA_BOOKINGS","SMSER_ENDPOINT","SMSER_APPLICATION_KEY","SMSER_APPLICATION_SECRET","SMSER_CONSUMER_KEY","SMSER_SELECTED_SERVICE","MAILER_WEBSITE_NAME","MAILER_WEBSITE_LINK","MAILER_LOGO_URL","MAILER_FROM","MAILER_COPYRIGHT","MAIN_DEFAULT_MODULE","MAILER_CUSTOM_SPA_CREATE","MAILER_CUSTOM_SPA_MODIFY","MAILER_CUSTOM_SPA_DELETE","MAILER_CUSTOM_SPA_REMINDER","PAYPAL_LIVE_CLIENT_ID","PAYPAL_SANDBOX_CLIENT_ID","PAYPAL_LIVE_SECRET_ID","PAYPAL_SANDBOX_SECRET_ID","PAYPAL_MODE","PAYFIP_CLIENT_ID","PAYFIP_MODE","WEB_ESTABLISHMENT","LOCKERS_AUTO_OPENING_HOUR","PLANNING_DAYS","STATS_SEASON","STATS_PERFORMANCE_TRESHOLDS","LOCKERS_AUTO_OPENING_DAYS","EXTENDING_VALIDITY_DATE_FOR_SUBSCRIPTIONS","BOOKING_OPENING_DATE","BOOKING_TERMINAL_PLANNING_TYPE","MAILER_CUSTOM_ACTIVITIES_CONFIRM","MAILER_CUSTOM_ACTIVITIES_CANCEL","MAILER_CUSTOM_SALE_CONFIRMATION","MAILER_CUSTOM_SEND_ALL_DOCUMENTS","SPA_ABSENCES_AMOUNT_WARNING","QUOTATIONS_PAYMENT_TYPES_CREDIT_CARD","QUOTATIONS_PAYMENT_TYPES_BANK_TRANSFER","QUOTATIONS_PAYMENT_TYPES_DEFERRED","QUOTATIONS_EXPIRATION_DELAY","QUOTATIONS_SALES_EXPIRATION_DELAY","QUOTATIONS_VOUCHERS_EXPIRATION_DELAY","QUOTATIONS_MINIMUM_AMOUNT","QUOTATIONS_ORDER_FOOTER_TEXT","QUOTATIONS_ATTACHED_FILE_ID","EXIT_DELAY_BEFORE_PAY_LATER","EXIT_DELAY_AFTER_PAY_LATER","DENY_EMPTY_HOURLY_PASS_ON_EXIT","AUTO_POWEROFF_KIOSKS","EXIT_UPDELAY_BEFORE_PAY_LATER_WITH_SPA_BOOKING","DURATION_EXIT_AUTH_AFTER_TIMESLOT","SAGE_EMAIL","DEFAULT_OUT_TURNSTILE","GENERATE_SHEET_AFTER_SALE_CONFIRMED","WEB_STOCK_ENABLED","WEB_STOCK_ESTABLISHMENT","AUTO_EXPORT_ENABLED","AUTO_EXPORT_EMAIL","AUTO_EXPORT_SELECTED","AUTO_EXPORT_FREQUENCY","AUTO_EXPORT_DAY","AUTO_EXPORT_TIME","MEDICERT_VALIDITY","SHOW_ACCESS_CONTROL_PRODUCT_FAMILIES","CLUB_TIMESLOTS_DISPLAY_START_OFFSET","BOOKING_CHECK_CODES","AUTHORIZED","TIME_PASSED","NO_VOUCHER","LEVEL_NOT_GOOD","BOOKING_CHECK_CODE_BOOKINGS_LIMIT_REACHED","INCOMPATIBLE_AGE","NOT_ENOUGH_QUANTITY","NOT_ENOUGH_UNITS","SUBSCRIPTION_EXPIRED","BOOKING_NOT_OPEN","MEDICERT_REQUIRED","PRODUCT_UNRECHARGEABLE","PERIODIC_SLOT_UNALLOWED","BOOKING_RESTRICTION_MODES","SLIDING","BLOCKING","GLOBAL","BOOKING_TERMINAL_PLANNING_TYPES","GROUPED_BY_ACTIVITY","MIXED_ACTIVITIES","PUDDLE","PAYMENT_RESULTS","SUCCESS","ABORTED","ERROR","PRINTER_PAPER_LEVELS","FULL","NEAR_END","EMPTY","FAMILIES_TYPES","CASHREGISTER","KIOSK","WEB","ACCESS_CONTROL","EXPORT","DAILY","QUOTATION","CARD_TYPES","QRCODE","WRISTBAND_QRCODE","QUOTATIONS","WAITING","VALIDATED","TO_PAY","WAITING_BO","PRICE_ORIGIN","PRICE_ORIGIN_DEFAULT","PRICE_ORIGIN_PRICING","PRICE_ORIGIN_DISCOUNT","PRICE_ORIGIN_MANUAL_PERCENT","PRICE_ORIGIN_MANUAL_PRICE","PRICE_ORIGIN_PRICING_DEGRESSIVE","PRICE_ORIGIN_PRORATA","FAKE_PRODUCT_UNITS","GUEST_ACCOUNT_LABEL","OFFERABLE_MODE","ALLOW","FORCE","TRANSFER_TYPE","TRANSFER","RECUPERATION","DISCOUNT_TYPES","PERCENT","PRICE","PRICE_BY_PRODUCT","OFFERED_PRODUCTS","DISCOUNT_CONDITION_TYPES","OR","AND","EQ_PRODUCTS_AMOUNT","GTE_PRODUCTS_AMOUNT","GTE_SALE_TOTAL","TPE_CONNEXION_MODE","WIRED","NETWORK","WALLEE","noReply","ACCESS_CONTROL_TYPE","ACCESS_CONTROL_OTHER","ACCESS_CONTROL_TURNSTILE_RFID","ACCESS_CONTROL_TURNSTILE_QR","ACCESS_CONTROL_DOOR_RFID","ACCESS_CONTROL_DOOR_QR","ACCESS_CONTROL_KIOSK_QR","ACCESS_CONTROL_PUSH_BUTTON","ACCESS_CONTROL_MOBILE","ACCESS_CONTROL_KIOSK_RFID","MAIL_STATUS","PAYMENTS_TYPES","PAYMENT_FLAVOUR_CASH","PAYMENT_FLAVOUR_CREDITCARD","PAYMENT_FLAVOUR_CHECK","PAYMENT_FLAVOUR_UNITS","PAYMENT_FLAVOUR_TRANSFER","PAYMENT_FLAVOUR_DEFERRED","PAYMENT_FLAVOUR_COUPON","PAYMENT_FLAVOUR_SAVINGS","PAYMENT_FLAVOUR_OTHER","PAYMENT_FLAVOUR_HOLIDAY_VOUCHER","PAYMENT_FLAVOUR_SPORTS_COUPON","PAYMENT_FLAVOUR_WEB","PAYMENT_FLAVOUR_DEFERRED_EXTERNAL","PAYMENT_FLAVOUR_OTHER_WITH_OVERPAID","PAYMENT_FLAVOUR_DISTANCE_SELLING","PAYMENT_FLAVOUR_MEAL_VOUCHER","PAYMENT_FLAVOUR_WEB_INSTALLMENTS","DEFAULT_QRCODE_ID","WRISTBAND_QRCODE_ID","TRACKING_TYPES","TRACKING_TYPE_SUBSCRIPTIONS","TRACKING_TYPE_PURCHASES","TRACKING_TYPE_PASSINGS","TRACKING_TYPE_QUANTITIES","TRACKING_TYPE_SPABOOKINGS","TRACKING_TYPE_BOOKINGS","TRACKING_TYPE_PERIODIC_BOOKINGS","SELLER_RIGHTS","RIGHT_PARAMS","RIGHT_SALES","RIGHT_CHANGE_TYPE_PAYMENT","RIGHT_CONSULT_PRODUCT","RIGHT_CREDIT_NOTE","RIGHT_CONSULT_SALES","RIGHT_CLIENT_PLUS","RIGHT_PRODUCT_PLUS","RIGHT_EXPORT","RIGHT_STATS","RIGHT_PRICING_FAMILY","RIGHT_KEYPAD","RIGHT_PERIOD","RIGHT_STAFF","RIGHT_PROFIL","RIGHT_GRAND_TOTAL","RIGHT_JET","RIGHT_CHANGE_PRICE_ON_LINE","RIGHT_PAYMENT_LATER","RIGHT_DISCOUNT","RIGHT_STOCK","RIGHT_PARAMS_SPE","RIGHT_CORRECTION","RIGHT_CHANGE_SALE_SELLER","RIGHT_LOCKERS","RIGHT_STOCK_TRANSFER","RIGHT_MANUAL_CREDIT","RIGHT_EDIT_SUB","RIGHT_REPRINT_SALE_ACCESS_CONTROL_VOUCHERS","CREDIT_EXPIRATION_MODE","NO_EXPIRATION","EXPIRE_ALL_AFTER_INACTIVITY","EXPIRE_EACH_AFTER_SALE","EXPIRE_EACH_AFTER_CREDIT","ALLOW_ACCOUNTS_MODE","ALL","PERSON","ORG","AGE_TYPE","YEAR","MONTH","DELTA_MODE","CURRENT_YEAR","SESSION","ACTION_TYPES","SUBSCRIPTION_CREATION","SUBSCRIPTION_RELOAD","UNITS_RELOAD","CAGNOTTE_RELOAD","COLLECTABLE_VOUCHER_GENERATED","GIFT_VOUCHER_GENERATED","ACV_GENERATED","STOCKS_UPDATED","SPA_BOOKING_ADDED","SPA_BOOKING_MOVED","SPA_BOOKING_REMOVED","SPA_BOOKING_DELETED","CLUB_MEMBER_ADDED","CLUB_MEMBER_REMOVED","CLUB_MEMBER_RENEWED","BILLING_MODE_TYPES","TIME","clientsGender","elem","getCards","el","AttributionDate","clientHasCardType","clientHasCardTypeCompatibleForProduct","getClientSubscription","cli","subscriptionID","sub","clientHasValidSubscriptionWithProductID","productsMap","subscriptionHelper","isSubscriptionValid","clientHasRequiredLevelForSlot","Levels","ActivitiesLevels","l","ActivityID","LevelID","isClientLevelGoodForSlot","level","ActivityLevels","Required","currentPeriodID","currentPricingIndex","currentClientPricingIndex","Pricing","ignoredIndex","isCurrentClientPricing","dateHelpers","newPricing","newClientPricings","isToday","subtract","endOf","startOf","Validity","formatDateAPI","addToDateTime","getDefaultClient","RCS","NAF","Phone","assignCardToClient","cardIndex","dissociateCardFromClient","cardNumberIndex","d","changeDateFormat","fIn","fOut","elapsedTimeSince","units","durationBetweenDates","d1","d2","formatDurationInSecondsHuman","formatDurationInMinutesHuman","abs","minutes","hours","inHours","min","humanReadableDuration","days","Math","floor","seconds","formatDateUS","parsedDate","year","isDateFormatValid","formatDateTime","formatDateTimeFile","formatDateTimeSeconds","formatDateHuman","formatDateWeek","formatHumanBirthDate","formatTime","formatTimeSecs","formatHourShort","formatWeekDay","formatWeekNumber","unit","add","prevDay","nextDay","prevWeek","nextWeek","nextMonth","isThisHour","hour","timeNow","dateNow","datetimeNow","isSameOrAfter","compareDate","isSame","compareDateDesc","getAge","getWeekdayLabel","dayNumber","locale","getGolangWeekday","isoWeekday","getWeekdayFromGolang","weekday","getWeekNumber","week","getMonthLabel","getMonthShortLabel","formatDay","getDateDay","day","getDateMonth","month","isSameDay","getDateAtWeekdayAfter","dateRef","refDateWeekday","daysToAdd","getDateAtWeekdayBefore","daysToSub","currentDate","yesterday","previousWeekStart","previousWeekEnd","currentWeekStart","currentWeekEnd","previousMonthStart","previousMonthEnd","currentMonthStart","currentMonthEnd","currentYearStart","currentYearEnd","previousYearStart","previousYearEnd","startOfDay","endOfDay","isRequiredAndNotEmptyRule","isIntegerRule","isInteger","isPositiveRule","isPositive","isIntegerOrNullRule","isPositiveOrNullRule","isPositiveOrZeroRule","isPositiveOrZero","isNumericRule","isNumeric","isNumericOrNullRule","isGreatherThanRule","parseFloat","isGreatherOrEqualRule","decimals","isLessThanRule","isLessOrEqualRule","isEmailRule","isValidEmail","isEmailOrNullRule","isTimeRule","isDateFormatRule","f","containsUppercaseCharRule","containsLowercaseCharRule","containsNumberRule","containsSpecialCharRule","isStringLongerThanRule","defaultParams","autoPoweroffKiosks","mainDefaultModule","bookingCancellationDaysLimit","mailerWebsiteName","mailerWebsiteLink","mailerLogoUrl","mailerFrom","mailerCopyright","mailerCustomSpaCreate","mailerCustomSpaModify","mailerCustomSpaDelete","mailerCustomSpaReminder","mailerCustomActivitiesConfirm","mailerCustomActivitiesCancel","mailerCustomSaleConfirmation","mailerCustomSendAllDocuments","smserSender","smserGroupBy","constants","smserCustomMessageSpaBookings","smserAwaitingResponseSpaBookings","smserOperator","smserEndpoint","smserApplicationKey","smserApplicationSecret","smserConsumerKey","smserSelectedService","planningStartHour","planningStartMin","planningEndHour","planningEndMin","planningDays","planningShowFilling","bookingOpeningDate","numberOfWeekVisible","slotVisibilityUnlockWeekday","slotVisibilityUnlockTime","cancellingDelay","limitTimeForBooking","extendingValidityDateForSubscriptions","hoursBeforeImmediateBooking","maxImmediateBookingsByDay","bookingsLimit","bookingsLimitNormalConstraint","bookingsLimitHighConstraint","bookingsLimitMode","spaAbsencesAmountWarning","bookingMarginMinutes","subscriptionPassingDelayMinutes","timePassMinDebit","timePassMinRemaining","timePassMinStop","uniqueDebitPerZone","requireCovidPass","covidPassingDelayMinutes","enableLateExitPenalty","denyEmptyHourlyPassOnExit","lateExitDelay","lateExitBookingTolerance","enableSubExpirationBookingCheck","bookingValidatesEntireDay","exitDelayBeforePayLater","exitDelayAfterPayLater","exitUpdelayBeforePayLaterWithSpaBooking","durationExitAuthAfterTimeslot","showAccessControlProductFamilies","clubTimeslotsDisplayStartOffset","autoExportEnabled","autoExportEmail","autoExportSelected","autoExportFrequency","autoExportDay","autoExportTime","sageEmail","generateSheetAfterSaleConfirmed","statsExportsExcelDisplayNoData","statsSeason","start","end","statsPerformanceTresholds","first","second","third","lockersDelayBetweenReservations","lockersBlockOpeningIfLate","lockersScheduledHistoryFetch","lockersIntervalBetweenGatewayLoops","lockersUniqueMasterCode","lockersGlobalMasterCode","lockersBuzzer","lockersBlockOnFails","lockersAutoOpening","lockersAutoOpeningHour","lockersAutoOpeningDays","lockersAutoClosing","lockersLed","quotationsPaymentTypesCreditCard","quotationsPaymentTypesDeferred","quotationsPaymentTypesBankTransfer","quotationsExpirationDelay","quotationsSalesExpirationDelay","quotationsVouchersExpirationDelay","quotationsMinimumAmount","quotationsOrderFooterText","quotationsAttachedFileId","paypalEnabled","paypalLiveClientId","paypalSandboxClientId","paypalLiveSecretId","paypalSandboxSecretId","paypalMode","payfipEnabled","payfipClientId","payfipMode","webEstablishment","formatParams","formattedParams","formatParam","camelCaseName","$1","formatGlobalParams","parseParams","parsedParams","toString","stringify","split","join","toLowerCase","subscription","productData","Discontinued","Paused","SubscriptionLimitDate","SubscriptionStartDate","Quantity","isSubscriptionCompatibleFor","bookingSlot","activity","getClientCompatibleSubscriptions","subs","isSubscriptionValidFor","getCardsValidSubscriptionsFor","cardsHasValidSubscriptionFor","subscriptionQuantity","Offset","Sort","fieldIdx","groupBy","xs","reduce","rv","equals","Date","getTime","prototype","k","newUUID","crypto","getRandomValues","Uint8Array","dataURL","base64Data","mimeType","binaryData","atob","arrayBuffer","ArrayBuffer","uint8Array","charCodeAt","Blob","fileToBase64","humanFileSize","size","log","pow","capitalize","str","charAt","negate","numberStr","neg","isUUID","pattern","RegExp","turnstilesTypes","passingTypes","passingDirections","turnstilesStates","accessControlEventTypes","searchStr","url","response","features","feature","properties","city","postcode","Streetnum","housenumber","_context","context","getFullAddress","fullAddress","addressHelpers","getSlotCancellationLimit","cancelDelay","StartDate","getAgeLimits","slotRepeat","minAge","MinAge","maxAge","MaxAge","typeMinAge","TypeMinAge","typeMaxAge","TypeMaxAge","minAgeTolerance","MinAgeToleranceMonths","maxAgeTolerance","MaxAgeToleranceMonths","AgeMinType","MinAgeDelta","AgeMaxType","MaxAgeDelta","MinAgeTolerance","MaxAgeTolerance","clientMatchAge","startDate","limits","minAgeMonth","maxAgeMonth","DeltaMode","clientAgeInMonth","clientMatchActivityMedicalCert","certValidity","validMedicert","Activity","IsMedicertRequired","MedicertIssueDate","MedicertLimitDate","getSlotAgeIntervalText","getSlotAgeUnit","bookingStatuses","bookingRepeatStatuses","bookingSlotWebModes","bookingSlotRepeatPublicationStatuses","bookingCheckCodes","bookingsHelper","clientFields","clientHelper","daysOfWeek","daysOfMonth","exportFrequencies","exportFrequency","dayOfWeek","dateHelper","padZero","len","zeros","getColorForString","hash","lightOrDark","g","hsp","sqrt","invertColor","hex","HexToHSL","H","cmin","cmax","max","delta","round","changeColorLum","lum","rgb","pastelizeColor","HSLToHex","darkenizeColor","HexToRGBA","hexCode","opacity","turnstilesStateColor","parentState","turnstilesState","bookingStatusColor","bookings","bookingStatus","parseColor","createElement","rgba","body","appendChild","red","green","blue","alpha","getComputedStyle","parentNode","removeChild","colorsHelper","subscriptionTypeStr","subscriptionType","bookingStatusStr","bookingSourceStr","bookingSource","saleType","sale","turnstileTypeStr","turnstileType","turnstileDirectionStr","passingDirection","passingTypeStr","passingType","passingDirectionStr","accessControlEventTypeStr","accessControlEventType","createdSinceOptions","salesTypes","turnstilesTypeAvailablesForImmediateDebit","turnstilesDirections","subscriptionTypes","collectionLabels","cashbook","grandtotal","param","period","passings","booking_slot","textValues","bookingSourceIcon","bookingStatusIcon","turnstilesStateIcon","turnstileTypeIcons","getDisableActivities","activitiesId","disable","activityId","act","activityDuration","removeMarginBefore","removeMarginAfter","duration","Duration","MarginDurationBefore","MarginDurationAfter","activityEndMoment","spaBooking","Timestamp","RemoveMarginBefore","RemoveMarginAfter","spaHelper","templateTypes","selectedTemplateParam","templateType","countries","uppercase","isValidPostalCode","country","ok","locationHelper","lockersStates","lockersStatuses","lockersAccessModes","lockersBookingModes","detail","lockersIncidentsTypes","lockersBookingStates","lockersEventTypes","ledOptionsTypes","daysTypes","lockersState","lockersStatus","lockersAccessMode","lockersBookingMode","lockersIncidentType","lockersBookingState","lockersEventType","ledOptionsType","daysType","helpers","onlineModules","requiredPerm","hasLandingPage","bookingTerminalPlanningTypes","billingModeTypes","paramsHelper","renewModeBalanceType","renewModeBalanceTypes","renewModeValiditytType","renewModeValiditytTypes","groupExitMode","groupExitModes","getSubscriptionLimitDate","limitDate","DurationType","ValidityDuration","EndValidityDate","isProductInStockAtDateUsingProductsStockConsumption","productsStockConsumption","outOfStockDate","getProductOutOfStockDateFromProductsStockConsumption","Consumptions","consumption","RemainingStock","isEstablishmentStockEmpty","establishmentID","takenQuantity","Stock","StocksByEstablishment","stockInfo","EstablishmentID","prod","productInPack","totalQuantity","isEstablishmentStockBlocked","StockMinForSale","getEstablishmentProductStockInfo","getEstablishmentProductStock","isProductAdjustable","Adjustable","familyTypes","pricingFilters","productFiltersTypes","selectablesPricingsFilters","familyType","familyTypeIcon","getPaymentName","allPaymentType","paymentType","pt","getSaleProductsQuantity","quantity","Lines","line","getSaleLine","forEachSaleLine","func","clientID","getSaleTotalByClient","clientId","total","isProductInSale","inSale","cliID","getProductPriceForClient","clientPricingID","clientHelpers","productPricing","Price","getSaleDiscountCodes","clientLines","SpecialPrice","DiscountCodes","saleTypes","saleStates","discountConditionTypes","validityTypes","durationTypes","frequencies","frequenciesAlt","firstPurchaseModes","TURNSTILE_STATE_OFFLINE","TURNSTILE_STATE_READY","TURNSTILE_STATE_ERROR","turnstilesGroupTypes","ACCESS_CONTROL_EVENT_WRNG_LOOP_A_BROKEN","ACCESS_CONTROL_EVENT_WRNG_LOOP_B_BROKEN","turnstilesACBoxState","box","Turnstiles","turnstileGroupType","isPassingDateValid","mm","bookingRepeatStatus","bookingSlotWebMode","bookingSlotRepeatPublicationStatus","bookingCheckCode","civilite","sex","orgType","fileTypes","mimeTypes","fileDocumentTypes","acceptedFileTypes","getFileType","getFileDocumentType","family","SALE_TYPE_AVOIR","SALE_TYPE_CORRECTION","valueDescription","useProductsIDs","validateValueRules","formsHelper","CreditNote","Correction","saleState","discountType","curencySymbol","discountTypes","prefix","formatValue","template","DiscountValue","iconColor","productOfferedAmount","UnchoosableProductsIDs","discountConditionType","durationType","productSubscriptionDurationText","productSubscription","durationTypeLabel","subscriptionStatus","getTimeslots","createTimeslots","updateTimeslots","deleteTimeslot","getTimeslotGroup","getTimeslotsGroup","updateTimeslotGroup","GroupID","deleteTimeslotGroup","getTimeslotTemplates","createTimeslotTemplate","updateTimeslotTemplate","deleteTimeslotTemplate","postRefreshTimeslots","getScan","postScanFlash","getPenalties","recreditPenaltyPassing","updateZoneProfile","getZoneProfiles","deleteZoneProfile","addTurnstilesOnZoneProfile","ZoneProfileID","refreshTurnstiles","getTurnstilesInZoneProfileByAreaID","getAccessControlLogs","getClientAccounts","postClientCreateAccount","postClientDisableAccount","patchClientOnlineUser","postClientEnableAccount","postClientPermissions","getTrainers","getSellers","getSellersProfils","postSeller","putSeller","updateAccountPassword","accountId","getPermissionsProfiles","createPermissionsProfile","updatePermissionsProfile","getActivities","getPeriodicActivities","getActivity","getActivitiesFamilies","getLevels","getAreas","createArea","updateArea","getAreasAttendance","areas","AreaID","login","user","loginToken","token","lostPassword","getRenewPasswordToken","renewPassword","getClientUnits","getClientAlerts","createClient","updateClient","upsertClientMandate","mandate","updateClientSubscriptions","deleteClient","reactivateClient","mail","addSubscriptionToClient","baseURL","Config","BaseURL","request","common","Authorization","currentRoute","global","cashRegisterIPC","emit","getTurnstiles","getPassings","sendTurnstilePassing","getPassingsExcel","responseType","postGroups","putGroups","Params","Data","deleteGroups","sendAccessControlGroupSignal","getHardwareDiscovery","getHardwareNodeInfo","getHardwareConfigPuppet","postHardwareConfigPuppet","getHardwareConfigStreambox","getHardwareConfigPreRunSH","getHardwarePuppetFacts","postHardwarePuppetApply","postHardwareNetworkIpInterface","intf","udp","encodeURI","postHardwareConfigStreambox","postHardwareConfigPreRunSH","postHardwareRestartStreambox","postHardwareReboot","postHardwareHostname","hostname","getDisplays","getDisplay","postDisplay","updateDisplay","removeDisplay","getFile","filename","getMedia","postMedia","removeMedia","getVideos","getPdfs","getImages","getFiles","getActivityForPlanning","moduleId","getLockerGateways","putLockerGateways","getLockers","getLocker","getUnassociatedLockers","putLocker","putLockerSettings","deleteLocker","changeAreaLockersState","changeBlockLockersState","changeLockersState","changeLockerState","changeLockersConfig","associateLocker","dissociateLocker","changeLockerPreparation","putLockersMastercode","getLockersTypes","getLockersType","postLockersType","putLockersType","deleteLockersType","getLockersBlocks","getLockersBlock","postLockersBlock","putLockersBlock","deleteLockersBlock","putLockersBlockSettings","getLockerBookings","getLockerBooking","putLockerBooking","getLockerBookingIncidents","bookingId","checkAttributedLockersAllOpened","newLockerBooking","stopLockerBooking","cancelLockerBooking","retryLockerAttribution","getLockersIncidents","putLockersIncidents","getLockersEvents","refreshHistory","putLockersGlobalSettings","getEstablishmentWithLockersStats","getEstablishmentsWithLockersStats","getEstablishmentsWithAffectableLockers","getAreaWithLockersStats","getAreasWithLockersStats","getAreasWithAffectableLockers","getBlockWithLockersStats","getBlocksWithLockersStats","getBlocksWithAffectableLockers","getModules","getParams","postParams","getCities","updateMailer","updateSMSer","getMailerPreview","previewType","getGlobalParams","postGlobalParams","getPeriods","addOrUpdatePeriod","newPeriod","deletePeriod","getPricings","postPricing","postPercentagePricing","getWristbandTemplates","getWristbandPrinterType","upsertWristbandTemplate","upsertWristbandPrinterType","deleteWristbandTemplate","deleteWristbandPrinterType","getPaymentType","getEstablishments","getEstablishment","postEstablishment","putEstablishment","setDefaultEstablishment","getSuppliers","postSuppliers","getTvaTypes","addOrUpdateTvaType","getChartOfAccounts","getAutoDebitModes","GetAutodebitsSchedules","UpsertAutodebitMode","getDiscountsTemplates","getActionHistory","getProducts","getProductsStats","getPaginatedProducts","cancelToken","getFamilies","GetListSubscriptionType","getProductsStockConsumption","pickFromStock","getFamiliesTreeWithProducts","getProduct","postProduct","putProduct","productUUID","postFamily","putFamily","familyUUID","deletePricingFromPeriod","AddOrUpdateProductStockParams","DeleteLastStockEntry","AddOrUpdateProductStock","TransferStock","postCollection","putCollection","getCollections","getCollection","deleteCollection","getQuotation","quotationuuid","getPaginatedQuotations","getQuotations","postQuotation","putQuotation","cancelQuotation","getQuotationLine","lineuuid","getQuotationLines","postQuotationLine","putQuotationLine","deleteQuotationLine","getQuotationhHistory","getQuotationhHistories","getQuotationSale","getQuotationSales","postQuotationSale","putQuotationSale","saleuuid","getQuotationSaleBill","orderuuid","getQuotationExportPDF","getQuotationExportExcel","getQuotationsExportExcel","postQuotationSendMail","getQuotationPricing","pricinguuid","postQuotationPricing","putQuotationPricing","deleteQuotationPricing","getQuotationProduct","productuuid","getQuotationProducts","postQuotationProduct","putQuotationProduct","deleteQuotationProduct","initQuotationProducts","getQuotationProductsFamilie","familyuuid","getQuotationProductsFamilies","postQuotationProductsFamily","putQuotationProductsFamily","deleteQuotationProductsFamily","getQuotationProductsCatalogue","catalogueuuid","postQuotationProductsCatalogue","putQuotationCatalogue","deleteQuotationCatalogue","getQuotationClient","clientuuid","getQuotationClients","postQuotationClient","putQuotationClient","importClients","deleteQuotationClient","getQuotationClientProductsAndFamilies","getQuotationSalesRepresentative","postQuotationSalesRepresentative","putQuotationSalesRepresentative","deleteQuotationSalesRepresentative","getPaginatedSales","getSale","getSaleBill","getPendingSubscription","getSpaUniverses","getSpaUniverse","createSpaUniverse","updateSpaUniverse","getSpaWebAvailabilitiesModels","getSpaWebAvailabilitiesModel","postSpaWebAvailabilitiesModel","putSpaWebAvailabilitiesModel","getSpaUniverseWebAvailabilities","universeUUID","postSpaUniverseWebAvailabilities","putSpaUniverseWebAvailabilities","webAvailabilityUUID","deleteSpaUniverseWebAvailabilities","deleteSpaUniverseWebAvailabilitie","getSpaResources","getSpaResource","createSpaResource","updateSpaResource","updateSpaResourceActivities","getSpaPersonnels","getSpaPersonnel","createSpaPersonnel","updateSpaPersonnel","updateSpaPersonnelActivities","getSpaPersonnelsUnavailabilities","createSpaPersonnelUnavailability","updateSpaPersonnelUnavailability","deleteSpaPersonnelUnavailability","deleteSpaPersonnelUnavailabilityMass","getSpaUnavailabilitiesModels","createSpaUnavailabilityModel","updateSpaUnavailabilityModel","deleteSpaUnavailabilityModel","createSpaApplyUnavailabilityModel","getSpaActivities","getSpaActivity","createSpaActivity","updateSpaActivity","getSpaActivityFamilies","createSpaActivityFamily","updateSpaActivityFamily","deleteSpaActivityFamily","getSpaProduct","createSpaProduct","updateSpaProduct","getSpaBookings","getPaginatedSpaBookings","updateSpaBooking","sendSpaBookingNotification","getClientsWithUnplacedSpaBookings","createSpaSale","getSpaPendingSales","getSpaPendingProducts","enableSpaPendingSale","deleteSpaSale","syncAllStats","deleteAllStats","resetAllStats","refreshAllStats","getSyncAllStatsTimetables","getNewSyncAllStatsTimetables","getSyncAllStatsTimetablesFormatted","getPredictionsPassings","getStatsDashboardLayouts","upsertStatsDashboardLayout","getStatsResaYearsWithData","getStatsResaFirstYearWithData","getStatsResaLastYearWithData","getStatsPassingsFrequentations","getStatsPassingsPlannings","getStatsPassingsByProductTypeExcelGlobal","getStatsPassingsByProductExcelGlobal","getStatsPassingsByActivityExcelGlobal","postStatsPassingsExcelClientsDataTable","getStatsSalesPeriodicReport","getSoldProductsPeriodicReport","getStatsSpaResourcesOccupationRates","getStatsSpaPersonnelsOccupationRates","selectSavedFiltersResaNames","selectSavedFiltersResa","insertSavedFilterResa","updateSavedFilterResa","deleteSavedFilterResa","getStatsResaFrequentationsParActivite","getStatsResaDescriptivesProportionsTypesResa","getStatsResaDescriptivesActivitiesData","getStatsResaDescriptivesClientsAge","getBookingsSlotsDetailled","getBookingsSlotsCount","getTrainersDetailled","getStatsResaPlanningsCRByDateRange","getTemplates","getTemplate","createTemplate","updateTemplate","getTemplatePreview","getDynamicValues","getVouchers","options","getGiftVouchersExcel","downloadVoucher","updateVoucher","massPushVouchers","postSheets","putSheet","getSheets","getPaginatedSheets","getSheet","getSheetsPdf","postSheetsPdfPreview","getSheetsExcel","getSheetsInvoice","getVoucherSheetsExcel","postVoucherSale","getWeekTypes","putWeekType","postWeekType","deleteWeekType","process","VUE_APP_API_HOST","origin","WSURL","_process$env$VUE_APP_","formatDateCustom","layout","getDiff","unitOfTime","parsedDate1","parsedDate2","getWeekDayName","getWeekDayNumber","dateBetween","isBetween","getEstablishmentFromID","establishment","establishments","getEstablishmentAreas","getAreaFromID","areaID","area","getProductByID","defaultRoutes","cashregister","nextRoute","DefaultModule","webviewData","wvGetData","wvEmit","channel","args","wvEmitPromise","emitPromise","wvAuthError","wvLoggedIn","wvResumeSale","saleId","SaleID","wvRemoveSaleLine","saleLineID","unreadAmount","wvPeriodicBookingSaved","periodicBookingID","wvPrintSlotParticipants","slotID","WSFrameTypeKeepAlive","WSFrameTypeError","WSFrameTypeSubscribe","WSFrameTypeNotify","WSFrameTypeRequestAuth","WSFrameTypeResponseAuth","WSFrameTypeUpdateTurnstile","WSFrameTypeUnsubscribe","wsState","Authenticated","onmessage","_ws_OnMessage","_ws_Unregister","json","ws_cb_onError","_ws_sendWithRetry","skipRetry","sendObj","ws_AuthenticateByDisplayID","displayID","DisplayID","ws_Subscribe","ws_Unsubscribe","callbacks","numSubs","getSubscribersFor","ws_UpdateTurnstile","turnstile","path","redirect","children","new","hasRights","rights","Permissions","isAuthenticated","setForbidden","checkRights","allowed","Router","mode","base","routes","AuthRoutes","PlanningRoutes","TurnstilesRoutes","ClientsRoutes","ProductsRoutes","QuotationRoutes","SpaRoutes","StatsRoutes","BusinessRoutes","LockersRoutes","ActivitiesRoutes","SetupRoutes","CashregisterWebviewsRoutes","KiosksRoutes","DisplaylandRoutes","beforeEach","to","next","nearestWithTitle","reverse","initialState","auth","tsBoxes","weekTypes","accessTimeslots","families","accessTimeslotsLoading","navigation_drawer_permanent","forbidden","authStatus","authSeller","rightName","rightNames","getProductLabel","getProductLabelShort","LabelShort","familiesById","familiesTree","recurseGetParents","fam","Subfamilies","FullPathLabel","navigationDrawerState","actions","Result","userInfo","User","DimsBackofficeURL","VcrURL","Seller","autologin","ApiCtm","IsSubscription","ApiAreas","found","main","ApiWeekTypes","getAccessTimeslots","ApiAccessControl","mutations","reset_main","initial","auth_request","set_auth_status","auth_success","auth_error","set_auth_permissions","perms","set_forbidden","set_turnstiles_boxes","set_products","set_families","set_areas","set_weekTypes","set_accessTimeslots","set_accessTimeslotsLoading","indoorpos","paramsMixin","periods","tva","chartOfAccounts","suppliers","wristband","wristbandPrinterTypes","selectedEstablishments","autodebitModes","discountsTemplates","cities","EndDate","establishmentsById","IsDefault","season","currencySymbol","DefaultValue","ApiParams","getWristband","getWristbandPrinter","getSelectAllEstablishments","reset_params","set_modules","set_params","set_cities","set_formatted_params","set_global_params","set_periods","set_pricings","set_auto_debit_mode","set_discounts_templates","set_suppliers","set_tva","set_chart_of_accounts","set_wristband","set_wristband_printer","set_paymentType","set_establishments","upsert_establishment","set_selectedEstablishments","enabledEstablishments","add_selectedEstablishments","preSelectFilterSelectedName","conditionsSatisfied","toggle_multiple","second_toggle_multiple","selectedActivities","selectedFamilies","saison","second_saison","saison_picker_checkbox","date_picker_checkbox","du_annee","du_mois","du_jour","au_annee","au_mois","au_jour","du_menu","du_picker","toISOString","au_menu","au_picker","second_date_range_checkbox","second_du_annee","second_du_mois","second_du_jour","second_au_annee","second_au_mois","second_au_jour","second_du_menu","second_du_picker","second_au_menu","second_au_picker","annee","mois","jour","second_annee","second_mois","second_jour","picker","picker_diplay","menu","second_year","second_month","second_day","second_picker","second_picker_diplay","second_menu","statsFilterResaBilansPeriodiques","reset_stats_resa_bilans_periodiques","getStatsActuDateBtnJour","monthsList","resa","bilansperiodiques","getStatsActuDateBtnMois","getStatsActuDateBtnAnnee","getStatsActuDateBtnValidate","getStatsSecondActuDateBtnJour","getStatsSecondActuDateBtnMois","getStatsSecondActuDateBtnAnnee","getStatsSecondActuDateBtnValidate","getStatsActuDateRange","getStatsActuDate","set_statPreSelectFilterSelectedName","set_statsSaisonPickerCheckbox","set_statsDatePickerCheckbox","set_statsSecondDateRangeCheckbox","set_statsSaison","set_statsSecondSaison","set_statsDuAnnee","set_statsDuMois","set_statsDuJour","set_statsSecondDuAnnee","set_statsSecondDuMois","set_statsSecondDuJour","set_statsAuAnnee","set_statsAuMois","set_statsAuJour","set_statsSecondAuAnnee","set_statsSecondAuMois","set_statsSecondAuJour","set_statsDuPicker","set_statsAuPicker","set_statsSecondDuPicker","set_statsSecondAuPicker","set_statsAnnee","set_statsMois","set_statsJour","set_statsSecondAnnee","set_statsSecondMois","set_statsSecondJour","set_statsPicker","set_statsSecondPicker","set_statsPickerDisplay","picker_display","set_statsSecondPickerDisplay","second_picker_display","date_mode_choisi","date_mode_annee_value","date_mode_mois_value","date_mode_semaine_value","date_mode_jour_value","date_mode_saison_value","mode_saison_annee","mode_annee_du_annee","mode_annee_au_annee","mode_mois_du_annee","mode_mois_au_annee","mode_mois_du_mois","mode_mois_au_mois","mode_semaine_du_annee","mode_semaine_au_annee","mode_semaine_du_semaine","mode_semaine_au_semaine","selected_animateurs","selected_horaires","selected_activites","selected_articles","statsFilterResaFrequentations","reset_stats_resa_frequentations","getStatsSelectAllTrainers","animateurs","anim","getStatsSelectAllTimetables","horaires","horaire","getStatsSelectAllActivities","activites","activite","getStatsSelectAllProducts","articles","article","set_date_mode_choisi","planning_second_au_annee","set_date_mode_annee_value","set_date_mode_mois_value","set_date_mode_semaine_value","set_date_mode_jour_value","set_date_mode_saison_value","set_mode_saison_annee","set_mode_annee_du_annee","set_mode_annee_au_annee","set_mode_mois_du_annee","set_mode_mois_au_annee","set_mode_mois_du_mois","set_mode_mois_au_mois","set_mode_semaine_du_annee","set_mode_semaine_au_annee","set_mode_semaine_du_semaine","set_mode_semaine_au_semaine","set_selected_animateurs","add_selected_animateurs","set_selected_horaires","add_selected_horaires","set_selected_activites","add_selected_activites","set_selected_articles","add_selected_articles","planning_selectedColorsForEventsPerformances","planning_selectedColorsForEventsEvolutions","planning_selectedActivities","planning_selectedFamilies","planning_threshold_one","planning_threshold_two","planning_threshold_three","planning_timeModeSelected","planning_saisonChoisie","planning_second_saisonChoisie","planning_anneeChoisissables","planning_anneeChoisie","planning_second_anneeChoisie","planning_moisChoisi","planning_second_moisChoisi","planning_du_annee","planning_du_mois","planning_du_jour","planning_au_annee","planning_au_mois","planning_au_jour","planning_du_menu","planning_du_picker","planning_au_menu","planning_au_picker","planning_second_du_annee","planning_second_du_mois","planning_second_du_jour","planning_second_au_mois","planning_second_au_jour","planning_second_du_menu","planning_second_du_picker","planning_second_au_menu","planning_second_au_picker","statsFilterResaPlannings","reset_stats_resa_plannings","getStatsActuDateRangePlanningCR","plannings","set_planning_selectedColorsForEventsPerformances","add_planning_selectedColorsForEventsPerformances","set_planning_selectedColorsForEventsEvolutions","add_planning_selectedColorsForEventsEvolutions","set_planning_selectedActivities","add_planning_selectedActivities","set_planning_selectedFamilies","planning_selectedEvolutionsForEvents","add_planning_selectedFamilies","set_planning_threshold_one","set_planning_threshold_two","set_planning_threshold_three","set_anneeChoisissables","add_anneeChoisissables","set_statsPlanningCRTimeModeSelected","set_saisonChoisie","set_second_saisonChoisie","set_anneeChoisie","set_moisChoisi","set_second_anneeChoisie","set_second_moisChoisi","set_statsPlanningCRDuAnnee","set_statsPlanningCRDuMois","set_statsPlanningCRDuJour","set_statsPlanningCRSecondDuAnnee","set_statsPlanningCRSecondDuMois","set_statsPlanningCRSecondDuJour","set_statsPlanningCRAuAnnee","set_statsPlanningCRAuMois","set_statsPlanningCRAuJour","set_statsPlanningCRSecondAuAnnee","set_statsPlanningCRSecondAuMois","set_statsPlanningCRSecondAuJour","set_statsPlanningCRDuPicker","set_statsPlanningCRAuPicker","set_statsPlanningCRSecondDuPicker","set_statsPlanningCRSecondAuPicker","selectedTimeScale","SC","TimeScales","SEASON","selectedStepMode","StepModes","timeScaleBegin","timeScaleEnd","selectedSeason","selectedActivitiesFamilies","selectedActivity","recursiveProductsFamilies","selectedProductsFamilies","selectedProducts","selectedSellers","selectedTurnstiles","selectedUniverses","selectedPersonnels","annees_choisissables","familles","colorVeryBad","colorBad","colorGood","colorVeryGood","colorVeryLow","colorLow","colorHigh","colorVeryHigh","colorNone","colorBetter","colorWorst","colorSame","frequentations","statsFilterResa","reset_stats_resa","checkIfYearsWithDataAreLoaded","StatsApi","Res","checkIfYearsWithDataAreLoadedNP","checkIfFirstYearWithDataIsLoaded","checkIfLastYearWithDataIsLoaded","mode_semain_au_annee","getStatsLoadTrainers","AccountsApi","tmp","y","getStatsLoadActivities","ActivitiesApi","getStatsLoadFamilies","getStatsLoadProducts","set_selectedTimeScale","set_selectedStepMode","set_timeScaleBegin","set_timeScaleEnd","set_selectedSeason","set_selectedActivity","set_selectedActivities","set_selectedClients","add_selectedClients","set_recursiveProductsFamilies","set_selectedProductsFamilies","add_selectedProductsFamilies","set_selectedProducts","add_selectedProducts","set_selectedSellers","set_selectedUniverses","set_selectedPersonnels","set_selectedTurnstiles","add_selectedTurnstiles","set_annees_choisissables","add_annees_choisissables","set_animateurs","add_animateurs","set_horaires","add_horaires","set_activites","add_activites","set_familles","add_familles","set_articles","add_articles","setup","navigationDrawer","miniState","prefenreceMiniState","reset_stats","locationsZoneTree","selectedZoneTreeLocation","set_locations_zone_tree","tree","set_selected_zone_tree_location","universes","universe","spaActivities","personnels","resources","spaParams","spaPlanningsStartHour","spaPlanningsStartMin","spaPlanningsEndHour","spaPlanningsEndMin","spaHumanConfirmation","spaShowShortLabel","spaColumnsShortLabel","spaGoBackToday","firstInterval","intervalCount","allowedHours","dayDuration","unavailabilitiesReasons","unavailabilitiesColors","planningDate","planningPersonnels","planningResources","showPersonnels","showResources","intervalMinutes","intervalHeight","_state$spaActivities$","spaActivitiesById","_state$spaActivities$2","_state$spaProducts$st","spaProductsById","_state$spaProducts$st2","_state$personnels$sta","personnelsById","_state$personnels$sta2","_state$resources$stat","resourcesById","_state$resources$stat2","_state$planningDate$s","_state$planningPerson","_state$planningResour","_state$showPersonnels","_state$showResources$","_state$intervalMinute","_state$intervalHeight","getUniverses","u","_universes$find","uIdx","_res$data2","_res$data3","getPersonnels","_res$data4","getResources","_res$data5","reset_spa","set_universes","set_universe","startTime","plannings_start_time","endTime","plannings_end_time","minute","human_confirmation","show_short_label","columns_short_label","go_back_today","spaSmallCalendarIntervalWidth","small_calendar_interval_width","spaWebAllowedTimetables","web_allowed_timetables","unavailabilities_reasons","unavailabilities_colors","set_spa_activities","set_spa_products","set_personnels","set_resources","set_planning_date","set_planning_personnels","set_planning_resources","set_show_personnels","set_show_resources","set_interval_minutes","set_interval_height","planningActivities","planningActivityFamilies","trainers","levels","getPlanningActivities","getPlanningActivityFamilies","train","set_activities","set_activity_families","set_trainers","set_levels","subscribers","resetSubscribers","subscribeTo","unsubscribeFrom","reset_ws","reset_subscribers","subscribe","unsubscribe","getDefault","dynamicValues","iterableContext","Area","Width","Height","PageBreakHeight","HeaderHeight","FooterHeight","Background","StoredFileName","OriginalFileName","DateCreated","BackgroundCover","Holders","Editable","focusedHolder","focusedBlock","zoom","resetTemplate","setDynamicValues","setTemplate","updateTemplateArea","addHolder","holder","updateHolder","update","unfocus","setIterableContext","focusBlock","block","focusHolder","holderID","deleteFocusedHolder","focusedHolderIndex","zoomIn","zoomOut","loadDynamicValues","TemplatesApi","loadTemplate","upsertTemplate","getPreview","createObjectURL","templateDynamicValues","entry","inIterable","IterableAvailability","inSingle","SingleAvailability","contextDynamicValues","_getters$dynamicValue","available","MainBlock","BlockType","existIterableDynamicValues","getHolderByID","namespaced","gateways","lockerTypes","locationsTree","selectedTreeLocation","establishmentsWithLockersStats","areasWithLockersStats","blocksWithLockersStats","reset_lockers","set_gateways","update_gateways","gateway","updatedGatewayIndex","gtw","set_lockerTypes","types","reset_locker_incidents","new_locker_incident","set_establishments_with_lockers_stats","update_establishment_with_lockers_stats","updatedEstablishmentIndex","set_areas_with_lockers_stats","update_area_with_lockers_stats","updatedAreakIndex","set_blocks_with_lockers_stats","blocks","update_block_with_lockers_stats","updatedBlockIndex","set_locations_tree","set_selected_tree_location","getGateways","LockersApi","onGatewayUpdate","onLockerUpdate","locker","getLockerTypes","onLockerIncidentsViewed","loadLocationsStats","updateLocationsStats","blockID","concurrentLoad","displays","videos","pdfs","set_displays","set_videos","set_pdfs","set_images","ApiDisplayland","Vuex","plugins","createPersistedState","reducer","reduced","ws","rehydrated","turnstiles","resetAll","DAY","WEEK","CUSTOM","TimeScalesLabels","TimeScalesValues","BY_YEAR","BY_MONTH","BY_WEEK","BY_SEASON","BY_HOUR","StepModesLabels","StepModesValues","DateModeChosen","DateModeStep","PassingsOptions","TYPES","TrainersOptions","COUNT_BOOKINGS_SLOTS","COUNT_BOOKINGS","COUNT_BOOKINGS_SLOTS_WITHOUT_ACCOUNT","COUNT_PARTICIPATIONS","RATE_BOOKINGS_PER_PLACES_ON_SALES","RATE_PARTICIPATIONS_PER_PLACES_ON_SALES","RATE_PARTICIPATIONS_PER_BOOKINGS","COUNT_WORKING_HOUR","COUNT_WORKING_MINUTE","TimeScalesKP","StepModesKP","__webpack_module_cache__","cachedModule","loaded","__webpack_modules__","call","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","n","getter","__esModule","definition","defineProperty","enumerable","chunkId","promises","miniCssF","globalThis","hmd","obj","prop","hasOwnProperty","inProgress","dataWebpackPrefix","done","script","needAttach","scripts","getElementsByTagName","charset","nc","onScriptComplete","prev","clearTimeout","doneFns","bind","head","Symbol","toStringTag","nmd","paths","createStylesheet","fullhref","oldTag","linkTag","rel","nonce","onLinkComplete","errorType","realHref","insertBefore","nextSibling","findStylesheet","existingLinkTags","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}