(this.webpackJsonp=this.webpackJsonp||[]).push([[0],{110:function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r(5),a={setMenuItem:Object(n.createStandardAction)("menu/SET_MENU_ITEM")(),openMenu:Object(n.createAction)("menu/OPEN_MENU"),closeMenu:Object(n.createAction)("menu/CLOSE_MENU"),toggleMenu:Object(n.createAction)("menu/TOGGLE_MENU")}},112:function(e,t,r){"use strict";r.d(t,"b",(function(){return u})),r.d(t,"a",(function(){return l})),r.d(t,"c",(function(){return d}));var n=r(10),a=r.n(n),i=r(35);function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:s;return i.a.select({ios:{shadowColor:e.shadowColor,shadowOpacity:1,shadowRadius:e.shadowRadius,shadowOffset:{width:e.shadowOffsetX,height:e.shadowOffsetY}},android:{elevation:e.shadowRadius},web:{boxShadow:e.shadowOffsetX+"px "+e.shadowOffsetY+"px "+e.shadowRadius+"px "+e.shadowColor}})}},12:function(e,t,r){"use strict";r.d(t,"c",(function(){return h})),r.d(t,"a",(function(){return d})),r.d(t,"f",(function(){return E})),r.d(t,"e",(function(){return j})),r.d(t,"g",(function(){return C})),r.d(t,"h",(function(){return w})),r.d(t,"i",(function(){return S})),r.d(t,"d",(function(){return T})),r.d(t,"b",(function(){return X}));var n=r(10),a=r.n(n),i=r(419),o=r.n(i),c=r(5),s=r(3),u=r.n(s),l=r(601),d={addNewOffer:Object(c.createAction)("editOffers/ADD_NEW_OFFER"),selectOffer:Object(c.createAction)("editOffers/SELECT_OFFER",(function(e){return function(t){return e(t)}})),uploadImage:Object(c.createAsyncAction)("editOffers/UPLOAD_IMAGE_REQUEST","editOffers/UPLOAD_IMAGE_SUCCESS","editOffers/UPLOAD_IMAGE_FAILURE")(),saveOffer:Object(c.createAsyncAction)("editOffers/SAVE_OFFER_REQUEST","editOffers/SAVE_OFFER_SUCCESS","editOffers/SAVE_OFFER_FAILURE")(),cancelEditOffer:Object(c.createAction)("editOffers/CANCEL_EDIT_OFFER"),updateEditedOffer:Object(c.createAction)("editOffers/UPDATE_EDITED_OFFER",(function(e){return function(t){return e(t)}})),selectImageToUpload:Object(c.createAction)("editOffers/SELECT_IMAGE",(function(e){return function(t){return e(t)}})),updateOffers:Object(c.createAction)("editOffers/UPDATE_OFFERS",(function(e){return function(t){return e(t)}})),clearOffers:Object(c.createAction)("editOffers/CLEAR_OFFERS")};function A(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:p,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(c.getType)(d.addNewOffer):var r=u.a.now(),n=Object(l.a)();return f(f({},e),{},{selectedIndex:e.offers.length,editedOffer:m(n,r,e.offers.length),newOffer:m(n,r,e.offers.length)});case Object(c.getType)(d.selectOffer):return f(f({},e),{},{selectedIndex:t.payload,editedOffer:o.a.find(e.offers,(function(e){return e.index===t.payload}))});case Object(c.getType)(d.saveOffer.request):return f(f({},e),{},{newOffer:void 0,editedOffer:void 0,selectedIndex:void 0,localUpdateTimestamps:b(e.localUpdateTimestamps,t.payload)});case Object(c.getType)(d.saveOffer.success):return f(f({},e),{},{localUpdateTimestamps:y(e.localUpdateTimestamps,t.payload)});case Object(c.getType)(d.saveOffer.failure):return f(f({},e),{},{localUpdateTimestamps:y(e.localUpdateTimestamps,t.payload.offerUid)});case Object(c.getType)(d.uploadImage.request):return f(f({},e),{},{localUpdateTimestamps:b(e.localUpdateTimestamps,f(f({},e.editedOffer),{},{lastUpdated:u.a.now()}))});case Object(c.getType)(d.uploadImage.success):return f(f({},e),{},{imageToUpload:void 0});case Object(c.getType)(d.uploadImage.failure):return f(f({},e),{},{localUpdateTimestamps:y(e.localUpdateTimestamps,e.editedOffer.uid),imageToUpload:void 0});case Object(c.getType)(d.cancelEditOffer):return f(f({},e),{},{selectedIndex:void 0,editedOffer:void 0,newOffer:void 0,imageToUpload:void 0});case Object(c.getType)(d.updateEditedOffer):return f(f({},e),{},{editedOffer:g(e.editedOffer,t.payload)});case Object(c.getType)(d.selectImageToUpload):return f(f({},e),{},{imageToUpload:t.payload});case Object(c.getType)(d.updateOffers):return f(f({},e),{},{offers:t.payload});case Object(c.getType)(d.clearOffers):return p;default:return e}};function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;te.lastUpdated})))})),T={offerItems:R,offerListItems:k,selectedOffer:D,offerIsUpdating:function(e){return Object(I.createSelector)(R,B,(function(t,r){var n=t[e],a=r[n.uid];return void 0!==a&&a>n.lastUpdated}))},uploadingImage:x},U=r(11),L=r.n(U),M=r(87),Q=r.n(M),W=(r(150),r(430)),H=r(196),N=r(597),V=r(195),F=r(205),_=r(70),z=r(39);function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.setFirebaseLoading):return s(s({},e),{},{firebaseLoading:t.payload});case Object(i.getType)(o.setLoggedOut):return s(s({},e),{},{userDetails:void 0});case Object(i.getType)(o.signUp.request):case Object(i.getType)(o.login.request):case Object(i.getType)(o.federatedLogin.request):return s(s({},e),{},{updating:!0});case Object(i.getType)(o.signUp.success):case Object(i.getType)(o.login.success):case Object(i.getType)(o.federatedLogin.success):return s(s({},e),{},{updating:!1});case Object(i.getType)(o.signUp.failure):case Object(i.getType)(o.login.failure):case Object(i.getType)(o.federatedLogin.failure):return s(s({},e),{},{updating:!1,error:t.payload});case Object(i.getType)(o.checkPermissions.request):return s(s({},e),{},{updating:!0});case Object(i.getType)(o.checkPermissions.success):return s(s({},e),{},{updating:!1,userDetails:t.payload,error:void 0});case Object(i.getType)(o.checkPermissions.failure):return s(s({},e),{},{updating:!1,error:t.payload});case Object(i.getType)(o.setError):return s(s({},e),{},{error:t.payload});default:return e}},d=r(29),A=r(11),f=r.n(A),p=r(43),g=r.n(p),b=r(86),y=r(49),m=r(33),h=r(160),O=[Object(m.b)(o.signUp.request,(function(e){return g.a.auth().createUserWithEmailAndPassword(e.email,e.password).then((function(e){return o.signUp.success()})).catch((function(e){return o.signUp.failure(Object(d.c)(d.a.BadCredentials,e.message))}))})),Object(m.b)(o.login.request,(function(e){return g.a.auth().signInWithEmailAndPassword(e.email,e.password).then((function(e){return o.login.success()})).catch((function(e){return o.login.failure(Object(d.c)(d.a.BadCredentials,e.message))}))})),Object(m.b)(o.federatedLogin.request,(function(){var e=new g.a.auth.GoogleAuthProvider;return g.a.auth().signInWithPopup(e).then((function(e){return o.federatedLogin.success()})).catch((function(e){return o.federatedLogin.failure(Object(d.c)(d.a.BadCredentials,e.message))}))})),Object(m.b)(o.checkPermissions.request,(function(){return b.QueryService.checkPermission().then((function(e){return o.checkPermissions.success(function(e,t){if(e){var r=t&&t.role?t.role:d.b.viewer;return{displayName:e.displayName||e.email||"Unknown user",role:r}}return{displayName:"Unknown User",role:d.b.inactive}}(g.a.auth().currentUser,e))})).catch((function(e){var t,r;return f.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:if(t=g.a.auth().currentUser,!(r=t&&!t.emailVerified)){n.next=5;break}return n.next=5,f.a.awrap(null==t?void 0:t.sendEmailVerification().catch((function(e){})));case 5:return n.next=7,f.a.awrap(g.a.auth().signOut());case 7:return n.abrupt("return",o.checkPermissions.failure(Object(d.c)(r?d.a.EmailUnverified:d.a.NoPermission,e.message,t&&t.email?t.email:void 0)));case 8:case"end":return n.stop()}}),null,null,null,Promise)}))})),Object(m.a)(o.setLoggedOut,(function(){return y.Actions.setMenuItem(h.a)}))]},236:function(e,t,r){"use strict";r.d(t,"a",(function(){return l}));var n=r(10),a=r.n(n),i=r(5),o=r(110);function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.a.setMenuItem):return s(s({},e),{},{selected:t.payload});case Object(i.getType)(o.a.openMenu):return s(s({},e),{},{open:!0});case Object(i.getType)(o.a.closeMenu):return s(s({},e),{},{open:!1});case Object(i.getType)(o.a.toggleMenu):return s(s({},e),{},{open:!e.open});default:return e}}},237:function(e,t){},241:function(e,t){},242:function(e,t,r){"use strict";r.d(t,"a",(function(){return l}));var n=r(10),a=r.n(n),i=r(5),o=r(17);function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.a.resetPassword.request):return s(s({},e),{},{updatingUsers:!0});case Object(i.getType)(o.a.resetPassword.success):return s(s({},e),{},{updatingUsers:!1,usersError:void 0});case Object(i.getType)(o.a.resetPassword.failure):return s(s({},e),{},{updatingUsers:!1,usersError:t.payload});case Object(i.getType)(o.a.createUser.request):return s(s({},e),{},{updatingUsers:!0});case Object(i.getType)(o.a.createUser.success):return s(s({},e),{},{updatingUsers:!1,users:t.payload,usersError:void 0});case Object(i.getType)(o.a.createUser.failure):return s(s({},e),{},{updatingUsers:!1,usersError:t.payload});case Object(i.getType)(o.a.updateUser.request):return s(s({},e),{},{updatingUsers:!0});case Object(i.getType)(o.a.updateUser.success):return s(s({},e),{},{updatingUsers:!1,users:t.payload,usersError:void 0});case Object(i.getType)(o.a.updateUser.failure):return s(s({},e),{},{updatingUsers:!1,usersError:t.payload});case Object(i.getType)(o.a.deleteUser.request):return s(s({},e),{},{updatingUsers:!0});case Object(i.getType)(o.a.deleteUser.success):return s(s({},e),{},{updatingUsers:!1,users:t.payload,usersError:void 0});case Object(i.getType)(o.a.deleteUser.failure):return s(s({},e),{},{updatingUsers:!1,usersError:t.payload});case Object(i.getType)(o.a.getUsers.request):return s(s({},e),{},{updatingUsers:!0});case Object(i.getType)(o.a.getUsers.success):return s(s({},e),{},{updatingUsers:!1,users:t.payload.map((function(e){return{uid:e.uid,firstName:e.firstName,surname:e.surname,email:e.email,role:e.role}})),usersError:void 0});case Object(i.getType)(o.a.getUsers.failure):return s(s({},e),{},{updatingUsers:!1,users:void 0,usersError:t.payload});case Object(i.getType)(o.a.editUser):return s(s({},e),{},{manageUserUID:t.payload});default:return e}}},243:function(e,t){},244:function(e,t,r){"use strict";r.d(t,"a",(function(){return C}));var n=r(17),a=r(29),i=r(43),o=r.n(i),c=r(86),s=r(39),u=r(49),l=r(33),d=r(90),A=r(81),f=function(e){switch(e){case a.b.administrator:return 3;case a.b.editor:return 2;case a.b.viewer:return 1;case a.b.updateRequired:return 0;default:return-1}},p=function(e){return void 0!==e?e.sort((function(e,t){var r=f(e.role),n=f(t.role)-r;return 0!=n?n:e.emailt.email?1:0})):[]},g=Object(l.b)(n.a.resetPassword.request,(function(e){return c.QueryService.checkPermission(a.b.administrator).then((function(t){return o.a.auth().sendPasswordResetEmail(e,null)})).then((function(){return n.a.resetPassword.success(e)})).catch((function(e){return n.a.resetPassword.failure(e)}))})),b=Object(l.a)(n.a.resetPassword.success,(function(e){return s.a.setGlobalMessage({title:"Check your inbox",message:"An email has been sent to "+e})})),y=Object(l.a)(n.a.resetPassword.failure,(function(e){return s.a.setError({title:"Error",message:e.message})})),m=Object(l.b)(n.a.updateUser.request,(function(e,t){return c.QueryService.updateUser(e).then((function(r){var a=t.value.userAdmin.users.filter((function(t){return t.uid!==e.uid}));return a.push(r),n.a.updateUser.success(p(a))})).catch((function(e){return n.a.updateUser.failure(Object(a.c)(a.a.NoPermission,e.message,void 0))}))})),h=Object(l.a)(n.a.updateUser.success,(function(e,t){return u.Actions.setMenuItem(t.value.menu.selected===A.b?d.b:t.value.menu.selected)})),O=Object(l.a)(n.a.updateUser.failure,(function(e){return s.a.setError({title:"Error",message:e.message})})),v=Object(l.b)(n.a.deleteUser.request,(function(e,t){return c.QueryService.deleteUser(e).then((function(r){var a=t.value.userAdmin.users.filter((function(t){return t.uid!==e.uid}));return n.a.deleteUser.success(p(a))})).catch((function(e){return n.a.deleteUser.failure(Object(a.c)(a.a.NoPermission,e.message,void 0))}))})),E=Object(l.a)(n.a.deleteUser.success,(function(e,t){return u.Actions.setMenuItem(t.value.menu.selected===A.b?d.b:t.value.menu.selected)})),j=Object(l.a)(n.a.deleteUser.failure,(function(e){return s.a.setError({title:"Error",message:e.message})})),C=[g,b,y,Object(l.b)(n.a.createUser.request,(function(e,t){return c.QueryService.createUser(e).then((function(r){return o.a.auth().sendPasswordResetEmail(e.email,null).then((function(a){var i=t.value.userAdmin.users.filter((function(t){return t.email!==e.email}));return i.push(r),n.a.createUser.success(p(i))})).catch((function(e){return n.a.createUser.failure(Object(a.c)(a.a.NoPermission,e.message,void 0))}))})).catch((function(e){return n.a.createUser.failure(Object(a.c)(a.a.NoPermission,e.message,void 0))}))})),Object(l.a)(n.a.createUser.success,(function(e,t){return u.Actions.setMenuItem(t.value.menu.selected===A.b?d.b:t.value.menu.selected)})),Object(l.a)(n.a.createUser.failure,(function(e){return s.a.setError({title:"Error",message:e.message})})),m,h,O,v,E,j,Object(l.b)(n.a.getUsers.request,(function(){return c.QueryService.getUsers().then((function(e){return n.a.getUsers.success(p(e))})).catch((function(e){return n.a.getUsers.failure(Object(a.c)(a.a.NoPermission,"Failed to get user list",void 0))}))})),Object(l.a)(n.a.getUsers.failure,(function(e){return s.a.setError({title:"Error",message:e.message})}))]},246:function(e,t,r){"use strict";r.d(t,"a",(function(){return O}));var n=r(16),a=r.n(n),i=r(19),o=r.n(i),c=r(18),s=r.n(c),u=r(20),l=r.n(u),d=r(13),A=r.n(d),f=r(0),p=r.n(f),g=r(2),b=r(8),y=r(37),m=r(153);function h(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=A()(e);if(t){var a=A()(this).constructor;r=Reflect.construct(n,arguments,a)}else r=n.apply(this,arguments);return l()(this,r)}}var O=function(e){s()(r,e);var t=h(r);function r(){return a()(this,r),t.apply(this,arguments)}return o()(r,[{key:"render",value:function(){var e=this.props,t=e.text,r=e.disabled,n=e.onPress,a=e.theme,i=void 0===a?m.c:a;return p.a.createElement(y.a,{style:{justifyContent:"center",alignItems:i.stretchWidth?"stretch":"center",opacity:i.disabledFade&&r?.5:void 0},onPress:n,disabled:r},p.a.createElement(g.a,{style:{justifyContent:"center",alignItems:"center",paddingHorizontal:i.paddingHorizontal,paddingVertical:i.paddingVertical,borderRadius:i.borderRadius,backgroundColor:r&&i.disabledBackgroundColor||i.backgroundColor,borderColor:i.borderColor,borderWidth:i.borderWidth,minWidth:i.minWidth,width:i.width,height:i.height}},p.a.createElement(b.a,{style:i.textStyle},t)))}}]),r}(p.a.PureComponent)},247:function(e,t){},248:function(e,t,r){"use strict";r.d(t,"a",(function(){return C}));var n=r(10),a=r.n(n),i=r(16),o=r.n(i),c=r(19),s=r.n(c),u=r(18),l=r.n(u),d=r(20),A=r.n(d),f=r(13),p=r.n(f),g=r(0),b=r.n(g),y=r(2),m=r(8),h=r(56),O=r(154);function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.a.setListening):return s(s({},e),{},{listening:t.payload});default:return e}}},251:function(e,t){},252:function(e,t,r){"use strict";r.d(t,"a",(function(){return c}));r(150);var n=r(92),a=r(70),i=r(21),o=r(33),c=[Object(o.a)(i.a.login.success,(function(e){return a.a(),n.a.setListening(!0)})),Object(o.a)(i.a.federatedLogin.success,(function(e){return a.a(),n.a.setListening(!0)})),Object(o.a)(i.a.checkPermissions.success,(function(e){return a.a(),n.a.setListening(!0)})),Object(o.a)(i.a.setLoggedOut,(function(){return a.b(),n.a.setListening(!1)}))]},29:function(e,t,r){"use strict";var n,a;function i(e,t,r){return{code:e,message:t,email:r}}r.d(t,"b",(function(){return n})),r.d(t,"a",(function(){return a})),r.d(t,"c",(function(){return i})),function(e){e.administrator="administrator",e.editor="editor",e.viewer="viewer",e.updateRequired="update required",e.inactive="inactive"}(n||(n={})),function(e){e.BadCredentials="Bad Credentials",e.EmailUnverified="Email Unverified",e.NoPermission="No Permission"}(a||(a={}))},33:function(e,t,r){"use strict";r.d(t,"a",(function(){return s})),r.d(t,"b",(function(){return u}));var n=r(5),a=r(430),i=r(195),o=r(196),c=r(205);function s(e,t){return function(r,o){return r.pipe(Object(a.a)(Object(n.isActionOf)(e)),Object(i.a)((function(e){return t(e.payload,o)})))}}function u(e,t){return function(r,i){return r.pipe(Object(a.a)(Object(n.isActionOf)(e)),Object(o.a)((function(e){return Object(c.a)(t(e.payload,i))})))}}},388:function(e,t,r){"use strict";r.d(t,"a",(function(){return l}));var n=r(10),a=r.n(n),i=r(5),o=r(136);function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.a.updateRetailers):return s(s({},e),{},{retailers:t.payload});case Object(i.getType)(o.a.clearRetailers):return u;default:return e}}},389:function(e,t){},39:function(e,t,r){"use strict";r.d(t,"c",(function(){return d})),r.d(t,"a",(function(){return c})),r.d(t,"b",(function(){return n}));var n,a=r(10),i=r.n(a),o=r(5),c={setFontsLoading:Object(o.createAction)("app/SET_FONTS_LOADING",(function(e){return function(t){return e(t)}})),setBusy:Object(o.createAction)("app/SET_BUSY",(function(e){return function(t){return e(t)}})),setGlobalMessage:Object(o.createAction)("app/SET_GLOBAL_MESSAGE",(function(e){return function(t){return e(t)}})),setError:Object(o.createAction)("app/SET_ERROR",(function(e){return function(t){return e(t)}}))};function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(o.getType)(c.setFontsLoading):return u(u({},e),{},{fontsLoading:t.payload});case Object(o.getType)(c.setBusy):return u(u({},e),{},{busy:e.busy+(t.payload?1:-1)});case Object(o.getType)(c.setGlobalMessage):return u(u({},e),{},{globalMessage:t.payload?u({type:n.Info},t.payload):void 0});case Object(o.getType)(c.setError):return u(u({},e),{},{globalMessage:t.payload?u({type:n.Error},t.payload):void 0});default:return e}}},390:function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(78),a=function(e){return e.retailers.retailers},i={retailers:a,defaultRetailer:Object(n.createSelector)(a,(function(e){if(0===e.length)throw"No Retailers defined";return e[0]}))}},391:function(e,t,r){"use strict";r.d(t,"a",(function(){return j}));var n=r(10),a=r.n(n),i=r(16),o=r.n(i),c=r(19),s=r.n(c),u=r(18),l=r.n(u),d=r(20),A=r.n(d),f=r(13),p=r.n(f),g=r(0),b=r.n(g),y=r(2),m=r(158),h=r(112);function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t1&&void 0!==r[1]?r[1]:{},n.abrupt("return",fetch(e,t).then((function(t){return t.ok&&200===t.status?t.json().catch((function(r){console.log("Warning: fetch "+e+" status "+t.status+" but decoding json failed with",r)})):t.json().catch((function(e){throw new Error("Request failed with status "+t.status)})).then((function(e){throw new Error(void 0!==e&&void 0!==e.message?e.message:"Request failed with status "+t.status)}))})));case 2:case"end":return n.stop()}}),null,null,null,Promise)}function j(e,t,r,n){var a,i,o,c,s=arguments;return d.a.async((function(u){for(;;)switch(u.prev=u.next){case 0:return a=s.length>4&&void 0!==s[4]?s[4]:"GET",i={headers:{Authorization:n,"Content-Type":"application/json"},method:a,mode:"cors"},o=e+"/"+t,"POST"===a&&(i.body=JSON.stringify(r)),"GET"===a&&void 0!==r&&(c=Object.keys(r).filter((function(e){return null!==r[e]&&void 0!==r[e]})).map((function(e){return encodeURIComponent(e)+"="+encodeURIComponent(r[e].toString())})).join("&"),o+="?"+c),u.abrupt("return",E(o,i));case 6:case"end":return u.stop()}}),null,null,null,Promise)}function C(e,t,r,n){var a;return d.a.async((function(i){for(;;)switch(i.prev=i.next){case 0:return a={headers:v({Authorization:"Bearer "+n},t),method:"POST",mode:"cors",body:r},i.abrupt("return",E(e,a));case 2:case"end":return i.stop()}}),null,null,null,Promise)}function w(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function S(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"date",r={$match:h()({},t,{$gte:new Date(e.start.toISOString()),$lt:new Date(e.end.toISOString())})};return r}function P(e){return{$match:h()({},e.field,{$in:e.values})}}function B(e){var t={};e.firstOutputs&&e.firstOutputs.forEach((function(e){t[e]={$first:"$"+e}})),e.sumOutputs&&e.sumOutputs.forEach((function(e){t[e]={$sum:"$"+e}})),e.addCount&&(t[e.addCount]={$sum:1});var r=e.fields.map((function(e){return{$toString:"$"+e}}));return{$group:S({_id:1==r.length?r[0]:{$concat:r}},t)}}function R(e){return{$sort:h()({},e.field,e.ascendingOrder?1:-1)}}function k(e){var t={};return e.outputs&&e.outputs.forEach((function(e){t[e]=!0})),e.projectOutputs&&e.projectOutputs.forEach((function(e){t[e.to]="$"+e.from})),{$project:S({_id:!1},t)}}function D(e,t){return{database:e,collection:"public_holidays",operation:"aggregate",query:{pipeline:T(t)}}}function x(e,t){return{database:e,collection:"school_holidays",operation:"aggregate",query:{pipeline:U(t)}}}function T(e){return[L(e),{$group:{_id:{$concat:[{$dateToString:{date:"$date"}},{$trim:{input:"$holiday_name"}}]},date:{$first:"$date"},name:{$first:"$holiday_name"},states:{$push:"$region_code"}}},{$group:{_id:"$date",description:{$push:{name:{$trim:{input:"$name"}},states:M("$states")}}}},{$project:{_id:!1,date:"$_id",description:{$reduce:{input:"$description",initialValue:"",in:{$concat:["$$value",{$concat:["$$this.name"," ","$$this.states"]},{$cond:[{$eq:["$$this",{$arrayElemAt:["$description",-1]}]},"",", "]}]}}}}},{$sort:{date:1}}]}function U(e){return[L(e),{$group:{_id:"$date",states:{$push:"$region_code"}}},{$project:{_id:!1,date:"$_id",description:{$concat:["School holiday ",M("$states")]}}},{$sort:{date:1}}]}function L(e){var t=I(e);return e.states&&(t.$match.region_code={$in:e.states}),t}function M(e){return{$cond:[{$eq:[{$size:e},8]},"(ALL)",{$reduce:{input:e,initialValue:"(",in:{$concat:["$$value","$$this",{$cond:[{$eq:["$$this",{$arrayElemAt:[e,-1]}]},")",", "]}]}}}]}}function Q(e,t){return{database:e,collection:t.collectionKey,operation:"aggregate",query:{pipeline:W(t)}}}function W(e){return[I(e),{$project:{_id:!1,date:"$"+(e.dateKey||"date"),description:"$"+(e.descriptionKey||"description")}},{$sort:{date:1}}]}function H(e,t){return{database:e,collection:t.collectionKey,operation:"aggregate",query:{options:{allowDiskUse:!0},pipeline:V(t)}}}function N(e){var t={_id:!1,date:e.dateKey},r=e.multiValueKeys,n=void 0===r?[]:r,a=e.multiCountKeys,i=void 0===a?[]:a;if(n.length>0||i.length>0){if(n.length>0){if(i.length>0&&i.length!=n.length)throw new Error("Mismatched length of multiCountKeys and multiValueKeys");n.forEach((function(e){t[e]="$"+e}))}if(i.length>0){if(n.length>0&&n.length!=i.length)throw new Error("Mismatched length of multiCountKeys and multiValueKeys");i.forEach((function(e){t[e]="$"+e}))}}else t.value=e.valueKey?e.valueKey:1,t.count=e.countKey?e.countKey:1;return e.extraKeys&&e.extraKeys.length>0&&e.extraKeys.forEach((function(e){t[e]="$"+e})),t}function V(e){var t=[{$project:N(e)}];return e.filter&&t.unshift(P(e.filter)),t}function F(e,t,r){var n=r||"group",a=[];e.forEach((function(e){var t=e[n];if(t){var r=a.find((function(e){return e.group===t}));r?r.value+=e.value:a.push({group:t,value:e.value})}})),a.sort((function(e,t){return e.value0?{$match:K(K({},t.$match),{},{category:{$in:e.categories}})}:t}var te=r(405),re=function(){function e(){f()(this,e)}return g()(e,null,[{key:"init",value:function(e,t){this.apiBaseUrl=e,this.defaultDatabase=t}},{key:"dailyValue",value:function(e){var t,r,n,a,o=arguments;return d.a.async((function(c){for(;;)switch(c.prev=c.next){case 0:return t=o.length>1&&void 0!==o[1]?o[1]:"$date",r=o.length>2&&void 0!==o[2]?o[2]:"$value",n=o.length>3&&void 0!==o[3]?o[3]:"$count",a=o.length>4?o[4]:void 0,c.abrupt("return",this.postQuery(i.newRequest(null!=a?a:this.defaultDatabase,{collectionKey:e,dateKey:t,valueKey:r||void 0,countKey:n||void 0})).then((function(e){return e||[]})));case 5:case"end":return c.stop()}}),null,this,null,Promise)}},{key:"dailyValueFromParams",value:function(e,t){return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",this.postQuery(i.newRequest(null!=t?t:this.defaultDatabase,e)).then((function(e){return e||[]})));case 1:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"dailyMultiValue",value:function(e,t){var r,n,a,o,c=arguments;return d.a.async((function(s){for(;;)switch(s.prev=s.next){case 0:return r=c.length>2&&void 0!==c[2]?c[2]:[],n=c.length>3&&void 0!==c[3]?c[3]:[],a=c.length>4&&void 0!==c[4]?c[4]:"$date",o=c.length>5?c[5]:void 0,s.abrupt("return",this.postQuery(i.newRequest(null!=o?o:this.defaultDatabase,{collectionKey:e,dateKey:a,multiValueKeys:t,multiCountKeys:r,extraKeys:n})).then((function(e){return t.map((function(t,n){var a=r[n];return(e||[]).map((function(e){return{date:e.date,value:t?e[t]:1,count:a?e[a]:1}}))}))})));case 5:case"end":return s.stop()}}),null,this,null,Promise)}},{key:"groupedDailyValue",value:function(e){var t,r,n,a,i,c=arguments;return d.a.async((function(s){for(;;)switch(s.prev=s.next){case 0:return t=c.length>1&&void 0!==c[1]?c[1]:"$date",r=c.length>2&&void 0!==c[2]?c[2]:"$value",n=c.length>3&&void 0!==c[3]?c[3]:"$count",a=c.length>4&&void 0!==c[4]?c[4]:"$category",i=c.length>5?c[5]:void 0,s.abrupt("return",this.postQuery(o.newRequest(null!=i?i:this.defaultDatabase,{collectionKey:e,dateKey:t,valueKey:r||void 0,countKey:n||void 0,groupKey:a})).then((function(e){return e||[]})));case 6:case"end":return s.stop()}}),null,this,null,Promise)}},{key:"dailyMultiValueToGroupedDailyValue",value:function(e,t,r){var n,a,o,c,s,u=arguments;return d.a.async((function(l){for(;;)switch(l.prev=l.next){case 0:return n=u.length>3&&void 0!==u[3]?u[3]:[],a=u.length>4&&void 0!==u[4]?u[4]:[],o=u.length>5?u[5]:void 0,c=u.length>6&&void 0!==u[6]?u[6]:"$date",s=u.length>7?u[7]:void 0,l.abrupt("return",this.postQuery(i.newRequest(null!=s?s:this.defaultDatabase,{collectionKey:e,dateKey:c,multiValueKeys:r,multiCountKeys:n,extraKeys:a,filter:o})).then((function(e){return t.map((function(t,i){var o=r[i],c=n[i];return(e||[]).map((function(e){var r={date:e.date,group:t,value:o?e[o]:1,count:c?e[c]:1};return a.length>0&&a.forEach((function(t){r[t]=e[t]})),r}))})).reduce((function(e,t){return e.concat(t)}))})));case 6:case"end":return l.stop()}}),null,this,null,Promise)}},{key:"groupedDailyValueFromParams",value:function(e,t){return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",this.postQuery(o.newRequest(null!=t?t:this.defaultDatabase,e)).then((function(e){return e||[]})));case 1:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"holidaysPublic",value:function(e,t){var r;return d.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:return r=n.publicHolidays(null!=t?t:this.defaultDatabase,e),a.abrupt("return",this.postQuery(r).then((function(e){return e||[]})));case 2:case"end":return a.stop()}}),null,this,null,Promise)}},{key:"holidaysSchool",value:function(e,t){var r;return d.a.async((function(a){for(;;)switch(a.prev=a.next){case 0:return r=n.schoolHolidays(null!=t?t:this.defaultDatabase,e),a.abrupt("return",this.postQuery(r));case 2:case"end":return a.stop()}}),null,this,null,Promise)}},{key:"calendarEvents",value:function(e,t){var r;return d.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return r=a.newRequest(null!=t?t:this.defaultDatabase,e),n.abrupt("return",this.postQuery(r));case 2:case"end":return n.stop()}}),null,this,null,Promise)}},{key:"tableData",value:function(e,t,r){return d.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",this.tableDataRequest({database:null!=r?r:this.defaultDatabase,collection:e,query:{options:{allowDiskUse:!0},pipeline:t?[R({field:t})]:[]},operation:"aggregate"}));case 1:case"end":return n.stop()}}),null,this,null,Promise)}},{key:"tableDataRequest",value:function(e){return d.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.postQuery(e).then((function(e){return e||[]})));case 1:case"end":return t.stop()}}),null,this,null,Promise)}},{key:"checkPermission",value:function(e){var t;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0!==this.apiBaseUrl){r.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return t=this.apiBaseUrl+"/auth/login",r.abrupt("return",this.authenticate().then((function(r){return fetch(t,{method:"POST",mode:"cors",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:r,role:e})}).then((function(e){return e.ok?e.json().catch((function(e){console.log("Warning: Login endpoint did not return a response body (role will default to viewer)")})):e.json().then((function(e){throw e}))}))})));case 4:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"authenticate",value:function(){var e;return d.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=y.a.auth().currentUser){t.next=3;break}throw new Error("You are not currently logged in");case 3:return t.abrupt("return",e.getIdToken());case 4:case"end":return t.stop()}}),null,null,null,Promise)}},{key:"postQuery",value:function(e){var t,r;return d.a.async((function(n){for(;;)switch(n.prev=n.next){case 0:if(void 0!==this.apiBaseUrl){n.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return t=this.apiBaseUrl+"/query",r={"Content-Type":"application/bson"},n.abrupt("return",this.authenticate().then((function(n){return C(t,r,te.a(e),n)})));case 5:case"end":return n.stop()}}),null,this,null,Promise)}},{key:"createUser",value:function(e){var t=this;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0!==this.apiBaseUrl){r.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return r.abrupt("return",this.authenticate().then((function(r){return j(t.apiBaseUrl,"auth/createUser",e,"Bearer "+r,"POST")})));case 3:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"updateUser",value:function(e){var t=this;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0!==this.apiBaseUrl){r.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return r.abrupt("return",this.authenticate().then((function(r){return j(t.apiBaseUrl,"auth/updateUser",e,"Bearer "+r,"POST")})));case 3:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"deleteUser",value:function(e){var t=this;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0!==this.apiBaseUrl){r.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return r.abrupt("return",this.authenticate().then((function(r){return j(t.apiBaseUrl,"auth/deleteUser",e,"Bearer "+r,"POST")})));case 3:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"getUsers",value:function(){var e=this;return d.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:if(void 0!==this.apiBaseUrl){t.next=2;break}throw"apiBaseUrl undefined, did you call init?";case 2:return t.abrupt("return",this.authenticate().then((function(t){return j(e.apiBaseUrl,"auth/getUsers",void 0,"Bearer "+t)})));case 3:case"end":return t.stop()}}),null,this,null,Promise)}},{key:"summaryScreenAllTimeUsers",value:function(){var e;return d.a.async((function(t){for(;;)switch(t.prev=t.next){case 0:return e=c.newRequest(),t.abrupt("return",this.postQuery(e).then((function(e){return e?e[0]:{value:0}})));case 2:case"end":return t.stop()}}),null,this,null,Promise)}},{key:"summaryScreenActiveUsers",value:function(e){var t;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:return t=s.newRequest(e),r.abrupt("return",this.postQuery(t).then((function(e){return e?e[0]:{value:0}})));case 2:case"end":return r.stop()}}),null,this,null,Promise)}},{key:"feedback",value:function(e){var t;return d.a.async((function(r){for(;;)switch(r.prev=r.next){case 0:return t=u.newRequest(e),r.abrupt("return",this.postQuery(t).then((function(e){return e||[]})));case 2:case"end":return r.stop()}}),null,this,null,Promise)}}]),e}()},404:function(e){e.exports=JSON.parse('{"a":{"name":"Airport Command:staging","slug":"airport-admin","privacy":"unlisted","platforms":["ios","android","web"],"version":"0.0.1","orientation":"landscape","icon":"./assets/icon.png","splash":{"image":"./assets/splash.png","resizeMode":"contain","backgroundColor":"#ffffff"},"updates":{"fallbackToCacheTimeout":0},"assetBundlePatterns":["**/*"],"ios":{"bundleIdentifier":"au.com.adapptor.wilsoncommand","supportsTablet":true,"buildNumber":"0"},"android":{"versionCode":0},"description":""}}')},429:function(e,t,r){"use strict";r.d(t,"a",(function(){return Tt}));var n=r(16),a=r.n(n),i=r(19),o=r.n(i),c=r(18),s=r.n(c),u=r(20),l=r.n(u),d=r(13),A=r.n(d),f=r(0),p=r.n(f),g=r(2),b=r(61),y=r(25),m=r(66),h=r(421),O=r(11),v=r.n(O),E=r(10),j=r.n(E),C=r(9),w=r(8),S=r(62),I=r(71);function P(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function B(e){for(var t=1;t0}),p.a.createElement(Oe,{globalMessage:r})):p.a.createElement(g.a,{style:kt.container},p.a.createElement(Se,null),p.a.createElement(Oe,{globalMessage:r}))}}]),n}(p.a.Component),kt=C.a.create({container:{position:"absolute",left:0,right:0,top:0,bottom:0,backgroundColor:R.pageBackground}}),Dt=Object(y.b)((function(e){return{global:e.global,menu:e.menu,user:e.user}}))(Rt);function xt(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=A()(e);if(t){var a=A()(this).constructor;r=Reflect.construct(n,arguments,a)}else r=n.apply(this,arguments);return l()(this,r)}}var Tt=function(e){s()(r,e);var t=xt(r);function r(){var e;a()(this,r);for(var n=arguments.length,i=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Object(i.getType)(o.addNewLocation):var r="New";return s(s({},e),{},{selectedIndex:e.locations.length,editedLocation:d(r),newLocation:d(r)});case Object(i.getType)(o.selectLocation):return s(s({},e),{},{selectedIndex:t.payload,editedLocation:s({},e.locations[t.payload])});case Object(i.getType)(o.saveLocation.request):return s({},e);case Object(i.getType)(o.saveLocation.success):return s(s({},e),{},{newLocation:void 0,editedLocation:void 0,selectedIndex:void 0});case Object(i.getType)(o.saveLocation.failure):return s({},e);case Object(i.getType)(o.cancelEditLocation):return s(s({},e),{},{newLocation:void 0,editedLocation:void 0,selectedIndex:void 0});case Object(i.getType)(o.updateEditedLocation):return s(s({},e),{},{editedLocation:l(e.editedLocation,t.payload)});case Object(i.getType)(o.updateLocations):return s(s({},e),{},{locations:t.payload});case Object(i.getType)(o.clearLocations):return u;default:return e}};function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t