]> source.dussan.org Git - nextcloud-server.git/commitdiff
chore(assets): Recompile assets 42777/head
authornextcloud-command <nextcloud-command@users.noreply.github.com>
Mon, 22 Jan 2024 20:25:10 +0000 (20:25 +0000)
committernextcloud-command <nextcloud-command@users.noreply.github.com>
Mon, 22 Jan 2024 20:25:10 +0000 (20:25 +0000)
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
dist/core-unified-search.js
dist/core-unified-search.js.map

index 7f3f3ab831c3ad5a667b032c907f2d3b23f7f659..4e7d2cbb819cd55f06456a06118c46b8367cdc1a 100644 (file)
@@ -1,3 +1,3 @@
 /*! For license information please see core-unified-search.js.LICENSE.txt */
-(()=>{"use strict";var e,i={67001:(e,i,n)=>{var r=n(17499),a=n(77958),s=n(31352),o=n(20144),l=n(74628),c=n(85989),d=n(73567),u=n(60186);const p={name:"CalendarRangeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var A=n(51900);const h=(0,A.Z)(p,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon calendar-range-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var m=n(65027),f=n(52740);const g={name:"CustomDateRangeModal",components:{NcButton:l.Z,NcModal:f.Z,CalendarRangeIcon:h,NcDateTimePicker:m.Z},props:{isOpen:{type:Boolean,required:!0}},data:()=>({dateFilter:{startFrom:null,endAt:null}}),computed:{isModalOpen:{get(){return this.isOpen},set(t){this.$emit("update:is-open",t)}}},methods:{closeModal(){this.isModalOpen=!1},applyCustomRange(){this.$emit("set:custom-date-range",this.dateFilter),this.closeModal()}}};var C=n(93379),v=n.n(C),b=n(7795),y=n.n(b),_=n(90569),x=n.n(_),Z=n(3565),k=n.n(Z),w=n(19216),I=n.n(w),N=n(44589),S=n.n(N),D=n(72343),F={};F.styleTagTransform=S(),F.setAttributes=k(),F.insert=x().bind(null,"head"),F.domAPI=y(),F.insertStyleElement=I(),v()(D.Z,F),D.Z&&D.Z.locals&&D.Z.locals;const M=(0,A.Z)(g,(function(){var t=this,e=t._self._c;return t.isModalOpen?e("NcModal",{attrs:{id:"unified-search",name:t.t("core","Custom date range"),show:t.isModalOpen,size:"small","clear-view-delay":0,title:t.t("core","Custom date range")},on:{"update:show":function(e){t.isModalOpen=e},close:t.closeModal}},[e("div",{staticClass:"unified-search-custom-date-modal"},[e("h1",[t._v(t._s(t.t("core","Custom date range")))]),t._v(" "),e("div",{staticClass:"unified-search-custom-date-modal__pickers"},[e("NcDateTimePicker",{attrs:{id:"unifiedsearch-custom-date-range-start",label:t.t("core","Pick start date"),type:"date"},model:{value:t.dateFilter.startFrom,callback:function(e){t.$set(t.dateFilter,"startFrom",e)},expression:"dateFilter.startFrom"}}),t._v(" "),e("NcDateTimePicker",{attrs:{id:"unifiedsearch-custom-date-range-end",label:t.t("core","Pick end date"),type:"date"},model:{value:t.dateFilter.endAt,callback:function(e){t.$set(t.dateFilter,"endAt",e)},expression:"dateFilter.endAt"}})],1),t._v(" "),e("div",{staticClass:"unified-search-custom-date-modal__footer"},[e("NcButton",{on:{click:t.applyCustomRange},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CalendarRangeIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,3084610734)},[t._v("\n\t\t\t\t"+t._s(t.t("core","Search in date range"))+"\n\t\t\t\t")])],1)])]):t._e()}),[],!1,null,"99abc4fc",null).exports,B={name:"DotsHorizontalIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},T=(0,A.Z)(B,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon dots-horizontal-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,L={name:"FilterIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},P=(0,A.Z)(L,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon filter-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,H={name:"SearchFilterChip",components:{CloseIcon:n(44893).default},props:{text:{type:String,required:!0},pretext:{type:String,required:!0}},methods:{deleteChip(){this.$emit("delete",this.filter)}}};var R=n(53523),z={};z.styleTagTransform=S(),z.setAttributes=k(),z.insert=x().bind(null,"head"),z.domAPI=y(),z.insertStyleElement=I(),v()(R.Z,z),R.Z&&R.Z.locals&&R.Z.locals;const V=(0,A.Z)(H,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"chip"},[e("span",{staticClass:"icon"},[t._t("icon"),t._v(" "),t.pretext.length?e("span",[t._v(" "+t._s(t.pretext)+" : ")]):t._e()],2),t._v(" "),e("span",{staticClass:"text"},[t._v(t._s(t.text))]),t._v(" "),e("span",{staticClass:"close-icon",on:{click:t.deleteChip}},[e("CloseIcon",{attrs:{size:18}})],1)])}),[],!1,null,"5dc4d462",null).exports,E={name:"ListBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},U=(0,A.Z)(E,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon list-box-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var j=n(25220),O=n(72155),Y=n(18519),Q=n(22175),$=n(6905),G=n(66236),q=n(75944),W=n(45157),J=n(26053),K=n(41989),X=n(99313),tt=n(20090),et=n(96204),it=n(16894),nt=n(94162),rt=n(40874),at=n(27657),st=n(2047),ot=n(68121),lt=n(4867),ct=n(89998),dt=n(23762),ut=n(36065),pt=n(55721),At=n(55349),ht=n(87875),mt=n(1927),ft=n(56956),gt=n(36135),Ct=n(98445),vt=n(20938),bt=n(3904),yt=n(5594),_t=n(96),xt=n(15758),Zt=n(73743),kt=n(59897),wt=n(89241),It=n(96226),Nt=n(97947),St=n(20551),Dt=n(19775),Ft=n(6318),Mt=n(78573),Bt=n(93428),Tt=n(66654),Lt=n(40873),Pt=n(64865),Ht=n(8691),Rt=n(88175),zt=n(20435),Vt=n(6156),Et=n(16972),Ut=n(34246),jt=n(34854),Ot=n(42213),Yt=n(22663),Qt=n(33474),$t=n(26380),Gt=(n(94553),n(93664)),qt=n(79753),Wt=n(86884),Jt=n(49368),Kt=n(69183),Xt=n(74911),te=n(35380),ee=n(56857),ie=n(67912),ne=n(64864),re=n(13888),ae=n(34509),se=n(4409),oe=(n(52299),n(50279),n(93911),n(85302),n(90318)),le=n(17593),ce=(n(79845),n(84722),n(76692),n(40946),n(73045));O.Z,G.Z,q.Z,W.Z,J.Z,K.Z,X.Z,tt.Z,et.Z,it.Z,nt.Z,j.Z,rt.Z,at.Z,st.Z,ot.Z,lt.Z,ct.Z,dt.Z,ut.Z,pt.Z,At.Z,ht.Z,mt.Z,ft.Z,gt.Z,Ct.Z,Qt.NcAutoCompleteResult,vt.N,bt.Z,yt.Z,l.Z,_t.Z,xt.Z,Zt.Z,kt.Z,wt.Z,It.Z,Nt.Z,St.Z,m.Z,Dt.Z,Ft.Z,Mt.Z,Q.Z,Bt.Z,Tt.Z,Lt.N,Pt.Z,Ht.Z,Rt.Z,zt.Z,Yt.N,f.Z,Vt.Z,Et.Z,Ut.Z,jt.Z,Ot.Z,Qt.default,$t.N,Xt.Z,Wt.Z,te.Z,ee.Z,ie.Z,ne.N,se.Z,Jt.Z,re.Z,ae.Z,Symbol.toStringTag,oe.X,le.X,ce.VTooltip,Symbol.toStringTag;var de=n(48950);const ue={name:"SearchableList",components:{NcPopover:Ut.Z,NcTextField:Jt.Z,Magnify:c.default,AlertCircleOutline:de.default,NcAvatar:vt.N,NcEmptyContent:Q.Z,NcButton:l.Z},props:{labelText:{type:String,default:"this is a label"},searchList:{type:Array,required:!0},emptyContentText:{type:String,required:!0}},data:()=>({opened:!1,error:!1,searchTerm:""}),computed:{filteredList(){return this.searchList.filter((t=>!this.searchTerm.toLowerCase().length||["displayName"].some((e=>t[e].toLowerCase().includes(this.searchTerm.toLowerCase())))))}},methods:{clearSearch(){this.searchTerm=""},itemSelected(t){this.$emit("item-selected",t),this.clearSearch(),this.opened=!1},searchTermChanged(t){this.$emit("search-term-change",t)}}};var pe=n(3955),Ae={};Ae.styleTagTransform=S(),Ae.setAttributes=k(),Ae.insert=x().bind(null,"head"),Ae.domAPI=y(),Ae.insertStyleElement=I(),v()(pe.Z,Ae),pe.Z&&pe.Z.locals&&pe.Z.locals;const he=(0,A.Z)(ue,(function(){var t=this,e=t._self._c;return e("NcPopover",{attrs:{shown:t.opened},on:{show:function(e){t.opened=!0},hide:function(e){t.opened=!1}},scopedSlots:t._u([{key:"trigger",fn:function(){return[t._t("trigger")]},proxy:!0}],null,!0)},[t._v(" "),e("div",{staticClass:"searchable-list__wrapper"},[e("NcTextField",{attrs:{value:t.searchTerm,label:t.labelText,"trailing-button-icon":"close","show-trailing-button":""!==t.searchTerm},on:{"update:value":[function(e){t.searchTerm=e},t.searchTermChanged],"trailing-button-click":t.clearSearch}},[e("Magnify",{attrs:{size:20}})],1),t._v(" "),t.filteredList.length>0?e("ul",{staticClass:"searchable-list__list"},t._l(t.filteredList,(function(i){return e("li",{key:i.id,attrs:{title:i.displayName,role:"button"}},[e("NcButton",{attrs:{alignment:"start",type:"tertiary",wide:!0},on:{click:function(e){return t.itemSelected(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("NcAvatar",{attrs:{user:i.user,"show-user-status":!1,"hide-favorite":!1}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t"+t._s(i.displayName)+"\n\t\t\t\t")])],1)})),0):e("div",{staticClass:"searchable-list__empty-content"},[e("NcEmptyContent",{attrs:{name:t.emptyContentText},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AlertCircleOutline")]},proxy:!0}])})],1)],1)])}),[],!1,null,"7cf71a2c",null).exports,me={name:"SearchResult",components:{NcListItem:Ht.Z},props:{thumbnailUrl:{type:String,default:null},title:{type:String,required:!0},subline:{type:String,default:null},resourceUrl:{type:String,default:null},icon:{type:String,default:""},rounded:{type:Boolean,default:!1},query:{type:String,default:""},focused:{type:Boolean,default:!1}},data:()=>({thumbnailHasError:!1}),watch:{thumbnailUrl(){this.thumbnailHasError=!1}},methods:{isValidIconOrPreviewUrl:t=>/^https?:\/\//.test(t)||t.startsWith("/"),thumbnailErrorHandler(){this.thumbnailHasError=!0}}};var fe=n(48043),ge={};ge.styleTagTransform=S(),ge.setAttributes=k(),ge.insert=x().bind(null,"head"),ge.domAPI=y(),ge.insertStyleElement=I(),v()(fe.Z,ge),fe.Z&&fe.Z.locals&&fe.Z.locals;const Ce=(0,A.Z)(me,(function(){var t=this,e=t._self._c;return e("NcListItem",{staticClass:"result-items__item",attrs:{name:t.title,bold:!1,href:t.resourceUrl,target:"_self"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("div",{staticClass:"result-items__item-icon",class:{"result-items__item-icon--rounded":t.rounded,"result-items__item-icon--no-preview":!t.isValidIconOrPreviewUrl(t.thumbnailUrl),"result-items__item-icon--with-thumbnail":t.isValidIconOrPreviewUrl(t.thumbnailUrl),[t.icon]:!t.isValidIconOrPreviewUrl(t.icon)},style:{backgroundImage:t.isValidIconOrPreviewUrl(t.icon)?`url(${t.icon})`:""},attrs:{"aria-hidden":"true"}},[t.isValidIconOrPreviewUrl(t.thumbnailUrl)&&!t.thumbnailHasError?e("img",{attrs:{src:t.thumbnailUrl},on:{error:t.thumbnailErrorHandler}}):t._e()])]},proxy:!0},{key:"subname",fn:function(){return[t._v("\n\t\t"+t._s(t.subline)+"\n\t")]},proxy:!0}])})}),[],!1,null,"67d9a3cf",null).exports;var ve=n(20296),be=n.n(ve),ye=n(25108);async function _e(t){let{searchTerm:e}=t;const{data:{contacts:i}}=await Gt.Z.post((0,qt.generateUrl)("/contactsmenu/contacts"),{filter:e});if(!e){let t=(0,a.ts)();return t={id:t.uid,fullName:t.displayName,emailAddresses:[]},i.unshift(t),i}return i}var xe=n(25108);const Ze={name:"UnifiedSearchModal",components:{ArrowRight:d.default,AccountGroup:u.Z,CalendarRangeIcon:h,CustomDateRangeModal:M,DotsHorizontalIcon:T,FilterIcon:P,FilterChip:V,ListBox:U,NcActions:j.Z,NcActionButton:O.Z,NcAvatar:Y.Z,NcButton:l.Z,NcEmptyContent:Q.Z,NcModal:f.Z,NcInputField:$.Z,MagnifyIcon:c.default,SearchableList:he,SearchResult:Ce},props:{isVisible:{type:Boolean,required:!0}},data(){return{providers:[],providerActionMenuIsOpen:!1,dateActionMenuIsOpen:!1,providerResultLimit:5,dateFilter:{id:"date",type:"date",text:"",startFrom:null,endAt:null},personFilter:{id:"person",type:"person",name:""},dateFilterIsApplied:!1,personFilterIsApplied:!1,filteredProviders:[],searching:!1,searchQuery:"",placessearchTerm:"",dateTimeFilter:null,filters:[],results:[],contacts:[],debouncedFind:be()(this.find,300),debouncedFilterContacts:be()(this.filterContacts,300),showDateRangeModal:!1,internalIsVisible:!1}},computed:{userContacts:{get(){return this.contacts}},noContentInfo:{get(){const e=0===this.searchQuery.length,i=this.searchQuery.length>0&&0===this.results.length;return{show:e||i,text:this.searching&&i?t("core","Searching …"):e?t("core","Start typing to search"):t("core","No matching results"),icon:c.default}}}},watch:{isVisible(t){this.internalIsVisible=t},internalIsVisible(t){this.$emit("update:isVisible",t),this.$nextTick((()=>{t&&this.focusInput()}))}},mounted(){(async function(){try{const{data:t}=await Gt.Z.get((0,qt.generateOcsUrl)("search/providers"),{params:{from:window.location.pathname.replace("/index.php","")+window.location.search}});if("ocs"in t&&"data"in t.ocs&&Array.isArray(t.ocs.data)&&t.ocs.data.length>0)return t.ocs.data}catch(t){ye.error(t)}return[]})().then((t=>{this.providers=t,xe.debug("Search providers",this.providers)})),_e({searchTerm:""}).then((t=>{this.contacts=this.mapContacts(t),xe.debug("Contacts",this.contacts)}))},methods:{find(t){if(this.searching=!0,0===t.length)return this.results=[],void(this.searching=!1);(0,Kt.j8)("nextcloud:unified-search.search",{query:t});const e=[],i=this.filteredProviders.length>0?this.filteredProviders:this.providers,n=(i,n)=>{const r={type:i.id,query:t,cursor:null};if(n.dateFilterIsApplied){if(!i.filters.since||!i.filters.until)return;r.since=this.dateFilter.startFrom,r.until=this.dateFilter.endAt}if(n.personFilterIsApplied){if(!i.filters.person)return;r.person=this.personFilter.user}this.providerResultLimit>5&&(r.limit=this.providerResultLimit),(0,function(t){let{type:e,query:i,cursor:n,since:r,until:a,limit:s,person:o}=t;const l=Gt.Z.CancelToken.source();return{request:async()=>Gt.Z.get((0,qt.generateOcsUrl)("search/providers/{type}/search",{type:e}),{cancelToken:l.token,params:{term:i,cursor:n,since:r,until:a,limit:s,person:o,from:window.location.pathname.replace("/index.php","")+window.location.search}}),cancel:l.cancel}}(r).request)().then((t=>{e.push({id:i.id,provider:i.name,inAppSearch:i.inAppSearch,results:t.data.ocs.data.entries}),xe.debug("New results",e),xe.debug("Unified search results:",this.results),this.updateResults(e),this.searching=!1}))};i.forEach((t=>{const e=this.dateFilterIsApplied,i=this.personFilterIsApplied;n(t,{dateFilterIsApplied:e,personFilterIsApplied:i})}))},updateResults(t){let e=[...this.results];this.filters.length>0&&(e=e.filter((t=>this.filters.some((e=>e.id===t.id))))),t.forEach((t=>{const i=e.findIndex((e=>e.id===t.id));-1!==i?0===t.results.length?e.splice(i,1):e.splice(i,1,t):t.results.length>0&&e.push(t)}));const i=e.slice(0);i.sort(((t,e)=>{const i=this.providers.find((e=>e.id===t.id)),n=this.providers.find((t=>t.id===e.id));return(i?i.order:0)-(n?n.order:0)})),this.results=i},mapContacts:t=>t.map((t=>({displayName:t.fullName,isNoUser:!1,subname:t.emailAddresses[0]?t.emailAddresses[0]:"",icon:"",user:t.id}))),filterContacts(t){_e({searchTerm:t}).then((e=>{this.contacts=this.mapContacts(e),xe.debug(`Contacts filtered by ${t}`,this.contacts)}))},applyPersonFilter(t){this.personFilterIsApplied=!0;const e=this.filters.findIndex((e=>e.id===t.id));-1===e?(this.personFilter.id=t.id,this.personFilter.user=t.user,this.personFilter.name=t.displayName,this.filters.push(this.personFilter)):(this.filters[e].id=t.id,this.filters[e].user=t.user,this.filters[e].name=t.displayName),this.debouncedFind(this.searchQuery),xe.debug("Person filter applied",t)},loadMoreResultsForProvider(t){this.providerResultLimit+=5,this.filters=this.filters.filter((t=>"provider"!==t.type));const e=this.providers.find((e=>e.id===t));this.addProviderFilter(e,!0)},addProviderFilter(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];t.id&&(this.providerResultLimit=e?this.providerResultLimit:5,this.providerActionMenuIsOpen=!1,this.filteredProviders.find((e=>e.id===t.id))||this.filteredProviders.push({id:t.id,name:t.name,icon:t.icon,type:"provider",filters:t.filters}),this.filters=this.syncProviderFilters(this.filters,this.filteredProviders),xe.debug("Search filters (newly added)",this.filters),this.debouncedFind(this.searchQuery))},removeFilter(t){if("provider"===t.type){for(let e=0;e<this.filteredProviders.length;e++)if(this.filteredProviders[e].id===t.id){this.filteredProviders.splice(e,1);break}this.filters=this.syncProviderFilters(this.filters,this.filteredProviders),xe.debug("Search filters (recently removed)",this.filters)}else for(let e=0;e<this.filters.length;e++)if("date"===this.filters[e].id||this.filters[e].id===t.id){this.dateFilterIsApplied=!1,this.filters.splice(e,1),"person"===t.type&&(this.personFilterIsApplied=!1);break}this.debouncedFind(this.searchQuery)},syncProviderFilters(t,e){const i=t.slice();return i.forEach(((t,n)=>{const r=t.id;"provider"===t.type&&(e.some((t=>t.id===r))||i.splice(n,1))})),e.forEach((t=>{const e=t.id;"provider"===t.type&&(i.some((t=>t.id===e))||i.push(t))})),i},updateDateFilter(){const t=this.filters.findIndex((t=>"date"===t.id));-1!==t?this.filters[t]=this.dateFilter:this.filters.push(this.dateFilter),this.dateFilterIsApplied=!0,this.debouncedFind(this.searchQuery)},applyQuickDateRange(e){this.dateActionMenuIsOpen=!1;const i=new Date;let n,r;switch(e){case"today":n=new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0),r=new Date(i.getFullYear(),i.getMonth(),i.getDate(),23,59,59,999),this.dateFilter.text=t("core","Today");break;case"7days":n=new Date(i.getFullYear(),i.getMonth(),i.getDate()-6,0,0,0,0),this.dateFilter.text=t("core","Last 7 days");break;case"30days":n=new Date(i.getFullYear(),i.getMonth(),i.getDate()-29,0,0,0,0),this.dateFilter.text=t("core","Last 30 days");break;case"thisyear":n=new Date(i.getFullYear(),0,1,0,0,0,0),r=new Date(i.getFullYear(),11,31,23,59,59,999),this.dateFilter.text=t("core","This year");break;case"lastyear":n=new Date(i.getFullYear()-1,0,1,0,0,0,0),r=new Date(i.getFullYear()-1,11,31,23,59,59,999),this.dateFilter.text=t("core","Last year");break;case"custom":return void(this.showDateRangeModal=!0);default:return}this.dateFilter.startFrom=n,this.dateFilter.endAt=r,this.updateDateFilter()},setCustomDateRange(e){xe.debug("Custom date range",e),this.dateFilter.startFrom=e.startFrom,this.dateFilter.endAt=e.endAt,this.dateFilter.text=t("core",`Between ${this.dateFilter.startFrom.toLocaleDateString()} and ${this.dateFilter.endAt.toLocaleDateString()}`),this.updateDateFilter()},focusInput(){this.$refs.searchInput.$el.children[0].children[0].focus()},closeModal(){this.internalIsVisible=!1,this.searchQuery=""},supportFiltering(){const t=window.location.pathname.replace("/index.php","");return["/settings/users","/apps/files","/apps/deck"].some((e=>t.includes(e)))}}};var ke=n(93818),we={};we.styleTagTransform=S(),we.setAttributes=k(),we.insert=x().bind(null,"head"),we.domAPI=y(),we.insertStyleElement=I(),v()(ke.Z,we),ke.Z&&ke.Z.locals&&ke.Z.locals;const Ie=(0,A.Z)(Ze,(function(){var t=this,e=t._self._c;return e("NcModal",{ref:"unifiedSearchModal",attrs:{id:"unified-search",name:t.t("core","Unified search"),show:t.internalIsVisible,"clear-view-delay":0},on:{"update:show":function(e){t.internalIsVisible=e},close:t.closeModal}},[e("CustomDateRangeModal",{staticClass:"unified-search__date-range",attrs:{"is-open":t.showDateRangeModal},on:{"set:custom-date-range":t.setCustomDateRange,"update:is-open":function(e){t.showDateRangeModal=e}}}),t._v(" "),e("div",{ref:"unifiedSearch",staticClass:"unified-search-modal"},[e("h1",[t._v(t._s(t.t("core","Unified search")))]),t._v(" "),e("NcInputField",{ref:"searchInput",attrs:{value:t.searchQuery,type:"text",label:t.t("core","Search apps, files, tags, messages")+"..."},on:{"update:value":[function(e){t.searchQuery=e},t.debouncedFind]}}),t._v(" "),e("div",{staticClass:"unified-search-modal__filters"},[e("NcActions",{attrs:{"menu-name":t.t("core","Apps and Settings"),open:t.providerActionMenuIsOpen},on:{"update:open":function(e){t.providerActionMenuIsOpen=e}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ListBox",{attrs:{size:20}})]},proxy:!0}])},[t._v(" "),t._l(t.providers,(function(i){return e("NcActionButton",{key:i.id,on:{click:function(e){return t.addProviderFilter(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("img",{attrs:{src:i.icon}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t"+t._s(t.t("core",i.name))+"\n\t\t\t\t")])}))],2),t._v(" "),e("NcActions",{attrs:{"menu-name":t.t("core","Date"),open:t.dateActionMenuIsOpen},on:{"update:open":function(e){t.dateActionMenuIsOpen=e}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CalendarRangeIcon",{attrs:{size:20}})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("today")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Today"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("7days")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last 7 days"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("30days")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last 30 days"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("thisyear")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","This year"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("lastyear")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last year"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("custom")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Custom date range"))+"\n\t\t\t\t")])],1),t._v(" "),e("SearchableList",{attrs:{"label-text":t.t("core","Search people"),"search-list":t.userContacts,"empty-content-text":t.t("core","Not found")},on:{"search-term-change":t.debouncedFilterContacts,"item-selected":t.applyPersonFilter},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("NcButton",{scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountGroup",{attrs:{size:20}})]},proxy:!0}])},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","People"))+"\n\t\t\t\t\t")])]},proxy:!0}])})],1),t._v(" "),e("div",{staticClass:"unified-search-modal__filters-applied"},t._l(t.filters,(function(i){return e("FilterChip",{key:i.id,attrs:{text:i.name??i.text,pretext:""},on:{delete:function(e){return t.removeFilter(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return["person"===i.type?e("NcAvatar",{attrs:{user:i.user,size:24,"disable-menu":!0,"show-user-status":!1,"hide-favorite":!1}}):"date"===i.type?e("CalendarRangeIcon"):e("img",{attrs:{src:i.icon,alt:""}})]},proxy:!0}],null,!0)})})),1),t._v(" "),t.noContentInfo.show?e("div",{staticClass:"unified-search-modal__no-content"},[e("NcEmptyContent",{attrs:{name:t.noContentInfo.text},scopedSlots:t._u([{key:"icon",fn:function(){return[e(t.noContentInfo.icon,{tag:"component"})]},proxy:!0}],null,!1,604901229)})],1):t._e(),t._v(" "),t._l(t.results,(function(i){return e("div",{key:i.id,staticClass:"unified-search-modal__results"},[e("div",{staticClass:"results"},[e("div",{staticClass:"result-title"},[e("span",[t._v(t._s(i.provider))])]),t._v(" "),e("ul",{staticClass:"result-items"},t._l(i.results,(function(i,n){return e("SearchResult",t._b({key:n},"SearchResult",i,!1))})),1),t._v(" "),e("div",{staticClass:"result-footer"},[e("NcButton",{attrs:{type:"tertiary-no-background"},on:{click:function(e){return t.loadMoreResultsForProvider(i.id)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Load more results"))+"\n\t\t\t\t\t\t")]),t._v(" "),i.inAppSearch?e("NcButton",{attrs:{alignment:"end-reverse",type:"tertiary-no-background"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Search in"))+" "+t._s(i.provider)+"\n\t\t\t\t\t\t")]):t._e()],1)])])})),t._v(" "),t.supportFiltering()?e("div",{staticClass:"unified-search-modal__results"},[e("NcButton",{on:{click:t.closeModal},scopedSlots:t._u([{key:"icon",fn:function(){return[e("FilterIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2021673347)},[t._v("\n\t\t\t\t"+t._s(t.t("core","Filter in current view"))+"\n\t\t\t\t")])],1):t._e()],2)],1)}),[],!1,null,"91bd0074",null).exports;var Ne=n(25108);const Se={name:"UnifiedSearch",components:{NcButton:l.Z,Magnify:c.default,UnifiedSearchModal:Ie},data:()=>({showUnifiedSearch:!1}),mounted(){Ne.debug("Unified search initialized!")},methods:{toggleUnifiedSearch(){this.showUnifiedSearch=!this.showUnifiedSearch},handleModalVisibilityChange(t){this.showUnifiedSearch=t}}};var De=n(50222),Fe={};Fe.styleTagTransform=S(),Fe.setAttributes=k(),Fe.insert=x().bind(null,"head"),Fe.domAPI=y(),Fe.insertStyleElement=I(),v()(De.Z,Fe),De.Z&&De.Z.locals&&De.Z.locals;const Me=(0,A.Z)(Se,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"header-menu"},[e("NcButton",{staticClass:"unified-search__button",attrs:{"aria-label":t.t("core","Unified search")},on:{click:t.toggleUnifiedSearch},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify",{staticClass:"unified-search__trigger",attrs:{size:22}})]},proxy:!0}])}),t._v(" "),e("UnifiedSearchModal",{class:"unified-search-modal",attrs:{"is-visible":t.showUnifiedSearch},on:{"update:isVisible":t.handleModalVisibilityChange}})],1)}),[],!1,null,"3883344d",null).exports;n.nc=btoa((0,a.IH)());const Be=(0,r.IY)().setApp("unified-search").detectUser().build();o.default.mixin({data:()=>({logger:Be}),methods:{t:s.Iu,n:s.uN}}),new o.default({el:"#unified-search",name:"UnifiedSearchRoot",render:t=>t(Me)})},72343:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".unified-search-custom-date-modal[data-v-99abc4fc]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-99abc4fc]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-99abc4fc]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-99abc4fc]{display:flex;justify-content:end}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue"],names:[],mappings:"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA",sourcesContent:["\n.unified-search-custom-date-modal {\n\tpadding: 10px 20px 10px 20px;\n\n\th1 {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t}\n\n\t&__pickers {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__footer {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t}\n\n}\n"],sourceRoot:""}]);const o=s},53523:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".chip[data-v-5dc4d462]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5dc4d462]{display:flex;align-items:center;padding-right:5px}.chip .icon img[data-v-5dc4d462]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5dc4d462]{margin:0 2px}.chip .close-icon[data-v-5dc4d462]{cursor:pointer}.chip .close-icon[data-v-5dc4d462] :hover{filter:invert(20%)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue"],names:[],mappings:"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,iBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,mCACI,cAAA,CAEA,0CACI,kBAAA",sourcesContent:["\n.chip {\n    display: flex;\n    align-items: center;\n    padding: 2px 4px;\n    border: 1px solid var(--color-primary-element-light);\n    border-radius: 20px;\n    background-color: var(--color-primary-element-light);\n    margin: 2px;\n\n    .icon {\n        display: flex;\n        align-items: center;\n        padding-right: 5px;\n\n        img {\n            width: 20px;\n            padding: 2px;\n            border-radius: 20px;\n            filter: var(--background-invert-if-bright);\n        }\n    }\n\n    .text {\n        margin: 0 2px;\n    }\n\n    .close-icon {\n        cursor: pointer ;\n\n        :hover {\n            filter: invert(20%);\n        }\n    }\n}\n"],sourceRoot:""}]);const o=s},48043:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".result-items__item[data-v-67d9a3cf] a{border-radius:12px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-items__item[data-v-67d9a3cf] a--focused{background-color:var(--color-background-hover)}.result-items__item[data-v-67d9a3cf] a:active,.result-items__item[data-v-67d9a3cf] a:hover,.result-items__item[data-v-67d9a3cf] a:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.result-items__item[data-v-67d9a3cf] a *{cursor:pointer}.result-items__item-icon[data-v-67d9a3cf]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.result-items__item-icon--rounded[data-v-67d9a3cf]{border-radius:22px}.result-items__item-icon--no-preview[data-v-67d9a3cf]{background-size:32px}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]{background-size:cover}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]:not(.result-items__item-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.result-items__item-icon img[data-v-67d9a3cf]{width:100%;height:100%;object-fit:cover;object-position:center}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchResult.vue"],names:[],mappings:"AAQI,uCACQ,kBAAA,CACA,8BAAA,CACA,mDAAA,CAEA,gDACI,8CAAA,CAGJ,wIAGI,8CAAA,CACA,gDAAA,CAGJ,yCACI,cAAA,CAKR,0CACI,eAAA,CACA,UA9BK,CA+BL,WA/BK,CAgCL,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CAEA,mDACI,kBAAA,CAGJ,sDACI,oBAAA,CAGJ,0DACI,qBAAA,CAGJ,iGAEI,cAAA,CACA,eAAA,CACA,oCAAA,CAGJ,8CAEI,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA",sourcesContent:['\n@use "sass:math";\n$clickable-area: 44px;\n$margin: 10px;\n\n.result-items {\n    &__item {\n\n    ::v-deep a {\n            border-radius: 12px;\n            border: 2px solid transparent;\n            border-radius: var(--border-radius-large) !important;\n\n            &--focused {\n                background-color: var(--color-background-hover);\n            }\n\n            &:active,\n            &:hover,\n            &:focus {\n                background-color: var(--color-background-hover);\n                border: 2px solid var(--color-border-maxcontrast);\n            }\n\n            * {\n                cursor: pointer;\n            }\n\n        }\n\n        &-icon {\n            overflow: hidden;\n            width: $clickable-area;\n            height: $clickable-area;\n            border-radius: var(--border-radius);\n            background-repeat: no-repeat;\n            background-position: center center;\n            background-size: 32px;\n\n            &--rounded {\n                border-radius: math.div($clickable-area, 2);\n            }\n\n            &--no-preview {\n                background-size: 32px;\n            }\n\n            &--with-thumbnail {\n                background-size: cover;\n            }\n\n            &--with-thumbnail:not(&--rounded) {\n                // compensate for border\n                max-width: $clickable-area - 2px;\n                max-height: $clickable-area - 2px;\n                border: 1px solid var(--color-border);\n            }\n\n            img {\n                // Make sure to keep ratio\n                width: 100%;\n                height: 100%;\n\n                object-fit: cover;\n                object-position: center;\n            }\n        }\n\n    }\n}\n'],sourceRoot:""}]);const o=s},3955:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".searchable-list__wrapper[data-v-7cf71a2c]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-7cf71a2c]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-7cf71a2c] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-7cf71a2c] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-7cf71a2c]{margin-top:calc(var(--default-grid-baseline)*3)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchableList.vue"],names:[],mappings:"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA",sourcesContent:["\n.searchable-list {\n\t&__wrapper {\n\t\tpadding: calc(var(--default-grid-baseline) * 3);\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 250px;\n\t}\n\n\t&__list {\n\t\twidth: 100%;\n\t\tmax-height: 284px;\n\t\toverflow-y: auto;\n\t\tmargin-top: var(--default-grid-baseline);\n\t\tpadding: var(--default-grid-baseline);\n\n\t\t:deep(.button-vue) {\n\t\t\tborder-radius: var(--border-radius-large) !important;\n\t\t\tspan {\n\t\t\t\tfont-weight: initial;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__empty-content {\n\t\tmargin-top: calc(var(--default-grid-baseline) * 3);\n\t}\n}\n"],sourceRoot:""}]);const o=s},50222:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".header-menu[data-v-3883344d]{display:flex;align-items:center;justify-content:center}.header-menu .unified-search__button[data-v-3883344d]{display:flex;align-items:center;justify-content:center;width:var(--header-height);margin:0;padding:0;cursor:pointer;opacity:.85;background-color:rgba(0,0,0,0);border:none;filter:none !important;color:var(--color-primary-text) !important}.header-menu .unified-search__button[data-v-3883344d]:hover{background-color:rgba(0,0,0,0) !important}.unified-search-modal[data-v-3883344d] .modal-container{height:80%}","",{version:3,sources:["webpack://./core/src/views/UnifiedSearch.vue"],names:[],mappings:"AACA,8BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,0BAAA,CAEA,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CACA,WAAA,CACA,sBAAA,CACA,0CAAA,CAEA,4DACC,yCAAA,CAMF,wDACC,UAAA",sourcesContent:["\n.header-menu {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t.unified-search__button {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--header-height);\n\t\t// height: var(--header-height);\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tcursor: pointer;\n\t\topacity: .85;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tfilter: none !important;\n\t\tcolor: var(--color-primary-text) !important;\n\n\t\t&:hover {\n\t\t\tbackground-color: transparent !important;\n\t\t}\n\t}\n}\n\n.unified-search-modal {\n\t::v-deep .modal-container {\n\t\theight: 80%;\n\t}\n}\n"],sourceRoot:""}]);const o=s},93818:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".unified-search-modal[data-v-91bd0074]{padding:10px 20px 10px 20px;height:60%}.unified-search-modal__heading[data-v-91bd0074]{font-size:16px;font-weight:bolder;line-height:2em;margin-bottom:0}.unified-search-modal__filters[data-v-91bd0074]{display:flex;padding-top:4px;justify-content:left}.unified-search-modal__filters>*[data-v-91bd0074]{margin-right:4px}.unified-search-modal__filters-applied[data-v-91bd0074]{padding-top:4px;display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-91bd0074]{display:flex;align-items:center;height:100%}.unified-search-modal__results[data-v-91bd0074]{padding:10px}.unified-search-modal__results .results .result-title span[data-v-91bd0074]{color:var(--color-primary-element);font-weight:bolder;font-size:16px}.unified-search-modal__results .results .result-footer[data-v-91bd0074]{justify-content:space-between;align-items:center;display:flex}div.v-popper__wrapper ul li[data-v-91bd0074] button.action-button{align-items:center !important}div.v-popper__wrapper ul li[data-v-91bd0074] button.action-button img{width:20px;margin:0 4px;filter:var(--background-invert-if-bright)}","",{version:3,sources:["webpack://./core/src/views/UnifiedSearchModal.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CACA,UAAA,CAEA,gDACC,cAAA,CACA,kBAAA,CACA,eAAA,CACA,eAAA,CAGD,gDACC,YAAA,CACA,eAAA,CACA,oBAAA,CAEA,kDACC,gBAAA,CAMF,wDACC,eAAA,CACA,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,WAAA,CAGD,gDACC,YAAA,CAKE,4EACC,kCAAA,CACA,kBAAA,CACA,cAAA,CAIF,wEACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAUD,kEACC,6BAAA,CAEA,sEACC,UAAA,CACA,YAAA,CACA,yCAAA",sourcesContent:["\n.unified-search-modal {\n\tpadding: 10px 20px 10px 20px;\n\theight: 60%;\n\n\t&__heading {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t\tmargin-bottom: 0;\n\t}\n\n\t&__filters {\n\t\tdisplay: flex;\n\t\tpadding-top: 4px;\n\t\tjustify-content: left;\n\n\t\t>* {\n\t\t\tmargin-right: 4px;\n\n\t\t}\n\n\t}\n\n\t&__filters-applied {\n\t\tpadding-top: 4px;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t}\n\n\t&__no-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 100%;\n\t}\n\n\t&__results {\n\t\tpadding: 10px;\n\n\t\t.results {\n\n\t\t\t.result-title {\n\t\t\t\tspan {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t\tfont-weight: bolder;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.result-footer {\n\t\t\t\tjustify-content: space-between;\n\t\t\t\talign-items: center;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t}\n}\n\ndiv.v-popper__wrapper {\n\tul {\n\t\tli {\n\t\t\t::v-deep button.action-button {\n\t\t\t\talign-items: center !important;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 20px;\n\t\t\t\t\tmargin: 0 4px;\n\t\t\t\t\tfilter: var(--background-invert-if-bright);\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},39896:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTE1LjQgMTYuNkwxMC44IDEybDQuNi00LjZMMTQgNmwtNiA2IDYgNiAxLjQtMS40eiIvPjwvc3ZnPg=="},76899:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTE4LjQgNy40TDE3IDZsLTYgNiA2IDYgMS40LTEuNC00LjYtNC42IDQuNi00LjZtLTYgMEwxMSA2bC02IDYgNiA2IDEuNC0xLjRMNy44IDEybDQuNi00LjZ6Ii8+PC9zdmc+"},88931:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTUuNiA3LjRMNyA2bDYgNi02IDYtMS40LTEuNCA0LjYtNC42LTQuNi00LjZtNiAwTDEzIDZsNiA2LTYgNi0xLjQtMS40IDQuNi00LjYtNC42LTQuNnoiLz48L3N2Zz4="},16556:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTguNiAxNi42bDQuNi00LjYtNC42LTQuNkwxMCA2bDYgNi02IDYtMS40LTEuNHoiLz48L3N2Zz4="}},n={};function r(t){var e=n[t];if(void 0!==e)return e.exports;var a=n[t]={id:t,loaded:!1,exports:{}};return i[t].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}r.m=i,e=[],r.O=(t,i,n,a)=>{if(!i){var s=1/0;for(d=0;d<e.length;d++){i=e[d][0],n=e[d][1],a=e[d][2];for(var o=!0,l=0;l<i.length;l++)(!1&a||s>=a)&&Object.keys(r.O).every((t=>r.O[t](i[l])))?i.splice(l--,1):(o=!1,a<s&&(s=a));if(o){e.splice(d--,1);var c=n();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[i,n,a]},r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.e=()=>Promise.resolve(),r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=9671,(()=>{r.b=document.baseURI||self.location.href;var t={9671:0};r.O.j=e=>0===t[e];var e=(e,i)=>{var n,a,s=i[0],o=i[1],l=i[2],c=0;if(s.some((e=>0!==t[e]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var d=l(r)}for(e&&e(i);c<s.length;c++)a=s[c],r.o(t,a)&&t[a]&&t[a][0](),t[a]=0;return r.O(d)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(e.bind(null,0)),i.push=e.bind(null,i.push.bind(i))})(),r.nc=void 0;var a=r.O(void 0,[7874],(()=>r(67001)));a=r.O(a)})();
-//# sourceMappingURL=core-unified-search.js.map?v=c3c4837a7f2656f51df1
\ No newline at end of file
+(()=>{"use strict";var e,i={48480:(e,i,n)=>{var r=n(17499),a=n(77958),s=n(31352),o=n(20144),l=n(74628),c=n(85989),d=n(73567),u=n(60186);const p={name:"CalendarRangeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var A=n(51900);const h=(0,A.Z)(p,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon calendar-range-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var f=n(65027),m=n(52740);const g={name:"CustomDateRangeModal",components:{NcButton:l.Z,NcModal:m.Z,CalendarRangeIcon:h,NcDateTimePicker:f.Z},props:{isOpen:{type:Boolean,required:!0}},data:()=>({dateFilter:{startFrom:null,endAt:null}}),computed:{isModalOpen:{get(){return this.isOpen},set(t){this.$emit("update:is-open",t)}}},methods:{closeModal(){this.isModalOpen=!1},applyCustomRange(){this.$emit("set:custom-date-range",this.dateFilter),this.closeModal()}}};var C=n(93379),v=n.n(C),b=n(7795),y=n.n(b),_=n(90569),x=n.n(_),Z=n(3565),k=n.n(Z),w=n(19216),I=n.n(w),N=n(44589),S=n.n(N),D=n(72343),F={};F.styleTagTransform=S(),F.setAttributes=k(),F.insert=x().bind(null,"head"),F.domAPI=y(),F.insertStyleElement=I(),v()(D.Z,F),D.Z&&D.Z.locals&&D.Z.locals;const M=(0,A.Z)(g,(function(){var t=this,e=t._self._c;return t.isModalOpen?e("NcModal",{attrs:{id:"unified-search",name:t.t("core","Custom date range"),show:t.isModalOpen,size:"small","clear-view-delay":0,title:t.t("core","Custom date range")},on:{"update:show":function(e){t.isModalOpen=e},close:t.closeModal}},[e("div",{staticClass:"unified-search-custom-date-modal"},[e("h1",[t._v(t._s(t.t("core","Custom date range")))]),t._v(" "),e("div",{staticClass:"unified-search-custom-date-modal__pickers"},[e("NcDateTimePicker",{attrs:{id:"unifiedsearch-custom-date-range-start",label:t.t("core","Pick start date"),type:"date"},model:{value:t.dateFilter.startFrom,callback:function(e){t.$set(t.dateFilter,"startFrom",e)},expression:"dateFilter.startFrom"}}),t._v(" "),e("NcDateTimePicker",{attrs:{id:"unifiedsearch-custom-date-range-end",label:t.t("core","Pick end date"),type:"date"},model:{value:t.dateFilter.endAt,callback:function(e){t.$set(t.dateFilter,"endAt",e)},expression:"dateFilter.endAt"}})],1),t._v(" "),e("div",{staticClass:"unified-search-custom-date-modal__footer"},[e("NcButton",{on:{click:t.applyCustomRange},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CalendarRangeIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,3084610734)},[t._v("\n\t\t\t\t"+t._s(t.t("core","Search in date range"))+"\n\t\t\t\t")])],1)])]):t._e()}),[],!1,null,"99abc4fc",null).exports,B={name:"DotsHorizontalIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},T=(0,A.Z)(B,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon dots-horizontal-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,L={name:"FilterIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},P=(0,A.Z)(L,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon filter-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,H={name:"SearchFilterChip",components:{CloseIcon:n(44893).default},props:{text:{type:String,required:!0},pretext:{type:String,required:!0}},methods:{deleteChip(){this.$emit("delete",this.filter)}}};var R=n(53523),z={};z.styleTagTransform=S(),z.setAttributes=k(),z.insert=x().bind(null,"head"),z.domAPI=y(),z.insertStyleElement=I(),v()(R.Z,z),R.Z&&R.Z.locals&&R.Z.locals;const V=(0,A.Z)(H,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"chip"},[e("span",{staticClass:"icon"},[t._t("icon"),t._v(" "),t.pretext.length?e("span",[t._v(" "+t._s(t.pretext)+" : ")]):t._e()],2),t._v(" "),e("span",{staticClass:"text"},[t._v(t._s(t.text))]),t._v(" "),e("span",{staticClass:"close-icon",on:{click:t.deleteChip}},[e("CloseIcon",{attrs:{size:18}})],1)])}),[],!1,null,"5dc4d462",null).exports,E={name:"ListBoxIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},U=(0,A.Z)(E,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon list-box-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var j=n(25220),O=n(72155),Y=n(18519),Q=n(22175),$=n(6905),G=n(66236),q=n(75944),W=n(45157),J=n(26053),K=n(41989),X=n(99313),tt=n(20090),et=n(96204),it=n(16894),nt=n(94162),rt=n(40874),at=n(27657),st=n(2047),ot=n(68121),lt=n(4867),ct=n(89998),dt=n(23762),ut=n(36065),pt=n(55721),At=n(55349),ht=n(87875),ft=n(1927),mt=n(56956),gt=n(36135),Ct=n(98445),vt=n(20938),bt=n(3904),yt=n(5594),_t=n(96),xt=n(15758),Zt=n(73743),kt=n(59897),wt=n(89241),It=n(96226),Nt=n(97947),St=n(20551),Dt=n(19775),Ft=n(6318),Mt=n(78573),Bt=n(93428),Tt=n(66654),Lt=n(40873),Pt=n(64865),Ht=n(8691),Rt=n(88175),zt=n(20435),Vt=n(6156),Et=n(16972),Ut=n(34246),jt=n(34854),Ot=n(42213),Yt=n(22663),Qt=n(33474),$t=n(26380),Gt=(n(94553),n(93664)),qt=n(79753),Wt=n(86884),Jt=n(49368),Kt=n(69183),Xt=n(74911),te=n(35380),ee=n(56857),ie=n(67912),ne=n(64864),re=n(13888),ae=n(34509),se=n(4409),oe=(n(52299),n(50279),n(93911),n(85302),n(90318)),le=n(17593),ce=(n(79845),n(84722),n(76692),n(40946),n(73045));O.Z,G.Z,q.Z,W.Z,J.Z,K.Z,X.Z,tt.Z,et.Z,it.Z,nt.Z,j.Z,rt.Z,at.Z,st.Z,ot.Z,lt.Z,ct.Z,dt.Z,ut.Z,pt.Z,At.Z,ht.Z,ft.Z,mt.Z,gt.Z,Ct.Z,Qt.NcAutoCompleteResult,vt.N,bt.Z,yt.Z,l.Z,_t.Z,xt.Z,Zt.Z,kt.Z,wt.Z,It.Z,Nt.Z,St.Z,f.Z,Dt.Z,Ft.Z,Mt.Z,Q.Z,Bt.Z,Tt.Z,Lt.N,Pt.Z,Ht.Z,Rt.Z,zt.Z,Yt.N,m.Z,Vt.Z,Et.Z,Ut.Z,jt.Z,Ot.Z,Qt.default,$t.N,Xt.Z,Wt.Z,te.Z,ee.Z,ie.Z,ne.N,se.Z,Jt.Z,re.Z,ae.Z,Symbol.toStringTag,oe.X,le.X,ce.VTooltip,Symbol.toStringTag;var de=n(48950);const ue={name:"SearchableList",components:{NcPopover:Ut.Z,NcTextField:Jt.Z,Magnify:c.default,AlertCircleOutline:de.default,NcAvatar:vt.N,NcEmptyContent:Q.Z,NcButton:l.Z},props:{labelText:{type:String,default:"this is a label"},searchList:{type:Array,required:!0},emptyContentText:{type:String,required:!0}},data:()=>({opened:!1,error:!1,searchTerm:""}),computed:{filteredList(){return this.searchList.filter((t=>!this.searchTerm.toLowerCase().length||["displayName"].some((e=>t[e].toLowerCase().includes(this.searchTerm.toLowerCase())))))}},methods:{clearSearch(){this.searchTerm=""},itemSelected(t){this.$emit("item-selected",t),this.clearSearch(),this.opened=!1},searchTermChanged(t){this.$emit("search-term-change",t)}}};var pe=n(3955),Ae={};Ae.styleTagTransform=S(),Ae.setAttributes=k(),Ae.insert=x().bind(null,"head"),Ae.domAPI=y(),Ae.insertStyleElement=I(),v()(pe.Z,Ae),pe.Z&&pe.Z.locals&&pe.Z.locals;const he=(0,A.Z)(ue,(function(){var t=this,e=t._self._c;return e("NcPopover",{attrs:{shown:t.opened},on:{show:function(e){t.opened=!0},hide:function(e){t.opened=!1}},scopedSlots:t._u([{key:"trigger",fn:function(){return[t._t("trigger")]},proxy:!0}],null,!0)},[t._v(" "),e("div",{staticClass:"searchable-list__wrapper"},[e("NcTextField",{attrs:{value:t.searchTerm,label:t.labelText,"trailing-button-icon":"close","show-trailing-button":""!==t.searchTerm},on:{"update:value":[function(e){t.searchTerm=e},t.searchTermChanged],"trailing-button-click":t.clearSearch}},[e("Magnify",{attrs:{size:20}})],1),t._v(" "),t.filteredList.length>0?e("ul",{staticClass:"searchable-list__list"},t._l(t.filteredList,(function(i){return e("li",{key:i.id,attrs:{title:i.displayName,role:"button"}},[e("NcButton",{attrs:{alignment:"start",type:"tertiary",wide:!0},on:{click:function(e){return t.itemSelected(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("NcAvatar",{attrs:{user:i.user,"show-user-status":!1,"hide-favorite":!1}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t"+t._s(i.displayName)+"\n\t\t\t\t")])],1)})),0):e("div",{staticClass:"searchable-list__empty-content"},[e("NcEmptyContent",{attrs:{name:t.emptyContentText},scopedSlots:t._u([{key:"icon",fn:function(){return[e("AlertCircleOutline")]},proxy:!0}])})],1)],1)])}),[],!1,null,"7cf71a2c",null).exports,fe={name:"SearchResult",components:{NcListItem:Ht.Z},props:{thumbnailUrl:{type:String,default:null},title:{type:String,required:!0},subline:{type:String,default:null},resourceUrl:{type:String,default:null},icon:{type:String,default:""},rounded:{type:Boolean,default:!1},query:{type:String,default:""},focused:{type:Boolean,default:!1}},data:()=>({thumbnailHasError:!1}),watch:{thumbnailUrl(){this.thumbnailHasError=!1}},methods:{isValidIconOrPreviewUrl:t=>/^https?:\/\//.test(t)||t.startsWith("/"),thumbnailErrorHandler(){this.thumbnailHasError=!0}}};var me=n(48043),ge={};ge.styleTagTransform=S(),ge.setAttributes=k(),ge.insert=x().bind(null,"head"),ge.domAPI=y(),ge.insertStyleElement=I(),v()(me.Z,ge),me.Z&&me.Z.locals&&me.Z.locals;const Ce=(0,A.Z)(fe,(function(){var t=this,e=t._self._c;return e("NcListItem",{staticClass:"result-items__item",attrs:{name:t.title,bold:!1,href:t.resourceUrl,target:"_self"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("div",{staticClass:"result-items__item-icon",class:{"result-items__item-icon--rounded":t.rounded,"result-items__item-icon--no-preview":!t.isValidIconOrPreviewUrl(t.thumbnailUrl),"result-items__item-icon--with-thumbnail":t.isValidIconOrPreviewUrl(t.thumbnailUrl),[t.icon]:!t.isValidIconOrPreviewUrl(t.icon)},style:{backgroundImage:t.isValidIconOrPreviewUrl(t.icon)?`url(${t.icon})`:""},attrs:{"aria-hidden":"true"}},[t.isValidIconOrPreviewUrl(t.thumbnailUrl)&&!t.thumbnailHasError?e("img",{attrs:{src:t.thumbnailUrl},on:{error:t.thumbnailErrorHandler}}):t._e()])]},proxy:!0},{key:"subname",fn:function(){return[t._v("\n\t\t"+t._s(t.subline)+"\n\t")]},proxy:!0}])})}),[],!1,null,"67d9a3cf",null).exports;var ve=n(20296),be=n.n(ve),ye=n(25108);async function _e(t){let{searchTerm:e}=t;const{data:{contacts:i}}=await Gt.Z.post((0,qt.generateUrl)("/contactsmenu/contacts"),{filter:e});if(!e){let t=(0,a.ts)();return t={id:t.uid,fullName:t.displayName,emailAddresses:[]},i.unshift(t),i}return i}var xe=n(25108);const Ze={name:"UnifiedSearchModal",components:{ArrowRight:d.default,AccountGroup:u.Z,CalendarRangeIcon:h,CustomDateRangeModal:M,DotsHorizontalIcon:T,FilterIcon:P,FilterChip:V,ListBox:U,NcActions:j.Z,NcActionButton:O.Z,NcAvatar:Y.Z,NcButton:l.Z,NcEmptyContent:Q.Z,NcModal:m.Z,NcInputField:$.Z,MagnifyIcon:c.default,SearchableList:he,SearchResult:Ce},props:{isVisible:{type:Boolean,required:!0}},data(){return{providers:[],providerActionMenuIsOpen:!1,dateActionMenuIsOpen:!1,providerResultLimit:5,dateFilter:{id:"date",type:"date",text:"",startFrom:null,endAt:null},personFilter:{id:"person",type:"person",name:""},dateFilterIsApplied:!1,personFilterIsApplied:!1,filteredProviders:[],searching:!1,searchQuery:"",placessearchTerm:"",dateTimeFilter:null,filters:[],results:[],contacts:[],debouncedFind:be()(this.find,300),debouncedFilterContacts:be()(this.filterContacts,300),showDateRangeModal:!1,internalIsVisible:!1}},computed:{userContacts:{get(){return this.contacts}},noContentInfo:{get(){const e=0===this.searchQuery.length,i=this.searchQuery.length>0&&0===this.results.length;return{show:e||i,text:this.searching&&i?t("core","Searching …"):e?t("core","Start typing to search"):t("core","No matching results"),icon:c.default}}}},watch:{isVisible(t){this.internalIsVisible=t},internalIsVisible(t){this.$emit("update:isVisible",t),this.$nextTick((()=>{t&&this.focusInput()}))}},mounted(){(async function(){try{const{data:t}=await Gt.Z.get((0,qt.generateOcsUrl)("search/providers"),{params:{from:window.location.pathname.replace("/index.php","")+window.location.search}});if("ocs"in t&&"data"in t.ocs&&Array.isArray(t.ocs.data)&&t.ocs.data.length>0)return t.ocs.data}catch(t){ye.error(t)}return[]})().then((t=>{this.providers=t,xe.debug("Search providers",this.providers)})),_e({searchTerm:""}).then((t=>{this.contacts=this.mapContacts(t),xe.debug("Contacts",this.contacts)}))},methods:{find(t){if(this.searching=!0,0===t.length)return this.results=[],void(this.searching=!1);(0,Kt.j8)("nextcloud:unified-search.search",{query:t});const e=[],i=this.filteredProviders.length>0?this.filteredProviders:this.providers,n=(i,n)=>{const r={type:i.id,query:t,cursor:null};if(n.dateFilterIsApplied){if(!i.filters.since||!i.filters.until)return;r.since=this.dateFilter.startFrom,r.until=this.dateFilter.endAt}if(n.personFilterIsApplied){if(!i.filters.person)return;r.person=this.personFilter.user}this.providerResultLimit>5&&(r.limit=this.providerResultLimit),(0,function(t){let{type:e,query:i,cursor:n,since:r,until:a,limit:s,person:o}=t;const l=Gt.Z.CancelToken.source();return{request:async()=>Gt.Z.get((0,qt.generateOcsUrl)("search/providers/{type}/search",{type:e}),{cancelToken:l.token,params:{term:i,cursor:n,since:r,until:a,limit:s,person:o,from:window.location.pathname.replace("/index.php","")+window.location.search}}),cancel:l.cancel}}(r).request)().then((t=>{e.push({id:i.id,provider:i.name,inAppSearch:i.inAppSearch,results:t.data.ocs.data.entries}),xe.debug("New results",e),xe.debug("Unified search results:",this.results),this.updateResults(e),this.searching=!1}))};i.forEach((t=>{const e=this.dateFilterIsApplied,i=this.personFilterIsApplied;n(t,{dateFilterIsApplied:e,personFilterIsApplied:i})}))},updateResults(t){let e=[...this.results];this.filters.length>0&&(e=e.filter((t=>this.filters.some((e=>e.id===t.id))))),t.forEach((t=>{const i=e.findIndex((e=>e.id===t.id));-1!==i?0===t.results.length?e.splice(i,1):e.splice(i,1,t):t.results.length>0&&e.push(t)}));const i=e.slice(0);i.sort(((t,e)=>{const i=this.providers.find((e=>e.id===t.id)),n=this.providers.find((t=>t.id===e.id));return(i?i.order:0)-(n?n.order:0)})),this.results=i},mapContacts:t=>t.map((t=>({displayName:t.fullName,isNoUser:!1,subname:t.emailAddresses[0]?t.emailAddresses[0]:"",icon:"",user:t.id}))),filterContacts(t){_e({searchTerm:t}).then((e=>{this.contacts=this.mapContacts(e),xe.debug(`Contacts filtered by ${t}`,this.contacts)}))},applyPersonFilter(t){this.personFilterIsApplied=!0;const e=this.filters.findIndex((e=>e.id===t.id));-1===e?(this.personFilter.id=t.id,this.personFilter.user=t.user,this.personFilter.name=t.displayName,this.filters.push(this.personFilter)):(this.filters[e].id=t.id,this.filters[e].user=t.user,this.filters[e].name=t.displayName),this.debouncedFind(this.searchQuery),xe.debug("Person filter applied",t)},loadMoreResultsForProvider(t){this.providerResultLimit+=5,this.filters=this.filters.filter((t=>"provider"!==t.type));const e=this.providers.find((e=>e.id===t));this.addProviderFilter(e,!0)},addProviderFilter(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];t.id&&(this.providerResultLimit=e?this.providerResultLimit:5,this.providerActionMenuIsOpen=!1,this.filteredProviders.find((e=>e.id===t.id))||this.filteredProviders.push({id:t.id,name:t.name,icon:t.icon,type:"provider",filters:t.filters}),this.filters=this.syncProviderFilters(this.filters,this.filteredProviders),xe.debug("Search filters (newly added)",this.filters),this.debouncedFind(this.searchQuery))},removeFilter(t){if("provider"===t.type){for(let e=0;e<this.filteredProviders.length;e++)if(this.filteredProviders[e].id===t.id){this.filteredProviders.splice(e,1);break}this.filters=this.syncProviderFilters(this.filters,this.filteredProviders),xe.debug("Search filters (recently removed)",this.filters)}else for(let e=0;e<this.filters.length;e++)if("date"===this.filters[e].id||this.filters[e].id===t.id){this.dateFilterIsApplied=!1,this.filters.splice(e,1),"person"===t.type&&(this.personFilterIsApplied=!1);break}this.debouncedFind(this.searchQuery)},syncProviderFilters(t,e){const i=t.slice();return i.forEach(((t,n)=>{const r=t.id;"provider"===t.type&&(e.some((t=>t.id===r))||i.splice(n,1))})),e.forEach((t=>{const e=t.id;"provider"===t.type&&(i.some((t=>t.id===e))||i.push(t))})),i},updateDateFilter(){const t=this.filters.findIndex((t=>"date"===t.id));-1!==t?this.filters[t]=this.dateFilter:this.filters.push(this.dateFilter),this.dateFilterIsApplied=!0,this.debouncedFind(this.searchQuery)},applyQuickDateRange(e){this.dateActionMenuIsOpen=!1;const i=new Date;let n,r;switch(e){case"today":n=new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0),r=new Date(i.getFullYear(),i.getMonth(),i.getDate(),23,59,59,999),this.dateFilter.text=t("core","Today");break;case"7days":n=new Date(i.getFullYear(),i.getMonth(),i.getDate()-6,0,0,0,0),this.dateFilter.text=t("core","Last 7 days");break;case"30days":n=new Date(i.getFullYear(),i.getMonth(),i.getDate()-29,0,0,0,0),this.dateFilter.text=t("core","Last 30 days");break;case"thisyear":n=new Date(i.getFullYear(),0,1,0,0,0,0),r=new Date(i.getFullYear(),11,31,23,59,59,999),this.dateFilter.text=t("core","This year");break;case"lastyear":n=new Date(i.getFullYear()-1,0,1,0,0,0,0),r=new Date(i.getFullYear()-1,11,31,23,59,59,999),this.dateFilter.text=t("core","Last year");break;case"custom":return void(this.showDateRangeModal=!0);default:return}this.dateFilter.startFrom=n,this.dateFilter.endAt=r,this.updateDateFilter()},setCustomDateRange(e){xe.debug("Custom date range",e),this.dateFilter.startFrom=e.startFrom,this.dateFilter.endAt=e.endAt,this.dateFilter.text=t("core",`Between ${this.dateFilter.startFrom.toLocaleDateString()} and ${this.dateFilter.endAt.toLocaleDateString()}`),this.updateDateFilter()},focusInput(){this.$refs.searchInput.$el.children[0].children[0].focus()},closeModal(){this.internalIsVisible=!1,this.searchQuery=""},supportFiltering(){const t=window.location.pathname.replace("/index.php","");return["/settings/users","/apps/files","/apps/deck"].some((e=>t.includes(e)))}}};var ke=n(95834),we={};we.styleTagTransform=S(),we.setAttributes=k(),we.insert=x().bind(null,"head"),we.domAPI=y(),we.insertStyleElement=I(),v()(ke.Z,we),ke.Z&&ke.Z.locals&&ke.Z.locals;const Ie=(0,A.Z)(Ze,(function(){var t=this,e=t._self._c;return e("NcModal",{ref:"unifiedSearchModal",attrs:{id:"unified-search",show:t.internalIsVisible,"clear-view-delay":0},on:{"update:show":function(e){t.internalIsVisible=e},close:t.closeModal}},[e("CustomDateRangeModal",{staticClass:"unified-search__date-range",attrs:{"is-open":t.showDateRangeModal},on:{"set:custom-date-range":t.setCustomDateRange,"update:is-open":function(e){t.showDateRangeModal=e}}}),t._v(" "),e("div",{ref:"unifiedSearch",staticClass:"unified-search-modal"},[e("h2",[t._v(t._s(t.t("core","Unified search")))]),t._v(" "),e("NcInputField",{ref:"searchInput",attrs:{value:t.searchQuery,type:"text",label:t.t("core","Search apps, files, tags, messages")+"..."},on:{"update:value":[function(e){t.searchQuery=e},t.debouncedFind]}}),t._v(" "),e("div",{staticClass:"unified-search-modal__filters"},[e("NcActions",{attrs:{"menu-name":t.t("core","Apps and Settings"),open:t.providerActionMenuIsOpen},on:{"update:open":function(e){t.providerActionMenuIsOpen=e}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ListBox",{attrs:{size:20}})]},proxy:!0}])},[t._v(" "),t._l(t.providers,(function(i){return e("NcActionButton",{key:i.id,on:{click:function(e){return t.addProviderFilter(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("img",{attrs:{src:i.icon}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t"+t._s(t.t("core",i.name))+"\n\t\t\t\t")])}))],2),t._v(" "),e("NcActions",{attrs:{"menu-name":t.t("core","Date"),open:t.dateActionMenuIsOpen},on:{"update:open":function(e){t.dateActionMenuIsOpen=e}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CalendarRangeIcon",{attrs:{size:20}})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("today")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Today"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("7days")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last 7 days"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("30days")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last 30 days"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("thisyear")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","This year"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("lastyear")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Last year"))+"\n\t\t\t\t")]),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){return t.applyQuickDateRange("custom")}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Custom date range"))+"\n\t\t\t\t")])],1),t._v(" "),e("SearchableList",{attrs:{"label-text":t.t("core","Search people"),"search-list":t.userContacts,"empty-content-text":t.t("core","Not found")},on:{"search-term-change":t.debouncedFilterContacts,"item-selected":t.applyPersonFilter},scopedSlots:t._u([{key:"trigger",fn:function(){return[e("NcButton",{scopedSlots:t._u([{key:"icon",fn:function(){return[e("AccountGroup",{attrs:{size:20}})]},proxy:!0}])},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","People"))+"\n\t\t\t\t\t")])]},proxy:!0}])})],1),t._v(" "),e("div",{staticClass:"unified-search-modal__filters-applied"},t._l(t.filters,(function(i){return e("FilterChip",{key:i.id,attrs:{text:i.name??i.text,pretext:""},on:{delete:function(e){return t.removeFilter(i)}},scopedSlots:t._u([{key:"icon",fn:function(){return["person"===i.type?e("NcAvatar",{attrs:{user:i.user,size:24,"disable-menu":!0,"show-user-status":!1,"hide-favorite":!1}}):"date"===i.type?e("CalendarRangeIcon"):e("img",{attrs:{src:i.icon,alt:""}})]},proxy:!0}],null,!0)})})),1),t._v(" "),t.noContentInfo.show?e("div",{staticClass:"unified-search-modal__no-content"},[e("NcEmptyContent",{attrs:{name:t.noContentInfo.text},scopedSlots:t._u([{key:"icon",fn:function(){return[e(t.noContentInfo.icon,{tag:"component"})]},proxy:!0}],null,!1,604901229)})],1):t._e(),t._v(" "),t._l(t.results,(function(i){return e("div",{key:i.id,staticClass:"unified-search-modal__results"},[e("div",{staticClass:"results"},[e("div",{staticClass:"result-title"},[e("span",[t._v(t._s(i.provider))])]),t._v(" "),e("ul",{staticClass:"result-items"},t._l(i.results,(function(i,n){return e("SearchResult",t._b({key:n},"SearchResult",i,!1))})),1),t._v(" "),e("div",{staticClass:"result-footer"},[e("NcButton",{attrs:{type:"tertiary-no-background"},on:{click:function(e){return t.loadMoreResultsForProvider(i.id)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Load more results"))+"\n\t\t\t\t\t\t")]),t._v(" "),i.inAppSearch?e("NcButton",{attrs:{alignment:"end-reverse",type:"tertiary-no-background"},scopedSlots:t._u([{key:"icon",fn:function(){return[e("ArrowRight",{attrs:{size:20}})]},proxy:!0}],null,!0)},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Search in"))+" "+t._s(i.provider)+"\n\t\t\t\t\t\t")]):t._e()],1)])])})),t._v(" "),t.supportFiltering()?e("div",{staticClass:"unified-search-modal__results"},[e("NcButton",{on:{click:t.closeModal},scopedSlots:t._u([{key:"icon",fn:function(){return[e("FilterIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2021673347)},[t._v("\n\t\t\t\t"+t._s(t.t("core","Filter in current view"))+"\n\t\t\t\t")])],1):t._e()],2)],1)}),[],!1,null,"15aef23c",null).exports;var Ne=n(25108);const Se={name:"UnifiedSearch",components:{NcButton:l.Z,Magnify:c.default,UnifiedSearchModal:Ie},data:()=>({showUnifiedSearch:!1}),mounted(){Ne.debug("Unified search initialized!")},methods:{toggleUnifiedSearch(){this.showUnifiedSearch=!this.showUnifiedSearch},handleModalVisibilityChange(t){this.showUnifiedSearch=t}}};var De=n(50222),Fe={};Fe.styleTagTransform=S(),Fe.setAttributes=k(),Fe.insert=x().bind(null,"head"),Fe.domAPI=y(),Fe.insertStyleElement=I(),v()(De.Z,Fe),De.Z&&De.Z.locals&&De.Z.locals;const Me=(0,A.Z)(Se,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"header-menu"},[e("NcButton",{staticClass:"unified-search__button",attrs:{"aria-label":t.t("core","Unified search")},on:{click:t.toggleUnifiedSearch},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Magnify",{staticClass:"unified-search__trigger",attrs:{size:22}})]},proxy:!0}])}),t._v(" "),e("UnifiedSearchModal",{class:"unified-search-modal",attrs:{"is-visible":t.showUnifiedSearch},on:{"update:isVisible":t.handleModalVisibilityChange}})],1)}),[],!1,null,"3883344d",null).exports;n.nc=btoa((0,a.IH)());const Be=(0,r.IY)().setApp("unified-search").detectUser().build();o.default.mixin({data:()=>({logger:Be}),methods:{t:s.Iu,n:s.uN}}),new o.default({el:"#unified-search",name:"UnifiedSearchRoot",render:t=>t(Me)})},72343:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".unified-search-custom-date-modal[data-v-99abc4fc]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-99abc4fc]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-99abc4fc]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-99abc4fc]{display:flex;justify-content:end}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue"],names:[],mappings:"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA",sourcesContent:["\n.unified-search-custom-date-modal {\n\tpadding: 10px 20px 10px 20px;\n\n\th1 {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t}\n\n\t&__pickers {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__footer {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t}\n\n}\n"],sourceRoot:""}]);const o=s},53523:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".chip[data-v-5dc4d462]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5dc4d462]{display:flex;align-items:center;padding-right:5px}.chip .icon img[data-v-5dc4d462]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5dc4d462]{margin:0 2px}.chip .close-icon[data-v-5dc4d462]{cursor:pointer}.chip .close-icon[data-v-5dc4d462] :hover{filter:invert(20%)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue"],names:[],mappings:"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,iBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,mCACI,cAAA,CAEA,0CACI,kBAAA",sourcesContent:["\n.chip {\n    display: flex;\n    align-items: center;\n    padding: 2px 4px;\n    border: 1px solid var(--color-primary-element-light);\n    border-radius: 20px;\n    background-color: var(--color-primary-element-light);\n    margin: 2px;\n\n    .icon {\n        display: flex;\n        align-items: center;\n        padding-right: 5px;\n\n        img {\n            width: 20px;\n            padding: 2px;\n            border-radius: 20px;\n            filter: var(--background-invert-if-bright);\n        }\n    }\n\n    .text {\n        margin: 0 2px;\n    }\n\n    .close-icon {\n        cursor: pointer ;\n\n        :hover {\n            filter: invert(20%);\n        }\n    }\n}\n"],sourceRoot:""}]);const o=s},48043:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".result-items__item[data-v-67d9a3cf] a{border-radius:12px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-items__item[data-v-67d9a3cf] a--focused{background-color:var(--color-background-hover)}.result-items__item[data-v-67d9a3cf] a:active,.result-items__item[data-v-67d9a3cf] a:hover,.result-items__item[data-v-67d9a3cf] a:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.result-items__item[data-v-67d9a3cf] a *{cursor:pointer}.result-items__item-icon[data-v-67d9a3cf]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.result-items__item-icon--rounded[data-v-67d9a3cf]{border-radius:22px}.result-items__item-icon--no-preview[data-v-67d9a3cf]{background-size:32px}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]{background-size:cover}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]:not(.result-items__item-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.result-items__item-icon img[data-v-67d9a3cf]{width:100%;height:100%;object-fit:cover;object-position:center}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchResult.vue"],names:[],mappings:"AAQI,uCACQ,kBAAA,CACA,8BAAA,CACA,mDAAA,CAEA,gDACI,8CAAA,CAGJ,wIAGI,8CAAA,CACA,gDAAA,CAGJ,yCACI,cAAA,CAKR,0CACI,eAAA,CACA,UA9BK,CA+BL,WA/BK,CAgCL,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CAEA,mDACI,kBAAA,CAGJ,sDACI,oBAAA,CAGJ,0DACI,qBAAA,CAGJ,iGAEI,cAAA,CACA,eAAA,CACA,oCAAA,CAGJ,8CAEI,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA",sourcesContent:['\n@use "sass:math";\n$clickable-area: 44px;\n$margin: 10px;\n\n.result-items {\n    &__item {\n\n    ::v-deep a {\n            border-radius: 12px;\n            border: 2px solid transparent;\n            border-radius: var(--border-radius-large) !important;\n\n            &--focused {\n                background-color: var(--color-background-hover);\n            }\n\n            &:active,\n            &:hover,\n            &:focus {\n                background-color: var(--color-background-hover);\n                border: 2px solid var(--color-border-maxcontrast);\n            }\n\n            * {\n                cursor: pointer;\n            }\n\n        }\n\n        &-icon {\n            overflow: hidden;\n            width: $clickable-area;\n            height: $clickable-area;\n            border-radius: var(--border-radius);\n            background-repeat: no-repeat;\n            background-position: center center;\n            background-size: 32px;\n\n            &--rounded {\n                border-radius: math.div($clickable-area, 2);\n            }\n\n            &--no-preview {\n                background-size: 32px;\n            }\n\n            &--with-thumbnail {\n                background-size: cover;\n            }\n\n            &--with-thumbnail:not(&--rounded) {\n                // compensate for border\n                max-width: $clickable-area - 2px;\n                max-height: $clickable-area - 2px;\n                border: 1px solid var(--color-border);\n            }\n\n            img {\n                // Make sure to keep ratio\n                width: 100%;\n                height: 100%;\n\n                object-fit: cover;\n                object-position: center;\n            }\n        }\n\n    }\n}\n'],sourceRoot:""}]);const o=s},3955:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".searchable-list__wrapper[data-v-7cf71a2c]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-7cf71a2c]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-7cf71a2c] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-7cf71a2c] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-7cf71a2c]{margin-top:calc(var(--default-grid-baseline)*3)}","",{version:3,sources:["webpack://./core/src/components/UnifiedSearch/SearchableList.vue"],names:[],mappings:"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA",sourcesContent:["\n.searchable-list {\n\t&__wrapper {\n\t\tpadding: calc(var(--default-grid-baseline) * 3);\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 250px;\n\t}\n\n\t&__list {\n\t\twidth: 100%;\n\t\tmax-height: 284px;\n\t\toverflow-y: auto;\n\t\tmargin-top: var(--default-grid-baseline);\n\t\tpadding: var(--default-grid-baseline);\n\n\t\t:deep(.button-vue) {\n\t\t\tborder-radius: var(--border-radius-large) !important;\n\t\t\tspan {\n\t\t\t\tfont-weight: initial;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__empty-content {\n\t\tmargin-top: calc(var(--default-grid-baseline) * 3);\n\t}\n}\n"],sourceRoot:""}]);const o=s},50222:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".header-menu[data-v-3883344d]{display:flex;align-items:center;justify-content:center}.header-menu .unified-search__button[data-v-3883344d]{display:flex;align-items:center;justify-content:center;width:var(--header-height);margin:0;padding:0;cursor:pointer;opacity:.85;background-color:rgba(0,0,0,0);border:none;filter:none !important;color:var(--color-primary-text) !important}.header-menu .unified-search__button[data-v-3883344d]:hover{background-color:rgba(0,0,0,0) !important}.unified-search-modal[data-v-3883344d] .modal-container{height:80%}","",{version:3,sources:["webpack://./core/src/views/UnifiedSearch.vue"],names:[],mappings:"AACA,8BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,0BAAA,CAEA,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CACA,WAAA,CACA,sBAAA,CACA,0CAAA,CAEA,4DACC,yCAAA,CAMF,wDACC,UAAA",sourcesContent:["\n.header-menu {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t.unified-search__button {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--header-height);\n\t\t// height: var(--header-height);\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tcursor: pointer;\n\t\topacity: .85;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tfilter: none !important;\n\t\tcolor: var(--color-primary-text) !important;\n\n\t\t&:hover {\n\t\t\tbackground-color: transparent !important;\n\t\t}\n\t}\n}\n\n.unified-search-modal {\n\t::v-deep .modal-container {\n\t\theight: 80%;\n\t}\n}\n"],sourceRoot:""}]);const o=s},95834:(t,e,i)=>{i.d(e,{Z:()=>o});var n=i(87537),r=i.n(n),a=i(23645),s=i.n(a)()(r());s.push([t.id,".unified-search-modal[data-v-15aef23c]{padding:10px 20px 10px 20px;height:60%}.unified-search-modal__heading[data-v-15aef23c]{font-size:16px;font-weight:bolder;line-height:2em;margin-bottom:0}.unified-search-modal__filters[data-v-15aef23c]{display:flex;padding-top:4px;justify-content:left}.unified-search-modal__filters>*[data-v-15aef23c]{margin-right:4px}.unified-search-modal__filters-applied[data-v-15aef23c]{padding-top:4px;display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-15aef23c]{display:flex;align-items:center;height:100%}.unified-search-modal__results[data-v-15aef23c]{padding:10px}.unified-search-modal__results .results .result-title span[data-v-15aef23c]{color:var(--color-primary-element);font-weight:bolder;font-size:16px}.unified-search-modal__results .results .result-footer[data-v-15aef23c]{justify-content:space-between;align-items:center;display:flex}div.v-popper__wrapper ul li[data-v-15aef23c] button.action-button{align-items:center !important}div.v-popper__wrapper ul li[data-v-15aef23c] button.action-button img{width:20px;margin:0 4px;filter:var(--background-invert-if-bright)}","",{version:3,sources:["webpack://./core/src/views/UnifiedSearchModal.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CACA,UAAA,CAEA,gDACC,cAAA,CACA,kBAAA,CACA,eAAA,CACA,eAAA,CAGD,gDACC,YAAA,CACA,eAAA,CACA,oBAAA,CAEA,kDACC,gBAAA,CAMF,wDACC,eAAA,CACA,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,WAAA,CAGD,gDACC,YAAA,CAKE,4EACC,kCAAA,CACA,kBAAA,CACA,cAAA,CAIF,wEACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAUD,kEACC,6BAAA,CAEA,sEACC,UAAA,CACA,YAAA,CACA,yCAAA",sourcesContent:["\n.unified-search-modal {\n\tpadding: 10px 20px 10px 20px;\n\theight: 60%;\n\n\t&__heading {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t\tmargin-bottom: 0;\n\t}\n\n\t&__filters {\n\t\tdisplay: flex;\n\t\tpadding-top: 4px;\n\t\tjustify-content: left;\n\n\t\t>* {\n\t\t\tmargin-right: 4px;\n\n\t\t}\n\n\t}\n\n\t&__filters-applied {\n\t\tpadding-top: 4px;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t}\n\n\t&__no-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 100%;\n\t}\n\n\t&__results {\n\t\tpadding: 10px;\n\n\t\t.results {\n\n\t\t\t.result-title {\n\t\t\t\tspan {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t\tfont-weight: bolder;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.result-footer {\n\t\t\t\tjustify-content: space-between;\n\t\t\t\talign-items: center;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t}\n}\n\ndiv.v-popper__wrapper {\n\tul {\n\t\tli {\n\t\t\t::v-deep button.action-button {\n\t\t\t\talign-items: center !important;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 20px;\n\t\t\t\t\tmargin: 0 4px;\n\t\t\t\t\tfilter: var(--background-invert-if-bright);\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},39896:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTE1LjQgMTYuNkwxMC44IDEybDQuNi00LjZMMTQgNmwtNiA2IDYgNiAxLjQtMS40eiIvPjwvc3ZnPg=="},76899:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTE4LjQgNy40TDE3IDZsLTYgNiA2IDYgMS40LTEuNC00LjYtNC42IDQuNi00LjZtLTYgMEwxMSA2bC02IDYgNiA2IDEuNC0xLjRMNy44IDEybDQuNi00LjZ6Ii8+PC9zdmc+"},88931:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTUuNiA3LjRMNyA2bDYgNi02IDYtMS40LTEuNCA0LjYtNC42LTQuNi00LjZtNiAwTDEzIDZsNiA2LTYgNi0xLjQtMS40IDQuNi00LjYtNC42LTQuNnoiLz48L3N2Zz4="},16556:t=>{t.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0iIzIyMiI+PHBhdGggZD0iTTguNiAxNi42bDQuNi00LjYtNC42LTQuNkwxMCA2bDYgNi02IDYtMS40LTEuNHoiLz48L3N2Zz4="}},n={};function r(t){var e=n[t];if(void 0!==e)return e.exports;var a=n[t]={id:t,loaded:!1,exports:{}};return i[t].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}r.m=i,e=[],r.O=(t,i,n,a)=>{if(!i){var s=1/0;for(d=0;d<e.length;d++){i=e[d][0],n=e[d][1],a=e[d][2];for(var o=!0,l=0;l<i.length;l++)(!1&a||s>=a)&&Object.keys(r.O).every((t=>r.O[t](i[l])))?i.splice(l--,1):(o=!1,a<s&&(s=a));if(o){e.splice(d--,1);var c=n();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[i,n,a]},r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.e=()=>Promise.resolve(),r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.j=9671,(()=>{r.b=document.baseURI||self.location.href;var t={9671:0};r.O.j=e=>0===t[e];var e=(e,i)=>{var n,a,s=i[0],o=i[1],l=i[2],c=0;if(s.some((e=>0!==t[e]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var d=l(r)}for(e&&e(i);c<s.length;c++)a=s[c],r.o(t,a)&&t[a]&&t[a][0](),t[a]=0;return r.O(d)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(e.bind(null,0)),i.push=e.bind(null,i.push.bind(i))})(),r.nc=void 0;var a=r.O(void 0,[7874],(()=>r(48480)));a=r.O(a)})();
+//# sourceMappingURL=core-unified-search.js.map?v=82475d7b0e845b834176
\ No newline at end of file
index 44b2f0d5233b45ccc43204575e2b49746d973700..ddb51ec8d4b1a48a36a3b730ad2e1de0b2879f82 100644 (file)
@@ -1 +1 @@
-{"version":3,"file":"core-unified-search.js?v=c3c4837a7f2656f51df1","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarRange.vue?f09e","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=template&id=eff4db96","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?b7cc","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?7b1c","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?92fe","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/DotsHorizontal.vue?c5a1","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=6950b9a6","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Filter.vue?3711","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue?vue&type=template&id=5ca95164","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?3702","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?fc0d","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?2352","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ListBox.vue?d9c9","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue?vue&type=template&id=01774f2d","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?58c9","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?4344","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?a21f","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?5240","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?32d3","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?e4b5","webpack:///nextcloud/core/src/services/UnifiedSearchService.js","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?578c","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?7f41","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?60fa","webpack:///nextcloud/core/src/views/UnifiedSearch.vue","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?c7c4","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?1990","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?adc0","webpack:///nextcloud/core/src/unified-search.js","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue?vue&type=style&index=0&id=91bd0074&prod&lang=scss&scoped=true","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon calendar-range-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"CalendarRangeIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarRange.vue?vue&type=template&id=eff4db96\"\nimport script from \"./CalendarRange.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarRange.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon calendar-range-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.isModalOpen)?_c('NcModal',{attrs:{\"id\":\"unified-search\",\"name\":_vm.t('core', 'Custom date range'),\"show\":_vm.isModalOpen,\"size\":'small',\"clear-view-delay\":0,\"title\":_vm.t('core', 'Custom date range')},on:{\"update:show\":function($event){_vm.isModalOpen=$event},\"close\":_vm.closeModal}},[_c('div',{staticClass:\"unified-search-custom-date-modal\"},[_c('h1',[_vm._v(_vm._s(_vm.t('core', 'Custom date range')))]),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__pickers\"},[_c('NcDateTimePicker',{attrs:{\"id\":'unifiedsearch-custom-date-range-start',\"label\":_vm.t('core', 'Pick start date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.startFrom),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"startFrom\", $$v)},expression:\"dateFilter.startFrom\"}}),_vm._v(\" \"),_c('NcDateTimePicker',{attrs:{\"id\":'unifiedsearch-custom-date-range-end',\"label\":_vm.t('core', 'Pick end date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.endAt),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"endAt\", $$v)},expression:\"dateFilter.endAt\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__footer\"},[_c('NcButton',{on:{\"click\":_vm.applyCustomRange},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CalendarRangeIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,3084610734)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in date range'))+\"\\n\\t\\t\\t\\t\")])],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<NcModal v-if=\"isModalOpen\"\n\t\tid=\"unified-search\"\n\t\t:name=\"t('core', 'Custom date range')\"\n\t\t:show.sync=\"isModalOpen\"\n\t\t:size=\"'small'\"\n\t\t:clear-view-delay=\"0\"\n\t\t:title=\"t('core', 'Custom date range')\"\n\t\t@close=\"closeModal\">\n\t\t<!-- Custom date range -->\n\t\t<div class=\"unified-search-custom-date-modal\">\n\t\t\t<h1>{{ t('core', 'Custom date range') }}</h1>\n\t\t\t<div class=\"unified-search-custom-date-modal__pickers\">\n\t\t\t\t<NcDateTimePicker :id=\"'unifiedsearch-custom-date-range-start'\"\n\t\t\t\t\tv-model=\"dateFilter.startFrom\"\n\t\t\t\t\t:label=\"t('core', 'Pick start date')\"\n\t\t\t\t\ttype=\"date\" />\n\t\t\t\t<NcDateTimePicker :id=\"'unifiedsearch-custom-date-range-end'\"\n\t\t\t\t\tv-model=\"dateFilter.endAt\"\n\t\t\t\t\t:label=\"t('core', 'Pick end date')\"\n\t\t\t\t\ttype=\"date\" />\n\t\t\t</div>\n\t\t\t<div class=\"unified-search-custom-date-modal__footer\">\n\t\t\t\t<NcButton @click=\"applyCustomRange\">\n\t\t\t\t\t{{ t('core', 'Search in date range') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CalendarRangeIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcDateTimePicker from '@nextcloud/vue/dist/Components/NcDateTimePickerNative.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport CalendarRangeIcon from 'vue-material-design-icons/CalendarRange.vue'\n\nexport default {\n\tname: 'CustomDateRangeModal',\n\tcomponents: {\n\t\tNcButton,\n\t\tNcModal,\n\t\tCalendarRangeIcon,\n\t\tNcDateTimePicker,\n\t},\n\tprops: {\n\t\tisOpen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tdateFilter: { startFrom: null, endAt: null },\n\t\t}\n\t},\n\tcomputed: {\n\t\tisModalOpen: {\n\t\t\tget() {\n\t\t\t\treturn this.isOpen\n\t\t\t},\n\t\t\tset(value) {\n\t\t\t\tthis.$emit('update:is-open', value)\n\t\t\t},\n\t\t},\n\t},\n\tmethods: {\n\t\tcloseModal() {\n\t\t\tthis.isModalOpen = false\n\t\t},\n\t\tapplyCustomRange() {\n\t\t\tthis.$emit('set:custom-date-range', this.dateFilter)\n\t\t\tthis.closeModal()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.unified-search-custom-date-modal {\n\tpadding: 10px 20px 10px 20px;\n\n\th1 {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t}\n\n\t&__pickers {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__footer {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t}\n\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CustomDateRangeModal.vue?vue&type=template&id=99abc4fc&scoped=true\"\nimport script from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nexport * from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"99abc4fc\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon dots-horizontal-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"DotsHorizontalIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=6950b9a6\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon dots-horizontal-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Filter.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Filter.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon filter-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FilterIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./Filter.vue?vue&type=template&id=5ca95164\"\nimport script from \"./Filter.vue?vue&type=script&lang=js\"\nexport * from \"./Filter.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon filter-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=script&lang=js\"","<template>\n\t<div class=\"chip\">\n\t\t<span class=\"icon\">\n\t\t\t<slot name=\"icon\" />\n\t\t\t<span v-if=\"pretext.length\"> {{ pretext }} : </span>\n\t\t</span>\n\t\t<span class=\"text\">{{ text }}</span>\n\t\t<span class=\"close-icon\" @click=\"deleteChip\">\n\t\t\t<CloseIcon :size=\"18\" />\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'SearchFilterChip',\n\tcomponents: {\n\t\tCloseIcon,\n\t},\n\tprops: {\n\t\ttext: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpretext: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmethods: {\n\t\tdeleteChip() {\n\t\t\tthis.$emit('delete', this.filter)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.chip {\n    display: flex;\n    align-items: center;\n    padding: 2px 4px;\n    border: 1px solid var(--color-primary-element-light);\n    border-radius: 20px;\n    background-color: var(--color-primary-element-light);\n    margin: 2px;\n\n    .icon {\n        display: flex;\n        align-items: center;\n        padding-right: 5px;\n\n        img {\n            width: 20px;\n            padding: 2px;\n            border-radius: 20px;\n            filter: var(--background-invert-if-bright);\n        }\n    }\n\n    .text {\n        margin: 0 2px;\n    }\n\n    .close-icon {\n        cursor: pointer ;\n\n        :hover {\n            filter: invert(20%);\n        }\n    }\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchFilterChip.vue?vue&type=template&id=5dc4d462&scoped=true\"\nimport script from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nexport * from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5dc4d462\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"chip\"},[_c('span',{staticClass:\"icon\"},[_vm._t(\"icon\"),_vm._v(\" \"),(_vm.pretext.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.pretext)+\" : \")]):_vm._e()],2),_vm._v(\" \"),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.text))]),_vm._v(\" \"),_c('span',{staticClass:\"close-icon\",on:{\"click\":_vm.deleteChip}},[_c('CloseIcon',{attrs:{\"size\":18}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ListBox.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ListBox.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon list-box-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"ListBoxIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./ListBox.vue?vue&type=template&id=01774f2d\"\nimport script from \"./ListBox.vue?vue&type=script&lang=js\"\nexport * from \"./ListBox.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon list-box-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import i from \"./Components/NcActionButton.mjs\";\nimport m from \"./Components/NcActionButtonGroup.mjs\";\nimport e from \"./Components/NcActionCaption.mjs\";\nimport p from \"./Components/NcActionCheckbox.mjs\";\nimport c from \"./Components/NcActionInput.mjs\";\nimport f from \"./Components/NcActionLink.mjs\";\nimport n from \"./Components/NcActionRadio.mjs\";\nimport N from \"./Components/NcActionRouter.mjs\";\nimport a from \"./Components/NcActions.mjs\";\nimport s from \"./Components/NcActionSeparator.mjs\";\nimport l from \"./Components/NcActionText.mjs\";\nimport u from \"./Components/NcActionTextEditable.mjs\";\nimport d from \"./Components/NcAppContent.mjs\";\nimport A from \"./Components/NcAppContentDetails.mjs\";\nimport g from \"./Components/NcAppContentList.mjs\";\nimport b from \"./Components/NcAppNavigation.mjs\";\nimport S from \"./Components/NcAppNavigationCaption.mjs\";\nimport T from \"./Components/NcAppNavigationIconBullet.mjs\";\nimport x from \"./Components/NcAppNavigationItem.mjs\";\nimport I from \"./Components/NcAppNavigationNew.mjs\";\nimport v from \"./Components/NcAppNavigationNewItem.mjs\";\nimport C from \"./Components/NcAppNavigationSettings.mjs\";\nimport B from \"./Components/NcAppNavigationSpacer.mjs\";\nimport k from \"./Components/NcAppSettingsDialog.mjs\";\nimport P from \"./Components/NcAppSettingsSection.mjs\";\nimport h from \"./Components/NcAppSidebar.mjs\";\nimport y from \"./Components/NcAppSidebarTab.mjs\";\nimport { N as M } from \"./chunks/index-309426ff.mjs\";\nimport { u as rt } from \"./chunks/index-309426ff.mjs\";\nimport O from \"./Components/NcBreadcrumb.mjs\";\nimport E from \"./Components/NcBreadcrumbs.mjs\";\nimport L from \"./Components/NcButton.mjs\";\nimport R from \"./Components/NcCheckboxRadioSwitch.mjs\";\nimport _ from \"./Components/NcColorPicker.mjs\";\nimport D from \"./Components/NcContent.mjs\";\nimport j from \"./Components/NcCounterBubble.mjs\";\nimport F from \"./Components/NcDashboardWidget.mjs\";\nimport w from \"./Components/NcDashboardWidgetItem.mjs\";\nimport z from \"./Components/NcDateTime.mjs\";\nimport G from \"./Components/NcDateTimePicker.mjs\";\nimport W from \"./Components/NcDateTimePickerNative.mjs\";\nimport H from \"./Components/NcDialog.mjs\";\nimport K from \"./Components/NcDialogButton.mjs\";\nimport V from \"./Components/NcEmojiPicker.mjs\";\nimport U from \"./Components/NcEmptyContent.mjs\";\nimport $ from \"./Components/NcGuestContent.mjs\";\nimport q from \"./Components/NcHeaderMenu.mjs\";\nimport { N as J } from \"./chunks/index-20a9ace9.mjs\";\nimport Q from \"./Components/NcIconSvgWrapper.mjs\";\nimport X from \"./Components/NcListItem.mjs\";\nimport Y from \"./Components/NcListItemIcon.mjs\";\nimport Z from \"./Components/NcLoadingIcon.mjs\";\nimport oo from \"./Components/NcModal.mjs\";\nimport ro from \"./Components/NcNoteCard.mjs\";\nimport to from \"./Components/NcPasswordField.mjs\";\nimport io from \"./Components/NcPopover.mjs\";\nimport mo from \"./Components/NcProgressBar.mjs\";\nimport eo from \"./Components/NcRelatedResourcesPanel.mjs\";\nimport { N as po } from \"./chunks/index-5f2a5f57.mjs\";\nimport { r as it } from \"./chunks/index-5f2a5f57.mjs\";\nimport co, { NcAutoCompleteResult as fo } from \"./Components/NcRichContenteditable.mjs\";\nimport { N as no } from \"./chunks/NcRichText-e4bf7767.mjs\";\nimport \"./chunks/referencePickerModal-12935fb3.mjs\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/router\";\nimport No from \"./Components/NcSelect.mjs\";\nimport ao from \"./Components/NcTextField.mjs\";\nimport \"@nextcloud/event-bus\";\nimport \"vue\";\nimport so from \"./Components/NcSavingIndicatorIcon.mjs\";\nimport lo from \"./Components/NcSelectTags.mjs\";\nimport uo from \"./Components/NcSettingsInputText.mjs\";\nimport Ao from \"./Components/NcSettingsSection.mjs\";\nimport { N as go } from \"./chunks/NcSettingsSelectGroup-ecc8bc5a.mjs\";\nimport bo from \"./Components/NcTimezonePicker.mjs\";\nimport So from \"./Components/NcUserBubble.mjs\";\nimport To from \"./Components/NcTextArea.mjs\";\nimport { isFullscreenState as et, useIsFullscreen as pt } from \"./Composables/useIsFullscreen.mjs\";\nimport { MOBILE_BREAKPOINT as ft, MOBILE_SMALL_BREAKPOINT as nt, isMobileState as Nt, useIsMobile as at, useIsSmallMobile as st } from \"./Composables/useIsMobile.mjs\";\nimport { emojiAddRecent as ut, emojiSearch as dt } from \"./Functions/emoji.mjs\";\nimport { default as gt } from \"./Functions/usernameToColor.mjs\";\nimport { directive as xo } from \"./Directives/Focus.mjs\";\nimport { directive as Io } from \"./Directives/Linkify.mjs\";\nimport \"./Directives/Tooltip.mjs\";\nimport { default as St } from \"./Mixins/clickOutsideOptions.mjs\";\nimport { default as xt } from \"./Mixins/isFullscreen.mjs\";\nimport { default as vt } from \"./Mixins/isMobile.mjs\";\nimport { VTooltip as vo } from \"floating-vue\";\nimport { VTooltip as Bt } from \"floating-vue\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Co = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  NcActionButton: i,\n  NcActionButtonGroup: m,\n  NcActionCaption: e,\n  NcActionCheckbox: p,\n  NcActionInput: c,\n  NcActionLink: f,\n  NcActionRadio: n,\n  NcActionRouter: N,\n  NcActionSeparator: s,\n  NcActionText: l,\n  NcActionTextEditable: u,\n  NcActions: a,\n  NcAppContent: d,\n  NcAppContentDetails: A,\n  NcAppContentList: g,\n  NcAppNavigation: b,\n  NcAppNavigationCaption: S,\n  NcAppNavigationIconBullet: T,\n  NcAppNavigationItem: x,\n  NcAppNavigationNew: I,\n  NcAppNavigationNewItem: v,\n  NcAppNavigationSettings: C,\n  NcAppNavigationSpacer: B,\n  NcAppSettingsDialog: k,\n  NcAppSettingsSection: P,\n  NcAppSidebar: h,\n  NcAppSidebarTab: y,\n  NcAutoCompleteResult: fo,\n  NcAvatar: M,\n  NcBreadcrumb: O,\n  NcBreadcrumbs: E,\n  NcButton: L,\n  NcCheckboxRadioSwitch: R,\n  NcColorPicker: _,\n  NcContent: D,\n  NcCounterBubble: j,\n  NcDashboardWidget: F,\n  NcDashboardWidgetItem: w,\n  NcDateTime: z,\n  NcDateTimePicker: G,\n  NcDateTimePickerNative: W,\n  NcDialog: H,\n  NcDialogButton: K,\n  NcEmojiPicker: V,\n  NcEmptyContent: U,\n  NcGuestContent: $,\n  NcHeaderMenu: q,\n  NcHighlight: J,\n  NcIconSvgWrapper: Q,\n  NcListItem: X,\n  NcListItemIcon: Y,\n  NcLoadingIcon: Z,\n  NcMentionBubble: po,\n  NcModal: oo,\n  NcNoteCard: ro,\n  NcPasswordField: to,\n  NcPopover: io,\n  NcProgressBar: mo,\n  NcRelatedResourcesPanel: eo,\n  NcRichContenteditable: co,\n  NcRichText: no,\n  NcSavingIndicatorIcon: so,\n  NcSelect: No,\n  NcSelectTags: lo,\n  NcSettingsInputText: uo,\n  NcSettingsSection: Ao,\n  NcSettingsSelectGroup: go,\n  NcTextArea: To,\n  NcTextField: ao,\n  NcTimezonePicker: bo,\n  NcUserBubble: So\n}, Symbol.toStringTag, { value: \"Module\" }));\n/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Xr = (o) => o.type === \"click\" || o.type === \"keydown\" && o.key === \"Enter\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  Focus: xo,\n  Linkify: Io,\n  Tooltip: vo\n}, Symbol.toStringTag, { value: \"Module\" })), Yr = {\n  install(o) {\n    Object.entries(Co).forEach(([t, r]) => {\n      o.component(r.name || t, r);\n    }), Object.entries(Bo).forEach(([t, r]) => {\n      o.directive(t, r);\n    });\n  }\n};\nexport {\n  xo as Focus,\n  Io as Linkify,\n  ft as MOBILE_BREAKPOINT,\n  nt as MOBILE_SMALL_BREAKPOINT,\n  i as NcActionButton,\n  m as NcActionButtonGroup,\n  e as NcActionCaption,\n  p as NcActionCheckbox,\n  c as NcActionInput,\n  f as NcActionLink,\n  n as NcActionRadio,\n  N as NcActionRouter,\n  s as NcActionSeparator,\n  l as NcActionText,\n  u as NcActionTextEditable,\n  a as NcActions,\n  d as NcAppContent,\n  A as NcAppContentDetails,\n  g as NcAppContentList,\n  b as NcAppNavigation,\n  S as NcAppNavigationCaption,\n  T as NcAppNavigationIconBullet,\n  x as NcAppNavigationItem,\n  I as NcAppNavigationNew,\n  v as NcAppNavigationNewItem,\n  C as NcAppNavigationSettings,\n  B as NcAppNavigationSpacer,\n  k as NcAppSettingsDialog,\n  P as NcAppSettingsSection,\n  h as NcAppSidebar,\n  y as NcAppSidebarTab,\n  fo as NcAutoCompleteResult,\n  M as NcAvatar,\n  O as NcBreadcrumb,\n  E as NcBreadcrumbs,\n  L as NcButton,\n  R as NcCheckboxRadioSwitch,\n  _ as NcColorPicker,\n  D as NcContent,\n  j as NcCounterBubble,\n  F as NcDashboardWidget,\n  w as NcDashboardWidgetItem,\n  z as NcDateTime,\n  G as NcDateTimePicker,\n  W as NcDateTimePickerNative,\n  H as NcDialog,\n  K as NcDialogButton,\n  V as NcEmojiPicker,\n  U as NcEmptyContent,\n  $ as NcGuestContent,\n  q as NcHeaderMenu,\n  J as NcHighlight,\n  Q as NcIconSvgWrapper,\n  X as NcListItem,\n  Y as NcListItemIcon,\n  Z as NcLoadingIcon,\n  po as NcMentionBubble,\n  oo as NcModal,\n  ro as NcNoteCard,\n  to as NcPasswordField,\n  io as NcPopover,\n  mo as NcProgressBar,\n  eo as NcRelatedResourcesPanel,\n  co as NcRichContenteditable,\n  no as NcRichText,\n  so as NcSavingIndicatorIcon,\n  No as NcSelect,\n  lo as NcSelectTags,\n  uo as NcSettingsInputText,\n  Ao as NcSettingsSection,\n  go as NcSettingsSelectGroup,\n  To as NcTextArea,\n  ao as NcTextField,\n  bo as NcTimezonePicker,\n  So as NcUserBubble,\n  Yr as NextcloudVuePlugin,\n  Bt as Tooltip,\n  St as clickOutsideOptions,\n  ut as emojiAddRecent,\n  dt as emojiSearch,\n  Xr as isA11yActivation,\n  xt as isFullscreen,\n  et as isFullscreenState,\n  vt as isMobile,\n  Nt as isMobileState,\n  it as richEditor,\n  pt as useIsFullscreen,\n  at as useIsMobile,\n  st as useIsSmallMobile,\n  rt as userStatus,\n  gt as usernameToColor\n};\n","<!--\n  - @copyright 2023 Marco Ambrosini <marcoambrosini@proton.me>\n  -\n  - @author Marco Ambrosini <marcoambrosini@proton.me>\n  -\n  - @license AGPL-3.0-or-later\n  -\n  - This program is free software: you can redistribute it and/or modify\n  - it under the terms of the GNU Affero General Public License as\n  - published by the Free Software Foundation, either version 3 of the\n  - License, or (at your option) any later version.\n  -\n  - This program is distributed in the hope that it will be useful,\n  - but WITHOUT ANY WARRANTY; without even the implied warranty of\n  - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n  - GNU Affero General Public License for more details.\n  -\n  - You should have received a copy of the GNU Affero General Public License\n  - along with this program. If not, see <http://www.gnu.org/licenses/>.\n  -\n-->\n\n<template>\n\t<NcPopover :shown=\"opened\"\n\t\t@show=\"opened = true\"\n\t\t@hide=\"opened = false\">\n\t\t<template #trigger>\n\t\t\t<slot ref=\"popoverTrigger\" name=\"trigger\" />\n\t\t</template>\n\t\t<div class=\"searchable-list__wrapper\">\n\t\t\t<NcTextField :value.sync=\"searchTerm\"\n\t\t\t\t:label=\"labelText\"\n\t\t\t\ttrailing-button-icon=\"close\"\n\t\t\t\t:show-trailing-button=\"searchTerm !== ''\"\n\t\t\t\t@update:value=\"searchTermChanged\"\n\t\t\t\t@trailing-button-click=\"clearSearch\">\n\t\t\t\t<Magnify :size=\"20\" />\n\t\t\t</NcTextField>\n\t\t\t<ul v-if=\"filteredList.length > 0\" class=\"searchable-list__list\">\n\t\t\t\t<li v-for=\"element in filteredList\"\n\t\t\t\t\t:key=\"element.id\"\n\t\t\t\t\t:title=\"element.displayName\"\n\t\t\t\t\trole=\"button\">\n\t\t\t\t\t<NcButton alignment=\"start\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\t@click=\"itemSelected(element)\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<NcAvatar :user=\"element.user\" :show-user-status=\"false\" :hide-favorite=\"false\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ element.displayName }}\n\t\t\t\t\t</NcButton>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t\t<div v-else class=\"searchable-list__empty-content\">\n\t\t\t\t<NcEmptyContent :name=\"emptyContentText\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlertCircleOutline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcEmptyContent>\n\t\t\t</div>\n\t\t</div>\n\t</NcPopover>\n</template>\n\n<script>\nimport { NcPopover, NcTextField, NcAvatar, NcEmptyContent, NcButton } from '@nextcloud/vue'\n\nimport AlertCircleOutline from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Magnify from 'vue-material-design-icons/Magnify.vue'\n\nexport default {\n\tname: 'SearchableList',\n\n\tcomponents: {\n\t\tNcPopover,\n\t\tNcTextField,\n\t\tMagnify,\n\t\tAlertCircleOutline,\n\t\tNcAvatar,\n\t\tNcEmptyContent,\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\tlabelText: {\n\t\t\ttype: String,\n\t\t\tdefault: 'this is a label',\n\t\t},\n\n\t\tsearchList: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\n\t\temptyContentText: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\topened: false,\n\t\t\terror: false,\n\t\t\tsearchTerm: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tfilteredList() {\n\t\t\treturn this.searchList.filter((element) => {\n\t\t\t\tif (!this.searchTerm.toLowerCase().length) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn ['displayName'].some(prop => element[prop].toLowerCase().includes(this.searchTerm.toLowerCase()))\n\t\t\t})\n\t\t},\n\t},\n\n\tmethods: {\n\t\tclearSearch() {\n\t\t\tthis.searchTerm = ''\n\t\t},\n\t\titemSelected(element) {\n\t\t\tthis.$emit('item-selected', element)\n\t\t\tthis.clearSearch()\n\t\t\tthis.opened = false\n\t\t},\n\t\tsearchTermChanged(term) {\n\t\t\tthis.$emit('search-term-change', term)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.searchable-list {\n\t&__wrapper {\n\t\tpadding: calc(var(--default-grid-baseline) * 3);\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 250px;\n\t}\n\n\t&__list {\n\t\twidth: 100%;\n\t\tmax-height: 284px;\n\t\toverflow-y: auto;\n\t\tmargin-top: var(--default-grid-baseline);\n\t\tpadding: var(--default-grid-baseline);\n\n\t\t:deep(.button-vue) {\n\t\t\tborder-radius: var(--border-radius-large) !important;\n\t\t\tspan {\n\t\t\t\tfont-weight: initial;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__empty-content {\n\t\tmargin-top: calc(var(--default-grid-baseline) * 3);\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchableList.vue?vue&type=template&id=7cf71a2c&scoped=true\"\nimport script from \"./SearchableList.vue?vue&type=script&lang=js\"\nexport * from \"./SearchableList.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7cf71a2c\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcPopover',{attrs:{\"shown\":_vm.opened},on:{\"show\":function($event){_vm.opened = true},\"hide\":function($event){_vm.opened = false}},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_vm._t(\"trigger\")]},proxy:true}],null,true)},[_vm._v(\" \"),_c('div',{staticClass:\"searchable-list__wrapper\"},[_c('NcTextField',{attrs:{\"value\":_vm.searchTerm,\"label\":_vm.labelText,\"trailing-button-icon\":\"close\",\"show-trailing-button\":_vm.searchTerm !== ''},on:{\"update:value\":[function($event){_vm.searchTerm=$event},_vm.searchTermChanged],\"trailing-button-click\":_vm.clearSearch}},[_c('Magnify',{attrs:{\"size\":20}})],1),_vm._v(\" \"),(_vm.filteredList.length > 0)?_c('ul',{staticClass:\"searchable-list__list\"},_vm._l((_vm.filteredList),function(element){return _c('li',{key:element.id,attrs:{\"title\":element.displayName,\"role\":\"button\"}},[_c('NcButton',{attrs:{\"alignment\":\"start\",\"type\":\"tertiary\",\"wide\":true},on:{\"click\":function($event){return _vm.itemSelected(element)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcAvatar',{attrs:{\"user\":element.user,\"show-user-status\":false,\"hide-favorite\":false}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(element.displayName)+\"\\n\\t\\t\\t\\t\")])],1)}),0):_c('div',{staticClass:\"searchable-list__empty-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.emptyContentText},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AlertCircleOutline')]},proxy:true}])})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=script&lang=js\"","<template>\n\t<NcListItem class=\"result-items__item\"\n\t\t:name=\"title\"\n\t\t:bold=\"false\"\n\t\t:href=\"resourceUrl\"\n\t\ttarget=\"_self\">\n\t\t<template #icon>\n\t\t\t<div aria-hidden=\"true\"\n\t\t\t\tclass=\"result-items__item-icon\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t'result-items__item-icon--rounded': rounded,\n\t\t\t\t\t'result-items__item-icon--no-preview': !isValidIconOrPreviewUrl(thumbnailUrl),\n\t\t\t\t\t'result-items__item-icon--with-thumbnail': isValidIconOrPreviewUrl(thumbnailUrl),\n\t\t\t\t\t[icon]: !isValidIconOrPreviewUrl(icon),\n\t\t\t\t}\"\n\t\t\t\t:style=\"{\n\t\t\t\t\tbackgroundImage: isValidIconOrPreviewUrl(icon) ? `url(${icon})` : '',\n\t\t\t\t}\">\n\t\t\t\t<img v-if=\"isValidIconOrPreviewUrl(thumbnailUrl) && !thumbnailHasError\"\n\t\t\t\t\t:src=\"thumbnailUrl\"\n\t\t\t\t\t@error=\"thumbnailErrorHandler\">\n\t\t\t</div>\n\t\t</template>\n\t\t<template #subname>\n\t\t\t{{ subline }}\n\t\t</template>\n\t</NcListItem>\n</template>\n\n<script>\nimport NcListItem from '@nextcloud/vue/dist/Components/NcListItem.js'\n\nexport default {\n\tname: 'SearchResult',\n\tcomponents: {\n\t\tNcListItem,\n\t},\n\tprops: {\n\t\tthumbnailUrl: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tsubline: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\tresourceUrl: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\trounded: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tquery: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Only used for the first result as a visual feedback\n\t\t * so we can keep the search input focused but pressing\n\t\t * enter still opens the first result\n\t\t */\n\t\tfocused: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tthumbnailHasError: false,\n\t\t}\n\t},\n\twatch: {\n\t\tthumbnailUrl() {\n\t\t\tthis.thumbnailHasError = false\n\t\t},\n\t},\n\tmethods: {\n\t\tisValidIconOrPreviewUrl(url) {\n\t\t\treturn /^https?:\\/\\//.test(url) || url.startsWith('/')\n\t\t},\n\t\tthumbnailErrorHandler() {\n\t\t\tthis.thumbnailHasError = true\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use \"sass:math\";\n$clickable-area: 44px;\n$margin: 10px;\n\n.result-items {\n    &__item {\n\n    ::v-deep a {\n            border-radius: 12px;\n            border: 2px solid transparent;\n            border-radius: var(--border-radius-large) !important;\n\n            &--focused {\n                background-color: var(--color-background-hover);\n            }\n\n            &:active,\n            &:hover,\n            &:focus {\n                background-color: var(--color-background-hover);\n                border: 2px solid var(--color-border-maxcontrast);\n            }\n\n            * {\n                cursor: pointer;\n            }\n\n        }\n\n        &-icon {\n            overflow: hidden;\n            width: $clickable-area;\n            height: $clickable-area;\n            border-radius: var(--border-radius);\n            background-repeat: no-repeat;\n            background-position: center center;\n            background-size: 32px;\n\n            &--rounded {\n                border-radius: math.div($clickable-area, 2);\n            }\n\n            &--no-preview {\n                background-size: 32px;\n            }\n\n            &--with-thumbnail {\n                background-size: cover;\n            }\n\n            &--with-thumbnail:not(&--rounded) {\n                // compensate for border\n                max-width: $clickable-area - 2px;\n                max-height: $clickable-area - 2px;\n                border: 1px solid var(--color-border);\n            }\n\n            img {\n                // Make sure to keep ratio\n                width: 100%;\n                height: 100%;\n\n                object-fit: cover;\n                object-position: center;\n            }\n        }\n\n    }\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResult.vue?vue&type=template&id=67d9a3cf&scoped=true\"\nimport script from \"./SearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"67d9a3cf\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcListItem',{staticClass:\"result-items__item\",attrs:{\"name\":_vm.title,\"bold\":false,\"href\":_vm.resourceUrl,\"target\":\"_self\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('div',{staticClass:\"result-items__item-icon\",class:{\n\t\t\t\t'result-items__item-icon--rounded': _vm.rounded,\n\t\t\t\t'result-items__item-icon--no-preview': !_vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl),\n\t\t\t\t'result-items__item-icon--with-thumbnail': _vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl),\n\t\t\t\t[_vm.icon]: !_vm.isValidIconOrPreviewUrl(_vm.icon),\n\t\t\t},style:({\n\t\t\t\tbackgroundImage: _vm.isValidIconOrPreviewUrl(_vm.icon) ? `url(${_vm.icon})` : '',\n\t\t\t}),attrs:{\"aria-hidden\":\"true\"}},[(_vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl) && !_vm.thumbnailHasError)?_c('img',{attrs:{\"src\":_vm.thumbnailUrl},on:{\"error\":_vm.thumbnailErrorHandler}}):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.subline)+\"\\n\\t\")]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2023, Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise<Array>}\n */\nexport async function getProviders() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tconsole.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search\n * @param {number|string|undefined} options.cursor the offset for paginated searches\n * @param {string} options.since the search\n * @param {string} options.until the search\n * @param {string} options.limit the search\n * @param {string} options.person the search\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor, since, until, limit, person }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\tsince,\n\t\t\tuntil,\n\t\t\tlimit,\n\t\t\tperson,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\n/**\n * Get the list of active contacts\n *\n * @param {object} filter filter contacts by string\n * @param filter.searchTerm\n * @return {object} {request: Promise}\n */\nexport async function getContacts({ searchTerm }) {\n\tconst { data: { contacts } } = await axios.post(generateUrl('/contactsmenu/contacts'), {\n\t\tfilter: searchTerm,\n\t})\n\t/*\n\t * Add authenticated user to list of contacts for search filter\n\t * If authtenicated user is searching/filtering, do not add them to the list\n\t */\n\tif (!searchTerm) {\n\t\tlet authenticatedUser = getCurrentUser()\n\t\tauthenticatedUser = {\n\t\t\tid: authenticatedUser.uid,\n\t\t\tfullName: authenticatedUser.displayName,\n\t\t\temailAddresses: [],\n\t\t  }\n\t\tcontacts.unshift(authenticatedUser)\n\t\treturn contacts\n\t  }\n\n\treturn contacts\n}\n","<template>\n\t<NcModal id=\"unified-search\"\n\t\tref=\"unifiedSearchModal\"\n\t\t:name=\"t('core', 'Unified search')\"\n\t\t:show.sync=\"internalIsVisible\"\n\t\t:clear-view-delay=\"0\"\n\t\t@close=\"closeModal\">\n\t\t<CustomDateRangeModal :is-open=\"showDateRangeModal\"\n\t\t\tclass=\"unified-search__date-range\"\n\t\t\t@set:custom-date-range=\"setCustomDateRange\"\n\t\t\t@update:is-open=\"showDateRangeModal = $event\" />\n\t\t<!-- Unified search form -->\n\t\t<div ref=\"unifiedSearch\" class=\"unified-search-modal\">\n\t\t\t<h1>{{ t('core', 'Unified search') }}</h1>\n\t\t\t<NcInputField ref=\"searchInput\"\n\t\t\t\t:value.sync=\"searchQuery\"\n\t\t\t\ttype=\"text\"\n\t\t\t\t:label=\"t('core', 'Search apps, files, tags, messages') + '...'\"\n\t\t\t\t@update:value=\"debouncedFind\" />\n\t\t\t<div class=\"unified-search-modal__filters\">\n\t\t\t\t<NcActions :menu-name=\"t('core', 'Apps and Settings')\" :open.sync=\"providerActionMenuIsOpen\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<ListBox :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcActionButton v-for=\"provider in providers\" :key=\"provider.id\" @click=\"addProviderFilter(provider)\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<img :src=\"provider.icon\">\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('core', provider.name) }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<NcActions :menu-name=\"t('core', 'Date')\" :open.sync=\"dateActionMenuIsOpen\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CalendarRangeIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('today')\">\n\t\t\t\t\t\t{{ t('core', 'Today') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('7days')\">\n\t\t\t\t\t\t{{ t('core', 'Last 7 days') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('30days')\">\n\t\t\t\t\t\t{{ t('core', 'Last 30 days') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('thisyear')\">\n\t\t\t\t\t\t{{ t('core', 'This year') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('lastyear')\">\n\t\t\t\t\t\t{{ t('core', 'Last year') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('custom')\">\n\t\t\t\t\t\t{{ t('core', 'Custom date range') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<SearchableList :label-text=\"t('core', 'Search people')\"\n\t\t\t\t\t:search-list=\"userContacts\"\n\t\t\t\t\t:empty-content-text=\"t('core', 'Not found')\"\n\t\t\t\t\t@search-term-change=\"debouncedFilterContacts\"\n\t\t\t\t\t@item-selected=\"applyPersonFilter\">\n\t\t\t\t\t<template #trigger>\n\t\t\t\t\t\t<NcButton>\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<AccountGroup :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ t('core', 'People') }}\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</template>\n\t\t\t\t</SearchableList>\n\t\t\t</div>\n\t\t\t<div class=\"unified-search-modal__filters-applied\">\n\t\t\t\t<FilterChip v-for=\"filter in filters\"\n\t\t\t\t\t:key=\"filter.id\"\n\t\t\t\t\t:text=\"filter.name ?? filter.text\"\n\t\t\t\t\t:pretext=\"''\"\n\t\t\t\t\t@delete=\"removeFilter(filter)\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcAvatar v-if=\"filter.type === 'person'\"\n\t\t\t\t\t\t\t:user=\"filter.user\"\n\t\t\t\t\t\t\t:size=\"24\"\n\t\t\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t\t\t:hide-favorite=\"false\" />\n\t\t\t\t\t\t<CalendarRangeIcon v-else-if=\"filter.type === 'date'\" />\n\t\t\t\t\t\t<img v-else :src=\"filter.icon\" alt=\"\">\n\t\t\t\t\t</template>\n\t\t\t\t</FilterChip>\n\t\t\t</div>\n\t\t\t<div v-if=\"noContentInfo.show\" class=\"unified-search-modal__no-content\">\n\t\t\t\t<NcEmptyContent :name=\"noContentInfo.text\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<component :is=\"noContentInfo.icon\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcEmptyContent>\n\t\t\t</div>\n\t\t\t<div v-for=\"providerResult in results\" :key=\"providerResult.id\" class=\"unified-search-modal__results\">\n\t\t\t\t<div class=\"results\">\n\t\t\t\t\t<div class=\"result-title\">\n\t\t\t\t\t\t<span>{{ providerResult.provider }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<ul class=\"result-items\">\n\t\t\t\t\t\t<SearchResult v-for=\"(result, index) in providerResult.results\" :key=\"index\" v-bind=\"result\" />\n\t\t\t\t\t</ul>\n\t\t\t\t\t<div class=\"result-footer\">\n\t\t\t\t\t\t<NcButton type=\"tertiary-no-background\" @click=\"loadMoreResultsForProvider(providerResult.id)\">\n\t\t\t\t\t\t\t{{ t('core', 'Load more results') }}\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t\t<NcButton v-if=\"providerResult.inAppSearch\" alignment=\"end-reverse\" type=\"tertiary-no-background\">\n\t\t\t\t\t\t\t{{ t('core', 'Search in') }} {{ providerResult.provider }}\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div v-if=\"supportFiltering()\" class=\"unified-search-modal__results\">\n\t\t\t\t<NcButton @click=\"closeModal\">\n\t\t\t\t\t{{ t('core', 'Filter in current view') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<FilterIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport AccountGroup from 'vue-material-design-icons/AccountGroup.vue'\nimport CalendarRangeIcon from 'vue-material-design-icons/CalendarRange.vue'\nimport CustomDateRangeModal from '../components/UnifiedSearch/CustomDateRangeModal.vue'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\nimport FilterIcon from 'vue-material-design-icons/Filter.vue'\nimport FilterChip from '../components/UnifiedSearch/SearchFilterChip.vue'\nimport ListBox from 'vue-material-design-icons/ListBox.vue'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcEmptyContent from '@nextcloud/vue/dist/Components/NcEmptyContent.js'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport MagnifyIcon from 'vue-material-design-icons/Magnify.vue'\nimport SearchableList from '../components/UnifiedSearch/SearchableList.vue'\nimport SearchResult from '../components/UnifiedSearch/SearchResult.vue'\n\nimport debounce from 'debounce'\nimport { emit } from '@nextcloud/event-bus'\nimport { getProviders, search as unifiedSearch, getContacts } from '../services/UnifiedSearchService.js'\n\nexport default {\n\tname: 'UnifiedSearchModal',\n\tcomponents: {\n\t\tArrowRight,\n\t\tAccountGroup,\n\t\tCalendarRangeIcon,\n\t\tCustomDateRangeModal,\n\t\tDotsHorizontalIcon,\n\t\tFilterIcon,\n\t\tFilterChip,\n\t\tListBox,\n\t\tNcActions,\n\t\tNcActionButton,\n\t\tNcAvatar,\n\t\tNcButton,\n\t\tNcEmptyContent,\n\t\tNcModal,\n\t\tNcInputField,\n\t\tMagnifyIcon,\n\t\tSearchableList,\n\t\tSearchResult,\n\t},\n\tprops: {\n\t\tisVisible: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tproviders: [],\n\t\t\tproviderActionMenuIsOpen: false,\n\t\t\tdateActionMenuIsOpen: false,\n\t\t\tproviderResultLimit: 5,\n\t\t\tdateFilter: { id: 'date', type: 'date', text: '', startFrom: null, endAt: null },\n\t\t\tpersonFilter: { id: 'person', type: 'person', name: '' },\n\t\t\tdateFilterIsApplied: false,\n\t\t\tpersonFilterIsApplied: false,\n\t\t\tfilteredProviders: [],\n\t\t\tsearching: false,\n\t\t\tsearchQuery: '',\n\t\t\tplacessearchTerm: '',\n\t\t\tdateTimeFilter: null,\n\t\t\tfilters: [],\n\t\t\tresults: [],\n\t\t\tcontacts: [],\n\t\t\tdebouncedFind: debounce(this.find, 300),\n\t\t\tdebouncedFilterContacts: debounce(this.filterContacts, 300),\n\t\t\tshowDateRangeModal: false,\n\t\t\tinternalIsVisible: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserContacts: {\n\t\t\tget() {\n\t\t\t\treturn this.contacts\n\t\t\t},\n\t\t},\n\t\tnoContentInfo: {\n\t\t\tget() {\n\t\t\t\tconst isEmptySearch = this.searchQuery.length === 0\n\t\t\t\tconst hasNoResults = this.searchQuery.length > 0 && this.results.length === 0\n\n\t\t\t\treturn {\n\t\t\t\t\tshow: isEmptySearch || hasNoResults,\n\t\t\t\t\ttext: this.searching && hasNoResults ? t('core', 'Searching …') : (isEmptySearch ? t('core', 'Start typing to search') : t('core', 'No matching results')),\n\t\t\t\t\ticon: MagnifyIcon,\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\twatch: {\n\t\tisVisible(value) {\n\t\t\tthis.internalIsVisible = value\n\t\t},\n\t\tinternalIsVisible(value) {\n\t\t\tthis.$emit('update:isVisible', value)\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tif (value) {\n\t\t\t\t\tthis.focusInput()\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t},\n\tmounted() {\n\t\tgetProviders().then((providers) => {\n\t\t\tthis.providers = providers\n\t\t\tconsole.debug('Search providers', this.providers)\n\t\t})\n\t\tgetContacts({ searchTerm: '' }).then((contacts) => {\n\t\t\tthis.contacts = this.mapContacts(contacts)\n\t\t\tconsole.debug('Contacts', this.contacts)\n\t\t})\n\t},\n\tmethods: {\n\t\tfind(query) {\n\t\t\tthis.searching = true\n\t\t\tif (query.length === 0) {\n\t\t\t\tthis.results = []\n\t\t\t\tthis.searching = false\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// Event should probably be refactored at some point to used nextcloud:unified-search.search\n\t\t\temit('nextcloud:unified-search.search', { query })\n\t\t\tconst newResults = []\n\t\t\tconst providersToSearch = this.filteredProviders.length > 0 ? this.filteredProviders : this.providers\n\t\t\tconst searchProvider = (provider, filters) => {\n\t\t\t\tconst params = {\n\t\t\t\t\ttype: provider.id,\n\t\t\t\t\tquery,\n\t\t\t\t\tcursor: null,\n\t\t\t\t}\n\n\t\t\t\tif (filters.dateFilterIsApplied) {\n\t\t\t\t\tif (provider.filters.since && provider.filters.until) {\n\t\t\t\t\t\tparams.since = this.dateFilter.startFrom\n\t\t\t\t\t\tparams.until = this.dateFilter.endAt\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Date filter is applied but provider does not support it, no need to search provider\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (filters.personFilterIsApplied) {\n\t\t\t\t\tif (provider.filters.person) {\n\t\t\t\t\t\tparams.person = this.personFilter.user\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Person filter is applied but provider does not support it, no need to search provider\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.providerResultLimit > 5) {\n\t\t\t\t\tparams.limit = this.providerResultLimit\n\t\t\t\t}\n\n\t\t\t\tconst request = unifiedSearch(params).request\n\n\t\t\t\trequest().then((response) => {\n\t\t\t\t\tnewResults.push({\n\t\t\t\t\t\tid: provider.id,\n\t\t\t\t\t\tprovider: provider.name,\n\t\t\t\t\t\tinAppSearch: provider.inAppSearch,\n\t\t\t\t\t\tresults: response.data.ocs.data.entries,\n\t\t\t\t\t})\n\n\t\t\t\t\tconsole.debug('New results', newResults)\n\t\t\t\t\tconsole.debug('Unified search results:', this.results)\n\n\t\t\t\t\tthis.updateResults(newResults)\n\t\t\t\t\tthis.searching = false\n\t\t\t\t})\n\t\t\t}\n\t\t\tprovidersToSearch.forEach(provider => {\n\t\t\t\tconst dateFilterIsApplied = this.dateFilterIsApplied\n\t\t\t\tconst personFilterIsApplied = this.personFilterIsApplied\n\t\t\t\tsearchProvider(provider, { dateFilterIsApplied, personFilterIsApplied })\n\t\t\t})\n\n\t\t},\n\t\tupdateResults(newResults) {\n\t\t\tlet updatedResults = [...this.results]\n\t\t\t// If filters are applied, remove any previous results for providers that are not in current filters\n\t\t\tif (this.filters.length > 0) {\n\t\t\t\tupdatedResults = updatedResults.filter(result => {\n\t\t\t\t\treturn this.filters.some(filter => filter.id === result.id)\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Process the new results\n\t\t\tnewResults.forEach(newResult => {\n\t\t\t\tconst existingResultIndex = updatedResults.findIndex(result => result.id === newResult.id)\n\t\t\t\tif (existingResultIndex !== -1) {\n\t\t\t\t\tif (newResult.results.length === 0) {\n\t\t\t\t\t\t// If the new results data has no matches for and existing result, remove the existing result\n\t\t\t\t\t\tupdatedResults.splice(existingResultIndex, 1)\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If input triggered a change in existing results, update existing result\n\t\t\t\t\t\tupdatedResults.splice(existingResultIndex, 1, newResult)\n\t\t\t\t\t}\n\t\t\t\t} else if (newResult.results.length > 0) {\n\t\t\t\t\t// Push the new result to the array only if its results array is not empty\n\t\t\t\t\tupdatedResults.push(newResult)\n\t\t\t\t}\n\t\t\t})\n\t\t\tconst sortedResults = updatedResults.slice(0)\n\t\t\t// Order results according to provider preference\n\t\t\tsortedResults.sort((a, b) => {\n\t\t\t\tconst aProvider = this.providers.find(provider => provider.id === a.id)\n\t\t\t\tconst bProvider = this.providers.find(provider => provider.id === b.id)\n\t\t\t\tconst aOrder = aProvider ? aProvider.order : 0\n\t\t\t\tconst bOrder = bProvider ? bProvider.order : 0\n\t\t\t\treturn aOrder - bOrder\n\t\t\t})\n\t\t\tthis.results = sortedResults\n\t\t},\n\t\tmapContacts(contacts) {\n\t\t\treturn contacts.map(contact => {\n\t\t\t\treturn {\n\t\t\t\t\t// id: contact.id,\n\t\t\t\t\t// name: '',\n\t\t\t\t\tdisplayName: contact.fullName,\n\t\t\t\t\tisNoUser: false,\n\t\t\t\t\tsubname: contact.emailAddresses[0] ? contact.emailAddresses[0] : '',\n\t\t\t\t\ticon: '',\n\t\t\t\t\tuser: contact.id,\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\t\tfilterContacts(query) {\n\t\t\tgetContacts({ searchTerm: query }).then((contacts) => {\n\t\t\t\tthis.contacts = this.mapContacts(contacts)\n\t\t\t\tconsole.debug(`Contacts filtered by ${query}`, this.contacts)\n\t\t\t})\n\t\t},\n\t\tapplyPersonFilter(person) {\n\t\t\tthis.personFilterIsApplied = true\n\t\t\tconst existingPersonFilter = this.filters.findIndex(filter => filter.id === person.id)\n\t\t\tif (existingPersonFilter === -1) {\n\t\t\t\tthis.personFilter.id = person.id\n\t\t\t\tthis.personFilter.user = person.user\n\t\t\t\tthis.personFilter.name = person.displayName\n\t\t\t\tthis.filters.push(this.personFilter)\n\t\t\t} else {\n\t\t\t\tthis.filters[existingPersonFilter].id = person.id\n\t\t\t\tthis.filters[existingPersonFilter].user = person.user\n\t\t\t\tthis.filters[existingPersonFilter].name = person.displayName\n\t\t\t}\n\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t\tconsole.debug('Person filter applied', person)\n\t\t},\n\t\tloadMoreResultsForProvider(providerId) {\n\t\t\tthis.providerResultLimit += 5\n\t\t\tthis.filters = this.filters.filter(filter => filter.type !== 'provider')\n\t\t\tconst provider = this.providers.find(provider => provider.id === providerId)\n\t\t\tthis.addProviderFilter(provider, true)\n\t\t},\n\t\taddProviderFilter(providerFilter, loadMoreResultsForProvider = false) {\n\t\t\tif (!providerFilter.id) return\n\t\t\tthis.providerResultLimit = loadMoreResultsForProvider ? this.providerResultLimit : 5\n\t\t\tthis.providerActionMenuIsOpen = false\n\t\t\tconst existingFilter = this.filteredProviders.find(existing => existing.id === providerFilter.id)\n\t\t\tif (!existingFilter) {\n\t\t\t\tthis.filteredProviders.push({ id: providerFilter.id, name: providerFilter.name, icon: providerFilter.icon, type: 'provider', filters: providerFilter.filters })\n\t\t\t}\n\t\t\tthis.filters = this.syncProviderFilters(this.filters, this.filteredProviders)\n\t\t\tconsole.debug('Search filters (newly added)', this.filters)\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tremoveFilter(filter) {\n\t\t\tif (filter.type === 'provider') {\n\t\t\t\tfor (let i = 0; i < this.filteredProviders.length; i++) {\n\t\t\t\t\tif (this.filteredProviders[i].id === filter.id) {\n\t\t\t\t\t\tthis.filteredProviders.splice(i, 1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.filters = this.syncProviderFilters(this.filters, this.filteredProviders)\n\t\t\t\tconsole.debug('Search filters (recently removed)', this.filters)\n\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < this.filters.length; i++) {\n\t\t\t\t\t// Remove date and person filter\n\t\t\t\t\tif (this.filters[i].id === 'date' || this.filters[i].id === filter.id) {\n\t\t\t\t\t\tthis.dateFilterIsApplied = false\n\t\t\t\t\t\tthis.filters.splice(i, 1)\n\t\t\t\t\t\tif (filter.type === 'person') {\n\t\t\t\t\t\t\tthis.personFilterIsApplied = false\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tsyncProviderFilters(firstArray, secondArray) {\n\t\t\t// Create a copy of the first array to avoid modifying it directly.\n\t\t\tconst synchronizedArray = firstArray.slice()\n\t\t\t// Remove items from the synchronizedArray that are not in the secondArray.\n\t\t\tsynchronizedArray.forEach((item, index) => {\n\t\t\t\tconst itemId = item.id\n\t\t\t\tif (item.type === 'provider') {\n\t\t\t\t\tif (!secondArray.some(secondItem => secondItem.id === itemId)) {\n\t\t\t\t\t\tsynchronizedArray.splice(index, 1)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\t// Add items to the synchronizedArray that are in the secondArray but not in the firstArray.\n\t\t\tsecondArray.forEach(secondItem => {\n\t\t\t\tconst itemId = secondItem.id\n\t\t\t\tif (secondItem.type === 'provider') {\n\t\t\t\t\tif (!synchronizedArray.some(item => item.id === itemId)) {\n\t\t\t\t\t\tsynchronizedArray.push(secondItem)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\treturn synchronizedArray\n\t\t},\n\t\tupdateDateFilter() {\n\t\t\tconst currFilterIndex = this.filters.findIndex(filter => filter.id === 'date')\n\t\t\tif (currFilterIndex !== -1) {\n\t\t\t\tthis.filters[currFilterIndex] = this.dateFilter\n\t\t\t} else {\n\t\t\t\tthis.filters.push(this.dateFilter)\n\t\t\t}\n\t\t\tthis.dateFilterIsApplied = true\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tapplyQuickDateRange(range) {\n\t\t\tthis.dateActionMenuIsOpen = false\n\t\t\tconst today = new Date()\n\t\t\tlet startDate\n\t\t\tlet endDate\n\n\t\t\tswitch (range) {\n\t\t\tcase 'today':\n\t\t\t\t// For 'Today', both start and end are set to today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'Today')\n\t\t\t\tbreak\n\t\t\tcase '7days':\n\t\t\t\t// For 'Last 7 days', start date is 7 days ago, end is today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 6, 0, 0, 0, 0)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last 7 days')\n\t\t\t\tbreak\n\t\t\tcase '30days':\n\t\t\t\t// For 'Last 30 days', start date is 30 days ago, end is today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 29, 0, 0, 0, 0)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last 30 days')\n\t\t\t\tbreak\n\t\t\tcase 'thisyear':\n\t\t\t\t// For 'This year', start date is the first day of the year, end is the last day of the year\n\t\t\t\tstartDate = new Date(today.getFullYear(), 0, 1, 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear(), 11, 31, 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'This year')\n\t\t\t\tbreak\n\t\t\tcase 'lastyear':\n\t\t\t\t// For 'Last year', start date is the first day of the previous year, end is the last day of the previous year\n\t\t\t\tstartDate = new Date(today.getFullYear() - 1, 0, 1, 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear() - 1, 11, 31, 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last year')\n\t\t\t\tbreak\n\t\t\tcase 'custom':\n\t\t\t\tthis.showDateRangeModal = true\n\t\t\t\treturn\n\t\t\tdefault:\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.dateFilter.startFrom = startDate\n\t\t\tthis.dateFilter.endAt = endDate\n\t\t\tthis.updateDateFilter()\n\n\t\t},\n\t\tsetCustomDateRange(event) {\n\t\t\tconsole.debug('Custom date range', event)\n\t\t\tthis.dateFilter.startFrom = event.startFrom\n\t\t\tthis.dateFilter.endAt = event.endAt\n\t\t\tthis.dateFilter.text = t('core', `Between ${this.dateFilter.startFrom.toLocaleDateString()} and ${this.dateFilter.endAt.toLocaleDateString()}`)\n\t\t\tthis.updateDateFilter()\n\t\t},\n\t\tfocusInput() {\n\t\t\tthis.$refs.searchInput.$el.children[0].children[0].focus()\n\t\t},\n\t\tcloseModal() {\n\t\t\tthis.internalIsVisible = false\n\t\t\tthis.searchQuery = ''\n\t\t},\n\t\tsupportFiltering() {\n\t\t\t/* Hard coded apps for the moment this would be improved in coming updates. */\n\t\t\tconst providerPaths = ['/settings/users', '/apps/files', '/apps/deck']\n\t\t\tconst currentPath = window.location.pathname.replace('/index.php', '')\n\t\t\tconst containsProvider = providerPaths.some(path => currentPath.includes(path))\n\t\t\treturn containsProvider\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.unified-search-modal {\n\tpadding: 10px 20px 10px 20px;\n\theight: 60%;\n\n\t&__heading {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t\tmargin-bottom: 0;\n\t}\n\n\t&__filters {\n\t\tdisplay: flex;\n\t\tpadding-top: 4px;\n\t\tjustify-content: left;\n\n\t\t>* {\n\t\t\tmargin-right: 4px;\n\n\t\t}\n\n\t}\n\n\t&__filters-applied {\n\t\tpadding-top: 4px;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t}\n\n\t&__no-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 100%;\n\t}\n\n\t&__results {\n\t\tpadding: 10px;\n\n\t\t.results {\n\n\t\t\t.result-title {\n\t\t\t\tspan {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t\tfont-weight: bolder;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.result-footer {\n\t\t\t\tjustify-content: space-between;\n\t\t\t\talign-items: center;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t}\n}\n\ndiv.v-popper__wrapper {\n\tul {\n\t\tli {\n\t\t\t::v-deep button.action-button {\n\t\t\t\talign-items: center !important;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 20px;\n\t\t\t\t\tmargin: 0 4px;\n\t\t\t\t\tfilter: var(--background-invert-if-bright);\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=91bd0074&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=91bd0074&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearchModal.vue?vue&type=template&id=91bd0074&scoped=true\"\nimport script from \"./UnifiedSearchModal.vue?vue&type=script&lang=js\"\nexport * from \"./UnifiedSearchModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./UnifiedSearchModal.vue?vue&type=style&index=0&id=91bd0074&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"91bd0074\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcModal',{ref:\"unifiedSearchModal\",attrs:{\"id\":\"unified-search\",\"name\":_vm.t('core', 'Unified search'),\"show\":_vm.internalIsVisible,\"clear-view-delay\":0},on:{\"update:show\":function($event){_vm.internalIsVisible=$event},\"close\":_vm.closeModal}},[_c('CustomDateRangeModal',{staticClass:\"unified-search__date-range\",attrs:{\"is-open\":_vm.showDateRangeModal},on:{\"set:custom-date-range\":_vm.setCustomDateRange,\"update:is-open\":function($event){_vm.showDateRangeModal = $event}}}),_vm._v(\" \"),_c('div',{ref:\"unifiedSearch\",staticClass:\"unified-search-modal\"},[_c('h1',[_vm._v(_vm._s(_vm.t('core', 'Unified search')))]),_vm._v(\" \"),_c('NcInputField',{ref:\"searchInput\",attrs:{\"value\":_vm.searchQuery,\"type\":\"text\",\"label\":_vm.t('core', 'Search apps, files, tags, messages') + '...'},on:{\"update:value\":[function($event){_vm.searchQuery=$event},_vm.debouncedFind]}}),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-modal__filters\"},[_c('NcActions',{attrs:{\"menu-name\":_vm.t('core', 'Apps and Settings'),\"open\":_vm.providerActionMenuIsOpen},on:{\"update:open\":function($event){_vm.providerActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ListBox',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.providers),function(provider){return _c('NcActionButton',{key:provider.id,on:{\"click\":function($event){return _vm.addProviderFilter(provider)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('img',{attrs:{\"src\":provider.icon}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', provider.name))+\"\\n\\t\\t\\t\\t\")])})],2),_vm._v(\" \"),_c('NcActions',{attrs:{\"menu-name\":_vm.t('core', 'Date'),\"open\":_vm.dateActionMenuIsOpen},on:{\"update:open\":function($event){_vm.dateActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CalendarRangeIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('today')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Today'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('7days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 7 days'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('30days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 30 days'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('thisyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'This year'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('lastyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last year'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('custom')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Custom date range'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),_c('SearchableList',{attrs:{\"label-text\":_vm.t('core', 'Search people'),\"search-list\":_vm.userContacts,\"empty-content-text\":_vm.t('core', 'Not found')},on:{\"search-term-change\":_vm.debouncedFilterContacts,\"item-selected\":_vm.applyPersonFilter},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'People'))+\"\\n\\t\\t\\t\\t\\t\")])]},proxy:true}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-modal__filters-applied\"},_vm._l((_vm.filters),function(filter){return _c('FilterChip',{key:filter.id,attrs:{\"text\":filter.name ?? filter.text,\"pretext\":''},on:{\"delete\":function($event){return _vm.removeFilter(filter)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(filter.type === 'person')?_c('NcAvatar',{attrs:{\"user\":filter.user,\"size\":24,\"disable-menu\":true,\"show-user-status\":false,\"hide-favorite\":false}}):(filter.type === 'date')?_c('CalendarRangeIcon'):_c('img',{attrs:{\"src\":filter.icon,\"alt\":\"\"}})]},proxy:true}],null,true)})}),1),_vm._v(\" \"),(_vm.noContentInfo.show)?_c('div',{staticClass:\"unified-search-modal__no-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.noContentInfo.text},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_vm.noContentInfo.icon,{tag:\"component\"})]},proxy:true}],null,false,604901229)})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.results),function(providerResult){return _c('div',{key:providerResult.id,staticClass:\"unified-search-modal__results\"},[_c('div',{staticClass:\"results\"},[_c('div',{staticClass:\"result-title\"},[_c('span',[_vm._v(_vm._s(providerResult.provider))])]),_vm._v(\" \"),_c('ul',{staticClass:\"result-items\"},_vm._l((providerResult.results),function(result,index){return _c('SearchResult',_vm._b({key:index},'SearchResult',result,false))}),1),_vm._v(\" \"),_c('div',{staticClass:\"result-footer\"},[_c('NcButton',{attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":function($event){return _vm.loadMoreResultsForProvider(providerResult.id)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Load more results'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(providerResult.inAppSearch)?_c('NcButton',{attrs:{\"alignment\":\"end-reverse\",\"type\":\"tertiary-no-background\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowRight',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in'))+\" \"+_vm._s(providerResult.provider)+\"\\n\\t\\t\\t\\t\\t\\t\")]):_vm._e()],1)])])}),_vm._v(\" \"),(_vm.supportFiltering())?_c('div',{staticClass:\"unified-search-modal__results\"},[_c('NcButton',{on:{\"click\":_vm.closeModal},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FilterIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2021673347)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Filter in current view'))+\"\\n\\t\\t\\t\\t\")])],1):_vm._e()],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"," <!--\n  - @copyright Copyright (c) 2020 Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n  -\n  - @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n  -\n  - @license GNU AGPL version 3 or any later version\n  -\n  - This program is free software: you can redistribute it and/or modify\n  - it under the terms of the GNU Affero General Public License as\n  - published by the Free Software Foundation, either version 3 of the\n  - License, or (at your option) any later version.\n  -\n  - This program is distributed in the hope that it will be useful,\n  - but WITHOUT ANY WARRANTY; without even the implied warranty of\n  - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n  - GNU Affero General Public License for more details.\n  -\n  - You should have received a copy of the GNU Affero General Public License\n  - along with this program.  If not, see <http://www.gnu.org/licenses/>.\n  -\n  -->\n<template>\n\t<div class=\"header-menu\">\n\t\t<NcButton class=\"unified-search__button\" :aria-label=\"t('core', 'Unified search')\" @click=\"toggleUnifiedSearch\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify class=\"unified-search__trigger\" :size=\"22\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<UnifiedSearchModal :class=\"'unified-search-modal'\" :is-visible=\"showUnifiedSearch\" @update:isVisible=\"handleModalVisibilityChange\" />\n\t</div>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport Magnify from 'vue-material-design-icons/Magnify.vue'\nimport UnifiedSearchModal from './UnifiedSearchModal.vue'\n\nexport default {\n\tname: 'UnifiedSearch',\n\tcomponents: {\n\t\tNcButton,\n\t\tMagnify,\n\t\tUnifiedSearchModal,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tshowUnifiedSearch: false,\n\t\t}\n\t},\n\tmounted() {\n\t\tconsole.debug('Unified search initialized!')\n\t},\n\tmethods: {\n\t\ttoggleUnifiedSearch() {\n\t\t\tthis.showUnifiedSearch = !this.showUnifiedSearch\n\t\t},\n\t\thandleModalVisibilityChange(newVisibilityVal) {\n\t\t\tthis.showUnifiedSearch = newVisibilityVal\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.header-menu {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t.unified-search__button {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--header-height);\n\t\t// height: var(--header-height);\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tcursor: pointer;\n\t\topacity: .85;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tfilter: none !important;\n\t\tcolor: var(--color-primary-text) !important;\n\n\t\t&:hover {\n\t\t\tbackground-color: transparent !important;\n\t\t}\n\t}\n}\n\n.unified-search-modal {\n\t::v-deep .modal-container {\n\t\theight: 80%;\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearch.vue?vue&type=template&id=3883344d&scoped=true\"\nimport script from \"./UnifiedSearch.vue?vue&type=script&lang=js\"\nexport * from \"./UnifiedSearch.vue?vue&type=script&lang=js\"\nimport style0 from \"./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3883344d\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"header-menu\"},[_c('NcButton',{staticClass:\"unified-search__button\",attrs:{\"aria-label\":_vm.t('core', 'Unified search')},on:{\"click\":_vm.toggleUnifiedSearch},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify',{staticClass:\"unified-search__trigger\",attrs:{\"size\":22}})]},proxy:true}])}),_vm._v(\" \"),_c('UnifiedSearchModal',{class:'unified-search-modal',attrs:{\"is-visible\":_vm.showUnifiedSearch},on:{\"update:isVisible\":_vm.handleModalVisibilityChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2020 Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport Vue from 'vue'\n\nimport UnifiedSearch from './views/UnifiedSearch.vue'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\nconst logger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n\nVue.mixin({\n\tdata() {\n\t\treturn {\n\t\t\tlogger,\n\t\t}\n\t},\n\tmethods: {\n\t\tt,\n\t\tn,\n\t},\n})\n\nexport default new Vue({\n\tel: '#unified-search',\n\t// eslint-disable-next-line vue/match-component-file-name\n\tname: 'UnifiedSearchRoot',\n\trender: h => h(UnifiedSearch),\n})\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-custom-date-modal[data-v-99abc4fc]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-99abc4fc]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-99abc4fc]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-99abc4fc]{display:flex;justify-content:end}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue\"],\"names\":[],\"mappings\":\"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA\",\"sourcesContent\":[\"\\n.unified-search-custom-date-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\n\\th1 {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t}\\n\\n\\t&__pickers {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.chip[data-v-5dc4d462]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5dc4d462]{display:flex;align-items:center;padding-right:5px}.chip .icon img[data-v-5dc4d462]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5dc4d462]{margin:0 2px}.chip .close-icon[data-v-5dc4d462]{cursor:pointer}.chip .close-icon[data-v-5dc4d462] :hover{filter:invert(20%)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue\"],\"names\":[],\"mappings\":\"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,iBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,mCACI,cAAA,CAEA,0CACI,kBAAA\",\"sourcesContent\":[\"\\n.chip {\\n    display: flex;\\n    align-items: center;\\n    padding: 2px 4px;\\n    border: 1px solid var(--color-primary-element-light);\\n    border-radius: 20px;\\n    background-color: var(--color-primary-element-light);\\n    margin: 2px;\\n\\n    .icon {\\n        display: flex;\\n        align-items: center;\\n        padding-right: 5px;\\n\\n        img {\\n            width: 20px;\\n            padding: 2px;\\n            border-radius: 20px;\\n            filter: var(--background-invert-if-bright);\\n        }\\n    }\\n\\n    .text {\\n        margin: 0 2px;\\n    }\\n\\n    .close-icon {\\n        cursor: pointer ;\\n\\n        :hover {\\n            filter: invert(20%);\\n        }\\n    }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.result-items__item[data-v-67d9a3cf] a{border-radius:12px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-items__item[data-v-67d9a3cf] a--focused{background-color:var(--color-background-hover)}.result-items__item[data-v-67d9a3cf] a:active,.result-items__item[data-v-67d9a3cf] a:hover,.result-items__item[data-v-67d9a3cf] a:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.result-items__item[data-v-67d9a3cf] a *{cursor:pointer}.result-items__item-icon[data-v-67d9a3cf]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.result-items__item-icon--rounded[data-v-67d9a3cf]{border-radius:22px}.result-items__item-icon--no-preview[data-v-67d9a3cf]{background-size:32px}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]{background-size:cover}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]:not(.result-items__item-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.result-items__item-icon img[data-v-67d9a3cf]{width:100%;height:100%;object-fit:cover;object-position:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResult.vue\"],\"names\":[],\"mappings\":\"AAQI,uCACQ,kBAAA,CACA,8BAAA,CACA,mDAAA,CAEA,gDACI,8CAAA,CAGJ,wIAGI,8CAAA,CACA,gDAAA,CAGJ,yCACI,cAAA,CAKR,0CACI,eAAA,CACA,UA9BK,CA+BL,WA/BK,CAgCL,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CAEA,mDACI,kBAAA,CAGJ,sDACI,oBAAA,CAGJ,0DACI,qBAAA,CAGJ,iGAEI,cAAA,CACA,eAAA,CACA,oCAAA,CAGJ,8CAEI,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.result-items {\\n    &__item {\\n\\n    ::v-deep a {\\n            border-radius: 12px;\\n            border: 2px solid transparent;\\n            border-radius: var(--border-radius-large) !important;\\n\\n            &--focused {\\n                background-color: var(--color-background-hover);\\n            }\\n\\n            &:active,\\n            &:hover,\\n            &:focus {\\n                background-color: var(--color-background-hover);\\n                border: 2px solid var(--color-border-maxcontrast);\\n            }\\n\\n            * {\\n                cursor: pointer;\\n            }\\n\\n        }\\n\\n        &-icon {\\n            overflow: hidden;\\n            width: $clickable-area;\\n            height: $clickable-area;\\n            border-radius: var(--border-radius);\\n            background-repeat: no-repeat;\\n            background-position: center center;\\n            background-size: 32px;\\n\\n            &--rounded {\\n                border-radius: math.div($clickable-area, 2);\\n            }\\n\\n            &--no-preview {\\n                background-size: 32px;\\n            }\\n\\n            &--with-thumbnail {\\n                background-size: cover;\\n            }\\n\\n            &--with-thumbnail:not(&--rounded) {\\n                // compensate for border\\n                max-width: $clickable-area - 2px;\\n                max-height: $clickable-area - 2px;\\n                border: 1px solid var(--color-border);\\n            }\\n\\n            img {\\n                // Make sure to keep ratio\\n                width: 100%;\\n                height: 100%;\\n\\n                object-fit: cover;\\n                object-position: center;\\n            }\\n        }\\n\\n    }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.searchable-list__wrapper[data-v-7cf71a2c]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-7cf71a2c]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-7cf71a2c] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-7cf71a2c] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-7cf71a2c]{margin-top:calc(var(--default-grid-baseline)*3)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchableList.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA\",\"sourcesContent\":[\"\\n.searchable-list {\\n\\t&__wrapper {\\n\\t\\tpadding: calc(var(--default-grid-baseline) * 3);\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 250px;\\n\\t}\\n\\n\\t&__list {\\n\\t\\twidth: 100%;\\n\\t\\tmax-height: 284px;\\n\\t\\toverflow-y: auto;\\n\\t\\tmargin-top: var(--default-grid-baseline);\\n\\t\\tpadding: var(--default-grid-baseline);\\n\\n\\t\\t:deep(.button-vue) {\\n\\t\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tfont-weight: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__empty-content {\\n\\t\\tmargin-top: calc(var(--default-grid-baseline) * 3);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.header-menu[data-v-3883344d]{display:flex;align-items:center;justify-content:center}.header-menu .unified-search__button[data-v-3883344d]{display:flex;align-items:center;justify-content:center;width:var(--header-height);margin:0;padding:0;cursor:pointer;opacity:.85;background-color:rgba(0,0,0,0);border:none;filter:none !important;color:var(--color-primary-text) !important}.header-menu .unified-search__button[data-v-3883344d]:hover{background-color:rgba(0,0,0,0) !important}.unified-search-modal[data-v-3883344d] .modal-container{height:80%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,0BAAA,CAEA,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CACA,WAAA,CACA,sBAAA,CACA,0CAAA,CAEA,4DACC,yCAAA,CAMF,wDACC,UAAA\",\"sourcesContent\":[\"\\n.header-menu {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\n\\t.unified-search__button {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--header-height);\\n\\t\\t// height: var(--header-height);\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tcursor: pointer;\\n\\t\\topacity: .85;\\n\\t\\tbackground-color: transparent;\\n\\t\\tborder: none;\\n\\t\\tfilter: none !important;\\n\\t\\tcolor: var(--color-primary-text) !important;\\n\\n\\t\\t&:hover {\\n\\t\\t\\tbackground-color: transparent !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n.unified-search-modal {\\n\\t::v-deep .modal-container {\\n\\t\\theight: 80%;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-modal[data-v-91bd0074]{padding:10px 20px 10px 20px;height:60%}.unified-search-modal__heading[data-v-91bd0074]{font-size:16px;font-weight:bolder;line-height:2em;margin-bottom:0}.unified-search-modal__filters[data-v-91bd0074]{display:flex;padding-top:4px;justify-content:left}.unified-search-modal__filters>*[data-v-91bd0074]{margin-right:4px}.unified-search-modal__filters-applied[data-v-91bd0074]{padding-top:4px;display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-91bd0074]{display:flex;align-items:center;height:100%}.unified-search-modal__results[data-v-91bd0074]{padding:10px}.unified-search-modal__results .results .result-title span[data-v-91bd0074]{color:var(--color-primary-element);font-weight:bolder;font-size:16px}.unified-search-modal__results .results .result-footer[data-v-91bd0074]{justify-content:space-between;align-items:center;display:flex}div.v-popper__wrapper ul li[data-v-91bd0074] button.action-button{align-items:center !important}div.v-popper__wrapper ul li[data-v-91bd0074] button.action-button img{width:20px;margin:0 4px;filter:var(--background-invert-if-bright)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearchModal.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CACA,UAAA,CAEA,gDACC,cAAA,CACA,kBAAA,CACA,eAAA,CACA,eAAA,CAGD,gDACC,YAAA,CACA,eAAA,CACA,oBAAA,CAEA,kDACC,gBAAA,CAMF,wDACC,eAAA,CACA,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,WAAA,CAGD,gDACC,YAAA,CAKE,4EACC,kCAAA,CACA,kBAAA,CACA,cAAA,CAIF,wEACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAUD,kEACC,6BAAA,CAEA,sEACC,UAAA,CACA,YAAA,CACA,yCAAA\",\"sourcesContent\":[\"\\n.unified-search-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\theight: 60%;\\n\\n\\t&__heading {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t\\tmargin-bottom: 0;\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tdisplay: flex;\\n\\t\\tpadding-top: 4px;\\n\\t\\tjustify-content: left;\\n\\n\\t\\t>* {\\n\\t\\t\\tmargin-right: 4px;\\n\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__filters-applied {\\n\\t\\tpadding-top: 4px;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t}\\n\\n\\t&__no-content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\theight: 100%;\\n\\t}\\n\\n\\t&__results {\\n\\t\\tpadding: 10px;\\n\\n\\t\\t.results {\\n\\n\\t\\t\\t.result-title {\\n\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t\\t\\tfont-weight: bolder;\\n\\t\\t\\t\\t\\tfont-size: 16px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.result-footer {\\n\\t\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t}\\n}\\n\\ndiv.v-popper__wrapper {\\n\\tul {\\n\\t\\tli {\\n\\t\\t\\t::v-deep button.action-button {\\n\\t\\t\\t\\talign-items: center !important;\\n\\n\\t\\t\\t\\timg {\\n\\t\\t\\t\\t\\twidth: 20px;\\n\\t\\t\\t\\t\\tmargin: 0 4px;\\n\\t\\t\\t\\t\\tfilter: var(--background-invert-if-bright);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9671;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9671: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], () => (__webpack_require__(67001)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","components","NcButton","NcModal","CalendarRangeIcon","NcDateTimePicker","isOpen","Boolean","required","data","dateFilter","startFrom","endAt","computed","isModalOpen","get","set","value","methods","closeModal","applyCustomRange","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","t","model","callback","$$v","$set","expression","scopedSlots","_u","key","fn","proxy","CloseIcon","text","pretext","deleteChip","filter","_t","length","Z","Symbol","toStringTag","NcPopover","NcTextField","Magnify","AlertCircleOutline","NcAvatar","NcEmptyContent","labelText","searchList","Array","emptyContentText","opened","error","searchTerm","filteredList","element","toLowerCase","some","prop","includes","clearSearch","itemSelected","searchTermChanged","term","_l","id","displayName","user","NcListItem","thumbnailUrl","subline","resourceUrl","icon","rounded","query","focused","thumbnailHasError","watch","isValidIconOrPreviewUrl","url","test","startsWith","thumbnailErrorHandler","class","style","backgroundImage","async","getContacts","_ref2","contacts","axios","post","generateUrl","authenticatedUser","getCurrentUser","uid","fullName","emailAddresses","unshift","ArrowRight","AccountGroup","CustomDateRangeModal","DotsHorizontalIcon","FilterIcon","FilterChip","ListBox","NcActions","NcActionButton","NcInputField","MagnifyIcon","SearchableList","SearchResult","isVisible","providers","providerActionMenuIsOpen","dateActionMenuIsOpen","providerResultLimit","personFilter","dateFilterIsApplied","personFilterIsApplied","filteredProviders","searching","searchQuery","placessearchTerm","dateTimeFilter","filters","results","debouncedFind","debounce","find","debouncedFilterContacts","filterContacts","showDateRangeModal","internalIsVisible","userContacts","noContentInfo","isEmptySearch","hasNoResults","show","$nextTick","focusInput","mounted","generateOcsUrl","params","from","window","location","pathname","replace","search","ocs","isArray","console","getProviders","then","debug","mapContacts","emit","newResults","providersToSearch","searchProvider","provider","cursor","since","until","person","limit","request","_ref","cancelToken","CancelToken","source","token","cancel","unifiedSearch","response","push","inAppSearch","entries","updateResults","forEach","updatedResults","result","newResult","existingResultIndex","findIndex","splice","sortedResults","slice","sort","a","b","aProvider","bProvider","order","map","contact","isNoUser","subname","applyPersonFilter","existingPersonFilter","loadMoreResultsForProvider","providerId","addProviderFilter","providerFilter","arguments","undefined","existing","syncProviderFilters","removeFilter","i","firstArray","secondArray","synchronizedArray","item","index","itemId","secondItem","updateDateFilter","currFilterIndex","applyQuickDateRange","range","today","Date","startDate","endDate","getFullYear","getMonth","getDate","setCustomDateRange","event","toLocaleDateString","$refs","searchInput","$el","children","focus","supportFiltering","currentPath","path","ref","tag","providerResult","UnifiedSearchModal","showUnifiedSearch","toggleUnifiedSearch","handleModalVisibilityChange","newVisibilityVal","__webpack_nonce__","btoa","getRequestToken","logger","getLoggerBuilder","setApp","detectUser","build","Vue","mixin","n","el","render","h","UnifiedSearch","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","Object","keys","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","e","Promise","resolve","g","globalThis","Function","obj","prototype","hasOwnProperty","nmd","paths","document","baseURI","self","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","bind","nc","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"core-unified-search.js?v=82475d7b0e845b834176","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarRange.vue?f09e","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarRange.vue?vue&type=template&id=eff4db96","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?b7cc","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?7b1c","webpack://nextcloud/./core/src/components/UnifiedSearch/CustomDateRangeModal.vue?92fe","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/DotsHorizontal.vue?c5a1","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=6950b9a6","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Filter.vue?3711","webpack:///nextcloud/node_modules/vue-material-design-icons/Filter.vue?vue&type=template&id=5ca95164","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?3702","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?fc0d","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchFilterChip.vue?2352","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ListBox.vue?d9c9","webpack:///nextcloud/node_modules/vue-material-design-icons/ListBox.vue?vue&type=template&id=01774f2d","webpack:///nextcloud/node_modules/@nextcloud/vue/dist/index.mjs","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?58c9","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?4344","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchableList.vue?a21f","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=script&lang=js","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?5240","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?32d3","webpack://nextcloud/./core/src/components/UnifiedSearch/SearchResult.vue?e4b5","webpack:///nextcloud/core/src/services/UnifiedSearchService.js","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?a2bb","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?7f41","webpack://nextcloud/./core/src/views/UnifiedSearchModal.vue?60fa","webpack:///nextcloud/core/src/views/UnifiedSearch.vue","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=script&lang=js","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?c7c4","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?1990","webpack://nextcloud/./core/src/views/UnifiedSearch.vue?adc0","webpack:///nextcloud/core/src/unified-search.js","webpack:///nextcloud/core/src/components/UnifiedSearch/CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/components/UnifiedSearch/SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true","webpack:///nextcloud/core/src/views/UnifiedSearchModal.vue?vue&type=style&index=0&id=15aef23c&prod&lang=scss&scoped=true","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon calendar-range-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"CalendarRangeIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarRange.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalendarRange.vue?vue&type=template&id=eff4db96\"\nimport script from \"./CalendarRange.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarRange.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon calendar-range-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,10H7V12H9V10M13,10H11V12H13V10M17,10H15V12H17V10M19,3H18V1H16V3H8V1H6V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.isModalOpen)?_c('NcModal',{attrs:{\"id\":\"unified-search\",\"name\":_vm.t('core', 'Custom date range'),\"show\":_vm.isModalOpen,\"size\":'small',\"clear-view-delay\":0,\"title\":_vm.t('core', 'Custom date range')},on:{\"update:show\":function($event){_vm.isModalOpen=$event},\"close\":_vm.closeModal}},[_c('div',{staticClass:\"unified-search-custom-date-modal\"},[_c('h1',[_vm._v(_vm._s(_vm.t('core', 'Custom date range')))]),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__pickers\"},[_c('NcDateTimePicker',{attrs:{\"id\":'unifiedsearch-custom-date-range-start',\"label\":_vm.t('core', 'Pick start date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.startFrom),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"startFrom\", $$v)},expression:\"dateFilter.startFrom\"}}),_vm._v(\" \"),_c('NcDateTimePicker',{attrs:{\"id\":'unifiedsearch-custom-date-range-end',\"label\":_vm.t('core', 'Pick end date'),\"type\":\"date\"},model:{value:(_vm.dateFilter.endAt),callback:function ($$v) {_vm.$set(_vm.dateFilter, \"endAt\", $$v)},expression:\"dateFilter.endAt\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-custom-date-modal__footer\"},[_c('NcButton',{on:{\"click\":_vm.applyCustomRange},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CalendarRangeIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,3084610734)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in date range'))+\"\\n\\t\\t\\t\\t\")])],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<NcModal v-if=\"isModalOpen\"\n\t\tid=\"unified-search\"\n\t\t:name=\"t('core', 'Custom date range')\"\n\t\t:show.sync=\"isModalOpen\"\n\t\t:size=\"'small'\"\n\t\t:clear-view-delay=\"0\"\n\t\t:title=\"t('core', 'Custom date range')\"\n\t\t@close=\"closeModal\">\n\t\t<!-- Custom date range -->\n\t\t<div class=\"unified-search-custom-date-modal\">\n\t\t\t<h1>{{ t('core', 'Custom date range') }}</h1>\n\t\t\t<div class=\"unified-search-custom-date-modal__pickers\">\n\t\t\t\t<NcDateTimePicker :id=\"'unifiedsearch-custom-date-range-start'\"\n\t\t\t\t\tv-model=\"dateFilter.startFrom\"\n\t\t\t\t\t:label=\"t('core', 'Pick start date')\"\n\t\t\t\t\ttype=\"date\" />\n\t\t\t\t<NcDateTimePicker :id=\"'unifiedsearch-custom-date-range-end'\"\n\t\t\t\t\tv-model=\"dateFilter.endAt\"\n\t\t\t\t\t:label=\"t('core', 'Pick end date')\"\n\t\t\t\t\ttype=\"date\" />\n\t\t\t</div>\n\t\t\t<div class=\"unified-search-custom-date-modal__footer\">\n\t\t\t\t<NcButton @click=\"applyCustomRange\">\n\t\t\t\t\t{{ t('core', 'Search in date range') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CalendarRangeIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcDateTimePicker from '@nextcloud/vue/dist/Components/NcDateTimePickerNative.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport CalendarRangeIcon from 'vue-material-design-icons/CalendarRange.vue'\n\nexport default {\n\tname: 'CustomDateRangeModal',\n\tcomponents: {\n\t\tNcButton,\n\t\tNcModal,\n\t\tCalendarRangeIcon,\n\t\tNcDateTimePicker,\n\t},\n\tprops: {\n\t\tisOpen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tdateFilter: { startFrom: null, endAt: null },\n\t\t}\n\t},\n\tcomputed: {\n\t\tisModalOpen: {\n\t\t\tget() {\n\t\t\t\treturn this.isOpen\n\t\t\t},\n\t\t\tset(value) {\n\t\t\t\tthis.$emit('update:is-open', value)\n\t\t\t},\n\t\t},\n\t},\n\tmethods: {\n\t\tcloseModal() {\n\t\t\tthis.isModalOpen = false\n\t\t},\n\t\tapplyCustomRange() {\n\t\t\tthis.$emit('set:custom-date-range', this.dateFilter)\n\t\t\tthis.closeModal()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.unified-search-custom-date-modal {\n\tpadding: 10px 20px 10px 20px;\n\n\th1 {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t}\n\n\t&__pickers {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t&__footer {\n\t\tdisplay: flex;\n\t\tjustify-content: end;\n\t}\n\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./CustomDateRangeModal.vue?vue&type=template&id=99abc4fc&scoped=true\"\nimport script from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nexport * from \"./CustomDateRangeModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomDateRangeModal.vue?vue&type=style&index=0&id=99abc4fc&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"99abc4fc\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon dots-horizontal-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"DotsHorizontalIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=6950b9a6\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon dots-horizontal-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Filter.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Filter.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon filter-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"FilterIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./Filter.vue?vue&type=template&id=5ca95164\"\nimport script from \"./Filter.vue?vue&type=script&lang=js\"\nexport * from \"./Filter.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon filter-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,12V19.88C14.04,20.18 13.94,20.5 13.71,20.71C13.32,21.1 12.69,21.1 12.3,20.71L10.29,18.7C10.06,18.47 9.96,18.16 10,17.87V12H9.97L4.21,4.62C3.87,4.19 3.95,3.56 4.38,3.22C4.57,3.08 4.78,3 5,3V3H19V3C19.22,3 19.43,3.08 19.62,3.22C20.05,3.56 20.13,4.19 19.79,4.62L14.03,12H14Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=script&lang=js\"","<template>\n\t<div class=\"chip\">\n\t\t<span class=\"icon\">\n\t\t\t<slot name=\"icon\" />\n\t\t\t<span v-if=\"pretext.length\"> {{ pretext }} : </span>\n\t\t</span>\n\t\t<span class=\"text\">{{ text }}</span>\n\t\t<span class=\"close-icon\" @click=\"deleteChip\">\n\t\t\t<CloseIcon :size=\"18\" />\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'SearchFilterChip',\n\tcomponents: {\n\t\tCloseIcon,\n\t},\n\tprops: {\n\t\ttext: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpretext: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmethods: {\n\t\tdeleteChip() {\n\t\t\tthis.$emit('delete', this.filter)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.chip {\n    display: flex;\n    align-items: center;\n    padding: 2px 4px;\n    border: 1px solid var(--color-primary-element-light);\n    border-radius: 20px;\n    background-color: var(--color-primary-element-light);\n    margin: 2px;\n\n    .icon {\n        display: flex;\n        align-items: center;\n        padding-right: 5px;\n\n        img {\n            width: 20px;\n            padding: 2px;\n            border-radius: 20px;\n            filter: var(--background-invert-if-bright);\n        }\n    }\n\n    .text {\n        margin: 0 2px;\n    }\n\n    .close-icon {\n        cursor: pointer ;\n\n        :hover {\n            filter: invert(20%);\n        }\n    }\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchFilterChip.vue?vue&type=template&id=5dc4d462&scoped=true\"\nimport script from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nexport * from \"./SearchFilterChip.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchFilterChip.vue?vue&type=style&index=0&id=5dc4d462&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5dc4d462\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"chip\"},[_c('span',{staticClass:\"icon\"},[_vm._t(\"icon\"),_vm._v(\" \"),(_vm.pretext.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.pretext)+\" : \")]):_vm._e()],2),_vm._v(\" \"),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(_vm.text))]),_vm._v(\" \"),_c('span',{staticClass:\"close-icon\",on:{\"click\":_vm.deleteChip}},[_c('CloseIcon',{attrs:{\"size\":18}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ListBox.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ListBox.vue?vue&type=script&lang=js\"","<template>\n  <span v-bind=\"$attrs\"\n        :aria-hidden=\"!title\"\n        :aria-label=\"title\"\n        class=\"material-design-icon list-box-icon\"\n        role=\"img\"\n        @click=\"$emit('click', $event)\">\n    <svg :fill=\"fillColor\"\n         class=\"material-design-icon__svg\"\n         :width=\"size\"\n         :height=\"size\"\n         viewBox=\"0 0 24 24\">\n      <path d=\"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z\">\n        <title v-if=\"title\">{{ title }}</title>\n      </path>\n    </svg>\n  </span>\n</template>\n\n<script>\nexport default {\n  name: \"ListBoxIcon\",\n  emits: ['click'],\n  props: {\n    title: {\n      type: String,\n    },\n    fillColor: {\n      type: String,\n      default: \"currentColor\"\n    },\n    size: {\n      type: Number,\n      default: 24\n    }\n  }\n}\n</script>","import { render, staticRenderFns } from \"./ListBox.vue?vue&type=template&id=01774f2d\"\nimport script from \"./ListBox.vue?vue&type=script&lang=js\"\nexport * from \"./ListBox.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon list-box-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3M7 7H9V9H7V7M7 11H9V13H7V11M7 15H9V17H7V15M17 17H11V15H17V17M17 13H11V11H17V13M17 9H11V7H17V9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import i from \"./Components/NcActionButton.mjs\";\nimport m from \"./Components/NcActionButtonGroup.mjs\";\nimport e from \"./Components/NcActionCaption.mjs\";\nimport p from \"./Components/NcActionCheckbox.mjs\";\nimport c from \"./Components/NcActionInput.mjs\";\nimport f from \"./Components/NcActionLink.mjs\";\nimport n from \"./Components/NcActionRadio.mjs\";\nimport N from \"./Components/NcActionRouter.mjs\";\nimport a from \"./Components/NcActions.mjs\";\nimport s from \"./Components/NcActionSeparator.mjs\";\nimport l from \"./Components/NcActionText.mjs\";\nimport u from \"./Components/NcActionTextEditable.mjs\";\nimport d from \"./Components/NcAppContent.mjs\";\nimport A from \"./Components/NcAppContentDetails.mjs\";\nimport g from \"./Components/NcAppContentList.mjs\";\nimport b from \"./Components/NcAppNavigation.mjs\";\nimport S from \"./Components/NcAppNavigationCaption.mjs\";\nimport T from \"./Components/NcAppNavigationIconBullet.mjs\";\nimport x from \"./Components/NcAppNavigationItem.mjs\";\nimport I from \"./Components/NcAppNavigationNew.mjs\";\nimport v from \"./Components/NcAppNavigationNewItem.mjs\";\nimport C from \"./Components/NcAppNavigationSettings.mjs\";\nimport B from \"./Components/NcAppNavigationSpacer.mjs\";\nimport k from \"./Components/NcAppSettingsDialog.mjs\";\nimport P from \"./Components/NcAppSettingsSection.mjs\";\nimport h from \"./Components/NcAppSidebar.mjs\";\nimport y from \"./Components/NcAppSidebarTab.mjs\";\nimport { N as M } from \"./chunks/index-309426ff.mjs\";\nimport { u as rt } from \"./chunks/index-309426ff.mjs\";\nimport O from \"./Components/NcBreadcrumb.mjs\";\nimport E from \"./Components/NcBreadcrumbs.mjs\";\nimport L from \"./Components/NcButton.mjs\";\nimport R from \"./Components/NcCheckboxRadioSwitch.mjs\";\nimport _ from \"./Components/NcColorPicker.mjs\";\nimport D from \"./Components/NcContent.mjs\";\nimport j from \"./Components/NcCounterBubble.mjs\";\nimport F from \"./Components/NcDashboardWidget.mjs\";\nimport w from \"./Components/NcDashboardWidgetItem.mjs\";\nimport z from \"./Components/NcDateTime.mjs\";\nimport G from \"./Components/NcDateTimePicker.mjs\";\nimport W from \"./Components/NcDateTimePickerNative.mjs\";\nimport H from \"./Components/NcDialog.mjs\";\nimport K from \"./Components/NcDialogButton.mjs\";\nimport V from \"./Components/NcEmojiPicker.mjs\";\nimport U from \"./Components/NcEmptyContent.mjs\";\nimport $ from \"./Components/NcGuestContent.mjs\";\nimport q from \"./Components/NcHeaderMenu.mjs\";\nimport { N as J } from \"./chunks/index-20a9ace9.mjs\";\nimport Q from \"./Components/NcIconSvgWrapper.mjs\";\nimport X from \"./Components/NcListItem.mjs\";\nimport Y from \"./Components/NcListItemIcon.mjs\";\nimport Z from \"./Components/NcLoadingIcon.mjs\";\nimport oo from \"./Components/NcModal.mjs\";\nimport ro from \"./Components/NcNoteCard.mjs\";\nimport to from \"./Components/NcPasswordField.mjs\";\nimport io from \"./Components/NcPopover.mjs\";\nimport mo from \"./Components/NcProgressBar.mjs\";\nimport eo from \"./Components/NcRelatedResourcesPanel.mjs\";\nimport { N as po } from \"./chunks/index-5f2a5f57.mjs\";\nimport { r as it } from \"./chunks/index-5f2a5f57.mjs\";\nimport co, { NcAutoCompleteResult as fo } from \"./Components/NcRichContenteditable.mjs\";\nimport { N as no } from \"./chunks/NcRichText-e4bf7767.mjs\";\nimport \"./chunks/referencePickerModal-12935fb3.mjs\";\nimport \"@nextcloud/axios\";\nimport \"@nextcloud/router\";\nimport No from \"./Components/NcSelect.mjs\";\nimport ao from \"./Components/NcTextField.mjs\";\nimport \"@nextcloud/event-bus\";\nimport \"vue\";\nimport so from \"./Components/NcSavingIndicatorIcon.mjs\";\nimport lo from \"./Components/NcSelectTags.mjs\";\nimport uo from \"./Components/NcSettingsInputText.mjs\";\nimport Ao from \"./Components/NcSettingsSection.mjs\";\nimport { N as go } from \"./chunks/NcSettingsSelectGroup-ecc8bc5a.mjs\";\nimport bo from \"./Components/NcTimezonePicker.mjs\";\nimport So from \"./Components/NcUserBubble.mjs\";\nimport To from \"./Components/NcTextArea.mjs\";\nimport { isFullscreenState as et, useIsFullscreen as pt } from \"./Composables/useIsFullscreen.mjs\";\nimport { MOBILE_BREAKPOINT as ft, MOBILE_SMALL_BREAKPOINT as nt, isMobileState as Nt, useIsMobile as at, useIsSmallMobile as st } from \"./Composables/useIsMobile.mjs\";\nimport { emojiAddRecent as ut, emojiSearch as dt } from \"./Functions/emoji.mjs\";\nimport { default as gt } from \"./Functions/usernameToColor.mjs\";\nimport { directive as xo } from \"./Directives/Focus.mjs\";\nimport { directive as Io } from \"./Directives/Linkify.mjs\";\nimport \"./Directives/Tooltip.mjs\";\nimport { default as St } from \"./Mixins/clickOutsideOptions.mjs\";\nimport { default as xt } from \"./Mixins/isFullscreen.mjs\";\nimport { default as vt } from \"./Mixins/isMobile.mjs\";\nimport { VTooltip as vo } from \"floating-vue\";\nimport { VTooltip as Bt } from \"floating-vue\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Co = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  NcActionButton: i,\n  NcActionButtonGroup: m,\n  NcActionCaption: e,\n  NcActionCheckbox: p,\n  NcActionInput: c,\n  NcActionLink: f,\n  NcActionRadio: n,\n  NcActionRouter: N,\n  NcActionSeparator: s,\n  NcActionText: l,\n  NcActionTextEditable: u,\n  NcActions: a,\n  NcAppContent: d,\n  NcAppContentDetails: A,\n  NcAppContentList: g,\n  NcAppNavigation: b,\n  NcAppNavigationCaption: S,\n  NcAppNavigationIconBullet: T,\n  NcAppNavigationItem: x,\n  NcAppNavigationNew: I,\n  NcAppNavigationNewItem: v,\n  NcAppNavigationSettings: C,\n  NcAppNavigationSpacer: B,\n  NcAppSettingsDialog: k,\n  NcAppSettingsSection: P,\n  NcAppSidebar: h,\n  NcAppSidebarTab: y,\n  NcAutoCompleteResult: fo,\n  NcAvatar: M,\n  NcBreadcrumb: O,\n  NcBreadcrumbs: E,\n  NcButton: L,\n  NcCheckboxRadioSwitch: R,\n  NcColorPicker: _,\n  NcContent: D,\n  NcCounterBubble: j,\n  NcDashboardWidget: F,\n  NcDashboardWidgetItem: w,\n  NcDateTime: z,\n  NcDateTimePicker: G,\n  NcDateTimePickerNative: W,\n  NcDialog: H,\n  NcDialogButton: K,\n  NcEmojiPicker: V,\n  NcEmptyContent: U,\n  NcGuestContent: $,\n  NcHeaderMenu: q,\n  NcHighlight: J,\n  NcIconSvgWrapper: Q,\n  NcListItem: X,\n  NcListItemIcon: Y,\n  NcLoadingIcon: Z,\n  NcMentionBubble: po,\n  NcModal: oo,\n  NcNoteCard: ro,\n  NcPasswordField: to,\n  NcPopover: io,\n  NcProgressBar: mo,\n  NcRelatedResourcesPanel: eo,\n  NcRichContenteditable: co,\n  NcRichText: no,\n  NcSavingIndicatorIcon: so,\n  NcSelect: No,\n  NcSelectTags: lo,\n  NcSettingsInputText: uo,\n  NcSettingsSection: Ao,\n  NcSettingsSelectGroup: go,\n  NcTextArea: To,\n  NcTextField: ao,\n  NcTimezonePicker: bo,\n  NcUserBubble: So\n}, Symbol.toStringTag, { value: \"Module\" }));\n/**\n * @copyright 2022 Christopher Ng <chrng8@gmail.com>\n *\n * @author Christopher Ng <chrng8@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Xr = (o) => o.type === \"click\" || o.type === \"keydown\" && o.key === \"Enter\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst Bo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n  __proto__: null,\n  Focus: xo,\n  Linkify: Io,\n  Tooltip: vo\n}, Symbol.toStringTag, { value: \"Module\" })), Yr = {\n  install(o) {\n    Object.entries(Co).forEach(([t, r]) => {\n      o.component(r.name || t, r);\n    }), Object.entries(Bo).forEach(([t, r]) => {\n      o.directive(t, r);\n    });\n  }\n};\nexport {\n  xo as Focus,\n  Io as Linkify,\n  ft as MOBILE_BREAKPOINT,\n  nt as MOBILE_SMALL_BREAKPOINT,\n  i as NcActionButton,\n  m as NcActionButtonGroup,\n  e as NcActionCaption,\n  p as NcActionCheckbox,\n  c as NcActionInput,\n  f as NcActionLink,\n  n as NcActionRadio,\n  N as NcActionRouter,\n  s as NcActionSeparator,\n  l as NcActionText,\n  u as NcActionTextEditable,\n  a as NcActions,\n  d as NcAppContent,\n  A as NcAppContentDetails,\n  g as NcAppContentList,\n  b as NcAppNavigation,\n  S as NcAppNavigationCaption,\n  T as NcAppNavigationIconBullet,\n  x as NcAppNavigationItem,\n  I as NcAppNavigationNew,\n  v as NcAppNavigationNewItem,\n  C as NcAppNavigationSettings,\n  B as NcAppNavigationSpacer,\n  k as NcAppSettingsDialog,\n  P as NcAppSettingsSection,\n  h as NcAppSidebar,\n  y as NcAppSidebarTab,\n  fo as NcAutoCompleteResult,\n  M as NcAvatar,\n  O as NcBreadcrumb,\n  E as NcBreadcrumbs,\n  L as NcButton,\n  R as NcCheckboxRadioSwitch,\n  _ as NcColorPicker,\n  D as NcContent,\n  j as NcCounterBubble,\n  F as NcDashboardWidget,\n  w as NcDashboardWidgetItem,\n  z as NcDateTime,\n  G as NcDateTimePicker,\n  W as NcDateTimePickerNative,\n  H as NcDialog,\n  K as NcDialogButton,\n  V as NcEmojiPicker,\n  U as NcEmptyContent,\n  $ as NcGuestContent,\n  q as NcHeaderMenu,\n  J as NcHighlight,\n  Q as NcIconSvgWrapper,\n  X as NcListItem,\n  Y as NcListItemIcon,\n  Z as NcLoadingIcon,\n  po as NcMentionBubble,\n  oo as NcModal,\n  ro as NcNoteCard,\n  to as NcPasswordField,\n  io as NcPopover,\n  mo as NcProgressBar,\n  eo as NcRelatedResourcesPanel,\n  co as NcRichContenteditable,\n  no as NcRichText,\n  so as NcSavingIndicatorIcon,\n  No as NcSelect,\n  lo as NcSelectTags,\n  uo as NcSettingsInputText,\n  Ao as NcSettingsSection,\n  go as NcSettingsSelectGroup,\n  To as NcTextArea,\n  ao as NcTextField,\n  bo as NcTimezonePicker,\n  So as NcUserBubble,\n  Yr as NextcloudVuePlugin,\n  Bt as Tooltip,\n  St as clickOutsideOptions,\n  ut as emojiAddRecent,\n  dt as emojiSearch,\n  Xr as isA11yActivation,\n  xt as isFullscreen,\n  et as isFullscreenState,\n  vt as isMobile,\n  Nt as isMobileState,\n  it as richEditor,\n  pt as useIsFullscreen,\n  at as useIsMobile,\n  st as useIsSmallMobile,\n  rt as userStatus,\n  gt as usernameToColor\n};\n","<!--\n  - @copyright 2023 Marco Ambrosini <marcoambrosini@proton.me>\n  -\n  - @author Marco Ambrosini <marcoambrosini@proton.me>\n  -\n  - @license AGPL-3.0-or-later\n  -\n  - This program is free software: you can redistribute it and/or modify\n  - it under the terms of the GNU Affero General Public License as\n  - published by the Free Software Foundation, either version 3 of the\n  - License, or (at your option) any later version.\n  -\n  - This program is distributed in the hope that it will be useful,\n  - but WITHOUT ANY WARRANTY; without even the implied warranty of\n  - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n  - GNU Affero General Public License for more details.\n  -\n  - You should have received a copy of the GNU Affero General Public License\n  - along with this program. If not, see <http://www.gnu.org/licenses/>.\n  -\n-->\n\n<template>\n\t<NcPopover :shown=\"opened\"\n\t\t@show=\"opened = true\"\n\t\t@hide=\"opened = false\">\n\t\t<template #trigger>\n\t\t\t<slot ref=\"popoverTrigger\" name=\"trigger\" />\n\t\t</template>\n\t\t<div class=\"searchable-list__wrapper\">\n\t\t\t<NcTextField :value.sync=\"searchTerm\"\n\t\t\t\t:label=\"labelText\"\n\t\t\t\ttrailing-button-icon=\"close\"\n\t\t\t\t:show-trailing-button=\"searchTerm !== ''\"\n\t\t\t\t@update:value=\"searchTermChanged\"\n\t\t\t\t@trailing-button-click=\"clearSearch\">\n\t\t\t\t<Magnify :size=\"20\" />\n\t\t\t</NcTextField>\n\t\t\t<ul v-if=\"filteredList.length > 0\" class=\"searchable-list__list\">\n\t\t\t\t<li v-for=\"element in filteredList\"\n\t\t\t\t\t:key=\"element.id\"\n\t\t\t\t\t:title=\"element.displayName\"\n\t\t\t\t\trole=\"button\">\n\t\t\t\t\t<NcButton alignment=\"start\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\t@click=\"itemSelected(element)\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<NcAvatar :user=\"element.user\" :show-user-status=\"false\" :hide-favorite=\"false\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ element.displayName }}\n\t\t\t\t\t</NcButton>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t\t<div v-else class=\"searchable-list__empty-content\">\n\t\t\t\t<NcEmptyContent :name=\"emptyContentText\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlertCircleOutline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcEmptyContent>\n\t\t\t</div>\n\t\t</div>\n\t</NcPopover>\n</template>\n\n<script>\nimport { NcPopover, NcTextField, NcAvatar, NcEmptyContent, NcButton } from '@nextcloud/vue'\n\nimport AlertCircleOutline from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Magnify from 'vue-material-design-icons/Magnify.vue'\n\nexport default {\n\tname: 'SearchableList',\n\n\tcomponents: {\n\t\tNcPopover,\n\t\tNcTextField,\n\t\tMagnify,\n\t\tAlertCircleOutline,\n\t\tNcAvatar,\n\t\tNcEmptyContent,\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\tlabelText: {\n\t\t\ttype: String,\n\t\t\tdefault: 'this is a label',\n\t\t},\n\n\t\tsearchList: {\n\t\t\ttype: Array,\n\t\t\trequired: true,\n\t\t},\n\n\t\temptyContentText: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\topened: false,\n\t\t\terror: false,\n\t\t\tsearchTerm: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tfilteredList() {\n\t\t\treturn this.searchList.filter((element) => {\n\t\t\t\tif (!this.searchTerm.toLowerCase().length) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\treturn ['displayName'].some(prop => element[prop].toLowerCase().includes(this.searchTerm.toLowerCase()))\n\t\t\t})\n\t\t},\n\t},\n\n\tmethods: {\n\t\tclearSearch() {\n\t\t\tthis.searchTerm = ''\n\t\t},\n\t\titemSelected(element) {\n\t\t\tthis.$emit('item-selected', element)\n\t\t\tthis.clearSearch()\n\t\t\tthis.opened = false\n\t\t},\n\t\tsearchTermChanged(term) {\n\t\t\tthis.$emit('search-term-change', term)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.searchable-list {\n\t&__wrapper {\n\t\tpadding: calc(var(--default-grid-baseline) * 3);\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\twidth: 250px;\n\t}\n\n\t&__list {\n\t\twidth: 100%;\n\t\tmax-height: 284px;\n\t\toverflow-y: auto;\n\t\tmargin-top: var(--default-grid-baseline);\n\t\tpadding: var(--default-grid-baseline);\n\n\t\t:deep(.button-vue) {\n\t\t\tborder-radius: var(--border-radius-large) !important;\n\t\t\tspan {\n\t\t\t\tfont-weight: initial;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__empty-content {\n\t\tmargin-top: calc(var(--default-grid-baseline) * 3);\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchableList.vue?vue&type=template&id=7cf71a2c&scoped=true\"\nimport script from \"./SearchableList.vue?vue&type=script&lang=js\"\nexport * from \"./SearchableList.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchableList.vue?vue&type=style&index=0&id=7cf71a2c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7cf71a2c\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcPopover',{attrs:{\"shown\":_vm.opened},on:{\"show\":function($event){_vm.opened = true},\"hide\":function($event){_vm.opened = false}},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_vm._t(\"trigger\")]},proxy:true}],null,true)},[_vm._v(\" \"),_c('div',{staticClass:\"searchable-list__wrapper\"},[_c('NcTextField',{attrs:{\"value\":_vm.searchTerm,\"label\":_vm.labelText,\"trailing-button-icon\":\"close\",\"show-trailing-button\":_vm.searchTerm !== ''},on:{\"update:value\":[function($event){_vm.searchTerm=$event},_vm.searchTermChanged],\"trailing-button-click\":_vm.clearSearch}},[_c('Magnify',{attrs:{\"size\":20}})],1),_vm._v(\" \"),(_vm.filteredList.length > 0)?_c('ul',{staticClass:\"searchable-list__list\"},_vm._l((_vm.filteredList),function(element){return _c('li',{key:element.id,attrs:{\"title\":element.displayName,\"role\":\"button\"}},[_c('NcButton',{attrs:{\"alignment\":\"start\",\"type\":\"tertiary\",\"wide\":true},on:{\"click\":function($event){return _vm.itemSelected(element)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('NcAvatar',{attrs:{\"user\":element.user,\"show-user-status\":false,\"hide-favorite\":false}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(element.displayName)+\"\\n\\t\\t\\t\\t\")])],1)}),0):_c('div',{staticClass:\"searchable-list__empty-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.emptyContentText},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AlertCircleOutline')]},proxy:true}])})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=script&lang=js\"","<template>\n\t<NcListItem class=\"result-items__item\"\n\t\t:name=\"title\"\n\t\t:bold=\"false\"\n\t\t:href=\"resourceUrl\"\n\t\ttarget=\"_self\">\n\t\t<template #icon>\n\t\t\t<div aria-hidden=\"true\"\n\t\t\t\tclass=\"result-items__item-icon\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t'result-items__item-icon--rounded': rounded,\n\t\t\t\t\t'result-items__item-icon--no-preview': !isValidIconOrPreviewUrl(thumbnailUrl),\n\t\t\t\t\t'result-items__item-icon--with-thumbnail': isValidIconOrPreviewUrl(thumbnailUrl),\n\t\t\t\t\t[icon]: !isValidIconOrPreviewUrl(icon),\n\t\t\t\t}\"\n\t\t\t\t:style=\"{\n\t\t\t\t\tbackgroundImage: isValidIconOrPreviewUrl(icon) ? `url(${icon})` : '',\n\t\t\t\t}\">\n\t\t\t\t<img v-if=\"isValidIconOrPreviewUrl(thumbnailUrl) && !thumbnailHasError\"\n\t\t\t\t\t:src=\"thumbnailUrl\"\n\t\t\t\t\t@error=\"thumbnailErrorHandler\">\n\t\t\t</div>\n\t\t</template>\n\t\t<template #subname>\n\t\t\t{{ subline }}\n\t\t</template>\n\t</NcListItem>\n</template>\n\n<script>\nimport NcListItem from '@nextcloud/vue/dist/Components/NcListItem.js'\n\nexport default {\n\tname: 'SearchResult',\n\tcomponents: {\n\t\tNcListItem,\n\t},\n\tprops: {\n\t\tthumbnailUrl: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tsubline: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\tresourceUrl: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\trounded: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tquery: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Only used for the first result as a visual feedback\n\t\t * so we can keep the search input focused but pressing\n\t\t * enter still opens the first result\n\t\t */\n\t\tfocused: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tthumbnailHasError: false,\n\t\t}\n\t},\n\twatch: {\n\t\tthumbnailUrl() {\n\t\t\tthis.thumbnailHasError = false\n\t\t},\n\t},\n\tmethods: {\n\t\tisValidIconOrPreviewUrl(url) {\n\t\t\treturn /^https?:\\/\\//.test(url) || url.startsWith('/')\n\t\t},\n\t\tthumbnailErrorHandler() {\n\t\t\tthis.thumbnailHasError = true\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use \"sass:math\";\n$clickable-area: 44px;\n$margin: 10px;\n\n.result-items {\n    &__item {\n\n    ::v-deep a {\n            border-radius: 12px;\n            border: 2px solid transparent;\n            border-radius: var(--border-radius-large) !important;\n\n            &--focused {\n                background-color: var(--color-background-hover);\n            }\n\n            &:active,\n            &:hover,\n            &:focus {\n                background-color: var(--color-background-hover);\n                border: 2px solid var(--color-border-maxcontrast);\n            }\n\n            * {\n                cursor: pointer;\n            }\n\n        }\n\n        &-icon {\n            overflow: hidden;\n            width: $clickable-area;\n            height: $clickable-area;\n            border-radius: var(--border-radius);\n            background-repeat: no-repeat;\n            background-position: center center;\n            background-size: 32px;\n\n            &--rounded {\n                border-radius: math.div($clickable-area, 2);\n            }\n\n            &--no-preview {\n                background-size: 32px;\n            }\n\n            &--with-thumbnail {\n                background-size: cover;\n            }\n\n            &--with-thumbnail:not(&--rounded) {\n                // compensate for border\n                max-width: $clickable-area - 2px;\n                max-height: $clickable-area - 2px;\n                border: 1px solid var(--color-border);\n            }\n\n            img {\n                // Make sure to keep ratio\n                width: 100%;\n                height: 100%;\n\n                object-fit: cover;\n                object-position: center;\n            }\n        }\n\n    }\n}\n</style>\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SearchResult.vue?vue&type=template&id=67d9a3cf&scoped=true\"\nimport script from \"./SearchResult.vue?vue&type=script&lang=js\"\nexport * from \"./SearchResult.vue?vue&type=script&lang=js\"\nimport style0 from \"./SearchResult.vue?vue&type=style&index=0&id=67d9a3cf&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"67d9a3cf\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcListItem',{staticClass:\"result-items__item\",attrs:{\"name\":_vm.title,\"bold\":false,\"href\":_vm.resourceUrl,\"target\":\"_self\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('div',{staticClass:\"result-items__item-icon\",class:{\n\t\t\t\t'result-items__item-icon--rounded': _vm.rounded,\n\t\t\t\t'result-items__item-icon--no-preview': !_vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl),\n\t\t\t\t'result-items__item-icon--with-thumbnail': _vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl),\n\t\t\t\t[_vm.icon]: !_vm.isValidIconOrPreviewUrl(_vm.icon),\n\t\t\t},style:({\n\t\t\t\tbackgroundImage: _vm.isValidIconOrPreviewUrl(_vm.icon) ? `url(${_vm.icon})` : '',\n\t\t\t}),attrs:{\"aria-hidden\":\"true\"}},[(_vm.isValidIconOrPreviewUrl(_vm.thumbnailUrl) && !_vm.thumbnailHasError)?_c('img',{attrs:{\"src\":_vm.thumbnailUrl},on:{\"error\":_vm.thumbnailErrorHandler}}):_vm._e()])]},proxy:true},{key:\"subname\",fn:function(){return [_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.subline)+\"\\n\\t\")]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2023, Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { generateOcsUrl, generateUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\n\n/**\n * Create a cancel token\n *\n * @return {import('axios').CancelTokenSource}\n */\nconst createCancelToken = () => axios.CancelToken.source()\n\n/**\n * Get the list of available search providers\n *\n * @return {Promise<Array>}\n */\nexport async function getProviders() {\n\ttry {\n\t\tconst { data } = await axios.get(generateOcsUrl('search/providers'), {\n\t\t\tparams: {\n\t\t\t\t// Sending which location we're currently at\n\t\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t\t},\n\t\t})\n\t\tif ('ocs' in data && 'data' in data.ocs && Array.isArray(data.ocs.data) && data.ocs.data.length > 0) {\n\t\t\t// Providers are sorted by the api based on their order key\n\t\t\treturn data.ocs.data\n\t\t}\n\t} catch (error) {\n\t\tconsole.error(error)\n\t}\n\treturn []\n}\n\n/**\n * Get the list of available search providers\n *\n * @param {object} options destructuring object\n * @param {string} options.type the type to search\n * @param {string} options.query the search\n * @param {number|string|undefined} options.cursor the offset for paginated searches\n * @param {string} options.since the search\n * @param {string} options.until the search\n * @param {string} options.limit the search\n * @param {string} options.person the search\n * @return {object} {request: Promise, cancel: Promise}\n */\nexport function search({ type, query, cursor, since, until, limit, person }) {\n\t/**\n\t * Generate an axios cancel token\n\t */\n\tconst cancelToken = createCancelToken()\n\n\tconst request = async () => axios.get(generateOcsUrl('search/providers/{type}/search', { type }), {\n\t\tcancelToken: cancelToken.token,\n\t\tparams: {\n\t\t\tterm: query,\n\t\t\tcursor,\n\t\t\tsince,\n\t\t\tuntil,\n\t\t\tlimit,\n\t\t\tperson,\n\t\t\t// Sending which location we're currently at\n\t\t\tfrom: window.location.pathname.replace('/index.php', '') + window.location.search,\n\t\t},\n\t})\n\n\treturn {\n\t\trequest,\n\t\tcancel: cancelToken.cancel,\n\t}\n}\n\n/**\n * Get the list of active contacts\n *\n * @param {object} filter filter contacts by string\n * @param filter.searchTerm\n * @return {object} {request: Promise}\n */\nexport async function getContacts({ searchTerm }) {\n\tconst { data: { contacts } } = await axios.post(generateUrl('/contactsmenu/contacts'), {\n\t\tfilter: searchTerm,\n\t})\n\t/*\n\t * Add authenticated user to list of contacts for search filter\n\t * If authtenicated user is searching/filtering, do not add them to the list\n\t */\n\tif (!searchTerm) {\n\t\tlet authenticatedUser = getCurrentUser()\n\t\tauthenticatedUser = {\n\t\t\tid: authenticatedUser.uid,\n\t\t\tfullName: authenticatedUser.displayName,\n\t\t\temailAddresses: [],\n\t\t  }\n\t\tcontacts.unshift(authenticatedUser)\n\t\treturn contacts\n\t  }\n\n\treturn contacts\n}\n","<template>\n\t<NcModal id=\"unified-search\"\n\t\tref=\"unifiedSearchModal\"\n\t\t:show.sync=\"internalIsVisible\"\n\t\t:clear-view-delay=\"0\"\n\t\t@close=\"closeModal\">\n\t\t<CustomDateRangeModal :is-open=\"showDateRangeModal\"\n\t\t\tclass=\"unified-search__date-range\"\n\t\t\t@set:custom-date-range=\"setCustomDateRange\"\n\t\t\t@update:is-open=\"showDateRangeModal = $event\" />\n\t\t<!-- Unified search form -->\n\t\t<div ref=\"unifiedSearch\" class=\"unified-search-modal\">\n\t\t\t<h2>{{ t('core', 'Unified search') }}</h2>\n\t\t\t<NcInputField ref=\"searchInput\"\n\t\t\t\t:value.sync=\"searchQuery\"\n\t\t\t\ttype=\"text\"\n\t\t\t\t:label=\"t('core', 'Search apps, files, tags, messages') + '...'\"\n\t\t\t\t@update:value=\"debouncedFind\" />\n\t\t\t<div class=\"unified-search-modal__filters\">\n\t\t\t\t<NcActions :menu-name=\"t('core', 'Apps and Settings')\" :open.sync=\"providerActionMenuIsOpen\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<ListBox :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcActionButton v-for=\"provider in providers\" :key=\"provider.id\" @click=\"addProviderFilter(provider)\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<img :src=\"provider.icon\">\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('core', provider.name) }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<NcActions :menu-name=\"t('core', 'Date')\" :open.sync=\"dateActionMenuIsOpen\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CalendarRangeIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('today')\">\n\t\t\t\t\t\t{{ t('core', 'Today') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('7days')\">\n\t\t\t\t\t\t{{ t('core', 'Last 7 days') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('30days')\">\n\t\t\t\t\t\t{{ t('core', 'Last 30 days') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('thisyear')\">\n\t\t\t\t\t\t{{ t('core', 'This year') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('lastyear')\">\n\t\t\t\t\t\t{{ t('core', 'Last year') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"applyQuickDateRange('custom')\">\n\t\t\t\t\t\t{{ t('core', 'Custom date range') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<SearchableList :label-text=\"t('core', 'Search people')\"\n\t\t\t\t\t:search-list=\"userContacts\"\n\t\t\t\t\t:empty-content-text=\"t('core', 'Not found')\"\n\t\t\t\t\t@search-term-change=\"debouncedFilterContacts\"\n\t\t\t\t\t@item-selected=\"applyPersonFilter\">\n\t\t\t\t\t<template #trigger>\n\t\t\t\t\t\t<NcButton>\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<AccountGroup :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ t('core', 'People') }}\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</template>\n\t\t\t\t</SearchableList>\n\t\t\t</div>\n\t\t\t<div class=\"unified-search-modal__filters-applied\">\n\t\t\t\t<FilterChip v-for=\"filter in filters\"\n\t\t\t\t\t:key=\"filter.id\"\n\t\t\t\t\t:text=\"filter.name ?? filter.text\"\n\t\t\t\t\t:pretext=\"''\"\n\t\t\t\t\t@delete=\"removeFilter(filter)\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcAvatar v-if=\"filter.type === 'person'\"\n\t\t\t\t\t\t\t:user=\"filter.user\"\n\t\t\t\t\t\t\t:size=\"24\"\n\t\t\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t\t\t:hide-favorite=\"false\" />\n\t\t\t\t\t\t<CalendarRangeIcon v-else-if=\"filter.type === 'date'\" />\n\t\t\t\t\t\t<img v-else :src=\"filter.icon\" alt=\"\">\n\t\t\t\t\t</template>\n\t\t\t\t</FilterChip>\n\t\t\t</div>\n\t\t\t<div v-if=\"noContentInfo.show\" class=\"unified-search-modal__no-content\">\n\t\t\t\t<NcEmptyContent :name=\"noContentInfo.text\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<component :is=\"noContentInfo.icon\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcEmptyContent>\n\t\t\t</div>\n\t\t\t<div v-for=\"providerResult in results\" :key=\"providerResult.id\" class=\"unified-search-modal__results\">\n\t\t\t\t<div class=\"results\">\n\t\t\t\t\t<div class=\"result-title\">\n\t\t\t\t\t\t<span>{{ providerResult.provider }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<ul class=\"result-items\">\n\t\t\t\t\t\t<SearchResult v-for=\"(result, index) in providerResult.results\" :key=\"index\" v-bind=\"result\" />\n\t\t\t\t\t</ul>\n\t\t\t\t\t<div class=\"result-footer\">\n\t\t\t\t\t\t<NcButton type=\"tertiary-no-background\" @click=\"loadMoreResultsForProvider(providerResult.id)\">\n\t\t\t\t\t\t\t{{ t('core', 'Load more results') }}\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t\t<NcButton v-if=\"providerResult.inAppSearch\" alignment=\"end-reverse\" type=\"tertiary-no-background\">\n\t\t\t\t\t\t\t{{ t('core', 'Search in') }} {{ providerResult.provider }}\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div v-if=\"supportFiltering()\" class=\"unified-search-modal__results\">\n\t\t\t\t<NcButton @click=\"closeModal\">\n\t\t\t\t\t{{ t('core', 'Filter in current view') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<FilterIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport AccountGroup from 'vue-material-design-icons/AccountGroup.vue'\nimport CalendarRangeIcon from 'vue-material-design-icons/CalendarRange.vue'\nimport CustomDateRangeModal from '../components/UnifiedSearch/CustomDateRangeModal.vue'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\nimport FilterIcon from 'vue-material-design-icons/Filter.vue'\nimport FilterChip from '../components/UnifiedSearch/SearchFilterChip.vue'\nimport ListBox from 'vue-material-design-icons/ListBox.vue'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcEmptyContent from '@nextcloud/vue/dist/Components/NcEmptyContent.js'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport NcModal from '@nextcloud/vue/dist/Components/NcModal.js'\nimport MagnifyIcon from 'vue-material-design-icons/Magnify.vue'\nimport SearchableList from '../components/UnifiedSearch/SearchableList.vue'\nimport SearchResult from '../components/UnifiedSearch/SearchResult.vue'\n\nimport debounce from 'debounce'\nimport { emit } from '@nextcloud/event-bus'\nimport { getProviders, search as unifiedSearch, getContacts } from '../services/UnifiedSearchService.js'\n\nexport default {\n\tname: 'UnifiedSearchModal',\n\tcomponents: {\n\t\tArrowRight,\n\t\tAccountGroup,\n\t\tCalendarRangeIcon,\n\t\tCustomDateRangeModal,\n\t\tDotsHorizontalIcon,\n\t\tFilterIcon,\n\t\tFilterChip,\n\t\tListBox,\n\t\tNcActions,\n\t\tNcActionButton,\n\t\tNcAvatar,\n\t\tNcButton,\n\t\tNcEmptyContent,\n\t\tNcModal,\n\t\tNcInputField,\n\t\tMagnifyIcon,\n\t\tSearchableList,\n\t\tSearchResult,\n\t},\n\tprops: {\n\t\tisVisible: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tproviders: [],\n\t\t\tproviderActionMenuIsOpen: false,\n\t\t\tdateActionMenuIsOpen: false,\n\t\t\tproviderResultLimit: 5,\n\t\t\tdateFilter: { id: 'date', type: 'date', text: '', startFrom: null, endAt: null },\n\t\t\tpersonFilter: { id: 'person', type: 'person', name: '' },\n\t\t\tdateFilterIsApplied: false,\n\t\t\tpersonFilterIsApplied: false,\n\t\t\tfilteredProviders: [],\n\t\t\tsearching: false,\n\t\t\tsearchQuery: '',\n\t\t\tplacessearchTerm: '',\n\t\t\tdateTimeFilter: null,\n\t\t\tfilters: [],\n\t\t\tresults: [],\n\t\t\tcontacts: [],\n\t\t\tdebouncedFind: debounce(this.find, 300),\n\t\t\tdebouncedFilterContacts: debounce(this.filterContacts, 300),\n\t\t\tshowDateRangeModal: false,\n\t\t\tinternalIsVisible: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserContacts: {\n\t\t\tget() {\n\t\t\t\treturn this.contacts\n\t\t\t},\n\t\t},\n\t\tnoContentInfo: {\n\t\t\tget() {\n\t\t\t\tconst isEmptySearch = this.searchQuery.length === 0\n\t\t\t\tconst hasNoResults = this.searchQuery.length > 0 && this.results.length === 0\n\n\t\t\t\treturn {\n\t\t\t\t\tshow: isEmptySearch || hasNoResults,\n\t\t\t\t\ttext: this.searching && hasNoResults ? t('core', 'Searching …') : (isEmptySearch ? t('core', 'Start typing to search') : t('core', 'No matching results')),\n\t\t\t\t\ticon: MagnifyIcon,\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\twatch: {\n\t\tisVisible(value) {\n\t\t\tthis.internalIsVisible = value\n\t\t},\n\t\tinternalIsVisible(value) {\n\t\t\tthis.$emit('update:isVisible', value)\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tif (value) {\n\t\t\t\t\tthis.focusInput()\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t},\n\tmounted() {\n\t\tgetProviders().then((providers) => {\n\t\t\tthis.providers = providers\n\t\t\tconsole.debug('Search providers', this.providers)\n\t\t})\n\t\tgetContacts({ searchTerm: '' }).then((contacts) => {\n\t\t\tthis.contacts = this.mapContacts(contacts)\n\t\t\tconsole.debug('Contacts', this.contacts)\n\t\t})\n\t},\n\tmethods: {\n\t\tfind(query) {\n\t\t\tthis.searching = true\n\t\t\tif (query.length === 0) {\n\t\t\t\tthis.results = []\n\t\t\t\tthis.searching = false\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// Event should probably be refactored at some point to used nextcloud:unified-search.search\n\t\t\temit('nextcloud:unified-search.search', { query })\n\t\t\tconst newResults = []\n\t\t\tconst providersToSearch = this.filteredProviders.length > 0 ? this.filteredProviders : this.providers\n\t\t\tconst searchProvider = (provider, filters) => {\n\t\t\t\tconst params = {\n\t\t\t\t\ttype: provider.id,\n\t\t\t\t\tquery,\n\t\t\t\t\tcursor: null,\n\t\t\t\t}\n\n\t\t\t\tif (filters.dateFilterIsApplied) {\n\t\t\t\t\tif (provider.filters.since && provider.filters.until) {\n\t\t\t\t\t\tparams.since = this.dateFilter.startFrom\n\t\t\t\t\t\tparams.until = this.dateFilter.endAt\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Date filter is applied but provider does not support it, no need to search provider\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (filters.personFilterIsApplied) {\n\t\t\t\t\tif (provider.filters.person) {\n\t\t\t\t\t\tparams.person = this.personFilter.user\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Person filter is applied but provider does not support it, no need to search provider\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.providerResultLimit > 5) {\n\t\t\t\t\tparams.limit = this.providerResultLimit\n\t\t\t\t}\n\n\t\t\t\tconst request = unifiedSearch(params).request\n\n\t\t\t\trequest().then((response) => {\n\t\t\t\t\tnewResults.push({\n\t\t\t\t\t\tid: provider.id,\n\t\t\t\t\t\tprovider: provider.name,\n\t\t\t\t\t\tinAppSearch: provider.inAppSearch,\n\t\t\t\t\t\tresults: response.data.ocs.data.entries,\n\t\t\t\t\t})\n\n\t\t\t\t\tconsole.debug('New results', newResults)\n\t\t\t\t\tconsole.debug('Unified search results:', this.results)\n\n\t\t\t\t\tthis.updateResults(newResults)\n\t\t\t\t\tthis.searching = false\n\t\t\t\t})\n\t\t\t}\n\t\t\tprovidersToSearch.forEach(provider => {\n\t\t\t\tconst dateFilterIsApplied = this.dateFilterIsApplied\n\t\t\t\tconst personFilterIsApplied = this.personFilterIsApplied\n\t\t\t\tsearchProvider(provider, { dateFilterIsApplied, personFilterIsApplied })\n\t\t\t})\n\n\t\t},\n\t\tupdateResults(newResults) {\n\t\t\tlet updatedResults = [...this.results]\n\t\t\t// If filters are applied, remove any previous results for providers that are not in current filters\n\t\t\tif (this.filters.length > 0) {\n\t\t\t\tupdatedResults = updatedResults.filter(result => {\n\t\t\t\t\treturn this.filters.some(filter => filter.id === result.id)\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Process the new results\n\t\t\tnewResults.forEach(newResult => {\n\t\t\t\tconst existingResultIndex = updatedResults.findIndex(result => result.id === newResult.id)\n\t\t\t\tif (existingResultIndex !== -1) {\n\t\t\t\t\tif (newResult.results.length === 0) {\n\t\t\t\t\t\t// If the new results data has no matches for and existing result, remove the existing result\n\t\t\t\t\t\tupdatedResults.splice(existingResultIndex, 1)\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If input triggered a change in existing results, update existing result\n\t\t\t\t\t\tupdatedResults.splice(existingResultIndex, 1, newResult)\n\t\t\t\t\t}\n\t\t\t\t} else if (newResult.results.length > 0) {\n\t\t\t\t\t// Push the new result to the array only if its results array is not empty\n\t\t\t\t\tupdatedResults.push(newResult)\n\t\t\t\t}\n\t\t\t})\n\t\t\tconst sortedResults = updatedResults.slice(0)\n\t\t\t// Order results according to provider preference\n\t\t\tsortedResults.sort((a, b) => {\n\t\t\t\tconst aProvider = this.providers.find(provider => provider.id === a.id)\n\t\t\t\tconst bProvider = this.providers.find(provider => provider.id === b.id)\n\t\t\t\tconst aOrder = aProvider ? aProvider.order : 0\n\t\t\t\tconst bOrder = bProvider ? bProvider.order : 0\n\t\t\t\treturn aOrder - bOrder\n\t\t\t})\n\t\t\tthis.results = sortedResults\n\t\t},\n\t\tmapContacts(contacts) {\n\t\t\treturn contacts.map(contact => {\n\t\t\t\treturn {\n\t\t\t\t\t// id: contact.id,\n\t\t\t\t\t// name: '',\n\t\t\t\t\tdisplayName: contact.fullName,\n\t\t\t\t\tisNoUser: false,\n\t\t\t\t\tsubname: contact.emailAddresses[0] ? contact.emailAddresses[0] : '',\n\t\t\t\t\ticon: '',\n\t\t\t\t\tuser: contact.id,\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\t\tfilterContacts(query) {\n\t\t\tgetContacts({ searchTerm: query }).then((contacts) => {\n\t\t\t\tthis.contacts = this.mapContacts(contacts)\n\t\t\t\tconsole.debug(`Contacts filtered by ${query}`, this.contacts)\n\t\t\t})\n\t\t},\n\t\tapplyPersonFilter(person) {\n\t\t\tthis.personFilterIsApplied = true\n\t\t\tconst existingPersonFilter = this.filters.findIndex(filter => filter.id === person.id)\n\t\t\tif (existingPersonFilter === -1) {\n\t\t\t\tthis.personFilter.id = person.id\n\t\t\t\tthis.personFilter.user = person.user\n\t\t\t\tthis.personFilter.name = person.displayName\n\t\t\t\tthis.filters.push(this.personFilter)\n\t\t\t} else {\n\t\t\t\tthis.filters[existingPersonFilter].id = person.id\n\t\t\t\tthis.filters[existingPersonFilter].user = person.user\n\t\t\t\tthis.filters[existingPersonFilter].name = person.displayName\n\t\t\t}\n\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t\tconsole.debug('Person filter applied', person)\n\t\t},\n\t\tloadMoreResultsForProvider(providerId) {\n\t\t\tthis.providerResultLimit += 5\n\t\t\tthis.filters = this.filters.filter(filter => filter.type !== 'provider')\n\t\t\tconst provider = this.providers.find(provider => provider.id === providerId)\n\t\t\tthis.addProviderFilter(provider, true)\n\t\t},\n\t\taddProviderFilter(providerFilter, loadMoreResultsForProvider = false) {\n\t\t\tif (!providerFilter.id) return\n\t\t\tthis.providerResultLimit = loadMoreResultsForProvider ? this.providerResultLimit : 5\n\t\t\tthis.providerActionMenuIsOpen = false\n\t\t\tconst existingFilter = this.filteredProviders.find(existing => existing.id === providerFilter.id)\n\t\t\tif (!existingFilter) {\n\t\t\t\tthis.filteredProviders.push({ id: providerFilter.id, name: providerFilter.name, icon: providerFilter.icon, type: 'provider', filters: providerFilter.filters })\n\t\t\t}\n\t\t\tthis.filters = this.syncProviderFilters(this.filters, this.filteredProviders)\n\t\t\tconsole.debug('Search filters (newly added)', this.filters)\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tremoveFilter(filter) {\n\t\t\tif (filter.type === 'provider') {\n\t\t\t\tfor (let i = 0; i < this.filteredProviders.length; i++) {\n\t\t\t\t\tif (this.filteredProviders[i].id === filter.id) {\n\t\t\t\t\t\tthis.filteredProviders.splice(i, 1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.filters = this.syncProviderFilters(this.filters, this.filteredProviders)\n\t\t\t\tconsole.debug('Search filters (recently removed)', this.filters)\n\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < this.filters.length; i++) {\n\t\t\t\t\t// Remove date and person filter\n\t\t\t\t\tif (this.filters[i].id === 'date' || this.filters[i].id === filter.id) {\n\t\t\t\t\t\tthis.dateFilterIsApplied = false\n\t\t\t\t\t\tthis.filters.splice(i, 1)\n\t\t\t\t\t\tif (filter.type === 'person') {\n\t\t\t\t\t\t\tthis.personFilterIsApplied = false\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tsyncProviderFilters(firstArray, secondArray) {\n\t\t\t// Create a copy of the first array to avoid modifying it directly.\n\t\t\tconst synchronizedArray = firstArray.slice()\n\t\t\t// Remove items from the synchronizedArray that are not in the secondArray.\n\t\t\tsynchronizedArray.forEach((item, index) => {\n\t\t\t\tconst itemId = item.id\n\t\t\t\tif (item.type === 'provider') {\n\t\t\t\t\tif (!secondArray.some(secondItem => secondItem.id === itemId)) {\n\t\t\t\t\t\tsynchronizedArray.splice(index, 1)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\t// Add items to the synchronizedArray that are in the secondArray but not in the firstArray.\n\t\t\tsecondArray.forEach(secondItem => {\n\t\t\t\tconst itemId = secondItem.id\n\t\t\t\tif (secondItem.type === 'provider') {\n\t\t\t\t\tif (!synchronizedArray.some(item => item.id === itemId)) {\n\t\t\t\t\t\tsynchronizedArray.push(secondItem)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\treturn synchronizedArray\n\t\t},\n\t\tupdateDateFilter() {\n\t\t\tconst currFilterIndex = this.filters.findIndex(filter => filter.id === 'date')\n\t\t\tif (currFilterIndex !== -1) {\n\t\t\t\tthis.filters[currFilterIndex] = this.dateFilter\n\t\t\t} else {\n\t\t\t\tthis.filters.push(this.dateFilter)\n\t\t\t}\n\t\t\tthis.dateFilterIsApplied = true\n\t\t\tthis.debouncedFind(this.searchQuery)\n\t\t},\n\t\tapplyQuickDateRange(range) {\n\t\t\tthis.dateActionMenuIsOpen = false\n\t\t\tconst today = new Date()\n\t\t\tlet startDate\n\t\t\tlet endDate\n\n\t\t\tswitch (range) {\n\t\t\tcase 'today':\n\t\t\t\t// For 'Today', both start and end are set to today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'Today')\n\t\t\t\tbreak\n\t\t\tcase '7days':\n\t\t\t\t// For 'Last 7 days', start date is 7 days ago, end is today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 6, 0, 0, 0, 0)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last 7 days')\n\t\t\t\tbreak\n\t\t\tcase '30days':\n\t\t\t\t// For 'Last 30 days', start date is 30 days ago, end is today\n\t\t\t\tstartDate = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 29, 0, 0, 0, 0)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last 30 days')\n\t\t\t\tbreak\n\t\t\tcase 'thisyear':\n\t\t\t\t// For 'This year', start date is the first day of the year, end is the last day of the year\n\t\t\t\tstartDate = new Date(today.getFullYear(), 0, 1, 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear(), 11, 31, 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'This year')\n\t\t\t\tbreak\n\t\t\tcase 'lastyear':\n\t\t\t\t// For 'Last year', start date is the first day of the previous year, end is the last day of the previous year\n\t\t\t\tstartDate = new Date(today.getFullYear() - 1, 0, 1, 0, 0, 0, 0)\n\t\t\t\tendDate = new Date(today.getFullYear() - 1, 11, 31, 23, 59, 59, 999)\n\t\t\t\tthis.dateFilter.text = t('core', 'Last year')\n\t\t\t\tbreak\n\t\t\tcase 'custom':\n\t\t\t\tthis.showDateRangeModal = true\n\t\t\t\treturn\n\t\t\tdefault:\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.dateFilter.startFrom = startDate\n\t\t\tthis.dateFilter.endAt = endDate\n\t\t\tthis.updateDateFilter()\n\n\t\t},\n\t\tsetCustomDateRange(event) {\n\t\t\tconsole.debug('Custom date range', event)\n\t\t\tthis.dateFilter.startFrom = event.startFrom\n\t\t\tthis.dateFilter.endAt = event.endAt\n\t\t\tthis.dateFilter.text = t('core', `Between ${this.dateFilter.startFrom.toLocaleDateString()} and ${this.dateFilter.endAt.toLocaleDateString()}`)\n\t\t\tthis.updateDateFilter()\n\t\t},\n\t\tfocusInput() {\n\t\t\tthis.$refs.searchInput.$el.children[0].children[0].focus()\n\t\t},\n\t\tcloseModal() {\n\t\t\tthis.internalIsVisible = false\n\t\t\tthis.searchQuery = ''\n\t\t},\n\t\tsupportFiltering() {\n\t\t\t/* Hard coded apps for the moment this would be improved in coming updates. */\n\t\t\tconst providerPaths = ['/settings/users', '/apps/files', '/apps/deck']\n\t\t\tconst currentPath = window.location.pathname.replace('/index.php', '')\n\t\t\tconst containsProvider = providerPaths.some(path => currentPath.includes(path))\n\t\t\treturn containsProvider\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.unified-search-modal {\n\tpadding: 10px 20px 10px 20px;\n\theight: 60%;\n\n\t&__heading {\n\t\tfont-size: 16px;\n\t\tfont-weight: bolder;\n\t\tline-height: 2em;\n\t\tmargin-bottom: 0;\n\t}\n\n\t&__filters {\n\t\tdisplay: flex;\n\t\tpadding-top: 4px;\n\t\tjustify-content: left;\n\n\t\t>* {\n\t\t\tmargin-right: 4px;\n\n\t\t}\n\n\t}\n\n\t&__filters-applied {\n\t\tpadding-top: 4px;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t}\n\n\t&__no-content {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 100%;\n\t}\n\n\t&__results {\n\t\tpadding: 10px;\n\n\t\t.results {\n\n\t\t\t.result-title {\n\t\t\t\tspan {\n\t\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t\t\tfont-weight: bolder;\n\t\t\t\t\tfont-size: 16px;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.result-footer {\n\t\t\t\tjustify-content: space-between;\n\t\t\t\talign-items: center;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t}\n}\n\ndiv.v-popper__wrapper {\n\tul {\n\t\tli {\n\t\t\t::v-deep button.action-button {\n\t\t\t\talign-items: center !important;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 20px;\n\t\t\t\t\tmargin: 0 4px;\n\t\t\t\t\tfilter: var(--background-invert-if-bright);\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=15aef23c&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearchModal.vue?vue&type=style&index=0&id=15aef23c&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearchModal.vue?vue&type=template&id=15aef23c&scoped=true\"\nimport script from \"./UnifiedSearchModal.vue?vue&type=script&lang=js\"\nexport * from \"./UnifiedSearchModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./UnifiedSearchModal.vue?vue&type=style&index=0&id=15aef23c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"15aef23c\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcModal',{ref:\"unifiedSearchModal\",attrs:{\"id\":\"unified-search\",\"show\":_vm.internalIsVisible,\"clear-view-delay\":0},on:{\"update:show\":function($event){_vm.internalIsVisible=$event},\"close\":_vm.closeModal}},[_c('CustomDateRangeModal',{staticClass:\"unified-search__date-range\",attrs:{\"is-open\":_vm.showDateRangeModal},on:{\"set:custom-date-range\":_vm.setCustomDateRange,\"update:is-open\":function($event){_vm.showDateRangeModal = $event}}}),_vm._v(\" \"),_c('div',{ref:\"unifiedSearch\",staticClass:\"unified-search-modal\"},[_c('h2',[_vm._v(_vm._s(_vm.t('core', 'Unified search')))]),_vm._v(\" \"),_c('NcInputField',{ref:\"searchInput\",attrs:{\"value\":_vm.searchQuery,\"type\":\"text\",\"label\":_vm.t('core', 'Search apps, files, tags, messages') + '...'},on:{\"update:value\":[function($event){_vm.searchQuery=$event},_vm.debouncedFind]}}),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-modal__filters\"},[_c('NcActions',{attrs:{\"menu-name\":_vm.t('core', 'Apps and Settings'),\"open\":_vm.providerActionMenuIsOpen},on:{\"update:open\":function($event){_vm.providerActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ListBox',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.providers),function(provider){return _c('NcActionButton',{key:provider.id,on:{\"click\":function($event){return _vm.addProviderFilter(provider)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('img',{attrs:{\"src\":provider.icon}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', provider.name))+\"\\n\\t\\t\\t\\t\")])})],2),_vm._v(\" \"),_c('NcActions',{attrs:{\"menu-name\":_vm.t('core', 'Date'),\"open\":_vm.dateActionMenuIsOpen},on:{\"update:open\":function($event){_vm.dateActionMenuIsOpen=$event}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CalendarRangeIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('today')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Today'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('7days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 7 days'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('30days')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last 30 days'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('thisyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'This year'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('lastyear')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Last year'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.applyQuickDateRange('custom')}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Custom date range'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),_c('SearchableList',{attrs:{\"label-text\":_vm.t('core', 'Search people'),\"search-list\":_vm.userContacts,\"empty-content-text\":_vm.t('core', 'Not found')},on:{\"search-term-change\":_vm.debouncedFilterContacts,\"item-selected\":_vm.applyPersonFilter},scopedSlots:_vm._u([{key:\"trigger\",fn:function(){return [_c('NcButton',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountGroup',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'People'))+\"\\n\\t\\t\\t\\t\\t\")])]},proxy:true}])})],1),_vm._v(\" \"),_c('div',{staticClass:\"unified-search-modal__filters-applied\"},_vm._l((_vm.filters),function(filter){return _c('FilterChip',{key:filter.id,attrs:{\"text\":filter.name ?? filter.text,\"pretext\":''},on:{\"delete\":function($event){return _vm.removeFilter(filter)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(filter.type === 'person')?_c('NcAvatar',{attrs:{\"user\":filter.user,\"size\":24,\"disable-menu\":true,\"show-user-status\":false,\"hide-favorite\":false}}):(filter.type === 'date')?_c('CalendarRangeIcon'):_c('img',{attrs:{\"src\":filter.icon,\"alt\":\"\"}})]},proxy:true}],null,true)})}),1),_vm._v(\" \"),(_vm.noContentInfo.show)?_c('div',{staticClass:\"unified-search-modal__no-content\"},[_c('NcEmptyContent',{attrs:{\"name\":_vm.noContentInfo.text},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(_vm.noContentInfo.icon,{tag:\"component\"})]},proxy:true}],null,false,604901229)})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.results),function(providerResult){return _c('div',{key:providerResult.id,staticClass:\"unified-search-modal__results\"},[_c('div',{staticClass:\"results\"},[_c('div',{staticClass:\"result-title\"},[_c('span',[_vm._v(_vm._s(providerResult.provider))])]),_vm._v(\" \"),_c('ul',{staticClass:\"result-items\"},_vm._l((providerResult.results),function(result,index){return _c('SearchResult',_vm._b({key:index},'SearchResult',result,false))}),1),_vm._v(\" \"),_c('div',{staticClass:\"result-footer\"},[_c('NcButton',{attrs:{\"type\":\"tertiary-no-background\"},on:{\"click\":function($event){return _vm.loadMoreResultsForProvider(providerResult.id)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Load more results'))+\"\\n\\t\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(providerResult.inAppSearch)?_c('NcButton',{attrs:{\"alignment\":\"end-reverse\",\"type\":\"tertiary-no-background\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowRight',{attrs:{\"size\":20}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Search in'))+\" \"+_vm._s(providerResult.provider)+\"\\n\\t\\t\\t\\t\\t\\t\")]):_vm._e()],1)])])}),_vm._v(\" \"),(_vm.supportFiltering())?_c('div',{staticClass:\"unified-search-modal__results\"},[_c('NcButton',{on:{\"click\":_vm.closeModal},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('FilterIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2021673347)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('core', 'Filter in current view'))+\"\\n\\t\\t\\t\\t\")])],1):_vm._e()],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"," <!--\n  - @copyright Copyright (c) 2020 Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n  -\n  - @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n  -\n  - @license GNU AGPL version 3 or any later version\n  -\n  - This program is free software: you can redistribute it and/or modify\n  - it under the terms of the GNU Affero General Public License as\n  - published by the Free Software Foundation, either version 3 of the\n  - License, or (at your option) any later version.\n  -\n  - This program is distributed in the hope that it will be useful,\n  - but WITHOUT ANY WARRANTY; without even the implied warranty of\n  - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n  - GNU Affero General Public License for more details.\n  -\n  - You should have received a copy of the GNU Affero General Public License\n  - along with this program.  If not, see <http://www.gnu.org/licenses/>.\n  -\n  -->\n<template>\n\t<div class=\"header-menu\">\n\t\t<NcButton class=\"unified-search__button\" :aria-label=\"t('core', 'Unified search')\" @click=\"toggleUnifiedSearch\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify class=\"unified-search__trigger\" :size=\"22\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<UnifiedSearchModal :class=\"'unified-search-modal'\" :is-visible=\"showUnifiedSearch\" @update:isVisible=\"handleModalVisibilityChange\" />\n\t</div>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport Magnify from 'vue-material-design-icons/Magnify.vue'\nimport UnifiedSearchModal from './UnifiedSearchModal.vue'\n\nexport default {\n\tname: 'UnifiedSearch',\n\tcomponents: {\n\t\tNcButton,\n\t\tMagnify,\n\t\tUnifiedSearchModal,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tshowUnifiedSearch: false,\n\t\t}\n\t},\n\tmounted() {\n\t\tconsole.debug('Unified search initialized!')\n\t},\n\tmethods: {\n\t\ttoggleUnifiedSearch() {\n\t\t\tthis.showUnifiedSearch = !this.showUnifiedSearch\n\t\t},\n\t\thandleModalVisibilityChange(newVisibilityVal) {\n\t\t\tthis.showUnifiedSearch = newVisibilityVal\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.header-menu {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t.unified-search__button {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--header-height);\n\t\t// height: var(--header-height);\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tcursor: pointer;\n\t\topacity: .85;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\t\tfilter: none !important;\n\t\tcolor: var(--color-primary-text) !important;\n\n\t\t&:hover {\n\t\t\tbackground-color: transparent !important;\n\t\t}\n\t}\n}\n\n.unified-search-modal {\n\t::v-deep .modal-container {\n\t\theight: 80%;\n\t}\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=script&lang=js\"","\n      import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/sass-loader/dist/cjs.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\";\n       export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./UnifiedSearch.vue?vue&type=template&id=3883344d&scoped=true\"\nimport script from \"./UnifiedSearch.vue?vue&type=script&lang=js\"\nexport * from \"./UnifiedSearch.vue?vue&type=script&lang=js\"\nimport style0 from \"./UnifiedSearch.vue?vue&type=style&index=0&id=3883344d&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3883344d\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"header-menu\"},[_c('NcButton',{staticClass:\"unified-search__button\",attrs:{\"aria-label\":_vm.t('core', 'Unified search')},on:{\"click\":_vm.toggleUnifiedSearch},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Magnify',{staticClass:\"unified-search__trigger\",attrs:{\"size\":22}})]},proxy:true}])}),_vm._v(\" \"),_c('UnifiedSearchModal',{class:'unified-search-modal',attrs:{\"is-visible\":_vm.showUnifiedSearch},on:{\"update:isVisible\":_vm.handleModalVisibilityChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2020 Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @author Fon E. Noel NFEBE <fenn25.fn@gmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport Vue from 'vue'\n\nimport UnifiedSearch from './views/UnifiedSearch.vue'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\nconst logger = getLoggerBuilder()\n\t.setApp('unified-search')\n\t.detectUser()\n\t.build()\n\nVue.mixin({\n\tdata() {\n\t\treturn {\n\t\t\tlogger,\n\t\t}\n\t},\n\tmethods: {\n\t\tt,\n\t\tn,\n\t},\n})\n\nexport default new Vue({\n\tel: '#unified-search',\n\t// eslint-disable-next-line vue/match-component-file-name\n\tname: 'UnifiedSearchRoot',\n\trender: h => h(UnifiedSearch),\n})\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-custom-date-modal[data-v-99abc4fc]{padding:10px 20px 10px 20px}.unified-search-custom-date-modal h1[data-v-99abc4fc]{font-size:16px;font-weight:bolder;line-height:2em}.unified-search-custom-date-modal__pickers[data-v-99abc4fc]{display:flex;flex-direction:column}.unified-search-custom-date-modal__footer[data-v-99abc4fc]{display:flex;justify-content:end}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/CustomDateRangeModal.vue\"],\"names\":[],\"mappings\":\"AACA,mDACC,2BAAA,CAEA,sDACC,cAAA,CACA,kBAAA,CACA,eAAA,CAGD,4DACC,YAAA,CACA,qBAAA,CAGD,2DACC,YAAA,CACA,mBAAA\",\"sourcesContent\":[\"\\n.unified-search-custom-date-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\n\\th1 {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t}\\n\\n\\t&__pickers {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&__footer {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: end;\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.chip[data-v-5dc4d462]{display:flex;align-items:center;padding:2px 4px;border:1px solid var(--color-primary-element-light);border-radius:20px;background-color:var(--color-primary-element-light);margin:2px}.chip .icon[data-v-5dc4d462]{display:flex;align-items:center;padding-right:5px}.chip .icon img[data-v-5dc4d462]{width:20px;padding:2px;border-radius:20px;filter:var(--background-invert-if-bright)}.chip .text[data-v-5dc4d462]{margin:0 2px}.chip .close-icon[data-v-5dc4d462]{cursor:pointer}.chip .close-icon[data-v-5dc4d462] :hover{filter:invert(20%)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchFilterChip.vue\"],\"names\":[],\"mappings\":\"AACA,uBACI,YAAA,CACA,kBAAA,CACA,eAAA,CACA,mDAAA,CACA,kBAAA,CACA,mDAAA,CACA,UAAA,CAEA,6BACI,YAAA,CACA,kBAAA,CACA,iBAAA,CAEA,iCACI,UAAA,CACA,WAAA,CACA,kBAAA,CACA,yCAAA,CAIR,6BACI,YAAA,CAGJ,mCACI,cAAA,CAEA,0CACI,kBAAA\",\"sourcesContent\":[\"\\n.chip {\\n    display: flex;\\n    align-items: center;\\n    padding: 2px 4px;\\n    border: 1px solid var(--color-primary-element-light);\\n    border-radius: 20px;\\n    background-color: var(--color-primary-element-light);\\n    margin: 2px;\\n\\n    .icon {\\n        display: flex;\\n        align-items: center;\\n        padding-right: 5px;\\n\\n        img {\\n            width: 20px;\\n            padding: 2px;\\n            border-radius: 20px;\\n            filter: var(--background-invert-if-bright);\\n        }\\n    }\\n\\n    .text {\\n        margin: 0 2px;\\n    }\\n\\n    .close-icon {\\n        cursor: pointer ;\\n\\n        :hover {\\n            filter: invert(20%);\\n        }\\n    }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.result-items__item[data-v-67d9a3cf] a{border-radius:12px;border:2px solid rgba(0,0,0,0);border-radius:var(--border-radius-large) !important}.result-items__item[data-v-67d9a3cf] a--focused{background-color:var(--color-background-hover)}.result-items__item[data-v-67d9a3cf] a:active,.result-items__item[data-v-67d9a3cf] a:hover,.result-items__item[data-v-67d9a3cf] a:focus{background-color:var(--color-background-hover);border:2px solid var(--color-border-maxcontrast)}.result-items__item[data-v-67d9a3cf] a *{cursor:pointer}.result-items__item-icon[data-v-67d9a3cf]{overflow:hidden;width:44px;height:44px;border-radius:var(--border-radius);background-repeat:no-repeat;background-position:center center;background-size:32px}.result-items__item-icon--rounded[data-v-67d9a3cf]{border-radius:22px}.result-items__item-icon--no-preview[data-v-67d9a3cf]{background-size:32px}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]{background-size:cover}.result-items__item-icon--with-thumbnail[data-v-67d9a3cf]:not(.result-items__item-icon--rounded){max-width:42px;max-height:42px;border:1px solid var(--color-border)}.result-items__item-icon img[data-v-67d9a3cf]{width:100%;height:100%;object-fit:cover;object-position:center}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchResult.vue\"],\"names\":[],\"mappings\":\"AAQI,uCACQ,kBAAA,CACA,8BAAA,CACA,mDAAA,CAEA,gDACI,8CAAA,CAGJ,wIAGI,8CAAA,CACA,gDAAA,CAGJ,yCACI,cAAA,CAKR,0CACI,eAAA,CACA,UA9BK,CA+BL,WA/BK,CAgCL,kCAAA,CACA,2BAAA,CACA,iCAAA,CACA,oBAAA,CAEA,mDACI,kBAAA,CAGJ,sDACI,oBAAA,CAGJ,0DACI,qBAAA,CAGJ,iGAEI,cAAA,CACA,eAAA,CACA,oCAAA,CAGJ,8CAEI,UAAA,CACA,WAAA,CAEA,gBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n@use \\\"sass:math\\\";\\n$clickable-area: 44px;\\n$margin: 10px;\\n\\n.result-items {\\n    &__item {\\n\\n    ::v-deep a {\\n            border-radius: 12px;\\n            border: 2px solid transparent;\\n            border-radius: var(--border-radius-large) !important;\\n\\n            &--focused {\\n                background-color: var(--color-background-hover);\\n            }\\n\\n            &:active,\\n            &:hover,\\n            &:focus {\\n                background-color: var(--color-background-hover);\\n                border: 2px solid var(--color-border-maxcontrast);\\n            }\\n\\n            * {\\n                cursor: pointer;\\n            }\\n\\n        }\\n\\n        &-icon {\\n            overflow: hidden;\\n            width: $clickable-area;\\n            height: $clickable-area;\\n            border-radius: var(--border-radius);\\n            background-repeat: no-repeat;\\n            background-position: center center;\\n            background-size: 32px;\\n\\n            &--rounded {\\n                border-radius: math.div($clickable-area, 2);\\n            }\\n\\n            &--no-preview {\\n                background-size: 32px;\\n            }\\n\\n            &--with-thumbnail {\\n                background-size: cover;\\n            }\\n\\n            &--with-thumbnail:not(&--rounded) {\\n                // compensate for border\\n                max-width: $clickable-area - 2px;\\n                max-height: $clickable-area - 2px;\\n                border: 1px solid var(--color-border);\\n            }\\n\\n            img {\\n                // Make sure to keep ratio\\n                width: 100%;\\n                height: 100%;\\n\\n                object-fit: cover;\\n                object-position: center;\\n            }\\n        }\\n\\n    }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.searchable-list__wrapper[data-v-7cf71a2c]{padding:calc(var(--default-grid-baseline)*3);display:flex;flex-direction:column;align-items:center;width:250px}.searchable-list__list[data-v-7cf71a2c]{width:100%;max-height:284px;overflow-y:auto;margin-top:var(--default-grid-baseline);padding:var(--default-grid-baseline)}.searchable-list__list[data-v-7cf71a2c] .button-vue{border-radius:var(--border-radius-large) !important}.searchable-list__list[data-v-7cf71a2c] .button-vue span{font-weight:initial}.searchable-list__empty-content[data-v-7cf71a2c]{margin-top:calc(var(--default-grid-baseline)*3)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/components/UnifiedSearch/SearchableList.vue\"],\"names\":[],\"mappings\":\"AAEC,2CACC,4CAAA,CACA,YAAA,CACA,qBAAA,CACA,kBAAA,CACA,WAAA,CAGD,wCACC,UAAA,CACA,gBAAA,CACA,eAAA,CACA,uCAAA,CACA,oCAAA,CAEA,oDACC,mDAAA,CACA,yDACC,mBAAA,CAKH,iDACC,+CAAA\",\"sourcesContent\":[\"\\n.searchable-list {\\n\\t&__wrapper {\\n\\t\\tpadding: calc(var(--default-grid-baseline) * 3);\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\t\\twidth: 250px;\\n\\t}\\n\\n\\t&__list {\\n\\t\\twidth: 100%;\\n\\t\\tmax-height: 284px;\\n\\t\\toverflow-y: auto;\\n\\t\\tmargin-top: var(--default-grid-baseline);\\n\\t\\tpadding: var(--default-grid-baseline);\\n\\n\\t\\t:deep(.button-vue) {\\n\\t\\t\\tborder-radius: var(--border-radius-large) !important;\\n\\t\\t\\tspan {\\n\\t\\t\\t\\tfont-weight: initial;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__empty-content {\\n\\t\\tmargin-top: calc(var(--default-grid-baseline) * 3);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.header-menu[data-v-3883344d]{display:flex;align-items:center;justify-content:center}.header-menu .unified-search__button[data-v-3883344d]{display:flex;align-items:center;justify-content:center;width:var(--header-height);margin:0;padding:0;cursor:pointer;opacity:.85;background-color:rgba(0,0,0,0);border:none;filter:none !important;color:var(--color-primary-text) !important}.header-menu .unified-search__button[data-v-3883344d]:hover{background-color:rgba(0,0,0,0) !important}.unified-search-modal[data-v-3883344d] .modal-container{height:80%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearch.vue\"],\"names\":[],\"mappings\":\"AACA,8BACC,YAAA,CACA,kBAAA,CACA,sBAAA,CAEA,sDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,0BAAA,CAEA,QAAA,CACA,SAAA,CACA,cAAA,CACA,WAAA,CACA,8BAAA,CACA,WAAA,CACA,sBAAA,CACA,0CAAA,CAEA,4DACC,yCAAA,CAMF,wDACC,UAAA\",\"sourcesContent\":[\"\\n.header-menu {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\n\\t.unified-search__button {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--header-height);\\n\\t\\t// height: var(--header-height);\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tcursor: pointer;\\n\\t\\topacity: .85;\\n\\t\\tbackground-color: transparent;\\n\\t\\tborder: none;\\n\\t\\tfilter: none !important;\\n\\t\\tcolor: var(--color-primary-text) !important;\\n\\n\\t\\t&:hover {\\n\\t\\t\\tbackground-color: transparent !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n.unified-search-modal {\\n\\t::v-deep .modal-container {\\n\\t\\theight: 80%;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.unified-search-modal[data-v-15aef23c]{padding:10px 20px 10px 20px;height:60%}.unified-search-modal__heading[data-v-15aef23c]{font-size:16px;font-weight:bolder;line-height:2em;margin-bottom:0}.unified-search-modal__filters[data-v-15aef23c]{display:flex;padding-top:4px;justify-content:left}.unified-search-modal__filters>*[data-v-15aef23c]{margin-right:4px}.unified-search-modal__filters-applied[data-v-15aef23c]{padding-top:4px;display:flex;flex-wrap:wrap}.unified-search-modal__no-content[data-v-15aef23c]{display:flex;align-items:center;height:100%}.unified-search-modal__results[data-v-15aef23c]{padding:10px}.unified-search-modal__results .results .result-title span[data-v-15aef23c]{color:var(--color-primary-element);font-weight:bolder;font-size:16px}.unified-search-modal__results .results .result-footer[data-v-15aef23c]{justify-content:space-between;align-items:center;display:flex}div.v-popper__wrapper ul li[data-v-15aef23c] button.action-button{align-items:center !important}div.v-popper__wrapper ul li[data-v-15aef23c] button.action-button img{width:20px;margin:0 4px;filter:var(--background-invert-if-bright)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./core/src/views/UnifiedSearchModal.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CACA,UAAA,CAEA,gDACC,cAAA,CACA,kBAAA,CACA,eAAA,CACA,eAAA,CAGD,gDACC,YAAA,CACA,eAAA,CACA,oBAAA,CAEA,kDACC,gBAAA,CAMF,wDACC,eAAA,CACA,YAAA,CACA,cAAA,CAGD,mDACC,YAAA,CACA,kBAAA,CACA,WAAA,CAGD,gDACC,YAAA,CAKE,4EACC,kCAAA,CACA,kBAAA,CACA,cAAA,CAIF,wEACC,6BAAA,CACA,kBAAA,CACA,YAAA,CAUD,kEACC,6BAAA,CAEA,sEACC,UAAA,CACA,YAAA,CACA,yCAAA\",\"sourcesContent\":[\"\\n.unified-search-modal {\\n\\tpadding: 10px 20px 10px 20px;\\n\\theight: 60%;\\n\\n\\t&__heading {\\n\\t\\tfont-size: 16px;\\n\\t\\tfont-weight: bolder;\\n\\t\\tline-height: 2em;\\n\\t\\tmargin-bottom: 0;\\n\\t}\\n\\n\\t&__filters {\\n\\t\\tdisplay: flex;\\n\\t\\tpadding-top: 4px;\\n\\t\\tjustify-content: left;\\n\\n\\t\\t>* {\\n\\t\\t\\tmargin-right: 4px;\\n\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__filters-applied {\\n\\t\\tpadding-top: 4px;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t}\\n\\n\\t&__no-content {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\theight: 100%;\\n\\t}\\n\\n\\t&__results {\\n\\t\\tpadding: 10px;\\n\\n\\t\\t.results {\\n\\n\\t\\t\\t.result-title {\\n\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t\\t\\tfont-weight: bolder;\\n\\t\\t\\t\\t\\tfont-size: 16px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.result-footer {\\n\\t\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t}\\n}\\n\\ndiv.v-popper__wrapper {\\n\\tul {\\n\\t\\tli {\\n\\t\\t\\t::v-deep button.action-button {\\n\\t\\t\\t\\talign-items: center !important;\\n\\n\\t\\t\\t\\timg {\\n\\t\\t\\t\\t\\twidth: 20px;\\n\\t\\t\\t\\t\\tmargin: 0 4px;\\n\\t\\t\\t\\t\\tfilter: var(--background-invert-if-bright);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9671;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9671: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], () => (__webpack_require__(48480)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","components","NcButton","NcModal","CalendarRangeIcon","NcDateTimePicker","isOpen","Boolean","required","data","dateFilter","startFrom","endAt","computed","isModalOpen","get","set","value","methods","closeModal","applyCustomRange","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","t","model","callback","$$v","$set","expression","scopedSlots","_u","key","fn","proxy","CloseIcon","text","pretext","deleteChip","filter","_t","length","Z","Symbol","toStringTag","NcPopover","NcTextField","Magnify","AlertCircleOutline","NcAvatar","NcEmptyContent","labelText","searchList","Array","emptyContentText","opened","error","searchTerm","filteredList","element","toLowerCase","some","prop","includes","clearSearch","itemSelected","searchTermChanged","term","_l","id","displayName","user","NcListItem","thumbnailUrl","subline","resourceUrl","icon","rounded","query","focused","thumbnailHasError","watch","isValidIconOrPreviewUrl","url","test","startsWith","thumbnailErrorHandler","class","style","backgroundImage","async","getContacts","_ref2","contacts","axios","post","generateUrl","authenticatedUser","getCurrentUser","uid","fullName","emailAddresses","unshift","ArrowRight","AccountGroup","CustomDateRangeModal","DotsHorizontalIcon","FilterIcon","FilterChip","ListBox","NcActions","NcActionButton","NcInputField","MagnifyIcon","SearchableList","SearchResult","isVisible","providers","providerActionMenuIsOpen","dateActionMenuIsOpen","providerResultLimit","personFilter","dateFilterIsApplied","personFilterIsApplied","filteredProviders","searching","searchQuery","placessearchTerm","dateTimeFilter","filters","results","debouncedFind","debounce","find","debouncedFilterContacts","filterContacts","showDateRangeModal","internalIsVisible","userContacts","noContentInfo","isEmptySearch","hasNoResults","show","$nextTick","focusInput","mounted","generateOcsUrl","params","from","window","location","pathname","replace","search","ocs","isArray","console","getProviders","then","debug","mapContacts","emit","newResults","providersToSearch","searchProvider","provider","cursor","since","until","person","limit","request","_ref","cancelToken","CancelToken","source","token","cancel","unifiedSearch","response","push","inAppSearch","entries","updateResults","forEach","updatedResults","result","newResult","existingResultIndex","findIndex","splice","sortedResults","slice","sort","a","b","aProvider","bProvider","order","map","contact","isNoUser","subname","applyPersonFilter","existingPersonFilter","loadMoreResultsForProvider","providerId","addProviderFilter","providerFilter","arguments","undefined","existing","syncProviderFilters","removeFilter","i","firstArray","secondArray","synchronizedArray","item","index","itemId","secondItem","updateDateFilter","currFilterIndex","applyQuickDateRange","range","today","Date","startDate","endDate","getFullYear","getMonth","getDate","setCustomDateRange","event","toLocaleDateString","$refs","searchInput","$el","children","focus","supportFiltering","currentPath","path","ref","tag","providerResult","UnifiedSearchModal","showUnifiedSearch","toggleUnifiedSearch","handleModalVisibilityChange","newVisibilityVal","__webpack_nonce__","btoa","getRequestToken","logger","getLoggerBuilder","setApp","detectUser","build","Vue","mixin","n","el","render","h","UnifiedSearch","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","Object","keys","every","r","getter","__esModule","d","definition","o","defineProperty","enumerable","e","Promise","resolve","g","globalThis","Function","obj","prototype","hasOwnProperty","nmd","paths","document","baseURI","self","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","bind","nc","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file