@arcgis/portal-components 5.2.0-next.87 → 5.2.0-next.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{a as oe,b as _e}from"./4QA4AYHJ.js";import o from"./5HEZSRAM.js";import n from"./5EMPEJ65.js";import m from"./EBYEZR4N.js";import l from"./BSUUZZ2V.js";import"./YDYJ5MIY.js";import{a as j}from"./6KVA4AKM.js";import"./CFBSBZSS.js";import"./ILDTKRON.js";import k from"./OSA2BEVZ.js";import i from"./VBJRF4J7.js";import h from"./O2WST7EA.js";import"./P2PZMKRD.js";import f from"./44ORWHRO.js";import{a as E}from"./PMQCCLS5.js";import"./OBBYT2AV.js";import e from"./TZ4TGONL.js";import d from"./T4DHIZOR.js";import"./3YCG5UCH.js";import"./DFTUMKSN.js";import b from"./TGTT2CVD.js";import{a as ye}from"./GAZBGDIO.js";import a from"./F3ODJVJC.js";import"./P7YQCAM2.js";import{a as Fe}from"./VMQIDO4Z.js";import"./QS3GXAIH.js";import{a as V,c as _}from"./2GBRZSEC.js";import{a as ae}from"./O3RR6UMN.js";import"./BTLJZVSE.js";import"./UEL7BVMB.js";import{M as ve,N as I,P as g,S as $e,h as be,j as c,w as P}from"./BXCQOWAD.js";import"./UZLQALHY.js";export default $arcgis.t(([{substitute:L},tt,{substitute:Ye},{watch:rt},{substitute:D},,{b:Ge},,{c:Oe},,,,{a:Se,b:Pe},,,{a:xe,b:J,c:K,d:X,e:Y,f:Z}])=>{function x(s){let{action:e,active:t=!1,clearDisabled:r=!1,clearLabel:i="Clear",children:l,expanded:a=!1,heading:n,noPadding:h=!1,onRemove:u,primary:w=!1,setExpanded:f}=s;return w?c`<div class="filter--primary"><div class="filter__header filter__header--primary"><h3 class="filter__title">${n}</h3>${e}</div>${l}</div>`:c`<calcite-accordion-item class="filter__accordion-item" .heading=${n} .expanded=${a} @calciteAccordionItemExpand=${()=>{f?.(!0)}} @calciteAccordionItemCollapse=${()=>{f?.(!1)}}><div slot=actions-end class="filter__actions-slot arcgis-item-browser-filter__actions-slot">${e}${t&&!r&&c`<calcite-button class="clear-button" scale=s kind=neutral appearance=transparent @click=${()=>u?.()}>${i}</calcite-button>`||""}</div><div class=${I({filter__content:!0,"filter__content--padded":!h})}>${l}</div></calcite-accordion-item>`}var q=1440*60*1e3;function $(s){let e=typeof s=="string"?Number.parseInt(s,10):typeof s=="number"?s:(s??new Date).valueOf(),t=new Date(e);return t.setHours(0,0,0,0),t.valueOf()}function U(s){return $(s)+q-1}var le=7*q,Be=["today","yesterday","last7","last30","never","custom"],Ze=(s,e,t)=>{let r=$(),i=U();switch(s){case"yesterday":return[r-q,r-1];case"today":return[r,i];case"last7":return[r-le,i];case"last30":return[r-q*30,i];case"never":return[-1,-1];case"custom":return e&&t?[$(e),U(t)]:null;default:return null}};function Ue(s){let{clearLabel:e,end:t,expanded:r,filterDateMessages:i,includeNever:l,onFilter:a,onRemove:n,property:h,range:u,serverProperty:w,setExpanded:f,start:b}=s,B=i.title[h],O=l?Be:Be.filter(m=>m!=="never"),z=new Date().toISOString().slice(0,10),v=!!(u&&(u!=="custom"||b&&t)),G=(m,S,y)=>{let C=w??(h==="modified"?"modified":"uploaded"),F=Ze(m,S,y),A=m?i[m]:"";a?.({id:h,label:m?Ye(i[h],{date:A}):"",value:F?`(${C}:[${F[0]} TO ${F[1]}])`:"",range:m,start:F?new Date(F[0]):void 0,end:F?new Date(F[1]):void 0})};return x({heading:B,expanded:r,setExpanded:f,active:v,clearLabel:e,onRemove:n,children:c`<div><calcite-tree selection-mode=children scale=m @calciteTreeSelect=${m=>{let S=m.target.selectedItems?.[0]?.dataset.range,y=u===S?null:S;if(!y){n?.();return}G(y,b,t)}}>${O.map(m=>c`<calcite-tree-item data-range=${m??g} .selected=${m===u}>${i[m]}</calcite-tree-item>`)}</calcite-tree>${u==="custom"&&c`<calcite-input-date-picker class="custom-date-picker" @calciteInputDatePickerChange=${m=>{let S=m.target.valueAsDate,[y,C]=Array.isArray(S)?S:[];y&&C&&G("custom",y,C)}} scale=s .max=${z} calendars=1 layout=vertical month-style=abbreviated proximity-selection-disabled range .valueAsDate=${b&&t?[new Date($(b)),new Date($(t))]:[]}></calcite-input-date-picker>`||""}</div>`})}var et=["title","relevance","modified"];function Ce(s){let{slot:e="sort",sort:t,formFactor:r,sortField:i,sortOrder:l,onSortFieldChange:a,onSortOrderChange:n}=s;return t.enabled?c`<arcgis-portal-browser-sort slot=${e??g} .options=${t.props?.options??et} .field=${i} .order=${l} .appearance=${t.props?.appearance??"dropdown"} .showText=${t.props?.showText??r!=="small"} .useDeleted=${t.props?.useDeleted??!1} @arcgisBrowserSortFieldChange=${h=>{a(h.detail)}} @arcgisBrowserSortOrderChange=${h=>{n(h.detail)}}></arcgis-portal-browser-sort>`:c`<slot name=${e??g} slot=${e??g}></slot>`}function ke(s){let{slot:e="pagination",store:t,total:r,start:i,num:l,onPage:a}=s;return c`<slot name=${e??g} slot=${e??g}><arcgis-portal-browser-pagination .store=${t} .total=${r} .start=${i} .num=${l} @arcgisBrowserPage=${n=>{a(n.detail)}}></arcgis-portal-browser-pagination></slot>`}function Re(s){let{bottom:e,children:t,primary:r,slot:i,store:l,title:a,top:n}=s,h=!!l?.panel||(l?.width??0)<E.sm;return c`<div slot=${i??g} class="filters-shell" .inert=${!!l?.preview}><div class=${I({"filters-shell__top":!0,"filters-shell__top--padded":h})}>${n}</div>${r}${a}<calcite-accordion appearance=transparent icon-type=chevron icon-position=start scale=m>${t}</calcite-accordion>${e}</div>`}function Te(s){let{browserMessages:e,slot:t,filters:r,hasIndoorsSpaces:i,isFilterActive:l,messages:a,portal:n,selectedAccess:h,selectedGroupsByUser:u,selectedMemberOrg:w,selectedMembership:f,selectedOwner:b,selectedSpecialGroup:B,specialGroupOptions:O,store:z,handleRemove:v,handleSelect:G,handleUpsert:m,handleUserFilterChange:S}=s,y=n.isPortal,C=n.user,F=j(C),A=C?.username??"",De=o=>o===A?D(a.groupsByUser.me,{username:o}):o,de=(o,p)=>o==="owner"?p:o==="outsideOrg"&&F?a.owner.someoneElse:o==="inOrg"?a.owner.inOrg:o==="outsideOrg"?a.owner.outsideOrg:p,Q=r.owner,he=b??Q?.props?.owner??null,H=Q?.props?.username??A,Le=n.id??"",Me=F?["owner","outsideOrg"]:["owner","inOrg","outsideOrg"],te=r.membership,me=f??te?.props?.membership??null,We=["org","collaboration","anyOrg"],N=r.memberOrg,ue=w??N?.props?.memberOrg??null,ze=N?.props?.orgId??n.id??"",Qe=["myOrg","anotherOrg"],re=r.specialGroups,ge=B??re?.props?.specialGroup??null,se=r.access,we=h??se?.props?.access??null,He=["public","org","private"],M=r.groupsByUser,fe=M?.props?.usernames??[],Ne=M?.props?.selectedUsername??u??fe[0]??A,k=e.filter.clear,R=(o,p)=>{let d=r[o];d&&(d.props={...d.props,expanded:p})};return Re({slot:t,store:z,title:c`<div class="filters-title"><h2 class="filters-title__heading">${a.filters.title}</h2><slot name=before-filters></slot></div>`,children:c`${!!M?.enabled&&x({heading:a.groupsByUser.title,expanded:!!M?.props?.expanded,setExpanded:o=>R("groupsByUser",o),clearLabel:k,onRemove:()=>{G({kind:"groupsByUser",value:M?.props?.selectedUsername??A})},children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${o=>{let p=o.target.selectedItems?.[0]?.dataset.username??"";G({kind:"groupsByUser",value:p}),S(p)}}>${fe.map(o=>c`<calcite-tree-item data-username=${o??g} .selected=${o===Ne}><a class="groups-by-user__label">${De(o)}</a></calcite-tree-item>`)}</calcite-tree>`})||""}${!!Q?.enabled&&x({heading:a.owner.title,expanded:!!Q?.props?.expanded,setExpanded:o=>R("owner",o),active:l("owner"),clearLabel:k,onRemove:()=>v("owner"),children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${o=>{let p="owner",d=W(he,o,p);if(!d){v(p);return}m({id:p,label:D(a.owner.label,{label:de(d,H)}),param:"q",value:J(d,H,{isPublicUser:F,orgId:Le}),owner:d,username:H}),G({kind:p,value:d})}}>${Me.filter(o=>!(y||i)||o!=="outsideOrg").map(o=>c`<calcite-tree-item data-owner=${o??g} .selected=${he===o}>${de(o,H)}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(te?.enabled&&!y&&!i)&&x({heading:a.membership.title,expanded:!!te?.props?.expanded,setExpanded:o=>R("membership",o),active:l("membership"),clearLabel:k,onRemove:()=>v("membership"),children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${o=>{let p="membership",d=W(me,o,p);if(!d){v(p);return}m({id:p,label:D(a.membership.label,{label:a.membership[d]}),param:"q",value:K(d,i),membership:d}),G({kind:p,value:d})}}>${We.map(o=>c`<calcite-tree-item data-membership=${o??g} .selected=${me===o}>${a.membership[o]}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(N?.enabled&&!y)&&x({heading:a.memberOrg.title,expanded:!!N?.props?.expanded,setExpanded:o=>R("memberOrg",o),active:l("memberOrg"),clearLabel:k,onRemove:()=>v("memberOrg"),children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${o=>{let p="memberOrg",d=W(ue,o,p);if(!d){v(p);return}m({id:p,label:D(a.memberOrg.label,{label:a.memberOrg[d]}),param:"q",value:X(d,ze),memberOrg:d}),G({kind:p,value:d})}}>${Qe.map(o=>c`<calcite-tree-item data-member-org=${o??g} .selected=${ue===o}>${a.memberOrg[o]}</calcite-tree-item>`)}</calcite-tree>`})||""}${re?.enabled&&x({heading:a.specialGroups.title,expanded:!!re.props?.expanded,setExpanded:o=>R("specialGroups",o),active:l("specialGroups"),clearLabel:k,onRemove:()=>v("specialGroups"),children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${async o=>{let p="specialGroups",d=W(ge,o,p);if(!d){v(p);return}let ie=await Y(d,n);m({id:"specialGroups",label:D(a.specialGroups.label,{label:a.specialGroups[d]}),param:"q",value:ie,specialGroup:d}),G({kind:"specialGroups",value:d})}}>${O.map(o=>c`<calcite-tree-item data-special-groups=${o??g} .selected=${ge===o}><span class="special-groups-settings-option">${a.specialGroups[o]}${o==="settings"&&c`<span class="special-groups-settings-icon"><calcite-icon id=portal-group-browser-special-groups-settings-info icon=information scale=s text-label=Information></calcite-icon><calcite-tooltip placement=bottom-end reference-element=portal-group-browser-special-groups-settings-info>Groups used in organization settings.</calcite-tooltip></span>`||""}</span></calcite-tree-item>`)}</calcite-tree>`})||""}${["modified","created"].filter(o=>r[o]?.enabled).map(o=>{let p=r[o]?.props,d=z.filters[o],ie=!!p?.includeNever,Ve=d?.range??p?.range??null,je=d?.start??p?.start,Je=d?.end??p?.end,Ke=p?.serverProperty,Xe=p?.expanded;return Ue({property:o,filterDateMessages:e.filterDate,clearLabel:k,expanded:Xe,setExpanded:T=>R(o,T),includeNever:ie,range:Ve,start:je,end:Je,serverProperty:Ke,onRemove:()=>{m({id:o,label:"",param:"q",value:"",range:null,start:null,end:null})},onFilter:T=>{m({id:o,label:T.label,param:"q",value:T.value,range:T.range,start:T.start,end:T.end})}})})}${!!se?.enabled&&x({heading:a.access.title,expanded:!!se?.props?.expanded,setExpanded:o=>R("access",o),active:l("access"),clearLabel:k,onRemove:()=>v("access"),children:c`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${o=>{let p="access",d=W(we,o,p);if(!d){v(p);return}m({id:p,label:D(a.access.label,{label:a.access[d]}),param:"q",value:Z(d),access:d}),G({kind:p,value:d})}}>${He.map(o=>c`<calcite-tree-item data-access=${o??g} .selected=${we===o}>${a.access[o]}</calcite-tree-item>`)}</calcite-tree>`})||""}`})}var W=(s,e,t)=>{let r=e.target.selectedItems?.[0]?.dataset[t];return s===r?null:r??null};var st=be`:host{position:relative;background-color:var(--calcite-color-background);display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;--portal-group-browser-max-width: var(--group-browser-max-width, 100%);--portal-group-browser-pane-width: 18.75rem;--portal-group-browser-pane-z-index: 11;container-type:inline-size;container-name:portal-group-browser}arcgis-portal-browser{--arcgis-browser-max-width: var(--portal-group-browser-max-width);--arcgis-browser-pane-width: var(--portal-group-browser-pane-width);--arcgis-browser-pane-z-index: var(--portal-group-browser-pane-z-index)}.filters-title__heading{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);line-height:1.2;margin:0;padding:1rem .5rem}.filters-shell{display:block}.filters-shell__top{padding:0}.filters-shell__top--padded{padding:0 1rem 1rem}.filter__accordion-item{--calcite-accordion-item-content-space: .75rem .25rem;--calcite-accordion-icon-margin: .5rem;border-top:1px solid var(--calcite-color-border-1)}.filter__actions-slot{display:flex;align-self:center;align-items:center;line-height:0}.filter__content{margin:0}.filter__content--padded{margin:-.75rem .5rem 0}.filter__content>calcite-tree>calcite-tree-item>a{padding-block:.25rem}.clear-button{line-height:1;margin-inline:.25rem}.custom-date-picker{margin-block:.5rem;margin-inline-start:1.75rem;width:12.75rem}.groups-by-user__label{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.special-groups-settings-option{display:inline-flex;align-items:center;gap:.25rem}.special-groups-settings-icon{display:inline-flex;align-items:center}.group-browser__results{display:grid;gap:.5rem}.group-browser__results--compact{gap:0}.group-browser__result-card{margin:0}@container portal-group-browser (max-width: 640px){:host{--portal-group-browser-pane-width: 100%}}.empty-text-slot{width:100%;height:100%;display:flex;justify-content:center}.empty-text-slot__default{@apply max-w-lg mx-auto px-6 pb-16;max-width:32rem;margin-inline:auto;padding-inline:1.5rem;padding-bottom:4rem;margin-top:min(8rem,30vh)}`;async function it(s,e){let t=`${Fe(s)}community/groups`,r=lt(e),i=nt(e),l=!!e.searchUser?.trim();if(!r.trim()&&!l)return{nextStart:-1,num:0,q:r,queryParams:{...i,q:r},results:[],start:0,total:0};let a={...i,q:r},n=await Ge({url:t,portal:s,params:a}),h=n.results.map(u=>{let w=tt.fromJSON(u);return w.portal=s,w});return{...n,q:r,queryParams:a,results:h}}var at=["created","modified","owner","title"];function ot(s){return!!s&&at.includes(s)}function lt(s){let e=[],t=s.baseQuery?.trim();t&&e.push(`(${t})`);let r=s.searchTerm?.trim();r&&e.push(`(${_e(r)})`);for(let i of Object.values(s.filters??{}))typeof i.value=="string"&&i.value.trim()&&e.push(`(${i.value.trim()})`),typeof i.additionalParams=="string"&&i.additionalParams.trim()&&e.push(`(${i.additionalParams.trim()})`);return e.join(" AND ")}function nt(s){return{num:s.num,start:s.start,...s.searchUser?{searchUserAccess:"groupMember",searchUserName:s.searchUser}:{},...s.sortField==="relevance"||!ot(s.sortField)?{}:{sortField:s.sortField,sortOrder:s.sortOrder}}}function ct(s,e,t){switch(s){case"yesterday":{let r=$();return[r-q,r-1]}case"today":return[$(),U()];case"last7":return[$()-le,U()];case"last30":return[$()-q*30,U()];case"never":return[-1,-1];case"custom":return e&&t?[$(e),U(t)]:null;default:return V(s)}}var pt=["created","modified","owner","relevance","title"],dt=["asc","desc"],ht=["custom","last7","last30","never","today","yesterday"],mt=["inOrg","outsideOrg","owner"],ut=["anyOrg","collaboration","org"],gt=["anotherOrg","myOrg"],wt=["admin","distributed","openData","settings","sharedUpdate"],ft=["org","private","public"],bt=["access","created","created_from","created_to","memberorgids","membershipaccess","modified","modified_from","modified_to","owner","q","searchTerm","sortField","sortOrder","specialGroups","start","num"];function ee(s){if(!s)return;let e=Number.parseInt(s,10);return Number.isFinite(e)&&e>0?e:void 0}function qe(s,e){let t=s.get(e);if(!_(ht,t))return;if(t!=="custom")return{range:t};let r=ee(s.get(`${e}_from`)),i=ee(s.get(`${e}_to`));if(!(!r||!i))return{range:t,start:new Date(r),end:new Date(i)}}function Ae(s,e,t){t?.range&&(s.set(e,t.range),t.range==="custom"&&(t.start&&s.set(`${e}_from`,`${$(t.start)}`),t.end&&s.set(`${e}_to`,`${U(t.end)}`)))}function vt(s){let e=s.get("searchTerm")?.trim()||s.get("q")?.trim()||void 0,t=s.get("sortField"),r=s.get("sortOrder"),i=ee(s.get("start")),l=ee(s.get("num")),a=s.get("access"),n=s.get("memberorgids"),h=s.get("membershipaccess"),u=s.get("owner"),w=s.get("specialGroups"),f=qe(s,"created"),b=qe(s,"modified");return{...e?{searchTerm:e}:{},..._(pt,t)?{sortField:t}:{},..._(dt,r)?{sortOrder:r}:{},...i?{start:i}:{},...l?{num:l}:{},filters:{..._(ft,a)?{access:a}:{},...f?{created:f}:{},..._(gt,n)?{memberOrg:n}:{},..._(ut,h)?{membership:h}:{},...b?{modified:b}:{},..._(mt,u)?{owner:u}:{},..._(wt,w)?{specialGroups:w}:{}}}}function $t(s){let e=new URLSearchParams(s.currentSearchParams);return bt.forEach(t=>{e.delete(t)}),s.searchTerm?.trim()&&e.set("searchTerm",s.searchTerm.trim()),s.sortField&&e.set("sortField",s.sortField),s.sortOrder&&e.set("sortOrder",s.sortOrder),Object.values(s.filters??{}).forEach(t=>{if(t)switch(t.id){case"owner":t.owner&&e.set("owner",t.owner);break;case"access":t.access&&e.set("access",t.access);break;case"specialGroups":t.specialGroup&&e.set("specialGroups",t.specialGroup);break;case"memberOrg":t.memberOrg&&e.set("memberorgids",t.memberOrg);break;case"membership":t.membership&&e.set("membershipaccess",t.membership);break;case"created":Ae(e,"created",t);break;case"modified":Ae(e,"modified",t);break;default:V(t)}}),e}function ne(s,e="desc"){switch(s){case"owner":case"title":return"asc";case"created":case"modified":case"relevance":return"desc";default:return e}}function yt(s){let e,t,r,i=()=>{e?.();let a=rt(()=>s.getStore().width,()=>{l()});e=()=>{a.remove()}},l=()=>{let a=s.getStore(),n=a.width||s.getHostWidth()||s.getViewportWidth(),h=Math.min(n,s.getViewportWidth());a.width!==h&&(a.width=h);let u=h>E.md?"large":"small";s.getResponsiveFormFactor()==="large"&&u==="small"&&(a.panel=!1,a.filtersExpanded=!1),s.getResponsiveFormFactor()==="small"&&u==="large"&&(a.panel=!1,a.filtersExpanded=!0),s.setResponsiveFormFactor(u)};return{connect:()=>{typeof ResizeObserver<"u"&&(t=new ResizeObserver(a=>{let n=a[0]?.contentRect?.width??0;if(n>0){let h=Math.round(n);s.setHostWidth(h),s.getStore().width=h,l()}}),t.observe(s.el)),i(),l()},disconnect:()=>{r!==void 0&&(cancelAnimationFrame(r),r=void 0),e?.(),t?.disconnect(),t=void 0},refreshStoreWatcher:i,handleWindowResize:()=>{if(s.setViewportWidth(window.innerWidth),!t){if(r!==void 0)return;r=requestAnimationFrame(()=>{r=void 0;let a=Math.round(s.el.getBoundingClientRect().width||s.getHostWidth()||s.getViewportWidth()),n=Math.min(a,s.getViewportWidth()),h=s.getStore();h.width!==n&&(h.width=n),l()});return}l()},updateResponsiveLayout:l}}function Ft(s){let e=!1,t=()=>!!s.getSearchParamInteraction()?.read,r=()=>!!s.getSearchParamInteraction()?.write;return{hydrateFromLocation:async()=>{!t()||typeof window>"u"||(await s.applySearchParams(new URLSearchParams(window.location.search)),e=!0)},writeToLocation:i=>{if(!r()||typeof window>"u")return;if(e){e=!1;return}let l=i.toString(),a=window.location.search.startsWith("?")?window.location.search.slice(1):window.location.search;if(l===a)return;let n=`${window.location.pathname}${l?`?${l}`:""}${window.location.hash}`;window.history.replaceState(window.history.state,"",n)}}}var ce=["title","relevance","modified"],Ie={queryParams:void 0,nextStart:-1,results:[],start:-1,num:0,total:0},Ee=["openData","sharedUpdate","distributed","admin","settings"],pe=class extends ve{constructor(){super(...arguments),this._messages=ae({name:"portal-group-browser",blocking:!0}),this._browserMessages=ae({name:"portal-browser",blocking:!0}),this.responsiveLayoutController=yt({el:this.el,getStore:()=>this.store,getViewportWidth:()=>this.viewportWidth,setViewportWidth:e=>{this.viewportWidth=e},getHostWidth:()=>this.hostWidth,setHostWidth:e=>{this.hostWidth=e},getResponsiveFormFactor:()=>this.responsiveFormFactor,setResponsiveFormFactor:e=>{this.responsiveFormFactor=e}}),this.restoreFocusTarget=null,this.searchParamController=Ft({applySearchParams:async e=>{await this.applySearchParams(e)},getSearchParamInteraction:()=>this.searchParamInteraction}),this.handleBrowserFilterClear=()=>{this.clearFilters()},this.handleBrowserFilterRemove=e=>{let t=e.detail;t&&this.removeFilter(t)},this.selectedOwner=null,this.selectedMembership=null,this.selectedMemberOrg=null,this.selectedSpecialGroup=null,this.selectedAccess=null,this.selectedGroups=[],this.previewGroup=null,this.queryResponse=Ie,this.specialGroupOptions=Ee,this.responsiveFormFactor="large",this.viewportWidth=typeof window>"u"?E.lg:window.innerWidth,this.hostWidth=0,this.store=Oe({type:"group-browser",width:window?.innerWidth??E.lg,hiddenFilters:[],filtersEmpty:!1,topbarEmpty:!1,sortEmpty:!1,filtersExpanded:!1,panel:!1,filters:{}}),this.filters={},this.loading=!1,this.formFactor="large",this.height="full",this.searchTerm="",this.cards={},this.preview="top",this.q="",this.num=60,this.sort={enabled:!0,props:{options:ce}},this.searchParamInteraction={read:!1,write:!1},this.selection="none",this.alwaysShowSelection=!1,this.hidePreviewFooter=!1,this.hidePreviewBadges=!1,this.hasIndoorsSpaces=!1,this.arcgisGroupBrowserLoading=P(),this.arcgisGroupBrowserPreview=P(),this.arcgisGroupBrowserSelect=P(),this.arcgisGroupBrowserSublayerPreview=P(),this.arcgisGroupBrowserUpdate=P(),this.arcgisGroupBrowserInternalUIAction=P(),this.arcgisGroupBrowserUserFilterChange=P(),this.arcgisAriaUpdate=P()}static{this.properties={selectedGroupsByUser:16,selectedOwner:16,selectedMembership:16,selectedMemberOrg:16,selectedSpecialGroup:16,selectedAccess:16,selectedGroups:16,previewGroup:16,queryResponse:16,specialGroupOptions:16,sortField:16,sortOrder:16,responsiveFormFactor:16,viewportWidth:16,hostWidth:16,store:0,filters:0,loading:5,formFactor:1,height:3,searchTerm:1,selected:0,cards:0,preview:1,q:1,portal:0,num:9,sort:0,fetch:0,preflight:0,searchUser:1,searchParamInteraction:0,selection:1,alwaysShowSelection:5,hidePreviewFooter:5,hidePreviewBadges:5,hasIndoorsSpaces:5}}static{this.styles=st}get currentUsername(){return this.portal.user?.username??""}async refresh(){await this.fetchGroups()}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.responsiveLayoutController.handleWindowResize),this.responsiveLayoutController.connect()}firstUpdated(){this.initializeBrowserState()}updated(e){e.has("store")&&(this.responsiveLayoutController.refreshStoreWatcher(),this.responsiveLayoutController.updateResponsiveLayout()),e.has("selected")&&(this.selectedGroups=this.selected||[]);let t=e.get("num");t!==void 0&&t!==this.num&&this.fetchGroups(),(e.has("portal")||e.has("hasIndoorsSpaces"))&&this.updateSpecialGroupOptions(),e.has("sort")&&this.syncSortFromConfig()}disconnectedCallback(){this.responsiveLayoutController.disconnect(),window.removeEventListener("resize",this.responsiveLayoutController.handleWindowResize),super.disconnectedCallback()}syncSelectionsFromConfig(){this.selectedGroupsByUser=this.filters.groupsByUser?.props?.selectedUsername??this.currentUsername,this.selectedOwner=this.filters.owner?.props?.owner||null,this.selectedMembership=this.filters.membership?.props?.membership||null,this.selectedMemberOrg=this.filters.memberOrg?.props?.memberOrg||null,this.selectedSpecialGroup=this.filters.specialGroups?.props?.specialGroup||null,this.selectedAccess=this.filters.access?.props?.access||null}async initializeBrowserState(){this.syncSortFromConfig(),this.selectedGroups=this.selected||[],this.syncSelectionsFromConfig(),await this.searchParamController.hydrateFromLocation(),await this.updateSpecialGroupOptions(!1),await this.fetchGroups()}resetSelectionByFilterId(e){switch(e){case"groupsByUser":this.selectedGroupsByUser=this.filters.groupsByUser?.props?.selectedUsername??this.currentUsername;break;case"owner":this.selectedOwner=null;break;case"membership":this.selectedMembership=null;break;case"memberOrg":this.selectedMemberOrg=null;break;case"specialGroups":this.selectedSpecialGroup=null;break;case"access":this.selectedAccess=null;break}}resetAllFilterSelections(){this.selectedGroupsByUser=this.filters.groupsByUser?.props?.selectedUsername??this.currentUsername,this.selectedOwner=null,this.selectedMembership=null,this.selectedMemberOrg=null,this.selectedSpecialGroup=null,this.selectedAccess=null}publishFilterStateChange(){this.requestUpdate()}syncSortFromConfig(){let e=this.sort,t=e.props?.options??ce;if(!e.enabled){this.sortField=void 0,this.sortOrder=void 0;return}if(!t.length){this.sortField=void 0,this.sortOrder=void 0;return}let r=e.props?.field,i=r&&t.includes(r)?r:t[0];this.sortField=i,this.sortOrder=e.props?.order??ne(i,this.sortOrder)}async updateSpecialGroupOptions(e=!0){if(!this.portal){this.specialGroupOptions=[];return}let t="";try{t=await xe(this.portal)}catch{t=""}if(this.specialGroupOptions=Ee.filter(r=>!(r==="openData"&&this.portal.isPortal||r==="distributed"&&this.hasIndoorsSpaces||r==="settings"&&!t)),this.selectedSpecialGroup&&!this.specialGroupOptions.includes(this.selectedSpecialGroup))if(e)this.removeFilter("specialGroups");else{let{specialGroups:r,...i}=this.store.filters;this.store.filters={...i},this.selectedSpecialGroup=null}}async applySearchParams(e){let t=vt(e);if(!this.searchTerm&&t.searchTerm&&(this.searchTerm=t.searchTerm),this.sort.enabled){let r=this.sort.props?.options??ce;t.sortField&&this.sort.props?.field===void 0&&r.includes(t.sortField)&&(this.sortField=t.sortField),t.sortOrder&&this.sort.props?.order===void 0?this.sortOrder=t.sortOrder:t.sortField&&this.sort.props?.order===void 0&&(this.sortOrder=ne(t.sortField,this.sortOrder))}await this.applyFilterSearchParams(t.filters)}async applyFilterSearchParams(e){let t={...this.store.filters},r=!1,i=j(this.portal.user);if(e.owner&&this.filters.owner?.enabled&&!this.filters.owner.props?.owner){let n=this.filters.owner.props?.username??this.currentUsername;t.owner={id:"owner",label:L(this._messages.owner.label,{label:this.getOwnerOptionLabel(e.owner,n,i)}),param:"q",value:J(e.owner,n,{isPublicUser:i,orgId:this.portal.id??""}),owner:e.owner,username:n},this.selectedOwner=e.owner,r=!0}e.membership&&this.filters.membership?.enabled&&!this.filters.membership.props?.membership&&(t.membership={id:"membership",label:L(this._messages.membership.label,{label:this._messages.membership[e.membership]}),param:"q",value:K(e.membership,this.hasIndoorsSpaces),membership:e.membership},this.selectedMembership=e.membership,r=!0),e.memberOrg&&this.filters.memberOrg?.enabled&&!this.filters.memberOrg.props?.memberOrg&&(t.memberOrg={id:"memberOrg",label:L(this._messages.memberOrg.label,{label:this._messages.memberOrg[e.memberOrg]}),param:"q",value:X(e.memberOrg,this.filters.memberOrg.props?.orgId??this.portal.id??""),memberOrg:e.memberOrg,orgId:this.filters.memberOrg.props?.orgId??this.portal.id??""},this.selectedMemberOrg=e.memberOrg,r=!0),e.specialGroups&&this.filters.specialGroups?.enabled&&!this.filters.specialGroups.props?.specialGroup&&(t.specialGroups={id:"specialGroups",label:L(this._messages.specialGroups.label,{label:this._messages.specialGroups[e.specialGroups]}),param:"q",value:await Y(e.specialGroups,this.portal),specialGroup:e.specialGroups},this.selectedSpecialGroup=e.specialGroups,r=!0),e.access&&this.filters.access?.enabled&&!this.filters.access.props?.access&&(t.access={id:"access",label:L(this._messages.access.label,{label:this._messages.access[e.access]}),param:"q",value:Z(e.access),access:e.access},this.selectedAccess=e.access,r=!0);let l=this.getDateFilterDetailFromSearchParams("created",e.created);l&&(t.created=l,r=!0);let a=this.getDateFilterDetailFromSearchParams("modified",e.modified);a&&(t.modified=a,r=!0),r&&(this.store.filters=t,this.publishFilterStateChange())}getDateFilterDetailFromSearchParams(e,t){let r=this.filters[e];if(!r?.enabled||r.props?.range||r.props?.start||r.props?.end||!t?.range)return;let i=ct(t.range,t.start,t.end);if(!i)return;let l=this._browserMessages.filterDate[t.range],[a,n]=i;return{id:e,label:L(this._browserMessages.filterDate[e],{date:l}),param:"q",value:`(${r.props?.serverProperty??(e==="modified"?"modified":"uploaded")}:[${a} TO ${n}])`,range:t.range,start:new Date(a),end:new Date(n)}}getOwnerOptionLabel(e,t,r){return e==="owner"?t:e==="outsideOrg"&&r?this._messages.owner.someoneElse:e==="inOrg"?this._messages.owner.inOrg:this._messages.owner.outsideOrg}writeSearchParams(e,t){let r=$t({currentSearchParams:typeof window>"u"?void 0:new URLSearchParams(window.location.search),filters:this.store.filters,searchTerm:t,sortField:e.queryParams?.sortField,sortOrder:e.queryParams?.sortOrder});this.searchParamController.writeToLocation(r)}async fetchGroups(){this.loading=!0,this.arcgisGroupBrowserLoading.emit();let e=this.createQuery();await this.fetchAndEmit(e,this.searchTerm)}removeFilter(e){let t=this.store.filters[e];t&&(this.store.filters={...this.store.filters,[e]:Se(t)},this.resetSelectionByFilterId(e),this.publishFilterStateChange(),this.fetchGroups())}clearFilters(){this.store.filters=Pe(this.store.filters,{hiddenFilterIds:this.store.hiddenFilters}),this.resetAllFilterSelections(),this.publishFilterStateChange(),this.fetchGroups()}isFilterActive(e){let t=this.store.filters[e];return t?!!(t.value||"additionalParams"in t&&t.additionalParams):!1}setFilterSelection(e){switch(e.kind){case"owner":this.selectedOwner=e.value;break;case"membership":this.selectedMembership=e.value;break;case"memberOrg":this.selectedMemberOrg=e.value;break;case"access":this.selectedAccess=e.value;break;case"groupsByUser":this.selectedGroupsByUser=e.value;break;case"specialGroups":this.selectedSpecialGroup=e.value;break;default:V(e)}}selectGroup(e){this.isSelected(e)||(this.selectedGroups=[...this.selectedGroups,e])}deselectGroup(e){this.selectedGroups=this.selectedGroups.filter(({id:t})=>t!==e.id)}isSelected(e){return this.selectedGroups.some(({id:t})=>e.id===t)}handleGroupCardSelect(e){let{selected:t,group:r}=e.detail;switch(this.selection){case"single":this.selectedGroups=[r];break;case"multiple":t?this.selectGroup(r):this.deselectGroup(r);break;default:return}this.arcgisGroupBrowserSelect.emit(this.selectedGroups)}closePreview(e={}){this.store.preview="",this.previewGroup=null,this.arcgisGroupBrowserPreview.emit(null),this.arcgisGroupBrowserSublayerPreview.emit(null),e.restoreFocus&&this.restorePreviewFocus()}async restorePreviewFocus(){let e=this.restoreFocusTarget;if(e){if(e.restoreFocus){await e.restoreFocus();return}if(e.setFocus){await e.setFocus();return}e.focus?.()}}async handleSortFieldChange(e){this.sortField=e,this.sortOrder=ne(e,this.sortOrder),this.loading=!0,this.arcgisGroupBrowserLoading.emit();let t=this.createQuery({start:1,total:0});await this.fetchAndEmit(t,this.searchTerm)}async handleSortOrderChange(e){this.sortOrder=e,this.loading=!0,this.arcgisGroupBrowserLoading.emit();let t=this.createQuery({start:1,total:0});await this.fetchAndEmit(t,this.searchTerm)}emitUpdate(e,t){let r=e.queryParams;this.arcgisGroupBrowserUpdate.emit({queryResponse:e,sortField:r?.sortField,sortOrder:r?.sortOrder,selectedGroups:this.selectedGroups,filters:{...this.store.filters},searchTerm:t}),this.writeSearchParams(e,t)}async queryGroups(e){return await(this.fetch?.(e)??it(this.portal,e))}async fetchAndEmit(e,t){this.preflight&&(e=await this.preflight(e));let r=await this.queryGroups(e);this.queryResponse=r,this.loading=!1,this.emitUpdate(r,t)}createQuery(e={}){return{filters:this.store.filters,searchUser:this.searchUser,searchTerm:e.searchTerm??this.searchTerm,baseQuery:this.q,sortField:this.sortField,sortOrder:this.sortOrder,start:e.start??1,num:e.num??this.num,total:e.total??this.queryResponse.total}}async handleSearch(e){this.searchTerm=e,this.loading=!0,this.arcgisGroupBrowserLoading.emit();let t=this.createQuery({searchTerm:e});await this.fetchAndEmit(t,e)}async handlePage({num:e,start:t,total:r}){this.loading=!0,this.arcgisGroupBrowserLoading.emit();let i=this.createQuery({start:t,num:e,total:r});await this.fetchAndEmit(i,this.searchTerm)}getBrowserResponseFromQueryResponse(e){let{nextStart:t,num:r,queryParams:i,results:l,start:a,total:n}=e??Ie;return{nextStart:t??-1,num:r??i?.num??0,results:l,start:a??i?.start??1,total:n}}async formatRange({start:e,end:t,total:r}){if(this._messages._lang==="en")return[`${e}-${t} of ${r}`,`${e}-${t} of ${r} group${r==="1"?"":"s"}`];let i=this._messages.browser,l={start:e,end:t,total:r},a=oe(i.pageRange,l),n=oe(i.pageRangeAria,l);return[a,n]}getPreviewFooterActionsEmpty(){return!this.el?.querySelector('[slot="preview-footer-action"]')}renderTopBar(){return c`<arcgis-portal-browser-top-bar slot=top-bar .store=${this.store}><arcgis-portal-browser-search slot=search .store=${this.store} .term=${this.searchTerm} @arcgisBrowserSearch=${e=>{this.handleSearch(e.detail)}}></arcgis-portal-browser-search></arcgis-portal-browser-top-bar>`}renderEmptyTextSlot(e,t){return c`<div slot=${e??g} class="empty-text-slot"><slot name=${e??g}><p class="empty-text-slot__default">${t}</p></slot></div>`}renderContent(){let e=new Set(this.selectedGroups.map(i=>i.id)),t=this.queryResponse.results.map(i=>{let l=this.cards.group?.(i)??{},a=l.view??this.store.view??"list";return{group:i,cardProps:l,slots:l.slots,view:a}}),r=t.length>0&&t.every(({view:i})=>i==="compact");return c`<div class=${I({"group-browser__results":!0,"group-browser__results--compact":r})} .part=${"results"}>${t.map(({group:i,cardProps:l,slots:a,view:n})=>{let h=i.id,u=a?.contentTop?.(i),w=a?.contentEnd?.(i),f=a?.actionsStart?.(i),b=a?.actionsEnd?.(i);return ye(h,c`<arcgis-portal-group-card class="group-browser__result-card" .portal=${this.portal} .group=${i} .user=${l.user} .indeterminate=${l.indeterminate} .view=${n} .selection=${this.selection} .selected=${e.has(h)} .preview=${l.preview??this.preview} .previewed=${l.previewed??this.store.preview===h} .name=${l.name} .showSummary=${l.showSummary??!0} .hideBadges=${l.hideBadges??!1} .hideDateUpdated=${l.hideDateUpdated??!1} .showDateCreated=${l.showDateCreated??!1} .hideViewableBy=${l.hideViewableBy??!1} .hideOwner=${l.hideOwner??!1} .link=${l.link} .linkHandler=${l.linkHandler} .newTab=${l.newTab??!1} .disabled=${l.disabled??!1} @arcgisGroupCardSelect=${B=>{this.handleGroupCardSelect(B)}} @arcgisGroupBrowserCardPreview=${B=>{let O=B.detail;if(this.store.filtersExpanded=!1,!O||this.store.preview===O.id){this.closePreview();return}this.restoreFocusTarget=B.currentTarget,this.store.preview=O.id,this.previewGroup=O,this.arcgisGroupBrowserPreview.emit(O)}}>${u&&c`<div slot=content-top>${u}</div>`||""}${w&&c`<div slot=content-end>${w}</div>`||""}${f&&c`<div slot=actions-start>${f}</div>`||""}${b&&c`<div slot=actions-end>${b}</div>`||""}</arcgis-portal-group-card>`)})}</div>`}render(){let e=this.responsiveFormFactor==="small"?"small":this.formFactor;return c`<arcgis-portal-browser .store=${this.store} .response=${this.getBrowserResponseFromQueryResponse(this.queryResponse)} .loading=${this.loading} .formFactor=${e} .height=${this.height} .searchTerm=${this.searchTerm} .rangeFormatter=${this.formatRange} .selected=${this.selectedGroups} .alwaysShowSelection=${this.alwaysShowSelection} @arcgisBrowserFilterClear=${this.handleBrowserFilterClear} @arcgisBrowserFilterRemove=${this.handleBrowserFilterRemove} @arcgisAriaUpdate=${t=>{this.arcgisAriaUpdate.emit(t.detail)}}><slot name=top-bar slot=top-bar>${this.renderTopBar()}</slot><slot name=content-start slot=content-start></slot><slot name=selection slot=selection></slot><slot name=actions slot=actions></slot><slot name=view slot=view></slot>${Ce({slot:"sort",sort:this.sort,formFactor:e,sortField:this.sortField,sortOrder:this.sortOrder,onSortFieldChange:t=>{this.handleSortFieldChange(t)},onSortOrderChange:t=>{this.handleSortOrderChange(t)}})}<slot name=content slot=content>${this.renderContent()}</slot>${ke({slot:"pagination",store:this.store,total:this.queryResponse.total,start:this.queryResponse?.queryParams?.start??1,num:this.queryResponse?.queryParams?.num??this.num,onPage:t=>{this.handlePage(t)}})}<slot name=content-end slot=content-end></slot><slot name=preview slot=preview>${this.previewGroup&&c`<arcgis-portal-group-browser-preview .group=${this.previewGroup} .portal=${this.portal} .user=${this.portal.user??void 0} .hideBadges=${this.hidePreviewBadges} .hidePreviewFooter=${this.hidePreviewFooter} .currentResponse=${this.queryResponse} .previewFooterActionsSpaced=${!this.getPreviewFooterActionsEmpty()} @arcgisGroupBrowserInternalUIAction=${t=>{this.arcgisGroupBrowserInternalUIAction.emit(t.detail)}} @arcgisGroupBrowserPreviewClose=${()=>{this.closePreview({restoreFocus:!0})}} @arcgisPreviewClose=${()=>{this.closePreview({restoreFocus:!0})}}><slot name=preview-footer-action slot=footer-action></slot></arcgis-portal-group-browser-preview>`||""}</slot>${this.renderEmptyTextSlot("no-results",this._messages.content.noResults)}${this.renderEmptyTextSlot("no-content",this._messages.content.noContent)}<slot name=scroll-end slot=scroll-end></slot>${Te({slot:"filters",filters:this.filters,messages:this._messages,browserMessages:this._browserMessages,store:this.store,portal:this.portal,hasIndoorsSpaces:this.hasIndoorsSpaces,selectedGroupsByUser:this.selectedGroupsByUser,selectedOwner:this.selectedOwner,selectedMembership:this.selectedMembership,selectedMemberOrg:this.selectedMemberOrg,selectedSpecialGroup:this.selectedSpecialGroup,specialGroupOptions:this.specialGroupOptions,selectedAccess:this.selectedAccess,isFilterActive:t=>this.isFilterActive(t),handleSelect:t=>{this.setFilterSelection(t)},handleUserFilterChange:t=>{this.arcgisGroupBrowserUserFilterChange.emit(t)},handleRemove:t=>{this.removeFilter(t)},handleUpsert:t=>{this.store.filters={...this.store.filters,[t.id]:t},this.publishFilterStateChange(),this.fetchGroups()}})}</arcgis-portal-browser>`}};$e("arcgis-portal-group-browser",pe);return pe},"intl","portal/PortalGroup","intl","core/reactiveUtils","intl",a,b,d,e,f,h,i,k,l,m,n,o)