PageSourceSearch

https://govtribe.com/js/modal-contact-group-model-add-contacts.544230f3e375c90667cc1c53c9a3a3893837411f.js

js govtribe.com collected 2026-10-02 03:20:12 UTC 4,261 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunk=globalThis.webpackChunk||[]).push([[33973],{76246(e,t,a){a.r(t),a.d(t,{default:()=>S});var o=a(99910),s=a(15234),c=a(83894),l=a(20641);const n={class:"list-group-flush list-group list-unstyled"},d={class:"py-2 px-3"};var i=a(26962),r=a(82124),h=a(52838),u=a(78736),p=a(57992),m=a(88369),C=a(95954),b=a(53934),v=a(33289);const f={components:{ModalActions:a(73103).A,ModalSection:u.A,SelectedContactsModalSection:h.A,BOverlay:i.A},mixins:[v.A],data:()=>({searchTerm:"",availableContacts:[],selectedContacts:[],clearableContacts:[],modalName:"ContactGroupModelAddContactsModal"}),computed:{...(0,r.L8)("ContactGroupStore",["selected"]),availableContactsFiltered(){const e=this.selectedContacts.map((e=>e._id));return this.availableContacts.filter((t=>!e.includes(t._id)))}},methods:{...(0,r.i0)("ContactGroupStore",["refreshItem"]),...(0,r.PY)("RelatedStore",{setSelectedItems:C.tr}),...(0,r.i0)("RelatedStore",["search"]),async shown(){await this.fetchAvailableContacts()},hidden(){this.availableContacts=[],this.selectedContacts=[],this.changesWereMade&&(this.setSelectedItems([]),this.search(),this.refreshItem())},fetchAvailableContactsDebounced:(0,p.A)((async function(e){await this.fetchAvailableContacts(e)}),500),async fetchAvailableContacts(e=""){this.loading=!0;let{data:t}=await b.EG.post((0,m.Eq)("ContactModel",{workspace:this.selectedWorkspaceId}),{q:e,autoComplete:!0,limit:100});this.availableContacts=t.data,this.loading=!1},async syncSelectedContacts(e){this.clearableContacts=e;const t=e.filter((e=>!this.selectedContacts.some((t=>t._id===e._id))));for(const e of t)await this.addContactsToSelectedContacts(e);this.clearableContacts=[],this.$refs.multiselect.hide()},async addContactsToSelectedContacts(e){await this.updateContactGroupMembershipForSelectedContacts("add",e),this.selectedContacts.push(e)},async removeContactFromSelectedContact(e){await this.updateContactGroupMembershipForSelectedContacts("remove",e);const t=this.selectedContacts.findIndex((t=>t._id===e._id));this.selectedContacts.splice(t,1)},async updateContactGroupMembershipForSelectedContacts(e,t){this.loading=!0,await b.EG.post("/api/contact/contact-groups",{action:e,contact_model_ids:[t._id],contact_group_model_ids:[this.selected._id]}),this.changesWereMade=!0,this.loading=!1}}};const S=(0,a(66262).A)(f,[["render",function(e,t,a,i,r,h){const u=c.A,p=s.A,m=(0,l.g2)("ModalSection"),C=(0,l.g2)("SelectedContactsModalSection"),b=(0,l.g2)("ModalActions"),v=(0,l.g2)("BOverlay"),f=o.A;return(0,l.uX)(),(0,l.Wv)(f,{id:e.computedModalName,ref:e.computedModalName,header:"Add Contacts",visible:e.visible,position:"right","block-scroll":"","pt:root:style":"width:30rem;padding-bottom:4.75rem;",onShow:h.shown,onHide:h.hidden,"onUpdate:visible":e.updateVisible},{default:(0,l.k6)((()=>[t[3]||(t[3]=(0,l.Lk)("div",{class:"modal-subtitle"}," Add contacts to this contact group ",-1)),(0,l.Lk)("div",n,[(0,l.bF)(m,null,{title:(0,l.k6)((()=>[...t[1]||(t[1]=[(0,l.eW)(" Select Contacts ",-1)])])),default:(0,l.k6)((()=>[(0,l.bF)(p,{ref:"multiselect","model-value":r.clearableContacts,placeholder:"Search by email",options:h.availableContactsFiltered,"pt:header:class":"d-none","option-label":"email","data-key":"_id",class:"w-100",dusk:"contact-multiselect","onUpdate:modelValue":h.syncSelectedContacts},{header:(0,l.k6)((()=>[(0,l.Lk)("div",d,[(0,l.bF)(u,{ref:"searchInput",modelValue:r.searchTerm,"onUpdate:modelValue":[t[0]||(t[0]=e=>r.searchTerm=e),h.fetchAvailableContactsDebounced],placeholder:"Type to search...",dusk:"contact-multiselect-search",class:"w-100",type:"search"},null,8,["modelValue","onUpdate:modelValue"])])])),empty:(0,l.k6)((()=>[...t[2]||(t[2]=[(0,l.eW)(" No contacts found. Consider changing the search query. ",-1)])])),_:1},8,["model-value","options","onUpdate:modelValue"])])),_:1}),(0,l.bF)(C,{"selected-contacts":r.selectedContacts,"show-remove":"",onRemove:h.removeContactFromSelectedContact},null,8,["selected-contacts","onRemove"])]),(0,l.bF)(b,{"fixed-bottom":"","hide-ok":"","cancel-label":"Close",onCancel:e.hide},null,8,["onCancel"]),(0,l.bF)(v,{show:e.loading,rounded:"sm","spinner-variant":"info","no-wrap":""},null,8,["show"])])),_:1},8,["id","visible","onShow","onHide","onUpdate:visible"])}]])}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.