{"version":3,"file":"js/app.efc7ba36.js","mappings":"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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,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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/../../neptune-js/sysgate.js","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/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/params.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=3e8b068f\"\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),_c('div',{attrs:{\"layout\":\"row\"}},[_c('v-text-field',{staticClass:\"mr-1 ml-8\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":\"N° de client\",\"clearable\":\"\"},model:{value:(_vm.client.OrgInfo.Number),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"Number\", $$v)},expression:\"client.OrgInfo.Number\"}}),_c('v-text-field',{staticClass:\"ml-1\",attrs:{\"filled\":\"\",\"dense\":\"\",\"label\":\"N° d'engagement\",\"clearable\":\"\"},model:{value:(_vm.client.OrgInfo.CommitmentNumber),callback:function ($$v) {_vm.$set(_vm.client.OrgInfo, \"CommitmentNumber\", $$v)},expression:\"client.OrgInfo.CommitmentNumber\"}})],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('div',{staticStyle:{\"position\":\"relative\"}},[_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)],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-combobox',{staticClass:\"ml-1\",attrs:{\"items\":_vm.countries,\"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=579ce1a9&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=579ce1a9&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 \"579ce1a9\",\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=3f6832ae&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=3f6832ae&prod&lang=scss\"\nimport style1 from \"./OdeonPopup.vue?vue&type=style&index=1&id=3f6832ae&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 \"3f6832ae\",\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()]),(_vm.voucher.Sale)?_c('div',[_vm._v(\" Vente n˚ \"+_vm._s(_vm.voucher.Sale.NumDoc.NumSeq)+\" \"),(_vm.voucher.Sale.CashRegisterID === '_WEB')?_c('span',[_vm._v(\"réalisée sur Internet\")]):(_vm.voucher.SaleKiosk)?_c('span',[_vm._v(\"réalisée sur la borne \"+_vm._s(_vm.voucher.SaleKiosk.Name))]):(_vm.voucher.SaleCashregister)?_c('span',[_vm._v(\"réalisée sur la caisse \"+_vm._s(_vm.voucher.SaleCashregister.Name))]):_vm._e(),(_vm.voucher.SaleEstablishment)?_c('span',[_vm._v(\" (\"+_vm._s(_vm.voucher.SaleEstablishment.Label)+\")\")]):_vm._e()]):_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' : '')+\" : \")]),_c('v-sheet',{staticClass:\"overflow-y-auto\",attrs:{\"max-height\":\"500px\"}},_vm._l((_vm.voucherDeliveredProducts),function(p,i){return _c('v-row',{key:i,attrs:{\"no-gutters\":\"\"}},[(p.Packed)?_c('v-col',{staticClass:\"d-flex align-center justify-center\",attrs:{\"cols\":\"1\"}},[_c('v-icon',{attrs:{\"color\":\"primary\",\"large\":\"\"}},[_vm._v(\"mdi-arrow-right-bottom-bold\")])],1):_vm._e(),_c('v-col',[_c('v-card',{class:{'d-flex': true, 'mt-2': !p.Packed, 'mx-4': true},style:({'z-index': p.Packed ? 0 : 1}),attrs:{\"outlined\":\"\",\"elevation\":p.Packed ? 0 : 4}},[_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(\" Disponible: \"+_vm._s(p.Amount)+\" \")])],1),_c('div')],1)],1)],1)],1)],1)}),1)],1):_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 : \")]),_c('v-sheet',{staticClass:\"overflow-y-auto\",attrs:{\"max-height\":\"500px\"}},_vm._l((_vm.voucherDeliveredProducts),function(p,i){return _c('v-row',{key:i,attrs:{\"no-gutters\":\"\"}},[(p.Packed)?_c('v-col',{staticClass:\"d-flex align-center justify-center\",attrs:{\"cols\":\"1\"}},[_c('v-icon',{attrs:{\"color\":\"primary\",\"large\":\"\"}},[_vm._v(\"mdi-arrow-right-bottom-bold\")])],1):_vm._e(),_c('v-col',[_c('v-card',{class:{'d-flex': true, 'mt-2': !p.Packed, 'mx-4': true},style:({'z-index': p.Packed ? 0 : 1}),attrs:{\"outlined\":\"\",\"elevation\":p.Packed ? 0 : 4}},[_c('v-avatar',{attrs:{\"tile\":\"\",\"color\":\"grey\",\"size\":p.Packed ? 110 : 130}},[_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\":\"19\"}},[_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\":\"3\",\"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(\" Disponible: \"+_vm._s(p.Amount)+\" \")]):(p.UsedAmount < 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)+\" / \"+_vm._s(p.Amount)+\" \")]):_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)+\" \")]),_c('div',{staticClass:\"d-flex align-center justify-end mt-2\"},[_c('v-btn',{attrs:{\"icon\":\"\",\"outlined\":\"\",\"small\":p.Packed,\"color\":\"primary\",\"disabled\":!p.canDecreaseUsedAmount},on:{\"click\":function($event){return _vm.ajustUsedAmount(p.index, -1)}}},[_c('v-icon',[_vm._v(\"mdi-minus\")])],1),_c('span',{staticClass:\"text-subtitle-2 mx-2\"},[_vm._v(\" \"+_vm._s(p.DeliveredAmount)+\" \")]),_c('v-btn',{attrs:{\"icon\":\"\",\"outlined\":\"\",\"small\":p.Packed,\"color\":\"primary\",\"disabled\":!p.canIncreaseUsedAmount},on:{\"click\":function($event){return _vm.ajustUsedAmount(p.index, 1)}}},[_c('v-icon',[_vm._v(\"mdi-plus\")])],1)],1)],1)])],1)],1)],1)],1)],1)}),1)],1):_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) || _vm.alwaysAllowCagnotteConversion))?_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.DeliveredAmount)+\"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=ec1cd876\"\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=56411641\"\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=56411641&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","\nimport { v4 as uuidv4 } from 'uuid'\nimport moment from 'moment'\n\nconst KEEP_ALIVE_INTERVAL = 60000\n\nexport const SYSGATE_STATE_LOADING = 'loading';\nexport const SYSGATE_STATE_READY = 'ready';\nexport const SYSGATE_STATE_DISCONNECTED = 'disconnected';\n\nexport default class Sysgate {\n\n constructor(autoreconnect = false, reconnectInterval = 1000, listeners = {}) {\n this.autoreconnect = autoreconnect\n this.reconnectInterval = reconnectInterval\n this.ws = null\n this.keepAliveInterval = null\n this.state = SYSGATE_STATE_DISCONNECTED\n this.callbacks = new Map()\n this.pendingRequests= new Map(),\n this.eventListeners = listeners || {} \n }\n\n // events are \"open\", \"close\", \"error\", \"message\"\n on(event, handler) {\n if (!this.eventHandlers[event]){\n this.eventListeners[event] = []\n }\n\n this.eventListeners[event].push(handler)\n }\n\n off(event, handler) {\n if (!this.eventListeners[event]){\n return\n }\n\n this.eventListeners[event] = this.eventListeners[event].filter(h => h != handler)\n }\n\n onEvent(event, payload){\n if (!this.eventListeners[event]){\n return\n }\n\n this.eventListeners[event].forEach(handler => handler(payload))\n }\n\n isLoading() {\n return this.state === SYSGATE_STATE_LOADING\n }\n\n isReady() {\n return this.state === SYSGATE_STATE_READY\n }\n\n connect() {\n this.state = SYSGATE_STATE_LOADING;\n this.ws = new WebSocket('ws://localhost:8156/api/ws')\n\n this.ws.addEventListener('open', () => { this._onOpen() })\n this.ws.addEventListener('close', () => { this._onClose() })\n this.ws.addEventListener('error', (event) => { this._onError(event) })\n this.ws.addEventListener('message', (payload) => { this._onMessage(payload) })\n }\n\n _onOpen() {\n this.keepAlive()\n\n this.state = SYSGATE_STATE_READY;\n\n // re-subscribe to all events\n this.callbacks.forEach((callbacks, eventType) => {\n if (callbacks.length > 0) {\n this.send('subscribe', { Resource: eventType })\n }\n })\n\n this.onEvent('open')\n\n this.reconnectInterval = 1000\n\n console.warn('Sysgate connected')\n\n if (!this.keepAliveInterval) {\n this.keepAliveInterval = setInterval(() => { this.keepAlive() }, KEEP_ALIVE_INTERVAL)\n }\n }\n\n _onClose(event) {\n this.state = SYSGATE_STATE_DISCONNECTED;\n\n if (!this.autoreconnect){\n console.error('sysgate socket closed', event)\n }\n\n if (this.autoreconnect) {\n // Socket closed, try to reconnect\n clearInterval(this.keepAliveInterval)\n this.keepAliveInterval = null\n setTimeout(() => {\n try{\n this.connect()\n } catch(err){\n // ignore\n }\n }, Math.min(this.reconnectInterval), 60000)\n this.reconnectInterval += 5000\n }\n\n this.onEvent('close', event)\n }\n\n _onError(err) {\n if (!this.autoreconnect){\n console.error('sysgate socket error', err, this.state)\n }\n\n this.onEvent('error', err)\n }\n\n _onMessage(event) {\n if (!event.data) {\n console.warn('empty message')\n return\n }\n\n const payload = JSON.parse(event.data)\n\n // console.log('message received', payload)\n\n let pendingRequest = this.pendingRequests.get(payload.ID)\n if (pendingRequest) {\n console.log(pendingRequest)\n this.pendingRequests.delete(payload.ID)\n if (payload.Channel == \"error\") {\n pendingRequest.reject(payload ? payload.Data : null)\n return\n }\n\n pendingRequest.resolve(payload ? payload.Data : null)\n }\n\n let handlers = []\n // manage callbacks\n const eventCallbacks = this.callbacks.get(payload.Channel)\n if (eventCallbacks) {\n let exclusiveCallbacks = eventCallbacks.filter(cb => cb.exclusive)\n if (exclusiveCallbacks.length) {\n // execute the latest added exclusive callback\n handlers.push(exclusiveCallbacks[exclusiveCallbacks.length - 1].handler) \n } else [\n handlers = eventCallbacks.map(cb => cb.handler)\n ]\n\n handlers.forEach(handler => handler(payload.Data))\n }\n\n // do other things\n this.onEvent('message', payload)\n\n }\n\n send(channel, frameData) {\n if (this.state !== SYSGATE_STATE_READY) {\n return new Promise((resolve, reject) => {\n reject(`send ${channel}: sysgate not ready`)\n })\n }\n\n const frame = {\n ID: uuidv4(),\n Channel: channel,\n Data: JSON.stringify(frameData),\n }\n\n // console.log('sending message', frame)\n\n this.ws.send(JSON.stringify(frame))\n\n return new Promise((resolve, reject) => {\n this.pendingRequests.set(frame.ID, { sendTimestamp: moment(), resolve, reject })\n })\n }\n\n subscribeEvent(eventType, callback, options) {\n let eventCallbacks = this.callbacks.get(eventType)\n if ((!eventCallbacks || !eventCallbacks.length)){\n eventCallbacks = []\n }\n\n eventCallbacks.push({\n handler: callback,\n exclusive: options && options.exclusive || false,\n })\n this.callbacks.set(eventType, eventCallbacks)\n\n if (this.state === SYSGATE_STATE_READY) {\n this.send('subscribe', {Resource: eventType})\n }\n }\n\n unsubscribeEvent(eventType, callback) {\n let eventCallbacks = this.callbacks.get(eventType)\n if (!eventCallbacks) {\n return\n }\n\n eventCallbacks = eventCallbacks.filter(cb => cb.handler != callback)\n this.callbacks.set(eventType, eventCallbacks)\n\n if (eventCallbacks.length == 0 && this.state === SYSGATE_STATE_READY) {\n this.send('unsubscribe', {Resource: eventType})\n }\n }\n\n // all helpers\n keepAlive() {\n this.send('keep-alive')\n }\n\n initiatePayment(data){\n return this.send('initiate-payment', data)\n }\n}\n","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'\nimport Sysgate from 'neptune/sysgate'\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\nVue.prototype.$sysgate = new Sysgate(true)\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 PARAM_BILL_SUMMARY_BOTTOM_MARGIN: 171,\n PARAM_HIDE_LEGAL_NOTICES: 172,\n PARAM_EXTRA_INFO_IN_CASHBOOK_TICKET: 173,\n PARAM_DISABLE_CASHFUND_NO_CASH: 174,\n PARAM_ALWAYS_ALLOW_GIFT_TO_CAGNOTTE_CONVERSION: 175,\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 CLUB_DEFAULT_UNRETURNED_CARD_BILLED_PRODUCT_ID: 'club_default_unreturned_card_billed_product_id',\n SUBSCRIPTION_NOTIFY_LOW_QUANTITY: \"subscription_notify_low_quantity\",\n SUBSCRIPTION_NOTIFY_QUANTITY_THRESHOLD: \"subscription_notify_quantity_threshold\",\n SUBSCRIPTION_NOTIFY_TIME_THRESHOLD: \"subscription_notify_time_threshold\",\n SUBSCRIPTION_NOTIFY_EXPIRING: \"subscription_notify_expiring\",\n SUBSCRIPTION_NOTIFY_EXPIRATION_DELAY: \"subscription_notify_expiration_delay\",\n MAILER_CUSTOM_SUBSCRIPTION_LOW_QUANTITY: \"mailer_custom_subscription_low_quantity\",\n MAILER_CUSTOM_SUBSCRIPTION_EXPIRING: \"mailer_custom_subscription_expiring\"\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_created\",\n SUBSCRIPTION_RELOAD: \"subscription_reloaded\",\n SUBSCRIPTION_CREDITED: \"subscription_credited\", // for migrated quantity, cancelled booking, manual credit\n SUBSCRIPTION_DEBITED: \"subscription_credited\", // for booking, passing, manual debit\n SUBSCRIPTION_STOPPED: \"subscription_stopped\",\n SUBSCRIPTION_PAUSED: \"subscription_paused\",\n SUBSCRIPTION_UNPAUSED: \"subscription_unpaused\",\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 ACTION_ITEM_TYPE: {\n SUBSCRIPTION:\"subscription\",\n\t SALE_LINE:\"sale_line\"\n },\n\n BILLING_MODE_TYPES: {\n SESSION: \"session\",\n TIME: \"time\",\n PRORATED_TIME: \"prorated-time\"\n },\n\n BILL_IMAGE_OPTION: {\n NONE: 0,\n LOGO: 1,\n BACKGROUND: 2\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 Country: ''\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 isDateFormatRule: f => v => moment(v, f, true).isValid() || `Cette date doit être au format (${f})`,\n isDateSameOrAfterRule: c => v => (c.format('DD/MM/YYYY') === moment(v).format('DD/MM/YYYY') || moment(v).isAfter(moment(c)))|| `Cette date ${v} doit être après le ${c.format('DD/MM/YYYY')} ${ moment(v).format('DD/MM/YYYY') }`,\n isTimeRule: v => /^([01]?[0-9]|2[0-3]):[0-5][0-9]$/.test(v),\n isTimeAfterRule: c => v => moment(v, 'HH:mm').isAfter(c) || `Cette heure doit être après ${c.format('HH:mm')}`,\n}\n","import moment from 'moment'\nimport consts from '../consts'\nimport constants from '../consts'\nimport { bookingTerminalPlanningTypes } from '../ui/params'\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 subscriptionNotifyLowQuantity: false,\n subscriptionNotifyQuantityThreshold: 0,\n subscriptionNotifyTimeThreshold: 0,\n subscriptionNotifyExpiring: false,\n subscriptionNotifyExpirationDelay: 0,\n mailerCustomSubscriptionLowQuantity: '',\n mailerCustomSubscriptionExpiring: ''\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 bookingTerminalPlanningType: constants.BOOKING_TERMINAL_PLANNING_TYPES.GROUPED_BY_ACTIVITY,\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 if (type === 'clubs' || type === undefined) {\n params = Object.assign(params, {\n // paypal\n clubDefaultUnreturnedCardBilledProductId: null\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 case consts.RESA_PARAMS.SUBSCRIPTION_NOTIFY_QUANTITY_THRESHOLD:\n case consts.RESA_PARAMS.SUBSCRIPTION_NOTIFY_EXPIRATION_DELAY:\n case consts.RESA_PARAMS.SUBSCRIPTION_NOTIFY_TIME_THRESHOLD:\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 case consts.RESA_PARAMS.SUBSCRIPTION_NOTIFY_LOW_QUANTITY: \n case consts.RESA_PARAMS.SUBSCRIPTION_NOTIFY_EXPIRING:\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 case consts.RESA_PARAMS.CLUB_DEFAULT_UNRETURNED_CARD_BILLED_PRODUCT_ID:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SUBSCRIPTION_LOW_QUANTITY:\n case consts.RESA_PARAMS.MAILER_CUSTOM_SUBSCRIPTION_EXPIRING: \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","const 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 getCountries (uppercase) {\n return Object.values(countries).map(c => uppercase ? c.toUpperCase() : c)\n },\n\n isValidPostalCode (code, country) {\n if (!code) {\n return true\n }\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 paramsHelper from '../helpers/params'\n\nimport { onlineModules, bookingTerminalPlanningTypes, billingModeTypes, billImageOptions } from '../ui/params'\n\nexport default {\n data: () => ({onlineModules, bookingTerminalPlanningTypes, billingModeTypes, billImageOptions}),\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 productCanGoOnQRCode (product) {\n if (product && product.Subscription && product.Subscription.CardType &&\n product.Subscription.CardType.some((ct => ct.includes(consts.DEFAULT_QRCODE_ID)))) {\n return true\n }\n return false\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 || !Object.keys(sale.Lines).length) {\n return []\n }\n\n return Object.values(sale.Lines).flat()\n },\n\n getSaleLine(id, sale){\n if (!sale.Lines || !Object.keys(sale.Lines).length) {\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 || !Object.keys(sale.Lines).length) {\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 // tvas is an array of tva objects\n getSaleTVATotals(lines) {\n if (!lines || lines.length == 0) {\n return {}\n }\n\n var tvaTotals = {}\n\n let tvaValueByID = {}\n let totalDecByTva = {}\n let totalHtDecByTva = {}\n\n console.log(lines)\n for (let line of lines) {\n let tvaID = line.Tva || line.TvaID\n let tot = new Decimal(line.Total)\n let totHt = new Decimal(line.TotalWithoutCharges)\n\n if (!totalDecByTva[tvaID]) {\n totalDecByTva[tvaID] = new Decimal(0)\n }\n if (!totalHtDecByTva[tvaID]) {\n totalHtDecByTva[tvaID] = new Decimal(0)\n }\n\n totalDecByTva[tvaID] = totalDecByTva[tvaID].add(tot)\n totalHtDecByTva[tvaID] = totalHtDecByTva[tvaID].add(totHt)\n\n if (!tvaValueByID[tvaID]) {\n tvaValueByID[tvaID] = line.TvaValue\n }\n }\n\n\n for (let tvaUid in totalDecByTva) {\n let tvaValue = tvaValueByID[tvaUid]\n if (!tvaValue) {\n throw new Error(`TVA ${tvaUid} not found`)\n }\n\n tvaTotals[tvaUid] = {\n TvaValue: tvaValue,\n TotalTva: totalDecByTva[tvaUid].sub(totalHtDecByTva[tvaUid]).toFixed(2),\n TotalWithoutCharges: totalHtDecByTva[tvaUid].toFixed(2),\n TotalWithCharges: totalDecByTva[tvaUid].toFixed(2),\n }\n }\n\n return tvaTotals\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/CSE', 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\"\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-timeline-clock\" },\n { text: \"Horaire au prorata\", value: consts.BILLING_MODE_TYPES.PRORATED_TIME, icon: \"mdi-clock-alert\" },\n\n]\n\nconst billImageOptions = [\n { text: 'Ne rien afficher', value: consts.BILL_IMAGE_OPTION.NONE },\n { text: \"Utiliser le logo\", value: consts.BILL_IMAGE_OPTION.LOGO },\n { text: \"Utiliser le fond\", value: consts.BILL_IMAGE_OPTION.BACKGROUND },\n]\n\nexport { onlineModules, bookingTerminalPlanningTypes, billingModeTypes, billImageOptions }\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 getUsedTimeslotTemplates: (params) => axios.get('/access-control/used-timeslots-templates'),\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 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 refreshQuotationPricings: (options) => axios.put('/quotes/refresh-pricings', options),\n\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'\nimport WebviewMixin from '~/mixins/webview'\n\nexport default {\n mixins: [WebviewMixin],\n\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 getDefaultCountry () {\n const establishment = this.wvGetDataValue('establishment')\n if (establishment && establishment.Address && establishment.Address.Country) {\n return establishment.Address.Country.toUpperCase()\n } else {\n return 'FRANCE'\n }\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: injection script failed ?`)\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', 'getSubscribedChannels']),\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 (json.Data.Success) {\n this.wsState.Authenticated = true\n }\n if (this.getSubscribedChannels.length) {\n for (const channel of this.getSubscribedChannels) {\n this.ws_Subscribe(channel) // resubscribe\n }\n }\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.$store.dispatch('subscribeTo', channel)\n\n this._ws_sendWithRetry(WSFrameTypeSubscribe, { Resource: channel })\n },\n\n ws_Unsubscribe (channel) {\n this.$store.dispatch('unsubscribeTo', 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: 'Détails de la session périodique'\n },\n component: () => import('~/components/sessions/SessionShow.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 getSubscribedChannels: state => {\n return Object.keys(state.subscribers).filter(r => state.subscribers[r] > 0)\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 if (!state.subscribers[r]) {\n state.subscribers[r] = 0\n }\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 + \".\" + {\"21\":\"40f8f86d\",\"51\":\"62448ac1\",\"104\":\"dcc89283\",\"111\":\"300ecd60\",\"213\":\"1b4afb0d\",\"230\":\"2ca28a09\",\"238\":\"f1445efb\",\"258\":\"ad0f7555\",\"286\":\"3a93a664\",\"490\":\"7d842443\",\"513\":\"b13ec38e\",\"537\":\"99dee969\",\"678\":\"1dc3c36e\",\"743\":\"da56dd32\",\"756\":\"0171c38a\",\"823\":\"77731f02\",\"884\":\"27beb9f5\",\"962\":\"29c5170e\",\"1102\":\"9abdbaa2\",\"1179\":\"af91104d\",\"1209\":\"4ad4efcd\",\"1228\":\"18ea726f\",\"1265\":\"79ab5415\",\"1303\":\"207895de\",\"1342\":\"d559910f\",\"1373\":\"b169f46f\",\"1377\":\"7a557aa6\",\"1466\":\"25182cdf\",\"1593\":\"d1eb56a7\",\"1605\":\"e30556e5\",\"1635\":\"4d4ed11b\",\"1647\":\"086eab42\",\"1651\":\"4b49e3b9\",\"1675\":\"4d995e5a\",\"1730\":\"8fb385e4\",\"1792\":\"8ba69b5e\",\"1949\":\"df6d646b\",\"1986\":\"d0aba2a9\",\"2081\":\"02d396f8\",\"2272\":\"bc80b20e\",\"2345\":\"51b205c2\",\"2493\":\"6359c059\",\"2495\":\"52071c9c\",\"2559\":\"d8c8308f\",\"2560\":\"d0a26a31\",\"2606\":\"a3bd9ab1\",\"2620\":\"1fe2a6af\",\"2697\":\"5cb971e7\",\"2709\":\"b2ab283e\",\"2715\":\"f8cb09b9\",\"2873\":\"07bc44dd\",\"3029\":\"82229ff0\",\"3040\":\"520d9c96\",\"3108\":\"101dff8e\",\"3205\":\"5ed42042\",\"3393\":\"4e81d9d0\",\"3416\":\"98d953a8\",\"3515\":\"280e334a\",\"3541\":\"9c74f246\",\"3600\":\"7369dd63\",\"3614\":\"2eeca021\",\"3621\":\"6ee27f0f\",\"3639\":\"f05c1455\",\"3758\":\"cc0a243f\",\"3769\":\"e7f3fe3b\",\"3775\":\"4572f0c9\",\"3789\":\"f5517647\",\"3790\":\"ac5ba19b\",\"3889\":\"1d02ad69\",\"3893\":\"545e1900\",\"3961\":\"28db6c4d\",\"3997\":\"801f48ef\",\"4183\":\"5af9e54a\",\"4378\":\"84e28a2a\",\"4478\":\"ec7ae127\",\"4492\":\"4dd25368\",\"4530\":\"e943ed5b\",\"4578\":\"36eadb98\",\"4705\":\"ec29936c\",\"4747\":\"859592a9\",\"4890\":\"30a3de73\",\"4928\":\"18104c21\",\"4944\":\"6b80eeb0\",\"4948\":\"f4a61240\",\"4957\":\"b76af4bb\",\"4964\":\"cbb9823e\",\"5202\":\"43ea5a83\",\"5212\":\"9463eef3\",\"5234\":\"998c116f\",\"5284\":\"309c0544\",\"5297\":\"fc3f2144\",\"5302\":\"5d43d023\",\"5327\":\"ea27da47\",\"5385\":\"d2dd80d0\",\"5388\":\"3ebb29ee\",\"5448\":\"32d37625\",\"5503\":\"594a33c8\",\"5532\":\"c64698d4\",\"5591\":\"23ec487b\",\"5592\":\"1c116c69\",\"5603\":\"34029cb0\",\"5639\":\"5f30c7fd\",\"5676\":\"b960b2d0\",\"5690\":\"08abad51\",\"5743\":\"e28aa14a\",\"5752\":\"c0387476\",\"5753\":\"c1dbde24\",\"5955\":\"efbf2fb6\",\"5987\":\"898d159b\",\"6028\":\"bb9f3b61\",\"6029\":\"72ca1948\",\"6094\":\"a7be5faa\",\"6114\":\"3223f217\",\"6147\":\"0dc5d20e\",\"6178\":\"ac602531\",\"6329\":\"5d8f1e0e\",\"6383\":\"9ab7657a\",\"6403\":\"8c471446\",\"6450\":\"071be30d\",\"6504\":\"5b72beaa\",\"6660\":\"2e1fec47\",\"6667\":\"d145341a\",\"6679\":\"749a0a77\",\"6885\":\"a38686df\",\"6933\":\"2d2ebc80\",\"7065\":\"56766954\",\"7099\":\"c98dd92c\",\"7140\":\"317224d2\",\"7153\":\"0947dc19\",\"7159\":\"3a39fedb\",\"7169\":\"d50b2348\",\"7361\":\"73a1a494\",\"7476\":\"623dd104\",\"7548\":\"86213703\",\"7554\":\"ec88a07b\",\"7577\":\"f2a11009\",\"7632\":\"ede883e0\",\"7677\":\"2d2c1a0d\",\"7678\":\"99f6ed98\",\"7837\":\"0218eca7\",\"7901\":\"cfe8a993\",\"7938\":\"4b1991d0\",\"7953\":\"06cd7488\",\"7998\":\"d08d3bde\",\"8061\":\"fc665825\",\"8062\":\"45cb54c8\",\"8068\":\"a539903c\",\"8081\":\"6917f5a3\",\"8199\":\"5e3f1720\",\"8290\":\"4fe030c5\",\"8307\":\"4af0d8de\",\"8410\":\"45ff7351\",\"8415\":\"e0cba8c4\",\"8434\":\"5df5c0cd\",\"8496\":\"055d5a39\",\"8530\":\"18681a76\",\"8576\":\"2505ba7b\",\"8772\":\"05cfd28f\",\"8947\":\"be046266\",\"9031\":\"ab242b10\",\"9042\":\"34c778d0\",\"9048\":\"5616020b\",\"9138\":\"8f675c06\",\"9159\":\"79ba72b0\",\"9249\":\"ea5b5a5b\",\"9283\":\"20d963dd\",\"9334\":\"b6bfe187\",\"9375\":\"f1d19363\",\"9520\":\"525849f2\",\"9524\":\"60c263d8\",\"9622\":\"fb4daee8\",\"9719\":\"7ce8a6be\",\"9732\":\"8a0f77b2\",\"9895\":\"c9b5d68c\",\"9916\":\"8aff4982\",\"9948\":\"b9d61a62\"}[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 + \".\" + {\"21\":\"38e07d8e\",\"104\":\"1cf848a0\",\"238\":\"74eb71df\",\"286\":\"e91602ae\",\"513\":\"d6e2ee48\",\"678\":\"99106d8f\",\"756\":\"8bb54fe6\",\"1102\":\"1114111e\",\"1179\":\"848387da\",\"1265\":\"37c28bf7\",\"1303\":\"58854080\",\"1373\":\"cd09b6d4\",\"1377\":\"ed9d8038\",\"1466\":\"fd7ca9f6\",\"1605\":\"e9f824d7\",\"1651\":\"8d670143\",\"1675\":\"ba53b08e\",\"1730\":\"b627beb4\",\"1769\":\"ed9d8038\",\"1792\":\"ea204b68\",\"1956\":\"0ae4752d\",\"2495\":\"d949e550\",\"2515\":\"42b44602\",\"2560\":\"5116cd11\",\"2620\":\"a37656e6\",\"2715\":\"5dbdd97f\",\"2873\":\"493154ca\",\"3029\":\"c75788af\",\"3205\":\"35f5f839\",\"3339\":\"6573a75f\",\"3393\":\"5116cd11\",\"3416\":\"b1095802\",\"3515\":\"d6e2ee48\",\"3600\":\"67e9af84\",\"3614\":\"3505d4d9\",\"3621\":\"29b51e0c\",\"3758\":\"f09c0e0e\",\"3769\":\"30443208\",\"3775\":\"4f4d960b\",\"3789\":\"a222c22b\",\"3790\":\"e23f6920\",\"3997\":\"5116cd11\",\"4183\":\"78e02590\",\"4492\":\"1841acf6\",\"4521\":\"098d8842\",\"4747\":\"c7d90cc1\",\"4890\":\"cf6405b4\",\"4944\":\"c4ab70e3\",\"4964\":\"202016ba\",\"5212\":\"69c70abf\",\"5234\":\"afe255b7\",\"5284\":\"3471bd81\",\"5327\":\"d6e2ee48\",\"5503\":\"7108cc9e\",\"5532\":\"e4223b64\",\"5591\":\"8a6ee14f\",\"5743\":\"3237e9f6\",\"5752\":\"ed9d9c87\",\"5773\":\"8922fd5c\",\"5955\":\"5dbdd97f\",\"5987\":\"2becbf4c\",\"6029\":\"06973736\",\"6094\":\"e08f75d8\",\"6114\":\"5dbdd97f\",\"6178\":\"d949e550\",\"6363\":\"aad60599\",\"6383\":\"1ee60e3d\",\"6403\":\"8550ba15\",\"6504\":\"80e613f8\",\"6679\":\"b1095802\",\"6933\":\"be866625\",\"7065\":\"acaf14a5\",\"7140\":\"c598dcb1\",\"7153\":\"29b51e0c\",\"7159\":\"ed9d8038\",\"7169\":\"b1f8b9b8\",\"7361\":\"124353ca\",\"7476\":\"cea9df41\",\"7554\":\"9b161c34\",\"7577\":\"b86e48b5\",\"7632\":\"322b3637\",\"7677\":\"b290962b\",\"7777\":\"89585a83\",\"7901\":\"d6d7e786\",\"7938\":\"2f982208\",\"8290\":\"7bb1ec36\",\"8410\":\"f9ad1e8f\",\"8415\":\"c168102a\",\"8496\":\"3505d4d9\",\"8576\":\"35f5f839\",\"9138\":\"bd638efc\",\"9159\":\"e889ceaf\",\"9249\":\"5116cd11\",\"9283\":\"95cbac10\",\"9375\":\"d1060dd9\",\"9520\":\"a5ebc230\",\"9524\":\"eb0dc7ad\",\"9622\":\"8bb54fe6\",\"9895\":\"54de615e\"}[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 = {\"21\":1,\"104\":1,\"238\":1,\"286\":1,\"513\":1,\"678\":1,\"756\":1,\"1102\":1,\"1179\":1,\"1265\":1,\"1303\":1,\"1373\":1,\"1377\":1,\"1466\":1,\"1605\":1,\"1651\":1,\"1675\":1,\"1730\":1,\"1769\":1,\"1792\":1,\"1956\":1,\"2495\":1,\"2515\":1,\"2560\":1,\"2620\":1,\"2715\":1,\"2873\":1,\"3029\":1,\"3205\":1,\"3339\":1,\"3393\":1,\"3416\":1,\"3515\":1,\"3600\":1,\"3614\":1,\"3621\":1,\"3758\":1,\"3769\":1,\"3775\":1,\"3789\":1,\"3790\":1,\"3997\":1,\"4183\":1,\"4492\":1,\"4521\":1,\"4747\":1,\"4890\":1,\"4944\":1,\"4964\":1,\"5212\":1,\"5234\":1,\"5284\":1,\"5327\":1,\"5503\":1,\"5532\":1,\"5591\":1,\"5743\":1,\"5752\":1,\"5773\":1,\"5955\":1,\"5987\":1,\"6029\":1,\"6094\":1,\"6114\":1,\"6178\":1,\"6363\":1,\"6383\":1,\"6403\":1,\"6504\":1,\"6679\":1,\"6933\":1,\"7065\":1,\"7140\":1,\"7153\":1,\"7159\":1,\"7169\":1,\"7361\":1,\"7476\":1,\"7554\":1,\"7577\":1,\"7632\":1,\"7677\":1,\"7777\":1,\"7901\":1,\"7938\":1,\"8290\":1,\"8410\":1,\"8415\":1,\"8496\":1,\"8576\":1,\"9138\":1,\"9159\":1,\"9249\":1,\"9283\":1,\"9375\":1,\"9520\":1,\"9524\":1,\"9622\":1,\"9895\":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(!/^(1769|1956|2515|3339|4521|5773|6363|7777)$/.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__(45798)))\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","select","items","selectedClients","requiredRule","v","computed","val","get","set","x","$emit","watch","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","ClientType","isClientFieldRule","birthdateDatepicker","menuBirthday","menu1","quotationsSalesRepresentatives","Firstname","loadingQuotationsSalesRepresentatives","bottom","quotationsProductsCatalogues","loadingQuotationsProductsCatalogues","name","params","tab","proxy","quotationsPricings","loadingQuotationsPricings","staticStyle","Address","showAddressPossibilities","possibleAddresses","idx","City","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","countries","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","getCountries","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","setAddress","selectAddressFromAPI","address","Country","selectAddress","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","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","wvEmit","token","authToken","ticketID","openTicket","t","$event","voucherID","searchEticket","Exist","Product","LabelShort","UsedAmount","voucherDeliveredProducts","Packed","Amount","selectedProductID","productId","active","toggle","creditLabel","formatMoney","convertToCredit","selectedClient","ClientGift","newClientMode","hasClient","associatedCards","associateCard","card","mappedProducts","cardType","cardIndex","productCompatibleCardTypes","hasQRCodeAssigned","convertEticketToCredit","giftVouchers","itemsPerPageOptions","pagination","infoOnly","ClientForm","validating","productCardAssignation","cardTypes","failedToCheckVoucher","newClient","validationLoading","giftVouchersLoading","searchHeaders","align","sortable","page","itemsPerPage","sortBy","sortDesc","totalGiftVouchers","spaProducts","focusInterval","seller","deliveredItemsUsedAmount","targetClient","loadGiftVouchers","created","resetEticket","focusInput","setInterval","SpaApi","getSpaProducts","State","destroyed","clearInterval","deliveredProducts","productsTree","dp","undefined","PackedInDeliveredItemsIndex","getProductAction","p1","product","childs","DeliveredItemsIndex","canIncreaseUsedAmount","AvailableAmount","canDecreaseUsedAmount","deliveredItemsUsedAmountTotal","total","mapped","Products","mappedCardTypes","CardType","selectedProduct","Voucher","hasAllCardsAssociated","deliveredCards","deliveredCardIndex","allCanGoOnQRCode","DeliveredItems","every","cardtypes","allGoesOnQRCode","cardtype","di","DeliveredAmount","diIndex","PackedProducts","packedProducts","recurseGetPackedProducts","packedProduct","amount","deliveredSubscriptions","Subscription","cards","hasProductAssignedToCardTypeWithoutCard","productID","cardSlot","targetClientHasOne","alwaysAllowCagnotteConversion","PARAM_ALWAYS_ALLOW_GIFT_TO_CAGNOTTE_CONVERSION","Decimal","toFixed","setCode","validateEticket","setSeller","subPackedProducts","spp","States","VOUCHER_STATE","PENDING","ApiVouchers","getGiftVouchers","utils","getPaginationFromDataTableOptions","Total","voucherField","wvAssociateCard","cardNumber","existingIndex","CardNumber","associatedSpaProduct","VoucherCreditValue","CREDIT","VoucherCreditUnitValue","CREDIT_UNIT","unitsLabel","clientCardTypes","cardTypeIdx","compatibleCardTypes","qrCardTypes","setProductCardtype","useSearchedVoucher","Code","resetAssociation","scanVoucher","selectVoucher","updatedDeliveredItemsUsedAmount","ajustUsedAmount","onProductSelected","ApiProducts","getCardTypes","_res$data","IDs","validConsumeEticket","clientForm","validateVoucher","VoucherID","SelectedProductID","IsNewClient","NewClient","ProductCardAssignation","UsedAmounts","AssociatedCards","ClientID","SellerName","successMessage","EventBus","wvVoucherValidated","wvToast","AccessControlVouchersGenerationNeeded","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","_ws_Register","$options","sockets","onopen","$route","ws_AuthenticateByDisplayID","onclose","reconnectWs","route","loadWebviewForcedRoute","opts","onerror","ws_KeepAlive","message","ws_On","WS_RESOURCE_LOCKER_INCIDENTS_NEW","onNewLockerIncident","addEventListener","keyCode","isLoggedIn","ApiAuth","checkAuthToken","commit","location","pathname","getDefaultRoute","wvReady","$sysgate","connect","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","$socket","readyState","$disconnect","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","KEEP_ALIVE_INTERVAL","SYSGATE_STATE_LOADING","SYSGATE_STATE_READY","SYSGATE_STATE_DISCONNECTED","Sysgate","constructor","autoreconnect","reconnectInterval","listeners","ws","keepAliveInterval","callbacks","Map","pendingRequests","eventListeners","eventHandlers","off","h","onEvent","isLoading","isReady","WebSocket","_onOpen","_onClose","_onError","_onMessage","keepAlive","eventType","Math","min","pendingRequest","log","delete","Channel","Data","handlers","eventCallbacks","exclusiveCallbacks","cb","exclusive","channel","frameData","frame","uuidv4","stringify","sendTimestamp","subscribeEvent","options","unsubscribeEvent","initiatePayment","VueNativeSock","config","ServerURL","protocol","host","reconnection","connectManually","LottieVuePlayer","productionTip","mixin","iconizer","labelizer","colors","date","accessControl","prototype","router","store","vuetify","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","PARAM_BILL_SUMMARY_BOTTOM_MARGIN","PARAM_HIDE_LEGAL_NOTICES","PARAM_EXTRA_INFO_IN_CASHBOOK_TICKET","PARAM_DISABLE_CASHFUND_NO_CASH","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","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","CLUB_DEFAULT_UNRETURNED_CARD_BILLED_PRODUCT_ID","SUBSCRIPTION_NOTIFY_LOW_QUANTITY","SUBSCRIPTION_NOTIFY_QUANTITY_THRESHOLD","SUBSCRIPTION_NOTIFY_TIME_THRESHOLD","SUBSCRIPTION_NOTIFY_EXPIRING","SUBSCRIPTION_NOTIFY_EXPIRATION_DELAY","MAILER_CUSTOM_SUBSCRIPTION_LOW_QUANTITY","MAILER_CUSTOM_SUBSCRIPTION_EXPIRING","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","SUBSCRIPTION_CREDITED","SUBSCRIPTION_DEBITED","SUBSCRIPTION_STOPPED","SUBSCRIPTION_PAUSED","SUBSCRIPTION_UNPAUSED","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","ACTION_ITEM_TYPE","SUBSCRIPTION","SALE_LINE","BILLING_MODE_TYPES","TIME","PRORATED_TIME","BILL_IMAGE_OPTION","LOGO","BACKGROUND","clientsGender","clientsGenders","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","dissociateCardFromClient","cardNumberIndex","d","changeDateFormat","fIn","fOut","elapsedTimeSince","units","durationBetweenDates","d1","d2","formatDurationInSecondsHuman","formatDurationInMinutesHuman","abs","minutes","hours","inHours","humanReadableDuration","days","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","isDateSameOrAfterRule","isTimeAfterRule","defaultParams","autoPoweroffKiosks","mainDefaultModule","bookingCancellationDaysLimit","mailerWebsiteName","mailerWebsiteLink","mailerLogoUrl","mailerFrom","mailerCopyright","mailerCustomSpaCreate","mailerCustomSpaModify","mailerCustomSpaDelete","mailerCustomSpaReminder","mailerCustomActivitiesConfirm","mailerCustomActivitiesCancel","mailerCustomSaleConfirmation","mailerCustomSendAllDocuments","subscriptionNotifyLowQuantity","subscriptionNotifyQuantityThreshold","subscriptionNotifyTimeThreshold","subscriptionNotifyExpiring","subscriptionNotifyExpirationDelay","mailerCustomSubscriptionLowQuantity","mailerCustomSubscriptionExpiring","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","bookingTerminalPlanningType","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","clubDefaultUnreturnedCardBilledProductId","formatParams","formattedParams","formatParam","camelCaseName","$1","formatGlobalParams","parseParams","parsedParams","toString","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","k","newUUID","crypto","getRandomValues","Uint8Array","dataURLToBlob","dataURL","base64Data","mimeType","binaryData","atob","arrayBuffer","ArrayBuffer","uint8Array","charCodeAt","blob","Blob","fileToBase64","humanFileSize","size","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","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","bookingTerminalPlanningTypes","billingModeTypes","billImageOptions","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","productCanGoOnQRCode","ct","familyTypes","pricingFilters","productFiltersTypes","selectablesPricingsFilters","familyType","familyTypeIcon","getPaymentName","allPaymentType","paymentType","pt","getSaleProductsQuantity","quantity","Lines","line","getSaleLine","forEachSaleLine","func","clientID","getSaleTotalByClient","clientId","isProductInSale","inSale","cliID","getProductPriceForClient","clientPricingID","clientHelpers","productPricing","Price","getSaleDiscountCodes","clientLines","SpecialPrice","DiscountCodes","getSaleTVATotals","tvaTotals","tvaValueByID","totalDecByTva","totalHtDecByTva","tvaID","Tva","TvaID","tot","totHt","TotalWithoutCharges","TvaValue","tvaUid","tvaValue","TotalTva","TotalWithCharges","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","requiredPerm","hasLandingPage","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","getUsedTimeslotTemplates","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","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","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","refreshQuotationPricings","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","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","getDefaultCountry","webviewData","wvGetData","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","getSubscribedChannels","ws_Subscribe","_ws_sendWithRetry","skipRetry","sendObj","displayID","DisplayID","ws_Unsubscribe","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","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","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":""}