diff --git a/UI/WebServerResources/js/Contacts.services.js b/UI/WebServerResources/js/Contacts.services.js index 51ca3c913..1e9024e52 100644 --- a/UI/WebServerResources/js/Contacts.services.js +++ b/UI/WebServerResources/js/Contacts.services.js @@ -1,2 +1,2 @@ -!function(){"use strict";function t(e){if("function"!=typeof e.then)if(this.init(e),this.name&&!this.id){var i=t.$$resource.create("createFolder",this.name);this.$unwrap(i),this.acls={objectEditor:1,objectCreator:1,objectEraser:1}}else this.id&&(this.$acl=new t.$$Acl("Contacts/"+this.id));else this.$unwrap(e)}t.$factory=["$q","$timeout","$log","sgSettings","sgAddressBook_PRELOAD","Resource","Card","Acl","Preferences",function(e,i,r,s,n,a,o,d,u){return angular.extend(t,{$q:e,$timeout:i,$log:r,PRELOAD:n,$$resource:new a(s.activeUser("folderURL")+"Contacts",s.activeUser()),$Card:o,$$Acl:d,$Preferences:u,$query:{value:"",sort:"c_cn",asc:1},activeUser:s.activeUser(),selectedFolder:null,$refreshTimeout:null}),u.settings.Contact.SortingState&&(t.$query.sort=u.settings.Contact.SortingState[0],t.$query.asc=parseInt(u.settings.Contact.SortingState[1])),t}];try{angular.module("SOGo.ContactsUI")}catch(t){angular.module("SOGo.ContactsUI",["SOGo.Common","SOGo.PreferencesUI"])}angular.module("SOGo.ContactsUI").constant("sgAddressBook_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("AddressBook",t.$factory),t.$filterAll=function(e,i,r){var s={search:e};return e?(angular.isUndefined(t.$cards)&&(t.$cards=[]),angular.extend(s,i),t.$$resource.fetch(null,"allContactSearch",s).then(function(i){var s,n,a,o=function(t){return this.id==t.id};for(s=r?_.filter(i.contacts,function(t){return _.isUndefined(_.find(r,_.bind(o,t)))}):i.contacts,a=t.$cards.length-1;a>=0;a--)n=t.$cards[a],_.isUndefined(_.find(s,_.bind(o,n)))&&t.$cards.splice(a,1);return _.forEach(s,function(i,r){if(_.isUndefined(_.find(t.$cards,_.bind(o,i)))){var s=new t.$Card(_.mapKeys(i,function(t,e){return e.toLowerCase()}),e);t.$cards.splice(r,0,s)}}),t.$log.debug(t.$cards),t.$cards})):(t.$cards=[],t.$q.when(t.$cards))},t.$add=function(t){var e,i,r;e=t.isSubscription?this.$subscriptions:this.$addressbooks,r=(i=_.find(e,function(e){return"personal"==t.id||"personal"!=e.id&&1===e.name.localeCompare(t.name)}))?_.indexOf(_.map(e,"id"),i.id):1,e.splice(r,0,t)},t.$findAll=function(e){var i=this;return e&&(this.$addressbooks=[],this.$subscriptions=[],this.$remotes=[],angular.forEach(e,function(e,r){var s=new t(e);s.isRemote?i.$remotes.push(s):s.isSubscription?i.$subscriptions.push(s):i.$addressbooks.push(s)})),_.union(this.$addressbooks,this.$subscriptions,this.$remotes)},t.$subscribe=function(e,i){var r=this;return t.$$resource.userResource(e).fetch(i,"subscribe").then(function(e){var i=new t(e);return _.isUndefined(_.find(r.$subscriptions,function(t){return t.id==e.id}))&&t.$add(i),i})},t.$reloadAll=function(){var e=this;return t.$$resource.fetch("addressbooksList").then(function(i){_.forEach(i.addressbooks,function(i){var r,s;r=i.isRemote?e.$remotes:i.owner!=t.activeUser.login?e.$subscriptions:e.$addressbooks,(s=_.find(r,function(t){return t.id==i.id}))&&s.init(i)})})},t.prototype.init=function(e,i){var r=this;this.$$cards||(this.$$cards=[]),this.idsMap={},this.$cards=[],angular.forEach(e,function(t,e){"headers"!=e&&"cards"!=e&&(r[e]=t)}),this.isOwned=t.activeUser.isSuperUser||this.owner==t.activeUser.login,this.isSubscription=!this.isRemote&&this.owner!=t.activeUser.login},t.prototype.$id=function(){return this.id?t.$q.when(this.id):this.$futureAddressBookData.then(function(t){return t.id})},t.prototype.getLength=function(){return this.$cards.length},t.prototype.getItemAtIndex=function(t){var e;return!this.$isLoading&&t>=0&&t0&&(n=t.$$resource.post(this.id,"headers",{ids:s}),this.$unwrapHeaders(n))}return u},t.prototype.hasSelectedCard=function(){return angular.isDefined(this.selectedCard)},t.prototype.isSelectedCard=function(t){return this.hasSelectedCard()&&this.selectedCard==t},t.prototype.$selectedCard=function(){var t=this;return _.find(this.$cards,function(e){return e.id==t.selectedCard})},t.prototype.$selectedCardIndex=function(){return _.indexOf(_.map(this.$cards,"id"),this.selectedCard)},t.prototype.$selectedCards=function(){return _.filter(this.$cards,function(t){return t.selected})},t.prototype.$selectedCount=function(){var t;return t=0,this.$cards&&(t=_.filter(this.$cards,function(t){return t.selected}).length),t},t.prototype.$startRefreshTimeout=function(){t.$refreshTimeout&&t.$timeout.cancel(t.$refreshTimeout);var e=t.$Preferences.defaults.SOGoRefreshViewCheck;if(e&&"manually"!=e){var i=angular.bind(this,t.prototype.$reload);t.$refreshTimeout=t.$timeout(i,1e3*e.timeInterval())}},t.prototype.$reload=function(){return this.$startRefreshTimeout(),this.$filter()},t.prototype.$filter=function(e,i,r){var s,n=this,a=i&&i.dry;return a?s=angular.copy(t.$query):(this.$isLoading=!0,s=t.$query,this.isRemote||(s.partial=1)),i&&(angular.extend(s,i),a&&!e)?(n.$$cards=[],t.$q.when(n.$$cards)):(angular.isDefined(e)&&(s.value=e),n.$id().then(function(i){var o=t.$$resource.post(i,"view",s);return a?o.then(function(s){var a,o,d,u,c,h=n.$$cards,l=function(t){return this==t.id};for(s.headers&&(u=_.invokeMap(s.headers[0],"toLowerCase"),c=u.indexOf("id"),s.headers.splice(0,1)),a=r?_.filter(s.ids,function(t){return _.isUndefined(_.find(r,_.bind(l,t)))}):s.ids,d=h.length-1;d>=0;d--)o=h[d],_.isUndefined(_.find(a,_.bind(l,o.id)))&&h.splice(d,1);return _.forEach(a,function(r,s){if(_.isUndefined(_.find(h,_.bind(l,r)))){var n=new t.$Card({pid:i,id:r},e);h.splice(s,0,n)}}),_.forEach(a,function(t,e){var i,r;h[e].id!=t&&(i=_.findIndex(h,_.bind(l,t)),r=h.splice(i,1),h.splice(e,0,r[0]))}),_.forEach(s.headers,function(t){var i,r=_.findIndex(h,_.bind(l,t[c]));r>-1&&(i=_.zipObject(u,t),h[r].init(i,e))}),h}):n.$unwrap(o)}))},t.prototype.$rename=function(e){var i,r;return r=this.isSubscription?t.$subscriptions:t.$addressbooks,i=_.indexOf(_.map(r,"id"),this.id),this.name=e,r.splice(i,1),t.$add(this),this.$save()},t.prototype.$delete=function(){var e,i,r=this,s=t.$q.defer();return this.isSubscription?(i=t.$$resource.fetch(this.id,"unsubscribe"),e=t.$subscriptions):(i=t.$$resource.remove(this.id),e=t.$addressbooks),i.then(function(){var t=_.indexOf(_.map(e,"id"),r.id);e.splice(t,1),s.resolve()},s.reject),s.promise},t.prototype.$_deleteCards=function(t){var e=this;_.forEachRight(this.$cards,function(i,r){var s=_.findIndex(t,function(t){return i.id==t});s>-1?(t.splice(s,1),delete e.idsMap[i.id],e.isSelectedCard(i.id)&&delete e.selectedCard,e.$cards.splice(r,1)):e.idsMap[i.id]-=t.length})},t.prototype.$deleteCards=function(e){var i=this,r=_.map(e,"id");return t.$$resource.post(this.id,"batchDelete",{uids:r}).then(function(){i.$_deleteCards(r)})},t.prototype.$copyCards=function(e,i){var r=_.map(e,"id");return t.$$resource.post(this.id,"copy",{uids:r,folder:i})},t.prototype.$moveCards=function(e,i){var r,s=this;return r=_.map(e,"id"),t.$$resource.post(this.id,"move",{uids:r,folder:i}).then(function(){return s.$_deleteCards(r)})},t.prototype.$save=function(){return t.$$resource.save(this.id,this.$omit()).then(function(t){return t})},t.prototype.exportCards=function(e){var i,r,s=null;return i={type:"application/octet-stream",filename:this.name+".ldif"},e&&(r=_.filter(this.$cards,function(t){return t.selected}),s={uids:_.map(r,"id")}),t.$$resource.download(this.id,"export",s,i)},t.prototype.$unwrap=function(e){var i=this;this.$isLoading=!0,this.$futureAddressBookData=e.then(function(e){return t.$timeout(function(){var r;return(!e.ids||i.$topIndex>e.ids.length-1)&&(i.$topIndex=0),angular.forEach(t.$findAll(),function(t,r){t.id==e.id&&angular.extend(i,t)}),i.init(e),i.ids&&(t.$log.debug("unwrapping "+i.ids.length+" cards"),_.reduce(i.ids,function(e,r,s){var n={pid:i.id,id:r};return i.idsMap[n.id]=s,e.push(new t.$Card(n)),e},i.$cards)),e.headers&&(r=_.invokeMap(e.headers[0],"toLowerCase"),e.headers.splice(0,1),i.ids?_.forEach(e.headers,function(t){var e=_.zipObject(r,t),s=i.idsMap[e.id];i.$cards[s].init(e)}):(i.$cards=[],angular.forEach(e.headers,function(e){var s=_.zipObject(r,e);angular.extend(s,{pid:i.id}),i.$cards.push(new t.$Card(s))}))),i.$acl=new t.$$Acl("Contacts/"+i.id),i.$startRefreshTimeout(),i.$isLoading=!1,t.$log.debug("addressbook "+i.id+" ready"),i})},function(e){i.isError=!0,angular.isObject(e)&&t.$timeout(function(){angular.extend(i,e)})})},t.prototype.$unwrapHeaders=function(e){var i=this;e.then(function(e){t.$timeout(function(){var t,r;e.length>0&&(t=_.invokeMap(e[0],"toLowerCase"),e.splice(0,1),_.forEach(e,function(e){e=_.zipObject(t,e),r=i.idsMap[e.id],angular.isDefined(r)&&i.$cards[r].init(e)}))})})},t.prototype.$omit=function(){var t={};return angular.forEach(this,function(e,i){"constructor"!=i&&"acls"!=i&&"ids"!=i&&"idsMap"!=i&&"urls"!=i&&"$"!=i[0]&&(t[i]=e)}),t}}(),function(){"use strict";function t(e,i){if("function"!=typeof e.then){if(this.init(e,i),this.pid&&!this.id){var r=t.$$resource.newguid(this.pid);this.$unwrap(r),this.isNew=!0}}else this.$unwrap(e)}t.$TEL_TYPES=["work","home","cell","fax","pager"],t.$EMAIL_TYPES=["work","home","pref"],t.$URL_TYPES=["work","home","pref"],t.$ADDRESS_TYPES=["work","home"],t.$factory=["$timeout","sgSettings","sgCard_STATUS","Resource","Preferences",function(e,i,r,s,n){return angular.extend(t,{STATUS:r,$$resource:new s(i.activeUser("folderURL")+"Contacts",i.activeUser()),$timeout:e,$Preferences:n}),n.defaults.SOGoContactsCategories&&(t.$categories=n.defaults.SOGoContactsCategories),n.defaults.SOGoAlternateAvatar&&(t.$alternateAvatar=n.defaults.SOGoAlternateAvatar),t}];try{angular.module("SOGo.ContactsUI")}catch(t){angular.module("SOGo.ContactsUI",["SOGo.Common","SOGo.PreferencesUI"])}angular.module("SOGo.ContactsUI").constant("sgCard_STATUS",{NOT_LOADED:0,DELAYED_LOADING:1,LOADING:2,LOADED:3,DELAYED_MS:300}).factory("Card",t.$factory),t.$find=function(e,i){var r=this.$$resource.fetch([e,i].join("/"),"view");return i?new t(r):t.$unwrapCollection(r)},t.filterCategories=function(e){var i=new RegExp(e,"i");return _.map(_.filter(t.$categories,function(t){return-1!=t.search(i)}),function(t){return{value:t}})},t.$unwrapCollection=function(e){var i={};return i.$futureCardData=e,e.then(function(e){t.$timeout(function(){angular.forEach(e,function(e,r){i[e.id]=new t(e)})})}),i},t.prototype.init=function(e,i){var r=this;if(angular.isUndefined(this.refs)&&(this.refs=[]),angular.isUndefined(this.categories)&&(this.categories=[]),this.c_screenname=null,angular.extend(this,e),this.$$fullname||(this.$$fullname=this.$fullname()),this.$$email||(this.$$email=this.$preferredEmail(i)),this.$$image||(this.$$image=this.image),this.$$image||(this.$$image=t.$Preferences.avatar(this.$$email,32,{no_404:!0})),this.hasphoto&&(this.photoURL=t.$$resource.path(this.pid,this.id,"photo")),this.isgroup&&(this.c_component="vlist"),this.$avatarIcon=this.$isList()?"group":"person",e.orgs&&e.orgs.length&&(this.orgs=_.map(e.orgs,function(t){return{value:t}})),e.notes&&e.notes.length?this.notes=_.map(e.notes,function(t){return{value:t}}):this.notes&&this.notes.length||(this.notes=[{value:""}]),angular.forEach(["addresses","phones","urls"],function(t){angular.forEach(r[t],function(t){t.type&&(t.type=t.type.toLowerCase())})}),angular.forEach(this.refs,function(e,i){e.email&&(e.emails=[{value:e.email}]),e.id=e.reference,r.refs[i]=new t(e)}),this.birthday){var s=t.$Preferences.$mdDateLocaleProvider;this.birthday=this.birthday.parseDate(s,"%Y-%m-%d"),this.$birthday=s.formatDate(this.birthday)}this.$loaded=angular.isDefined(this.c_name)?t.STATUS.LOADED:t.STATUS.NOT_LOADED,this.empty=" "},t.prototype.$id=function(){return this.$futureCardData.then(function(t){return t.id})},t.prototype.$isLoading=function(){return this.$loaded==t.STATUS.LOADING},t.prototype.$reload=function(){var e;return this.$futureCardData?this:(e=t.$$resource.fetch([this.pid,this.id].join("/"),"view"),this.$unwrap(e))},t.prototype.$save=function(){var e=this,i="saveAsContact";return"vlist"==this.c_component&&(i="saveAsList",_.forEach(this.refs,function(t){t.reference=t.id})),t.$$resource.save([this.pid,this.id||"_new_"].join("/"),this.$omit(),{action:i}).then(function(i){return e.birthday&&(e.$birthday=t.$Preferences.$mdDateLocaleProvider.formatDate(e.birthday)),e.$shadowData=e.$omit(!0),i})},t.prototype.$delete=function(e,i){if(!e)return t.$$resource.remove([this.pid,this.id].join("/"));i>-1&&this[e].length>i?this[e].splice(i,1):delete this[e]},t.prototype.export=function(){var e,i;return e={uids:[this.id]},i={type:"application/octet-stream",filename:this.$$fullname+".ldif"},t.$$resource.download(this.pid,"export",e,i)},t.prototype.$fullname=function(t){var e,i,r=this.c_cn||"",s=t&&t.html;return 0===r.length&&(i=[],this.c_givenname&&this.c_givenname.length>0&&i.push(this.c_givenname),this.nickname&&this.nickname.length>0&&i.push((s?"":"")+this.nickname+(s?"":"")),this.c_sn&&this.c_sn.length>0&&i.push(this.c_sn),i.length>0?r=i.join(" "):this.org&&this.org.length>0?r=this.org:this.emails&&this.emails.length>0&&(e=_.find(this.emails,function(t){return""!==t.value}))&&(r=e.value)),this.contactinfo&&(r+=" ("+this.contactinfo.split("\n").join("; ")+")"),r},t.prototype.$description=function(){var t=[];return this.title&&t.push(this.title),this.role&&t.push(this.role),this.org&&t.push(this.org),this.orgs&&(t=_.concat(t,_.map(this.orgs,"value"))),this.description&&t.push(this.description),t.join(", ")},t.prototype.$preferredEmail=function(t){var e,i;return t&&(i=new RegExp(t,"i"),e=_.find(this.emails,function(t){return i.test(t.value)})),e=e?e.value:(e=_.find(this.emails,function(t){return"pref"==t.type}))?e.value:this.emails&&this.emails.length?this.emails[0].value:this.c_mail&&this.c_mail.length?this.c_mail[0]:""},t.prototype.$shortFormat=function(t){var e=[this.$$fullname],i=this.$preferredEmail(t);return i&&i!=this.$$fullname&&e.push(" <"+i+">"),e.join(" ")},t.prototype.$isCard=function(){return"vcard"==this.c_component},t.prototype.$isList=function(t){var e=!t||!t.expandable||t.expandable&&!this.isgroup;return"vlist"==this.c_component&&e},t.prototype.$addOrg=function(t){return angular.isUndefined(this.orgs)?this.orgs=[t]:t==this.org||_.includes(this.orgs,t)||this.orgs.push(t),this.orgs.length-1},t.prototype.$addEmail=function(t){return angular.isUndefined(this.emails)?this.emails=[{type:t,value:""}]:_.isUndefined(_.find(this.emails,function(t){return""===t.value}))&&this.emails.push({type:t,value:""}),this.emails.length-1},t.prototype.$addScreenName=function(t){this.c_screenname=t},t.prototype.$addPhone=function(t){return angular.isUndefined(this.phones)?this.phones=[{type:t,value:""}]:_.isUndefined(_.find(this.phones,function(t){return""===t.value}))&&this.phones.push({type:t,value:""}),this.phones.length-1},t.prototype.$addUrl=function(t,e){return angular.isUndefined(this.urls)?this.urls=[{type:t,value:e}]:_.isUndefined(_.find(this.urls,function(t){return t.value==e}))&&this.urls.push({type:t,value:e}),this.urls.length-1},t.prototype.$addAddress=function(t,e,i,r,s,n,a,o){return angular.isUndefined(this.addresses)?this.addresses=[{type:t,postoffice:e,street:i,street2:r,locality:s,region:n,country:a,postalcode:o}]:_.find(this.addresses,function(t){return t.street==i&&t.street2==r&&t.locality==s&&t.country==a&&t.postalcode==o})||this.addresses.push({type:t,postoffice:e,street:i,street2:r,locality:s,region:n,country:a,postalcode:o}),this.addresses.length-1},t.prototype.$addMember=function(e){var i,r=new t({email:e,emails:[{value:e}]});if(angular.isUndefined(this.refs))this.refs=[r];else if(0===e.length)this.refs.push(r);else{for(i=0;i1?(e=this.$omit(),_.forEach(this.emails,function(r){var s=new t(angular.extend({},e,{emails:[r]}));i.push(s)}),i):[this]:[]},t.prototype.$reset=function(){var t=this;angular.forEach(this,function(e,i){"constructor"!=i&&"$"!=i[0]&&delete t[i]}),this.init(this.$shadowData),this.$shadowData=this.$omit(!0)},t.prototype.$unwrap=function(e){var i=this;return this.$loaded=t.STATUS.DELAYED_LOADING,t.$timeout(function(){i.$loaded!=t.STATUS.LOADED&&(i.$loaded=t.STATUS.LOADING)},t.STATUS.DELAYED_MS),this.$futureCardData=e.then(function(e){return i.init(e),i.$loaded=t.STATUS.LOADED,i.$shadowData=i.$omit(!0),i}),this.$futureCardData},t.prototype.$omit=function(e){var i={};return angular.forEach(this,function(t,r){"refs"==r?i.refs=_.map(t,function(t){return t.$omit(e)}):"constructor"!=r&&"$"!=r[0]&&(i[r]=e?angular.copy(t):t)}),e||(i.birthday?i.birthday=i.birthday.format(t.$Preferences.$mdDateLocaleProvider,"%Y-%m-%d"):i.birthday=""),this.orgs&&(i.orgs=_.map(this.orgs,"value")),this.notes&&(i.notes=_.map(this.notes,"value")),i},t.prototype.toString=function(){var t=this.id+" "+this.$$fullname;return this.$$email&&(t+=" <"+this.$$email+">"),"["+t+"]"}}(); +!function(){"use strict";function t(e){if("function"!=typeof e.then)if(this.init(e),this.name&&!this.id){var i=t.$$resource.create("createFolder",this.name);this.$unwrap(i),this.acls={objectEditor:1,objectCreator:1,objectEraser:1}}else this.id&&(this.$acl=new t.$$Acl("Contacts/"+this.id));else this.$unwrap(e)}t.$factory=["$q","$timeout","$log","sgSettings","sgAddressBook_PRELOAD","Resource","Card","Acl","Preferences",function(e,i,r,s,n,a,o,d,u){return angular.extend(t,{$q:e,$timeout:i,$log:r,PRELOAD:n,$$resource:new a(s.activeUser("folderURL")+"Contacts",s.activeUser()),$Card:o,$$Acl:d,$Preferences:u,$query:{value:"",sort:"c_cn",asc:1},activeUser:s.activeUser(),selectedFolder:null,$refreshTimeout:null}),u.settings.Contact.SortingState&&(t.$query.sort=u.settings.Contact.SortingState[0],t.$query.asc=parseInt(u.settings.Contact.SortingState[1])),t}];try{angular.module("SOGo.ContactsUI")}catch(t){angular.module("SOGo.ContactsUI",["SOGo.Common","SOGo.PreferencesUI"])}angular.module("SOGo.ContactsUI").constant("sgAddressBook_PRELOAD",{LOOKAHEAD:50,SIZE:100}).factory("AddressBook",t.$factory),t.$filterAll=function(e,i,r){var s={search:e};return e?(angular.isUndefined(t.$cards)&&(t.$cards=[]),angular.extend(s,i),t.$$resource.fetch(null,"allContactSearch",s).then(function(i){var s,n,a,o=function(t){return this.id==t.id};for(s=r?_.filter(i.contacts,function(t){return _.isUndefined(_.find(r,_.bind(o,t)))}):i.contacts,a=t.$cards.length-1;a>=0;a--)n=t.$cards[a],_.isUndefined(_.find(s,_.bind(o,n)))&&t.$cards.splice(a,1);return _.forEach(s,function(i,r){if(_.isUndefined(_.find(t.$cards,_.bind(o,i)))){var s=new t.$Card(_.mapKeys(i,function(t,e){return e.toLowerCase()}),e);t.$cards.splice(r,0,s)}}),t.$log.debug(t.$cards),t.$cards})):(t.$cards=[],t.$q.when(t.$cards))},t.$add=function(t){var e,i,r;e=t.isSubscription?this.$subscriptions:this.$addressbooks,r=(i=_.find(e,function(e){return"personal"==t.id||"personal"!=e.id&&1===e.name.localeCompare(t.name)}))?_.indexOf(_.map(e,"id"),i.id):1,e.splice(r,0,t)},t.$findAll=function(e){var i=this;return e&&(this.$addressbooks=[],this.$subscriptions=[],this.$remotes=[],angular.forEach(e,function(e,r){var s=new t(e);s.isRemote?i.$remotes.push(s):s.isSubscription?i.$subscriptions.push(s):i.$addressbooks.push(s)})),_.union(this.$addressbooks,this.$subscriptions,this.$remotes)},t.$subscribe=function(e,i){var r=this;return t.$$resource.userResource(e).fetch(i,"subscribe").then(function(e){var i=new t(e);return _.isUndefined(_.find(r.$subscriptions,function(t){return t.id==e.id}))&&t.$add(i),i})},t.$reloadAll=function(){var e=this;return t.$$resource.fetch("addressbooksList").then(function(i){_.forEach(i.addressbooks,function(i){var r,s;r=i.isRemote?e.$remotes:i.owner!=t.activeUser.login?e.$subscriptions:e.$addressbooks,(s=_.find(r,function(t){return t.id==i.id}))&&s.init(i)})})},t.prototype.init=function(e,i){var r=this;this.$$cards||(this.$$cards=[]),this.idsMap={},this.$cards=[],angular.forEach(e,function(t,e){"headers"!=e&&"cards"!=e&&(r[e]=t)}),this.isOwned=t.activeUser.isSuperUser||this.owner==t.activeUser.login,this.isSubscription=!this.isRemote&&this.owner!=t.activeUser.login},t.prototype.$id=function(){return this.id?t.$q.when(this.id):this.$futureAddressBookData.then(function(t){return t.id})},t.prototype.getLength=function(){return this.$cards.length},t.prototype.getItemAtIndex=function(t){var e;return!this.$isLoading&&t>=0&&t0&&(n=t.$$resource.post(this.id,"headers",{ids:s}),this.$unwrapHeaders(n))}return u},t.prototype.hasSelectedCard=function(){return angular.isDefined(this.selectedCard)},t.prototype.isSelectedCard=function(t){return this.hasSelectedCard()&&this.selectedCard==t},t.prototype.$selectedCard=function(){var t=this;return _.find(this.$cards,function(e){return e.id==t.selectedCard})},t.prototype.$selectedCardIndex=function(){return _.indexOf(_.map(this.$cards,"id"),this.selectedCard)},t.prototype.$selectedCards=function(){return _.filter(this.$cards,function(t){return t.selected})},t.prototype.$selectedCount=function(){var t;return t=0,this.$cards&&(t=_.filter(this.$cards,function(t){return t.selected}).length),t},t.prototype.$startRefreshTimeout=function(){t.$refreshTimeout&&t.$timeout.cancel(t.$refreshTimeout);var e=t.$Preferences.defaults.SOGoRefreshViewCheck;if(e&&"manually"!=e){var i=angular.bind(this,t.prototype.$reload);t.$refreshTimeout=t.$timeout(i,1e3*e.timeInterval())}},t.prototype.$reload=function(){return this.$startRefreshTimeout(),this.$filter()},t.prototype.$filter=function(e,i,r){var s,n=this,a=i&&i.dry;return a?s={value:"",sort:"c_cn",asc:1}:(this.$isLoading=!0,s=t.$query,this.isRemote||(s.partial=1)),i&&(angular.extend(s,i),a&&!e)?(n.$$cards=[],t.$q.when(n.$$cards)):(angular.isDefined(e)&&(s.value=e),n.$id().then(function(i){var o=t.$$resource.post(i,"view",s);return a?o.then(function(s){var a,o,d,u,c,h=n.$$cards,l=function(t){return this==t.id};for(s.headers&&(u=_.invokeMap(s.headers[0],"toLowerCase"),c=u.indexOf("id"),s.headers.splice(0,1),a=_.map(s.headers,function(t){return t[c]})),s.ids&&(a=r?_.filter(s.ids,function(t){return _.isUndefined(_.find(r,_.bind(l,t)))}):s.ids),d=h.length-1;d>=0;d--)o=h[d],_.isUndefined(_.find(a,_.bind(l,o.id)))&&h.splice(d,1);return _.forEach(a,function(r,s){if(_.isUndefined(_.find(h,_.bind(l,r)))){var n=new t.$Card({pid:i,id:r},e);h.splice(s,0,n)}}),_.forEach(a,function(t,e){var i,r;h[e].id!=t&&(i=_.findIndex(h,_.bind(l,t)),r=h.splice(i,1),h.splice(e,0,r[0]))}),_.forEach(s.headers,function(t){var i,r=_.findIndex(h,_.bind(l,t[c]));r>-1&&(i=_.zipObject(u,t),h[r].init(i,e))}),h}):n.$unwrap(o)}))},t.prototype.$rename=function(e){var i,r;return r=this.isSubscription?t.$subscriptions:t.$addressbooks,i=_.indexOf(_.map(r,"id"),this.id),this.name=e,r.splice(i,1),t.$add(this),this.$save()},t.prototype.$delete=function(){var e,i,r=this,s=t.$q.defer();return this.isSubscription?(i=t.$$resource.fetch(this.id,"unsubscribe"),e=t.$subscriptions):(i=t.$$resource.remove(this.id),e=t.$addressbooks),i.then(function(){var t=_.indexOf(_.map(e,"id"),r.id);e.splice(t,1),s.resolve()},s.reject),s.promise},t.prototype.$_deleteCards=function(t){var e=this;_.forEachRight(this.$cards,function(i,r){var s=_.findIndex(t,function(t){return i.id==t});s>-1?(t.splice(s,1),delete e.idsMap[i.id],e.isSelectedCard(i.id)&&delete e.selectedCard,e.$cards.splice(r,1)):e.idsMap[i.id]-=t.length})},t.prototype.$deleteCards=function(e){var i=this,r=_.map(e,"id");return t.$$resource.post(this.id,"batchDelete",{uids:r}).then(function(){i.$_deleteCards(r)})},t.prototype.$copyCards=function(e,i){var r=_.map(e,"id");return t.$$resource.post(this.id,"copy",{uids:r,folder:i})},t.prototype.$moveCards=function(e,i){var r,s=this;return r=_.map(e,"id"),t.$$resource.post(this.id,"move",{uids:r,folder:i}).then(function(){return s.$_deleteCards(r)})},t.prototype.$save=function(){return t.$$resource.save(this.id,this.$omit()).then(function(t){return t})},t.prototype.exportCards=function(e){var i,r,s=null;return i={type:"application/octet-stream",filename:this.name+".ldif"},e&&(r=_.filter(this.$cards,function(t){return t.selected}),s={uids:_.map(r,"id")}),t.$$resource.download(this.id,"export",s,i)},t.prototype.$unwrap=function(e){var i=this;this.$isLoading=!0,this.$futureAddressBookData=e.then(function(e){return t.$timeout(function(){var r;return(!e.ids||i.$topIndex>e.ids.length-1)&&(i.$topIndex=0),angular.forEach(t.$findAll(),function(t,r){t.id==e.id&&angular.extend(i,t)}),i.init(e),i.ids&&(t.$log.debug("unwrapping "+i.ids.length+" cards"),_.reduce(i.ids,function(e,r,s){var n={pid:i.id,id:r};return i.idsMap[n.id]=s,e.push(new t.$Card(n)),e},i.$cards)),e.headers&&(r=_.invokeMap(e.headers[0],"toLowerCase"),e.headers.splice(0,1),i.ids?_.forEach(e.headers,function(t){var e=_.zipObject(r,t),s=i.idsMap[e.id];i.$cards[s].init(e)}):(i.$cards=[],angular.forEach(e.headers,function(e){var s=_.zipObject(r,e);angular.extend(s,{pid:i.id}),i.$cards.push(new t.$Card(s))}))),i.$acl=new t.$$Acl("Contacts/"+i.id),i.$startRefreshTimeout(),i.$isLoading=!1,t.$log.debug("addressbook "+i.id+" ready"),i})},function(e){i.isError=!0,angular.isObject(e)&&t.$timeout(function(){angular.extend(i,e)})})},t.prototype.$unwrapHeaders=function(e){var i=this;e.then(function(e){t.$timeout(function(){var t,r;e.length>0&&(t=_.invokeMap(e[0],"toLowerCase"),e.splice(0,1),_.forEach(e,function(e){e=_.zipObject(t,e),r=i.idsMap[e.id],angular.isDefined(r)&&i.$cards[r].init(e)}))})})},t.prototype.$omit=function(){var t={};return angular.forEach(this,function(e,i){"constructor"!=i&&"acls"!=i&&"ids"!=i&&"idsMap"!=i&&"urls"!=i&&"$"!=i[0]&&(t[i]=e)}),t}}(),function(){"use strict";function t(e,i){if("function"!=typeof e.then){if(this.init(e,i),this.pid&&!this.id){var r=t.$$resource.newguid(this.pid);this.$unwrap(r),this.isNew=!0}}else this.$unwrap(e)}t.$TEL_TYPES=["work","home","cell","fax","pager"],t.$EMAIL_TYPES=["work","home","pref"],t.$URL_TYPES=["work","home","pref"],t.$ADDRESS_TYPES=["work","home"],t.$factory=["$timeout","sgSettings","sgCard_STATUS","Resource","Preferences",function(e,i,r,s,n){return angular.extend(t,{STATUS:r,$$resource:new s(i.activeUser("folderURL")+"Contacts",i.activeUser()),$timeout:e,$Preferences:n}),n.defaults.SOGoContactsCategories&&(t.$categories=n.defaults.SOGoContactsCategories),n.defaults.SOGoAlternateAvatar&&(t.$alternateAvatar=n.defaults.SOGoAlternateAvatar),t}];try{angular.module("SOGo.ContactsUI")}catch(t){angular.module("SOGo.ContactsUI",["SOGo.Common","SOGo.PreferencesUI"])}angular.module("SOGo.ContactsUI").constant("sgCard_STATUS",{NOT_LOADED:0,DELAYED_LOADING:1,LOADING:2,LOADED:3,DELAYED_MS:300}).factory("Card",t.$factory),t.$find=function(e,i){var r=this.$$resource.fetch([e,i].join("/"),"view");return i?new t(r):t.$unwrapCollection(r)},t.filterCategories=function(e){var i=new RegExp(e,"i");return _.map(_.filter(t.$categories,function(t){return-1!=t.search(i)}),function(t){return{value:t}})},t.$unwrapCollection=function(e){var i={};return i.$futureCardData=e,e.then(function(e){t.$timeout(function(){angular.forEach(e,function(e,r){i[e.id]=new t(e)})})}),i},t.prototype.init=function(e,i){var r=this;if(angular.isUndefined(this.refs)&&(this.refs=[]),angular.isUndefined(this.categories)&&(this.categories=[]),this.c_screenname=null,angular.extend(this,e),this.$$fullname||(this.$$fullname=this.$fullname()),this.$$email||(this.$$email=this.$preferredEmail(i)),this.$$image||(this.$$image=this.image),this.$$image||(this.$$image=t.$Preferences.avatar(this.$$email,32,{no_404:!0})),this.hasphoto&&(this.photoURL=t.$$resource.path(this.pid,this.id,"photo")),this.isgroup&&(this.c_component="vlist"),this.$avatarIcon=this.$isList()?"group":"person",e.orgs&&e.orgs.length&&(this.orgs=_.map(e.orgs,function(t){return{value:t}})),e.notes&&e.notes.length?this.notes=_.map(e.notes,function(t){return{value:t}}):this.notes&&this.notes.length||(this.notes=[{value:""}]),angular.forEach(["addresses","phones","urls"],function(t){angular.forEach(r[t],function(t){t.type&&(t.type=t.type.toLowerCase())})}),angular.forEach(this.refs,function(e,i){e.email&&(e.emails=[{value:e.email}]),e.id=e.reference,r.refs[i]=new t(e)}),this.birthday){var s=t.$Preferences.$mdDateLocaleProvider;this.birthday=this.birthday.parseDate(s,"%Y-%m-%d"),this.$birthday=s.formatDate(this.birthday)}this.$loaded=angular.isDefined(this.c_name)?t.STATUS.LOADED:t.STATUS.NOT_LOADED,this.empty=" "},t.prototype.$id=function(){return this.$futureCardData.then(function(t){return t.id})},t.prototype.$isLoading=function(){return this.$loaded==t.STATUS.LOADING},t.prototype.$reload=function(){var e;return this.$futureCardData?this:(e=t.$$resource.fetch([this.pid,this.id].join("/"),"view"),this.$unwrap(e))},t.prototype.$save=function(){var e=this,i="saveAsContact";return"vlist"==this.c_component&&(i="saveAsList",_.forEach(this.refs,function(t){t.reference=t.id})),t.$$resource.save([this.pid,this.id||"_new_"].join("/"),this.$omit(),{action:i}).then(function(i){return e.birthday&&(e.$birthday=t.$Preferences.$mdDateLocaleProvider.formatDate(e.birthday)),e.$shadowData=e.$omit(!0),i})},t.prototype.$delete=function(e,i){if(!e)return t.$$resource.remove([this.pid,this.id].join("/"));i>-1&&this[e].length>i?this[e].splice(i,1):delete this[e]},t.prototype.export=function(){var e,i;return e={uids:[this.id]},i={type:"application/octet-stream",filename:this.$$fullname+".ldif"},t.$$resource.download(this.pid,"export",e,i)},t.prototype.$fullname=function(t){var e,i,r=this.c_cn||"",s=t&&t.html;return 0===r.length&&(i=[],this.c_givenname&&this.c_givenname.length>0&&i.push(this.c_givenname),this.nickname&&this.nickname.length>0&&i.push((s?"":"")+this.nickname+(s?"":"")),this.c_sn&&this.c_sn.length>0&&i.push(this.c_sn),i.length>0?r=i.join(" "):this.org&&this.org.length>0?r=this.org:this.emails&&this.emails.length>0&&(e=_.find(this.emails,function(t){return""!==t.value}))&&(r=e.value)),this.contactinfo&&(r+=" ("+this.contactinfo.split("\n").join("; ")+")"),r},t.prototype.$description=function(){var t=[];return this.title&&t.push(this.title),this.role&&t.push(this.role),this.org&&t.push(this.org),this.orgs&&(t=_.concat(t,_.map(this.orgs,"value"))),this.description&&t.push(this.description),t.join(", ")},t.prototype.$preferredEmail=function(t){var e,i;return t&&(i=new RegExp(t,"i"),e=_.find(this.emails,function(t){return i.test(t.value)})),e=e?e.value:(e=_.find(this.emails,function(t){return"pref"==t.type}))?e.value:this.emails&&this.emails.length?this.emails[0].value:this.c_mail&&this.c_mail.length?this.c_mail[0]:""},t.prototype.$shortFormat=function(t){var e=[this.$$fullname],i=this.$preferredEmail(t);return i&&i!=this.$$fullname&&e.push(" <"+i+">"),e.join(" ")},t.prototype.$isCard=function(){return"vcard"==this.c_component},t.prototype.$isList=function(t){var e=!t||!t.expandable||t.expandable&&!this.isgroup;return"vlist"==this.c_component&&e},t.prototype.$addOrg=function(t){return angular.isUndefined(this.orgs)?this.orgs=[t]:t==this.org||_.includes(this.orgs,t)||this.orgs.push(t),this.orgs.length-1},t.prototype.$addEmail=function(t){return angular.isUndefined(this.emails)?this.emails=[{type:t,value:""}]:_.isUndefined(_.find(this.emails,function(t){return""===t.value}))&&this.emails.push({type:t,value:""}),this.emails.length-1},t.prototype.$addScreenName=function(t){this.c_screenname=t},t.prototype.$addPhone=function(t){return angular.isUndefined(this.phones)?this.phones=[{type:t,value:""}]:_.isUndefined(_.find(this.phones,function(t){return""===t.value}))&&this.phones.push({type:t,value:""}),this.phones.length-1},t.prototype.$addUrl=function(t,e){return angular.isUndefined(this.urls)?this.urls=[{type:t,value:e}]:_.isUndefined(_.find(this.urls,function(t){return t.value==e}))&&this.urls.push({type:t,value:e}),this.urls.length-1},t.prototype.$addAddress=function(t,e,i,r,s,n,a,o){return angular.isUndefined(this.addresses)?this.addresses=[{type:t,postoffice:e,street:i,street2:r,locality:s,region:n,country:a,postalcode:o}]:_.find(this.addresses,function(t){return t.street==i&&t.street2==r&&t.locality==s&&t.country==a&&t.postalcode==o})||this.addresses.push({type:t,postoffice:e,street:i,street2:r,locality:s,region:n,country:a,postalcode:o}),this.addresses.length-1},t.prototype.$addMember=function(e){var i,r=new t({email:e,emails:[{value:e}]});if(angular.isUndefined(this.refs))this.refs=[r];else if(0===e.length)this.refs.push(r);else{for(i=0;i1?(e=this.$omit(),_.forEach(this.emails,function(r){var s=new t(angular.extend({},e,{emails:[r]}));i.push(s)}),i):[this]:[]},t.prototype.$reset=function(){var t=this;angular.forEach(this,function(e,i){"constructor"!=i&&"$"!=i[0]&&delete t[i]}),this.init(this.$shadowData),this.$shadowData=this.$omit(!0)},t.prototype.$unwrap=function(e){var i=this;return this.$loaded=t.STATUS.DELAYED_LOADING,t.$timeout(function(){i.$loaded!=t.STATUS.LOADED&&(i.$loaded=t.STATUS.LOADING)},t.STATUS.DELAYED_MS),this.$futureCardData=e.then(function(e){return i.init(e),i.$loaded=t.STATUS.LOADED,i.$shadowData=i.$omit(!0),i}),this.$futureCardData},t.prototype.$omit=function(e){var i={};return angular.forEach(this,function(t,r){"refs"==r?i.refs=_.map(t,function(t){return t.$omit(e)}):"constructor"!=r&&"$"!=r[0]&&(i[r]=e?angular.copy(t):t)}),e||(i.birthday?i.birthday=i.birthday.format(t.$Preferences.$mdDateLocaleProvider,"%Y-%m-%d"):i.birthday=""),this.orgs&&(i.orgs=_.map(this.orgs,"value")),this.notes&&(i.notes=_.map(this.notes,"value")),i},t.prototype.toString=function(){var t=this.id+" "+this.$$fullname;return this.$$email&&(t+=" <"+this.$$email+">"),"["+t+"]"}}(); //# sourceMappingURL=Contacts.services.js.map \ No newline at end of file diff --git a/UI/WebServerResources/js/Contacts.services.js.map b/UI/WebServerResources/js/Contacts.services.js.map index e4b3f4704..24baef2d3 100644 --- a/UI/WebServerResources/js/Contacts.services.js.map +++ b/UI/WebServerResources/js/Contacts.services.js.map @@ -1 +1 @@ -{"version":3,"sources":["Contacts/AddressBook.service.js","Contacts/Card.service.js"],"names":["AddressBook","futureAddressBookData","then","this","init","name","id","newAddressBookData","$$resource","create","$unwrap","acls","objectEditor","objectCreator","objectEraser","$acl","$$Acl","$factory","$q","$timeout","$log","Settings","AddressBook_PRELOAD","Resource","Card","Acl","Preferences","angular","extend","PRELOAD","activeUser","$Card","$Preferences","$query","value","sort","asc","selectedFolder","$refreshTimeout","settings","Contact","SortingState","parseInt","module","e","constant","LOOKAHEAD","SIZE","factory","$filterAll","search","options","excludedCards","params","isUndefined","$cards","fetch","response","results","card","index","compareIds","data","_","filter","contacts","find","bind","length","splice","forEach","mapKeys","key","toLowerCase","debug","when","$add","addressbook","list","sibling","i","isSubscription","$subscriptions","$addressbooks","o","localeCompare","indexOf","map","$findAll","_this","$remotes","isRemote","push","union","$subscribe","uid","path","userResource","addressbookData","$reloadAll","addressbooks","group","owner","login","prototype","$$cards","idsMap","isOwned","isSuperUser","$id","$futureAddressBookData","getLength","getItemAtIndex","$isLoading","$lastVisibleIndex","Math","max","$loadCard","endIndex","ids","futureHeadersData","cardId","startIndex","loaded","isDefined","$loaded","STATUS","NOT_LOADED","min","LOADED","LOADING","join","post","$unwrapHeaders","hasSelectedCard","selectedCard","isSelectedCard","$selectedCard","$selectedCardIndex","$selectedCards","selected","$selectedCount","count","$startRefreshTimeout","cancel","refreshViewCheck","defaults","SOGoRefreshViewCheck","f","$reload","timeInterval","$filter","query","dry","copy","partial","addressbookId","futureData","fields","idFieldIndex","cards","headers","invokeMap","pid","oldIndex","removedCards","findIndex","zipObject","$rename","$save","$delete","promise","d","defer","remove","resolve","reject","$_deleteCards","forEachRight","selectedIndex","$deleteCards","uids","$copyCards","folder","$moveCards","save","$omit","exportCards","selectedOnly","selectedCards","type","filename","download","$topIndex","reduce","isError","isObject","j","cardHeaders","futureCardData","newCardData","newguid","isNew","$TEL_TYPES","$EMAIL_TYPES","$URL_TYPES","$ADDRESS_TYPES","Card_STATUS","SOGoContactsCategories","$categories","SOGoAlternateAvatar","$alternateAvatar","DELAYED_LOADING","DELAYED_MS","$find","$unwrapCollection","filterCategories","re","RegExp","category","collection","$futureCardData","refs","categories","c_screenname","$$fullname","$fullname","$$email","$preferredEmail","$$image","image","avatar","no_404","hasphoto","photoURL","isgroup","c_component","$avatarIcon","$isList","orgs","org","notes","note","email","emails","reference","birthday","dlp","$mdDateLocaleProvider","parseDate","$birthday","formatDate","c_name","empty","action","ref","$shadowData","attribute","export","names","fn","c_cn","html","c_givenname","nickname","c_sn","contactinfo","split","$description","description","title","role","concat","test","c_mail","$shortFormat","fullname","$isCard","condition","expandable","$addOrg","includes","$addEmail","$addScreenName","screenName","$addPhone","phones","$addUrl","url","urls","$addAddress","postoffice","street","street2","locality","region","country","postalcode","addresses","$addMember","explode","$reset","deep","format","toString","desc"],"mappings":"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","file":"Contacts.services.js"} \ No newline at end of file +{"version":3,"sources":["Contacts/AddressBook.service.js","Contacts/Card.service.js"],"names":["AddressBook","futureAddressBookData","then","this","init","name","id","newAddressBookData","$$resource","create","$unwrap","acls","objectEditor","objectCreator","objectEraser","$acl","$$Acl","$factory","$q","$timeout","$log","Settings","AddressBook_PRELOAD","Resource","Card","Acl","Preferences","angular","extend","PRELOAD","activeUser","$Card","$Preferences","$query","value","sort","asc","selectedFolder","$refreshTimeout","settings","Contact","SortingState","parseInt","module","e","constant","LOOKAHEAD","SIZE","factory","$filterAll","search","options","excludedCards","params","isUndefined","$cards","fetch","response","results","card","index","compareIds","data","_","filter","contacts","find","bind","length","splice","forEach","mapKeys","key","toLowerCase","debug","when","$add","addressbook","list","sibling","i","isSubscription","$subscriptions","$addressbooks","o","localeCompare","indexOf","map","$findAll","_this","$remotes","isRemote","push","union","$subscribe","uid","path","userResource","addressbookData","$reloadAll","addressbooks","group","owner","login","prototype","$$cards","idsMap","isOwned","isSuperUser","$id","$futureAddressBookData","getLength","getItemAtIndex","$isLoading","$lastVisibleIndex","Math","max","$loadCard","endIndex","ids","futureHeadersData","cardId","startIndex","loaded","isDefined","$loaded","STATUS","NOT_LOADED","min","LOADED","LOADING","join","post","$unwrapHeaders","hasSelectedCard","selectedCard","isSelectedCard","$selectedCard","$selectedCardIndex","$selectedCards","selected","$selectedCount","count","$startRefreshTimeout","cancel","refreshViewCheck","defaults","SOGoRefreshViewCheck","f","$reload","timeInterval","$filter","query","dry","partial","addressbookId","futureData","fields","idFieldIndex","cards","headers","invokeMap","pid","oldIndex","removedCards","findIndex","zipObject","$rename","$save","$delete","promise","d","defer","remove","resolve","reject","$_deleteCards","forEachRight","selectedIndex","$deleteCards","uids","$copyCards","folder","$moveCards","save","$omit","exportCards","selectedOnly","selectedCards","type","filename","download","$topIndex","reduce","isError","isObject","j","cardHeaders","futureCardData","newCardData","newguid","isNew","$TEL_TYPES","$EMAIL_TYPES","$URL_TYPES","$ADDRESS_TYPES","Card_STATUS","SOGoContactsCategories","$categories","SOGoAlternateAvatar","$alternateAvatar","DELAYED_LOADING","DELAYED_MS","$find","$unwrapCollection","filterCategories","re","RegExp","category","collection","$futureCardData","refs","categories","c_screenname","$$fullname","$fullname","$$email","$preferredEmail","$$image","image","avatar","no_404","hasphoto","photoURL","isgroup","c_component","$avatarIcon","$isList","orgs","org","notes","note","email","emails","reference","birthday","dlp","$mdDateLocaleProvider","parseDate","$birthday","formatDate","c_name","empty","action","ref","$shadowData","attribute","export","names","fn","c_cn","html","c_givenname","nickname","c_sn","contactinfo","split","$description","description","title","role","concat","test","c_mail","$shortFormat","fullname","$isCard","condition","expandable","$addOrg","includes","$addEmail","$addScreenName","screenName","$addPhone","phones","$addUrl","url","urls","$addAddress","postoffice","street","street2","locality","region","country","postalcode","addresses","$addMember","explode","$reset","deep","copy","format","toString","desc"],"mappings":"CAEA,WACE,aAOA,SAASA,EAAYC,GAEnB,GAA0C,mBAA/BA,EAAsBC,KAE/B,GADAC,KAAKC,KAAKH,GACNE,KAAKE,OAASF,KAAKG,GAAI,CAEzB,IAAIC,EAAqBP,EAAYQ,WAAWC,OAAO,eAAgBN,KAAKE,MAC5EF,KAAKO,QAAQH,GACbJ,KAAKQ,MAAQC,aAAgB,EAAGC,cAAiB,EAAGC,aAAgB,QAE7DX,KAAKG,KACZH,KAAKY,KAAO,IAAIf,EAAYgB,MAAM,YAAcb,KAAKG,UAKvDH,KAAKO,QAAQT,GASjBD,EAAYiB,UAAY,KAAM,WAAY,OAAQ,aAAc,wBAAyB,WAAY,OAAQ,MAAO,cAAe,SAASC,EAAIC,EAAUC,EAAMC,EAAUC,EAAqBC,EAAUC,EAAMC,EAAKC,GAqBlN,OApBAC,QAAQC,OAAO5B,GACbkB,GAAIA,EACJC,SAAUA,EACVC,KAAMA,EACNS,QAASP,EACTd,WAAY,IAAIe,EAASF,EAASS,WAAW,aAAe,WAAYT,EAASS,cACjFC,MAAOP,EACPR,MAAOS,EACPO,aAAcN,EACdO,QAASC,MAAO,GAAIC,KAAM,OAAQC,IAAK,GACvCN,WAAYT,EAASS,aACrBO,eAAgB,KAChBC,gBAAiB,OAGfZ,EAAYa,SAASC,QAAQC,eAC/BzC,EAAYiC,OAAOE,KAAOT,EAAYa,SAASC,QAAQC,aAAa,GACpEzC,EAAYiC,OAAOG,IAAMM,SAAShB,EAAYa,SAASC,QAAQC,aAAa,KAGvEzC,IAOT,IACE2B,QAAQgB,OAAO,mBAEjB,MAAMC,GACJjB,QAAQgB,OAAO,mBAAoB,cAAe,uBAEpDhB,QAAQgB,OAAO,mBACZE,SAAS,yBACRC,UAAW,GACXC,KAAM,MAEPC,QAAQ,cAAehD,EAAYiB,UAUtCjB,EAAYiD,WAAa,SAASC,EAAQC,EAASC,GACjD,IAAIC,GAAWH,OAAQA,GAEvB,OAAKA,GAKDvB,QAAQ2B,YAAYtD,EAAYuD,UAElCvD,EAAYuD,WAGd5B,QAAQC,OAAOyB,EAAQF,GAEhBnD,EAAYQ,WAAWgD,MAAM,KAAM,mBAAoBH,GAAQnD,KAAK,SAASuD,GAClF,IAAIC,EAASC,EAAMC,EACfC,EAAa,SAASC,GACpB,OAAO3D,KAAKG,IAAMwD,EAAKxD,IAY7B,IAREoD,EAFEN,EAEQW,EAAEC,OAAOP,EAASQ,SAAU,SAASH,GAC7C,OAAOC,EAAET,YAAYS,EAAEG,KAAKd,EAAeW,EAAEI,KAAKN,EAAYC,OAItDL,EAASQ,SAGhBL,EAAQ5D,EAAYuD,OAAOa,OAAS,EAAGR,GAAS,EAAGA,IACtDD,EAAO3D,EAAYuD,OAAOK,GACtBG,EAAET,YAAYS,EAAEG,KAAKR,EAASK,EAAEI,KAAKN,EAAYF,MACnD3D,EAAYuD,OAAOc,OAAOT,EAAO,GAarC,OATAG,EAAEO,QAAQZ,EAAS,SAASI,EAAMF,GAChC,GAAIG,EAAET,YAAYS,EAAEG,KAAKlE,EAAYuD,OAAQQ,EAAEI,KAAKN,EAAYC,KAAS,CACvE,IAAIH,EAAO,IAAI3D,EAAY+B,MAAMgC,EAAEQ,QAAQT,EAAM,SAAS5B,EAAOsC,GAC/D,OAAOA,EAAIC,gBACTvB,GACJlD,EAAYuD,OAAOc,OAAOT,EAAO,EAAGD,MAGxC3D,EAAYoB,KAAKsD,MAAM1E,EAAYuD,QAC5BvD,EAAYuD,WAzCnBvD,EAAYuD,UACLvD,EAAYkB,GAAGyD,KAAK3E,EAAYuD,UAiD3CvD,EAAY4E,KAAO,SAASC,GAE1B,IAAIC,EAAMC,EAASC,EAEnBF,EAAOD,EAAYI,eAAgB9E,KAAK+E,eAAiB/E,KAAKgF,cAM9DH,GALAD,EAAUhB,EAAEG,KAAKY,EAAM,SAASM,GAC9B,MAA0B,YAAlBP,EAAYvE,IACH,YAAR8E,EAAE9E,IACyC,IAA3C8E,EAAE/E,KAAKgF,cAAcR,EAAYxE,SAE9B0D,EAAEuB,QAAQvB,EAAEwB,IAAIT,EAAM,MAAOC,EAAQzE,IAAM,EACzDwE,EAAKT,OAAOW,EAAG,EAAGH,IASpB7E,EAAYwF,SAAW,SAAS1B,GAC9B,IAAI2B,EAAQtF,KAgBZ,OAfI2D,IACF3D,KAAKgF,iBACLhF,KAAK+E,kBACL/E,KAAKuF,YAEL/D,QAAQ2C,QAAQR,EAAM,SAASsB,EAAGJ,GAChC,IAAIH,EAAc,IAAI7E,EAAYoF,GAC9BP,EAAYc,SACdF,EAAMC,SAASE,KAAKf,GACbA,EAAYI,eACnBQ,EAAMP,eAAeU,KAAKf,GAE1BY,EAAMN,cAAcS,KAAKf,MAGxBd,EAAE8B,MAAM1F,KAAKgF,cAAehF,KAAK+E,eAAgB/E,KAAKuF,WAU/D1F,EAAY8F,WAAa,SAASC,EAAKC,GACrC,IAAIP,EAAQtF,KACZ,OAAOH,EAAYQ,WAAWyF,aAAaF,GAAKvC,MAAMwC,EAAM,aAAa9F,KAAK,SAASgG,GACrF,IAAIrB,EAAc,IAAI7E,EAAYkG,GAOlC,OANInC,EAAET,YAAYS,EAAEG,KAAKuB,EAAMP,eAAgB,SAASE,GACtD,OAAOA,EAAE9E,IAAM4F,EAAgB5F,OAG/BN,EAAY4E,KAAKC,GAEZA,KAQX7E,EAAYmG,WAAa,WACvB,IAAIV,EAAQtF,KAEZ,OAAOH,EAAYQ,WAAWgD,MAAM,oBAAoBtD,KAAK,SAAS4D,GACpEC,EAAEO,QAAQR,EAAKsC,aAAc,SAASF,GACpC,IAAIG,EAAOxB,EAGTwB,EADEH,EAAgBP,SACVF,EAAMC,SACPQ,EAAgBI,OAAStG,EAAY8B,WAAWyE,MAC/Cd,EAAMP,eAENO,EAAMN,eAEhBN,EAAcd,EAAEG,KAAKmC,EAAO,SAASjB,GAAK,OAAOA,EAAE9E,IAAM4F,EAAgB5F,OAEvEuE,EAAYzE,KAAK8F,QAWzBlG,EAAYwG,UAAUpG,KAAO,SAAS0D,EAAMX,GAC1C,IAAIsC,EAAQtF,KACPA,KAAKsG,UAERtG,KAAKsG,YAEPtG,KAAKuG,UACLvG,KAAKoD,UAEL5B,QAAQ2C,QAAQR,EAAM,SAAS5B,EAAOsC,GACzB,WAAPA,GAA2B,SAAPA,IACtBiB,EAAMjB,GAAOtC,KAIjB/B,KAAKwG,QAAU3G,EAAY8B,WAAW8E,aAAezG,KAAKmG,OAAStG,EAAY8B,WAAWyE,MAC1FpG,KAAK8E,gBAAkB9E,KAAKwF,UAAYxF,KAAKmG,OAAStG,EAAY8B,WAAWyE,OAS/EvG,EAAYwG,UAAUK,IAAM,WAC1B,OAAI1G,KAAKG,GAEAN,EAAYkB,GAAGyD,KAAKxE,KAAKG,IAIzBH,KAAK2G,uBAAuB5G,KAAK,SAAS2E,GAC/C,OAAOA,EAAYvE,MAWzBN,EAAYwG,UAAUO,UAAY,WAChC,OAAO5G,KAAKoD,OAAOa,QASrBpE,EAAYwG,UAAUQ,eAAiB,SAASpD,GAC9C,IAAID,EAEJ,OAAKxD,KAAK8G,YAAcrD,GAAS,GAAKA,EAAQzD,KAAKoD,OAAOa,SACxDT,EAAOxD,KAAKoD,OAAOK,GACnBzD,KAAK+G,kBAAoBC,KAAKC,IAAI,EAAGxD,EAAQ,GAEzCzD,KAAKkH,UAAU1D,IACVA,EAEJ,MAST3D,EAAYwG,UAAUa,UAAY,SAAS1D,GACzC,IAEI2D,EACA1D,EAGA2D,EACAC,EAPAC,EAAS9D,EAAKrD,GACdoH,EAAavH,KAAKuG,OAAOe,GAGzBL,EAAMjH,KAAKoD,OAAOa,OAClBuD,GAAS,EAIb,GAAIhG,QAAQ2B,YAAYnD,KAAKoH,MAAQ5D,EAAKrD,GACxCqH,GAAS,OAEN,GAAIhG,QAAQiG,UAAUF,IAAeA,EAAavH,KAAKoD,OAAOa,SAE7DT,EAAKkE,SAAW7H,EAAY+B,MAAM+F,OAAOC,aAE3CJ,GAAS,GAIXL,EAAWH,KAAKa,IAAIN,EAAa1H,EAAY6B,QAAQiB,UAAWsE,EAAM,GAClEjH,KAAKoD,OAAO+D,GAAUO,SAAW7H,EAAY+B,MAAM+F,OAAOC,YAC5DnE,EAAQuD,KAAKC,IAAIM,EAAa1H,EAAY6B,QAAQiB,UAAW,GACzD3C,KAAKoD,OAAOK,GAAOiE,SAAW7H,EAAY+B,MAAM+F,OAAOG,SAEzDX,EAAWI,EACXA,EAAaP,KAAKC,IAAIM,EAAa1H,EAAY6B,QAAQkB,KAAM,KAK/DuE,EAAWH,KAAKa,IAAIN,EAAa1H,EAAY6B,QAAQkB,KAAMqE,EAAM,GAE/DjH,KAAKoD,OAAOmE,GAAYG,SAAW7H,EAAY+B,MAAM+F,OAAOC,YAC5D5H,KAAKoD,OAAO+D,GAAUO,SAAW7H,EAAY+B,MAAM+F,OAAOC,YAAY,CAExE,IAAKR,KAAUG,EAAaJ,GAAYI,EAAaN,EAAKM,IACpDvH,KAAKoD,OAAOmE,GAAYG,SAAW7H,EAAY+B,MAAM+F,OAAOC,WAE9DT,KAIAC,EAAI3B,KAAKzF,KAAKoD,OAAOmE,GAAYpH,IACjCH,KAAKoD,OAAOmE,GAAYG,QAAU7H,EAAY+B,MAAM+F,OAAOI,SAI/DlI,EAAYoB,KAAKsD,MAAM,eAAiB6C,EAAIY,KAAK,KAAO,KAAOZ,EAAInD,OAAS,WACxEmD,EAAInD,OAAS,IACfoD,EAAoBxH,EAAYQ,WAAW4H,KAAKjI,KAAKG,GAAI,WAAYiH,IAAKA,IAC1EpH,KAAKkI,eAAeb,IAI1B,OAAOG,GAST3H,EAAYwG,UAAU8B,gBAAkB,WACtC,OAAO3G,QAAQiG,UAAUzH,KAAKoI,eAUhCvI,EAAYwG,UAAUgC,eAAiB,SAASf,GAC9C,OAAOtH,KAAKmI,mBAAqBnI,KAAKoI,cAAgBd,GASxDzH,EAAYwG,UAAUiC,cAAgB,WACpC,IAAIhD,EAAQtF,KAEZ,OAAO4D,EAAEG,KAAK/D,KAAKoD,OAAQ,SAASI,GAAQ,OAAOA,EAAKrD,IAAMmF,EAAM8C,gBAStEvI,EAAYwG,UAAUkC,mBAAqB,WACzC,OAAO3E,EAAEuB,QAAQvB,EAAEwB,IAAIpF,KAAKoD,OAAQ,MAAOpD,KAAKoI,eASlDvI,EAAYwG,UAAUmC,eAAiB,WACrC,OAAO5E,EAAEC,OAAO7D,KAAKoD,OAAQ,SAASI,GAAQ,OAAOA,EAAKiF,YAS5D5I,EAAYwG,UAAUqC,eAAiB,WACrC,IAAIC,EAMJ,OAJAA,EAAQ,EACJ3I,KAAKoD,SACPuF,EAAS/E,EAAEC,OAAO7D,KAAKoD,OAAQ,SAASI,GAAQ,OAAOA,EAAKiF,WAAcxE,QAErE0E,GAQT9I,EAAYwG,UAAUuC,qBAAuB,WACvC/I,EAAYsC,iBACdtC,EAAYmB,SAAS6H,OAAOhJ,EAAYsC,iBAG1C,IAAI2G,EAAmBjJ,EAAYgC,aAAakH,SAASC,qBACzD,GAAIF,GAAwC,YAApBA,EAAgC,CACtD,IAAIG,EAAIzH,QAAQwC,KAAKhE,KAAMH,EAAYwG,UAAU6C,SACjDrJ,EAAYsC,gBAAkBtC,EAAYmB,SAASiI,EAAmC,IAAhCH,EAAiBK,kBAU3EtJ,EAAYwG,UAAU6C,QAAU,WAI9B,OADAlJ,KAAK4I,uBACE5I,KAAKoJ,WAWdvJ,EAAYwG,UAAU+C,QAAU,SAASrG,EAAQC,EAASC,GACxD,IAAkBoG,EAAd/D,EAAQtF,KACRsJ,EAAMtG,GAAWA,EAAQsG,IAY7B,OAVIA,EAEFD,GAAStH,MAAO,GAAIC,KAAM,OAAQC,IAAK,IAGvCjC,KAAK8G,YAAa,EAClBuC,EAAQxJ,EAAYiC,OACf9B,KAAKwF,WAAU6D,EAAME,QAAU,IAGlCvG,IACFxB,QAAQC,OAAO4H,EAAOrG,GAClBsG,IACGvG,IAEHuC,EAAMgB,WACCzG,EAAYkB,GAAGyD,KAAKc,EAAMgB,WAKnC9E,QAAQiG,UAAU1E,KACpBsG,EAAMtH,MAAQgB,GAETuC,EAAMoB,MAAM3G,KAAK,SAASyJ,GAC/B,IAAIC,EAAa5J,EAAYQ,WAAW4H,KAAKuB,EAAe,OAAQH,GAEpE,OAAIC,EACKG,EAAW1J,KAAK,SAASuD,GAC9B,IAAIC,EAAkBC,EAAMC,EAAOiG,EAAQC,EACvCC,EAAQtE,EAAMgB,QACd5C,EAAa,SAASF,GACpB,OAAOxD,MAAQwD,EAAKrD,IAwB1B,IArBImD,EAASuG,UAEXH,EAAS9F,EAAEkG,UAAUxG,EAASuG,QAAQ,GAAI,eAC1CF,EAAeD,EAAOvE,QAAQ,MAC9B7B,EAASuG,QAAQ3F,OAAO,EAAG,GAC3BX,EAAUK,EAAEwB,IAAI9B,EAASuG,QAAS,SAASlG,GACzC,OAAOA,EAAKgG,MAIZrG,EAAS8D,MAGT7D,EAFEN,EAEQW,EAAEC,OAAOP,EAAS8D,IAAK,SAASjH,GACxC,OAAOyD,EAAET,YAAYS,EAAEG,KAAKd,EAAeW,EAAEI,KAAKN,EAAYvD,OAGtDmD,EAAS8D,KAIlB3D,EAAQmG,EAAM3F,OAAS,EAAGR,GAAS,EAAGA,IACzCD,EAAOoG,EAAMnG,GACTG,EAAET,YAAYS,EAAEG,KAAKR,EAASK,EAAEI,KAAKN,EAAYF,EAAKrD,OACxDyJ,EAAM1F,OAAOT,EAAO,GAgCxB,OA3BAG,EAAEO,QAAQZ,EAAS,SAAS+D,EAAQ7D,GAClC,GAAIG,EAAET,YAAYS,EAAEG,KAAK6F,EAAOhG,EAAEI,KAAKN,EAAY4D,KAAW,CAC5D,IACI9D,EAAO,IAAI3D,EAAY+B,OADdmI,IAAKP,EAAerJ,GAAImH,GACEvE,GACvC6G,EAAM1F,OAAOT,EAAO,EAAGD,MAK3BI,EAAEO,QAAQZ,EAAS,SAAS+D,EAAQ7D,GAClC,IAAIuG,EAAUC,EACVL,EAAMnG,GAAOtD,IAAMmH,IACrB0C,EAAWpG,EAAEsG,UAAUN,EAAOhG,EAAEI,KAAKN,EAAY4D,IACjD2C,EAAeL,EAAM1F,OAAO8F,EAAU,GACtCJ,EAAM1F,OAAOT,EAAO,EAAGwG,EAAa,OAKxCrG,EAAEO,QAAQb,EAASuG,QAAS,SAASlG,GACnC,IAAIH,EAAMC,EAAQG,EAAEsG,UAAUN,EAAOhG,EAAEI,KAAKN,EAAYC,EAAKgG,KACzDlG,GAAS,IACXD,EAAOI,EAAEuG,UAAUT,EAAQ/F,GAC3BiG,EAAMnG,GAAOxD,KAAKuD,EAAMT,MAIrB6G,IAKFtE,EAAM/E,QAAQkJ,OAY3B5J,EAAYwG,UAAU+D,QAAU,SAASlK,GACvC,IAAI2E,EAAGF,EAQP,OANAA,EAAO3E,KAAK8E,eAAgBjF,EAAYkF,eAAiBlF,EAAYmF,cACrEH,EAAIjB,EAAEuB,QAAQvB,EAAEwB,IAAIT,EAAM,MAAO3E,KAAKG,IACtCH,KAAKE,KAAOA,EACZyE,EAAKT,OAAOW,EAAG,GACfhF,EAAY4E,KAAKzE,MAEVA,KAAKqK,SASdxK,EAAYwG,UAAUiE,QAAU,WAC9B,IAEI3F,EACA4F,EAHAjF,EAAQtF,KACRwK,EAAI3K,EAAYkB,GAAG0J,QAkBvB,OAdIzK,KAAK8E,gBACPyF,EAAU1K,EAAYQ,WAAWgD,MAAMrD,KAAKG,GAAI,eAChDwE,EAAO9E,EAAYkF,iBAGnBwF,EAAU1K,EAAYQ,WAAWqK,OAAO1K,KAAKG,IAC7CwE,EAAO9E,EAAYmF,eAGrBuF,EAAQxK,KAAK,WACX,IAAI8E,EAAIjB,EAAEuB,QAAQvB,EAAEwB,IAAIT,EAAM,MAAOW,EAAMnF,IAC3CwE,EAAKT,OAAOW,EAAG,GACf2F,EAAEG,WACDH,EAAEI,QACEJ,EAAED,SASX1K,EAAYwG,UAAUwE,cAAgB,SAASzD,GAC7C,IAAI9B,EAAQtF,KAGZ4D,EAAEkH,aAAa9K,KAAKoD,OAAQ,SAASI,EAAMC,GACzC,IAAIsH,EAAgBnH,EAAEsG,UAAU9C,EAAK,SAASjH,GAC5C,OAAOqD,EAAKrD,IAAMA,IAEhB4K,GAAiB,GACnB3D,EAAIlD,OAAO6G,EAAe,UACnBzF,EAAMiB,OAAO/C,EAAKrD,IACrBmF,EAAM+C,eAAe7E,EAAKrD,YACrBmF,EAAM8C,aACf9C,EAAMlC,OAAOc,OAAOT,EAAO,IAG3B6B,EAAMiB,OAAO/C,EAAKrD,KAAOiH,EAAInD,UAWnCpE,EAAYwG,UAAU2E,aAAe,SAASpB,GAC5C,IAAItE,EAAQtF,KACRoH,EAAMxD,EAAEwB,IAAIwE,EAAO,MAEvB,OAAO/J,EAAYQ,WAAW4H,KAAKjI,KAAKG,GAAI,eAAgB8K,KAAM7D,IAAMrH,KAAK,WAC3EuF,EAAMuF,cAAczD,MAUxBvH,EAAYwG,UAAU6E,WAAa,SAAStB,EAAOuB,GACjD,IAAIF,EAAOrH,EAAEwB,IAAIwE,EAAO,MACxB,OAAO/J,EAAYQ,WAAW4H,KAAKjI,KAAKG,GAAI,QAAS8K,KAAMA,EAAME,OAAQA,KAW3EtL,EAAYwG,UAAU+E,WAAa,SAASxB,EAAOuB,GACjD,IAAkBF,EAAd3F,EAAQtF,KAGZ,OADAiL,EAAOrH,EAAEwB,IAAIwE,EAAO,MACb/J,EAAYQ,WAAW4H,KAAKjI,KAAKG,GAAI,QAAS8K,KAAMA,EAAME,OAAQA,IACtEpL,KAAK,WACJ,OAAOuF,EAAMuF,cAAcI,MAUjCpL,EAAYwG,UAAUgE,MAAQ,WAC5B,OAAOxK,EAAYQ,WAAWgL,KAAKrL,KAAKG,GAAIH,KAAKsL,SAASvL,KAAK,SAAS4D,GACtE,OAAOA,KAUX9D,EAAYwG,UAAUkF,YAAc,SAASC,GAC3C,IAAiBxI,EAASyI,EAAtB9H,EAAO,KAYX,OAVAX,GACE0I,KAAM,2BACNC,SAAU3L,KAAKE,KAAO,SAGpBsL,IACFC,EAAgB7H,EAAEC,OAAO7D,KAAKoD,OAAQ,SAASI,GAAQ,OAAOA,EAAKiF,WACnE9E,GAASsH,KAAMrH,EAAEwB,IAAIqG,EAAe,QAG/B5L,EAAYQ,WAAWuL,SAAS5L,KAAKG,GAAI,SAAUwD,EAAMX,IASlEnD,EAAYwG,UAAU9F,QAAU,SAAST,GACvC,IAAIwF,EAAQtF,KAEZA,KAAK8G,YAAa,EAGlB9G,KAAK2G,uBAAyB7G,EAAsBC,KAAK,SAASuD,GAChE,OAAOzD,EAAYmB,SAAS,WAC1B,IAAI6I,EAiEJ,QA/DKvG,EAAS8D,KAAO9B,EAAMuG,UAAYvI,EAAS8D,IAAInD,OAAS,KAC3DqB,EAAMuG,UAAY,GAIpBrK,QAAQ2C,QAAQtE,EAAYwF,WAAY,SAASJ,EAAGJ,GAC9CI,EAAE9E,IAAMmD,EAASnD,IACnBqB,QAAQC,OAAO6D,EAAOL,KAK1BK,EAAMrF,KAAKqD,GAEPgC,EAAM8B,MACRvH,EAAYoB,KAAKsD,MAAM,cAAgBe,EAAM8B,IAAInD,OAAS,UAG1DL,EAAEkI,OAAOxG,EAAM8B,IAAK,SAASwC,EAAOpG,EAAMqB,GACxC,IAAIlB,GAASoG,IAAKzE,EAAMnF,GAAIA,GAAIqD,GAOhC,OAJA8B,EAAMiB,OAAO5C,EAAKxD,IAAM0E,EAExB+E,EAAMnE,KAAK,IAAI5F,EAAY+B,MAAM+B,IAE1BiG,GACNtE,EAAMlC,SAGPE,EAASuG,UAEXA,EAAUjG,EAAEkG,UAAUxG,EAASuG,QAAQ,GAAI,eAC3CvG,EAASuG,QAAQ3F,OAAO,EAAG,GAEvBoB,EAAM8B,IAERxD,EAAEO,QAAQb,EAASuG,QAAS,SAASlG,GACnC,IAAIsB,EAAIrB,EAAEuG,UAAUN,EAASlG,GACzBkB,EAAIS,EAAMiB,OAAOtB,EAAE9E,IACvBmF,EAAMlC,OAAOyB,GAAG5E,KAAKgF,MAKvBK,EAAMlC,UACN5B,QAAQ2C,QAAQb,EAASuG,QAAS,SAASlG,GACzC,IAAIsB,EAAIrB,EAAEuG,UAAUN,EAASlG,GAC7BnC,QAAQC,OAAOwD,GAAK8E,IAAKzE,EAAMnF,KAC/BmF,EAAMlC,OAAOqC,KAAK,IAAI5F,EAAY+B,MAAMqD,QAM9CK,EAAM1E,KAAO,IAAIf,EAAYgB,MAAM,YAAcyE,EAAMnF,IAEvDmF,EAAMsD,uBAENtD,EAAMwB,YAAa,EAEnBjH,EAAYoB,KAAKsD,MAAM,eAAiBe,EAAMnF,GAAK,UAE5CmF,KAER,SAAS3B,GACV2B,EAAMyG,SAAU,EACZvK,QAAQwK,SAASrI,IACnB9D,EAAYmB,SAAS,WACnBQ,QAAQC,OAAO6D,EAAO3B,QAY9B9D,EAAYwG,UAAU6B,eAAiB,SAASb,GAC9C,IAAI/B,EAAQtF,KAEZqH,EAAkBtH,KAAK,SAAS4D,GAC9B9D,EAAYmB,SAAS,WACnB,IAAI6I,EAASoC,EACTtI,EAAKM,OAAS,IAEhB4F,EAAUjG,EAAEkG,UAAUnG,EAAK,GAAI,eAC/BA,EAAKO,OAAO,EAAG,GACfN,EAAEO,QAAQR,EAAM,SAASuI,GACvBA,EAActI,EAAEuG,UAAUN,EAASqC,GACnCD,EAAI3G,EAAMiB,OAAO2F,EAAY/L,IACzBqB,QAAQiG,UAAUwE,IACpB3G,EAAMlC,OAAO6I,GAAGhM,KAAKiM,WAcjCrM,EAAYwG,UAAUiF,MAAQ,WAC5B,IAAI5G,KAWJ,OAVAlD,QAAQ2C,QAAQnE,KAAM,SAAS+B,EAAOsC,GACzB,eAAPA,GACO,QAAPA,GACO,OAAPA,GACO,UAAPA,GACO,QAAPA,GACU,KAAVA,EAAI,KACNK,EAAYL,GAAOtC,KAGhB2C,GA/1BX,GCAA,WACE,aAQA,SAASrD,EAAK8K,EAAgB5C,GAG5B,GAAmC,mBAAxB4C,EAAepM,MAExB,GADAC,KAAKC,KAAKkM,EAAgB5C,GACtBvJ,KAAK+J,MAAQ/J,KAAKG,GAAI,CAGxB,IAAIiM,EAAc/K,EAAKhB,WAAWgM,QAAQrM,KAAK+J,KAC/C/J,KAAKO,QAAQ6L,GACbpM,KAAKsM,OAAQ,QAKftM,KAAKO,QAAQ4L,GAIjB9K,EAAKkL,YAAc,OAAQ,OAAQ,OAAQ,MAAO,SAClDlL,EAAKmL,cAAgB,OAAQ,OAAQ,QACrCnL,EAAKoL,YAAc,OAAQ,OAAQ,QACnCpL,EAAKqL,gBAAkB,OAAQ,QAO/BrL,EAAKP,UAAY,WAAY,aAAc,gBAAiB,WAAY,cAAe,SAASE,EAAUE,EAAUyL,EAAavL,EAAUG,GAczI,OAbAC,QAAQC,OAAOJ,GACbsG,OAAQgF,EACRtM,WAAY,IAAIe,EAASF,EAASS,WAAW,aAAe,WAAYT,EAASS,cACjFX,SAAUA,EACVa,aAAcN,IAGZA,EAAYwH,SAAS6D,yBACvBvL,EAAKwL,YAActL,EAAYwH,SAAS6D,wBAEtCrL,EAAYwH,SAAS+D,sBACvBzL,EAAK0L,iBAAmBxL,EAAYwH,SAAS+D,qBAExCzL,IAOT,IACEG,QAAQgB,OAAO,mBAEjB,MAAMC,GACJjB,QAAQgB,OAAO,mBAAoB,cAAe,uBAEpDhB,QAAQgB,OAAO,mBACZE,SAAS,iBACRkF,WAAiB,EACjBoF,gBAAiB,EACjBjF,QAAiB,EACjBD,OAAiB,EACjBmF,WAAiB,MAElBpK,QAAQ,OAAQxB,EAAKP,UASxBO,EAAK6L,MAAQ,SAAS1D,EAAelC,GACnC,IAAI6E,EAAiBnM,KAAKK,WAAWgD,OAAOmG,EAAelC,GAAQU,KAAK,KAAM,QAE9E,OAAIV,EAAe,IAAIjG,EAAK8K,GAErB9K,EAAK8L,kBAAkBhB,IAUhC9K,EAAK+L,iBAAmB,SAAS/D,GAC/B,IAAIgE,EAAK,IAAIC,OAAOjE,EAAO,KAC3B,OAAOzF,EAAEwB,IAAIxB,EAAEC,OAAOxC,EAAKwL,YAAa,SAASU,GAC/C,OAA+B,GAAxBA,EAASxK,OAAOsK,KACrB,SAASE,GACX,OAASxL,MAAOwL,MASpBlM,EAAK8L,kBAAoB,SAAShB,GAChC,IAAIqB,KAYJ,OAVAA,EAAWC,gBAAkBtB,EAE7BA,EAAepM,KAAK,SAAS6J,GAC3BvI,EAAKL,SAAS,WACZQ,QAAQ2C,QAAQyF,EAAO,SAASjG,EAAMF,GACpC+J,EAAW7J,EAAKxD,IAAM,IAAIkB,EAAKsC,SAK9B6J,GASTnM,EAAKgF,UAAUpG,KAAO,SAAS0D,EAAM4F,GACnC,IAAIjE,EAAQtF,KAwCZ,GAtCIwB,QAAQ2B,YAAYnD,KAAK0N,QAC3B1N,KAAK0N,SACHlM,QAAQ2B,YAAYnD,KAAK2N,cAC3B3N,KAAK2N,eACP3N,KAAK4N,aAAe,KACpBpM,QAAQC,OAAOzB,KAAM2D,GAChB3D,KAAK6N,aACR7N,KAAK6N,WAAa7N,KAAK8N,aACpB9N,KAAK+N,UACR/N,KAAK+N,QAAU/N,KAAKgO,gBAAgBzE,IACjCvJ,KAAKiO,UACRjO,KAAKiO,QAAUjO,KAAKkO,OACjBlO,KAAKiO,UACRjO,KAAKiO,QAAU5M,EAAKQ,aAAasM,OAAOnO,KAAK+N,QAAS,IAAKK,QAAQ,KACjEpO,KAAKqO,WACPrO,KAAKsO,SAAWjN,EAAKhB,WAAWwF,KAAK7F,KAAK+J,IAAK/J,KAAKG,GAAI,UACtDH,KAAKuO,UACPvO,KAAKwO,YAAc,SACrBxO,KAAKyO,YAAczO,KAAK0O,UAAW,QAAU,SACzC/K,EAAKgL,MAAQhL,EAAKgL,KAAK1K,SACzBjE,KAAK2O,KAAO/K,EAAEwB,IAAIzB,EAAKgL,KAAM,SAASC,GAAO,OAAS7M,MAAS6M,MAC7DjL,EAAKkL,OAASlL,EAAKkL,MAAM5K,OAC3BjE,KAAK6O,MAAQjL,EAAEwB,IAAIzB,EAAKkL,MAAO,SAASC,GAAQ,OAAS/M,MAAS+M,KAC1D9O,KAAK6O,OAAU7O,KAAK6O,MAAM5K,SAClCjE,KAAK6O,QAAY9M,MAAO,MAE1BP,QAAQ2C,SAAS,YAAa,SAAU,QAAS,SAASE,GACxD7C,QAAQ2C,QAAQmB,EAAMjB,GAAM,SAASY,GAC/BA,EAAEyG,OAAMzG,EAAEyG,KAAOzG,EAAEyG,KAAKpH,mBAIhC9C,QAAQ2C,QAAQnE,KAAK0N,KAAM,SAASzI,EAAGJ,GACjCI,EAAE8J,QAAO9J,EAAE+J,SAAWjN,MAAOkD,EAAE8J,SACnC9J,EAAE9E,GAAK8E,EAAEgK,UACT3J,EAAMoI,KAAK7I,GAAK,IAAIxD,EAAK4D,KAGvBjF,KAAKkP,SAAU,CACjB,IAAIC,EAAM9N,EAAKQ,aAAauN,sBAC5BpP,KAAKkP,SAAWlP,KAAKkP,SAASG,UAAUF,EAAK,YAC7CnP,KAAKsP,UAAYH,EAAII,WAAWvP,KAAKkP,UAGvClP,KAAK0H,QAAUlG,QAAQiG,UAAUzH,KAAKwP,QAASnO,EAAKsG,OAAOG,OAASzG,EAAKsG,OAAOC,WAGhF5H,KAAKyP,MAAQ,KASfpO,EAAKgF,UAAUK,IAAM,WACnB,OAAO1G,KAAKyN,gBAAgB1N,KAAK,SAAS4D,GACxC,OAAOA,EAAKxD,MAUhBkB,EAAKgF,UAAUS,WAAa,WAC1B,OAAO9G,KAAK0H,SAAWrG,EAAKsG,OAAOI,SASrC1G,EAAKgF,UAAU6C,QAAU,WACvB,IAAIiD,EAEJ,OAAInM,KAAKyN,gBACAzN,MAETmM,EAAiB9K,EAAKhB,WAAWgD,OAAOrD,KAAK+J,IAAK/J,KAAKG,IAAI6H,KAAK,KAAM,QAE/DhI,KAAKO,QAAQ4L,KAQtB9K,EAAKgF,UAAUgE,MAAQ,WACrB,IAAI/E,EAAQtF,KACR0P,EAAS,gBASb,MAPwB,SAApB1P,KAAKwO,cACPkB,EAAS,aACT9L,EAAEO,QAAQnE,KAAK0N,KAAM,SAASiC,GAC5BA,EAAIV,UAAYU,EAAIxP,MAIjBkB,EAAKhB,WAAWgL,MAAMrL,KAAK+J,IAAK/J,KAAKG,IAAM,SAAS6H,KAAK,KACpChI,KAAKsL,SACHoE,OAAQA,IACnC3P,KAAK,SAAS4D,GAMb,OAJI2B,EAAM4J,WACR5J,EAAMgK,UAAYjO,EAAKQ,aAAauN,sBAAsBG,WAAWjK,EAAM4J,WAE7E5J,EAAMsK,YAActK,EAAMgG,OAAM,GACzB3H,KAIbtC,EAAKgF,UAAUiE,QAAU,SAASuF,EAAWpM,GAC3C,IAAIoM,EASF,OAAOxO,EAAKhB,WAAWqK,QAAQ1K,KAAK+J,IAAK/J,KAAKG,IAAI6H,KAAK,MARnDvE,GAAS,GAAKzD,KAAK6P,GAAW5L,OAASR,EACzCzD,KAAK6P,GAAW3L,OAAOT,EAAO,UAGvBzD,KAAK6P,IAclBxO,EAAKgF,UAAUyJ,OAAS,WACtB,IAAInM,EAAMX,EAQV,OANAW,GAASsH,MAAQjL,KAAKG,KACtB6C,GACE0I,KAAM,2BACNC,SAAU3L,KAAK6N,WAAa,SAGvBxM,EAAKhB,WAAWuL,SAAS5L,KAAK+J,IAAK,SAAUpG,EAAMX,IAG5D3B,EAAKgF,UAAUyH,UAAY,SAAS9K,GAClC,IAA0D+L,EAAOgB,EAA7DC,EAAKhQ,KAAKiQ,MAAQ,GAAIC,EAAOlN,GAAWA,EAAQkN,KAuBpD,OAtBkB,IAAdF,EAAG/L,SACL8L,KACI/P,KAAKmQ,aAAenQ,KAAKmQ,YAAYlM,OAAS,GAChD8L,EAAMtK,KAAKzF,KAAKmQ,aACdnQ,KAAKoQ,UAAYpQ,KAAKoQ,SAASnM,OAAS,GAC1C8L,EAAMtK,MAAMyK,EAAK,OAAO,IAAMlQ,KAAKoQ,UAAYF,EAAK,QAAQ,KAC1DlQ,KAAKqQ,MAAQrQ,KAAKqQ,KAAKpM,OAAS,GAClC8L,EAAMtK,KAAKzF,KAAKqQ,MACdN,EAAM9L,OAAS,EACjB+L,EAAKD,EAAM/H,KAAK,KACThI,KAAK4O,KAAO5O,KAAK4O,IAAI3K,OAAS,EACrC+L,EAAKhQ,KAAK4O,IAEH5O,KAAKgP,QAAUhP,KAAKgP,OAAO/K,OAAS,IAC3C8K,EAAQnL,EAAEG,KAAK/D,KAAKgP,OAAQ,SAASnK,GAAK,MAAmB,KAAZA,EAAE9C,WAEjDiO,EAAKjB,EAAMhN,QAGb/B,KAAKsQ,cACPN,GAAM,KAAOhQ,KAAKsQ,YAAYC,MAAM,MAAMvI,KAAK,MAAQ,KAElDgI,GAGT3O,EAAKgF,UAAUmK,aAAe,WAC5B,IAAIC,KAOJ,OANIzQ,KAAK0Q,OAAOD,EAAYhL,KAAKzF,KAAK0Q,OAClC1Q,KAAK2Q,MAAMF,EAAYhL,KAAKzF,KAAK2Q,MACjC3Q,KAAK4O,KAAK6B,EAAYhL,KAAKzF,KAAK4O,KAChC5O,KAAK2O,OAAM8B,EAAc7M,EAAEgN,OAAOH,EAAa7M,EAAEwB,IAAIpF,KAAK2O,KAAM,WAChE3O,KAAKyQ,aAAaA,EAAYhL,KAAKzF,KAAKyQ,aAErCA,EAAYzI,KAAK,OAU1B3G,EAAKgF,UAAU2H,gBAAkB,SAASzE,GACxC,IAAIwF,EAAO1B,EA4BX,OA3BI9D,IACF8D,EAAK,IAAIC,OAAO/D,EAAS,KACzBwF,EAAQnL,EAAEG,KAAK/D,KAAKgP,OAAQ,SAAS/J,GACnC,OAAOoI,EAAGwD,KAAK5L,EAAElD,UAInBgN,EADEA,EACMA,EAAMhN,OAGdgN,EAAQnL,EAAEG,KAAK/D,KAAKgP,OAAQ,SAAS/J,GACnC,MAAiB,QAAVA,EAAEyG,QAGDqD,EAAMhN,MAEP/B,KAAKgP,QAAUhP,KAAKgP,OAAO/K,OAC1BjE,KAAKgP,OAAO,GAAGjN,MAEhB/B,KAAK8Q,QAAU9Q,KAAK8Q,OAAO7M,OAC1BjE,KAAK8Q,OAAO,GAGZ,IAadzP,EAAKgF,UAAU0K,aAAe,SAASxH,GACrC,IAAIyH,GAAYhR,KAAK6N,YACjBkB,EAAQ/O,KAAKgO,gBAAgBzE,GAGjC,OAFIwF,GAASA,GAAS/O,KAAK6N,YACzBmD,EAASvL,KAAK,KAAOsJ,EAAQ,KACxBiC,EAAShJ,KAAK,MAGvB3G,EAAKgF,UAAU4K,QAAU,WACvB,MAA2B,SAApBjR,KAAKwO,aAGdnN,EAAKgF,UAAUqI,QAAU,SAAS1L,GAEhC,IAAIkO,GAAclO,IAAYA,EAAQmO,YAAcnO,EAAQmO,aAAenR,KAAKuO,QAChF,MAA2B,SAApBvO,KAAKwO,aAA0B0C,GAGxC7P,EAAKgF,UAAU+K,QAAU,SAASxC,GAOhC,OANIpN,QAAQ2B,YAAYnD,KAAK2O,MAC3B3O,KAAK2O,MAAQC,GAENA,GAAO5O,KAAK4O,KAAQhL,EAAEyN,SAASrR,KAAK2O,KAAMC,IACjD5O,KAAK2O,KAAKlJ,KAAKmJ,GAEV5O,KAAK2O,KAAK1K,OAAS,GAoB5B5C,EAAKgF,UAAUiL,UAAY,SAAS5F,GAOlC,OANIlK,QAAQ2B,YAAYnD,KAAKgP,QAC3BhP,KAAKgP,SAAWtD,KAAMA,EAAM3J,MAAO,KAE5B6B,EAAET,YAAYS,EAAEG,KAAK/D,KAAKgP,OAAQ,SAASnK,GAAK,MAAmB,KAAZA,EAAE9C,UAChE/B,KAAKgP,OAAOvJ,MAAMiG,KAAMA,EAAM3J,MAAO,KAEhC/B,KAAKgP,OAAO/K,OAAS,GAG9B5C,EAAKgF,UAAUkL,eAAiB,SAASC,GACvCxR,KAAK4N,aAAe4D,GAGtBnQ,EAAKgF,UAAUoL,UAAY,SAAS/F,GAOlC,OANIlK,QAAQ2B,YAAYnD,KAAK0R,QAC3B1R,KAAK0R,SAAWhG,KAAMA,EAAM3J,MAAO,KAE5B6B,EAAET,YAAYS,EAAEG,KAAK/D,KAAK0R,OAAQ,SAAS7M,GAAK,MAAmB,KAAZA,EAAE9C,UAChE/B,KAAK0R,OAAOjM,MAAMiG,KAAMA,EAAM3J,MAAO,KAEhC/B,KAAK0R,OAAOzN,OAAS,GAG9B5C,EAAKgF,UAAUsL,QAAU,SAASjG,EAAMkG,GAOtC,OANIpQ,QAAQ2B,YAAYnD,KAAK6R,MAC3B7R,KAAK6R,OAASnG,KAAMA,EAAM3J,MAAO6P,IAE1BhO,EAAET,YAAYS,EAAEG,KAAK/D,KAAK6R,KAAM,SAAShN,GAAK,OAAOA,EAAE9C,OAAS6P,MACvE5R,KAAK6R,KAAKpM,MAAMiG,KAAMA,EAAM3J,MAAO6P,IAE9B5R,KAAK6R,KAAK5N,OAAS,GAG5B5C,EAAKgF,UAAUyL,YAAc,SAASpG,EAAMqG,EAAYC,EAAQC,EAASC,EAAUC,EAAQC,EAASC,GAalG,OAZI7Q,QAAQ2B,YAAYnD,KAAKsS,WAC3BtS,KAAKsS,YAAc5G,KAAMA,EAAMqG,WAAYA,EAAYC,OAAQA,EAAQC,QAASA,EAASC,SAAUA,EAAUC,OAAQA,EAAQC,QAASA,EAASC,WAAYA,IAEnJzO,EAAEG,KAAK/D,KAAKsS,UAAW,SAASzN,GACxC,OAAOA,EAAEmN,QAAUA,GACjBnN,EAAEoN,SAAWA,GACbpN,EAAEqN,UAAYA,GACdrN,EAAEuN,SAAWA,GACbvN,EAAEwN,YAAcA,KAElBrS,KAAKsS,UAAU7M,MAAMiG,KAAMA,EAAMqG,WAAYA,EAAYC,OAAQA,EAAQC,QAASA,EAASC,SAAUA,EAAUC,OAAQA,EAAQC,QAASA,EAASC,WAAYA,IAExJrS,KAAKsS,UAAUrO,OAAS,GAGjC5C,EAAKgF,UAAUkM,WAAa,SAASxD,GACnC,IACIlK,EADArB,EAAO,IAAInC,GAAM0N,MAAOA,EAAOC,SAAUjN,MAAOgN,MAEpD,GAAIvN,QAAQ2B,YAAYnD,KAAK0N,MAC3B1N,KAAK0N,MAAQlK,QAEV,GAAqB,IAAjBuL,EAAM9K,OACbjE,KAAK0N,KAAKjI,KAAKjC,OAEZ,CACH,IAAKqB,EAAI,EAAGA,EAAI7E,KAAK0N,KAAKzJ,QACpBjE,KAAK0N,KAAK7I,GAAGkK,OAASA,EADMlK,KAK9BA,GAAK7E,KAAK0N,KAAKzJ,QACjBjE,KAAK0N,KAAKjI,KAAKjC,GAEnB,OAAOxD,KAAK0N,KAAKzJ,OAAS,GAS5B5C,EAAKgF,UAAUmM,QAAU,WACvB,IAA8B7O,EAAZiG,KAElB,OAAI5J,KAAKgP,OACHhP,KAAKgP,OAAO/K,OAAS,GACvBN,EAAO3D,KAAKsL,QACZ1H,EAAEO,QAAQnE,KAAKgP,OAAQ,SAASD,GAC9B,IAAIvL,EAAO,IAAInC,EAAKG,QAAQC,UAAWkC,GAAOqL,QAASD,MACvDnF,EAAMnE,KAAKjC,KAENoG,IAGC5J,UAWdqB,EAAKgF,UAAUoM,OAAS,WACtB,IAAInN,EAAQtF,KACZwB,QAAQ2C,QAAQnE,KAAM,SAAS+B,EAAOsC,GACzB,eAAPA,GAAkC,KAAVA,EAAI,WACvBiB,EAAMjB,KAGjBrE,KAAKC,KAAKD,KAAK4P,aACf5P,KAAK4P,YAAc5P,KAAKsL,OAAM,IA+BhCjK,EAAKgF,UAAU9F,QAAU,SAAS4L,GAChC,IAAI7G,EAAQtF,KAoBZ,OAjBAA,KAAK0H,QAAUrG,EAAKsG,OAAOqF,gBAC3B3L,EAAKL,SAAS,WACRsE,EAAMoC,SAAWrG,EAAKsG,OAAOG,SAC/BxC,EAAMoC,QAAUrG,EAAKsG,OAAOI,UAC7B1G,EAAKsG,OAAOsF,YAGfjN,KAAKyN,gBAAkBtB,EAAepM,KAAK,SAAS4D,GAOlD,OANA2B,EAAMrF,KAAK0D,GAEX2B,EAAMoC,QAAUrG,EAAKsG,OAAOG,OAE5BxC,EAAMsK,YAActK,EAAMgG,OAAM,GAEzBhG,IAGFtF,KAAKyN,iBAUdpM,EAAKgF,UAAUiF,MAAQ,SAASoH,GAC9B,IAAIlP,KA+BJ,OA9BAhC,QAAQ2C,QAAQnE,KAAM,SAAS+B,EAAOsC,GACzB,QAAPA,EACFb,EAAKkK,KAAO9J,EAAEwB,IAAIrD,EAAO,SAASkD,GAChC,OAAOA,EAAEqG,MAAMoH,KAGH,eAAPrO,GAAkC,KAAVA,EAAI,KAEjCb,EAAKa,GADHqO,EACUlR,QAAQmR,KAAK5Q,GAEbA,KAKb2Q,IACClP,EAAK0L,SACP1L,EAAK0L,SAAW1L,EAAK0L,SAAS0D,OAAOvR,EAAKQ,aAAauN,sBAAuB,YAE9E5L,EAAK0L,SAAW,IAIhBlP,KAAK2O,OACPnL,EAAKmL,KAAO/K,EAAEwB,IAAIpF,KAAK2O,KAAM,UAG3B3O,KAAK6O,QACPrL,EAAKqL,MAAQjL,EAAEwB,IAAIpF,KAAK6O,MAAO,UAE1BrL,GAGTnC,EAAKgF,UAAUwM,SAAW,WACxB,IAAIC,EAAO9S,KAAKG,GAAK,IAAMH,KAAK6N,WAKhC,OAHI7N,KAAK+N,UACP+E,GAAQ,KAAO9S,KAAK+N,QAAU,KAEzB,IAAM+E,EAAO,KAlnBxB","file":"Contacts.services.js"} \ No newline at end of file