@arcgis/portal-components 5.2.0-next.70 → 5.2.0-next.72
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.
- package/LICENSE.md +4 -2
- package/dist/cdn/{WO5XWXPJ.js → 2C6GSZLF.js} +1 -1
- package/dist/cdn/{W7DWQ34O.js → 4HZG3T4B.js} +86 -86
- package/dist/cdn/{26OYXJSF.js → 66QLSGRO.js} +1 -1
- package/dist/cdn/{5KDFY5KE.js → A4AA5T6M.js} +1 -1
- package/dist/cdn/{XV3YTVJS.js → ABNBGV65.js} +1 -1
- package/dist/cdn/{PYMDLCLS.js → ADHQAGMF.js} +1 -1
- package/dist/cdn/{NIGUPMVS.js → AVMIEBYN.js} +1 -1
- package/dist/cdn/{WJORAGJA.js → B5OENWBU.js} +1 -1
- package/dist/cdn/{LUT4IGPP.js → EBYEZR4N.js} +1 -1
- package/dist/cdn/{NFGBWHVE.js → EDPNHNQ2.js} +1 -1
- package/dist/cdn/F3ODJVJC.js +2 -0
- package/dist/cdn/{LVHP4FCZ.js → GRQL4XCF.js} +1 -1
- package/dist/cdn/{3BKTFFIT.js → KPDZDJTT.js} +1 -1
- package/dist/cdn/{CSAR4TK7.js → N4PON7TR.js} +1 -1
- package/dist/cdn/{5655BW4U.js → P5PUXFZT.js} +1 -1
- package/dist/cdn/{TJMKZOE4.js → RPFWESQ4.js} +1 -1
- package/dist/cdn/{UC4LOAHI.js → RVCPNNVS.js} +1 -1
- package/dist/cdn/{MLBPMZ3Q.js → SSLWBHRC.js} +1 -1
- package/dist/cdn/{G2KWSRCG.js → TGTT2CVD.js} +1 -1
- package/dist/cdn/{QNA62UMC.js → V6VNED6L.js} +1 -1
- package/dist/cdn/{PMRO7G6N.js → V6ZHHCLD.js} +1 -1
- package/dist/cdn/W2AW2BW3.js +2 -0
- package/dist/cdn/YY4236HO.js +2 -0
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/portal-item-badge.js +107 -104
- package/dist/chunks/requests.js +7 -7
- package/dist/components/arcgis-portal-account-switcher/customElement.js +1 -1
- package/dist/components/arcgis-portal-account-switcher-list/customElement.js +1 -1
- package/dist/components/arcgis-portal-ai-assistant/agents/portalRouteKeys.d.ts +26 -0
- package/dist/components/arcgis-portal-ai-assistant/agents/types.d.ts +19 -4
- package/dist/components/arcgis-portal-ai-assistant/customElement.js +920 -780
- package/dist/components/arcgis-portal-navigation/customElement.js +193 -196
- package/dist/components/arcgis-portal-navigation/index.js +3 -3
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/package.json +4 -4
- package/dist/cdn/6DXCDYO4.js +0 -2
- package/dist/cdn/DALGPO36.js +0 -2
- package/dist/cdn/MTAF2OG3.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{a as J,b as ue}from"./4QA4AYHJ.js";import o from"./CZQEMMJG.js";import m from"./NIGUPMVS.js";import l from"./LUT4IGPP.js";import k from"./5GK4VL6E.js";import"./2RMN34M3.js";import{a as ye}from"./6KVA4AKM.js";import"./CFBSBZSS.js";import"./2BUE3JLM.js";import i from"./SLSCUAED.js";import h from"./YLXNYRQX.js";import f from"./M7DQVQO6.js";import"./V4EVETH3.js";import e from"./FL3NSFMY.js";import{a as R}from"./4Q6KHGPX.js";import{a as pe}from"./TQLHU3PC.js";import"./OBBYT2AV.js";import d from"./JTIPENXE.js";import c from"./24L3PS2J.js";import"./UZCHLKLO.js";import"./DFTUMKSN.js";import b from"./G2KWSRCG.js";import a from"./DALGPO36.js";import{a as ne}from"./VMQIDO4Z.js";import"./QS3GXAIH.js";import{a as le}from"./2GBRZSEC.js";import"./XLLMHJCE.js";import{a as j}from"./W3UBNVKL.js";import"./QZD2UBOW.js";import"./JVGCIDQW.js";import{M as oe,N as C,P as g,S as ae,h as ie,j as n,w as y}from"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([Ke,{watch:Xe},{substitute:k},{substitute:Ne},,{b:ce},,{c:de},,,,{a:he,b:me},,,{a:ge,b:we,c:fe,d:be,e:ve,f:$e}])=>{var Ve=["title","relevance","modified"];function Fe(i){let{slot:e="sort",sort:t,formFactor:s,sortField:a,sortOrder:l,onSortFieldChange:o,onSortOrderChange:d}=i;return t.enabled?n`<arcgis-portal-browser-sort slot=${e??g} .options=${t.props?.options??Ve} .field=${a} .order=${l} .appearance=${t.props?.appearance??"dropdown"} .showText=${t.props?.showText??s!=="small"} .useDeleted=${t.props?.useDeleted??!1} @arcgisBrowserSortFieldChange=${h=>{o(h.detail)}} @arcgisBrowserSortOrderChange=${h=>{d(h.detail)}}></arcgis-portal-browser-sort>`:n`<slot name=${e??g} slot=${e??g}></slot>`}function Ge(i){let{slot:e="pagination",store:t,total:s,start:a,num:l,onPage:o}=i;return n`<slot name=${e??g} slot=${e??g}><arcgis-portal-browser-pagination .store=${t} .total=${s} .start=${a} .num=${l} @arcgisBrowserPage=${d=>{o(d.detail)}}></arcgis-portal-browser-pagination></slot>`}function F(i){let{action:e,active:t=!1,clearDisabled:s=!1,clearLabel:a="Clear",children:l,expanded:o=!1,heading:d,noPadding:h=!1,onRemove:u,primary:G=!1,setExpanded:P}=i;return G?n`<div class="filter--primary"><div class="filter__header filter__header--primary"><h3 class="filter__title">${d}</h3>${e}</div>${l}</div>`:n`<calcite-accordion-item class="filter__accordion-item" .heading=${d} .expanded=${o} @calciteAccordionItemExpand=${()=>{P?.(!0)}} @calciteAccordionItemCollapse=${()=>{P?.(!1)}}><div slot=actions-end class="filter__actions-slot arcgis-item-browser-filter__actions-slot">${e}${t&&!s&&n`<calcite-button class="clear-button" scale=s kind=neutral appearance=transparent @click=${()=>u?.()}>${a}</calcite-button>`||""}</div><div class=${C({filter__content:!0,"filter__content--padded":!h})}>${l}</div></calcite-accordion-item>`}var W=1440*60*1e3;function q(i){let e=typeof i=="string"?Number.parseInt(i,10):typeof i=="number"?i:(i??new Date).valueOf(),t=new Date(e);return t.setHours(0,0,0,0),t.valueOf()}function Se(i){return q(i)+W-1}var je=7*W,Oe=["today","yesterday","last7","last30","never","custom"],Je=(i,e,t)=>{let s=q(),a=Se();switch(i){case"yesterday":return[s-W,s-1];case"today":return[s,a];case"last7":return[s-je,a];case"last30":return[s-W*30,a];case"never":return[-1,-1];case"custom":return e&&t?[q(e),Se(t)]:null;default:return null}};function xe(i){let{clearLabel:e,end:t,expanded:s,filterDateMessages:a,includeNever:l,onFilter:o,onRemove:d,property:h,range:u,serverProperty:G,setExpanded:P,start:_}=i,D=a.title[h],z=l?Oe:Oe.filter(m=>m!=="never"),E=new Date().toISOString().slice(0,10),w=!!(u&&(u!=="custom"||_&&t)),v=(m,$,f)=>{let S=G??(h==="modified"?"modified":"uploaded"),b=Je(m,$,f),U=m?a[m]:"";o?.({id:h,label:m?Ne(a[h],{date:U}):"",value:b?`(${S}:[${b[0]} TO ${b[1]}])`:"",range:m,start:b?new Date(b[0]):void 0,end:b?new Date(b[1]):void 0})};return F({heading:D,expanded:s,setExpanded:P,active:w,clearLabel:e,onRemove:d,children:n`<div><calcite-tree selection-mode=children scale=m @calciteTreeSelect=${m=>{let $=m.target.selectedItems?.[0]?.dataset.range,f=u===$?null:$;if(!f){d?.();return}v(f,_,t)}}>${z.map(m=>n`<calcite-tree-item data-range=${m??g} .selected=${m===u}>${a[m]}</calcite-tree-item>`)}</calcite-tree>${u==="custom"&&n`<calcite-input-date-picker class="custom-date-picker" @calciteInputDatePickerChange=${m=>{let $=m.target.valueAsDate,[f,S]=Array.isArray($)?$:[];f&&S&&v("custom",f,S)}} scale=s .max=${E} calendars=1 layout=vertical month-style=abbreviated proximity-selection-disabled range .valueAsDate=${_&&t?[new Date(q(_)),new Date(q(t))]:[]}></calcite-input-date-picker>`||""}</div>`})}function Be(i){let{bottom:e,children:t,primary:s,slot:a,store:l,title:o,top:d}=i,h=!!l?.panel||(l?.width??0)<R.sm;return n`<div slot=${a??g} class="filters-shell" .inert=${!!l?.preview}><div class=${C({"filters-shell__top":!0,"filters-shell__top--padded":h})}>${d}</div>${s}${o}<calcite-accordion appearance=transparent icon-type=chevron icon-position=start scale=m>${t}</calcite-accordion>${e}</div>`}function Pe(i){let{browserMessages:e,slot:t,filters:s,hasIndoorsSpaces:a,isFilterActive:l,messages:o,portal:d,selectedAccess:h,selectedGroupsByUser:u,selectedMemberOrg:G,selectedMembership:P,selectedOwner:_,selectedSpecialGroup:D,specialGroupOptions:z,store:E,handleRemove:w,handleSelect:v,handleUpsert:m,handleUserFilterChange:$}=i,f=d.isPortal,S=d.user,b=ye(S),U=S?.username??"",ke=r=>r===U?k(o.groupsByUser.me,{username:r}):r,X=(r,c)=>r==="owner"?c:r==="outsideOrg"&&b?o.owner.someoneElse:r==="inOrg"?o.owner.inOrg:r==="outsideOrg"?o.owner.outsideOrg:c,M=s.owner,Y=_??M?.props?.owner??null,I=M?.props?.username??U,Ae=d.id??"",qe=b?["owner","outsideOrg"]:["owner","inOrg","outsideOrg"],Q=s.membership,Z=P??Q?.props?.membership??null,Te=["org","collaboration","anyOrg"],L=s.memberOrg,ee=G??L?.props?.memberOrg??null,Ee=L?.props?.orgId??d.id??"",Me=["myOrg","anotherOrg"],H=s.specialGroups,te=D??H?.props?.specialGroup??null,V=s.access,re=h??V?.props?.access??null,Ie=["public","org","private"],A=s.groupsByUser,se=A?.props?.usernames??[],Le=A?.props?.selectedUsername??u??se[0]??U,O=e.filter.clear,x=(r,c)=>{let p=s[r];p&&(p.props={...p.props,expanded:c})};return Be({slot:t,store:E,title:n`<div class="filters-title"><h2 class="filters-title__heading">${o.filters.title}</h2><slot name=before-filters></slot></div>`,children:n`${!!A?.enabled&&F({heading:o.groupsByUser.title,expanded:!!A?.props?.expanded,setExpanded:r=>x("groupsByUser",r),clearLabel:O,onRemove:()=>{v({kind:"groupsByUser",value:A?.props?.selectedUsername??U})},children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c=r.target.selectedItems?.[0]?.dataset.username??"";v({kind:"groupsByUser",value:c}),$(c)}}>${se.map(r=>n`<calcite-tree-item data-username=${r??g} .selected=${r===Le}><a class="groups-by-user__label">${ke(r)}</a></calcite-tree-item>`)}</calcite-tree>`})||""}${!!M?.enabled&&F({heading:o.owner.title,expanded:!!M?.props?.expanded,setExpanded:r=>x("owner",r),active:l("owner"),clearLabel:O,onRemove:()=>w("owner"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="owner",p=T(Y,r,c);if(!p){w(c);return}m({id:c,label:k(o.owner.label,{label:X(p,I)}),param:"q",value:we(p,I,{isPublicUser:b,orgId:Ae}),owner:p,username:I}),v({kind:c,value:p})}}>${qe.filter(r=>!(f||a)||r!=="outsideOrg").map(r=>n`<calcite-tree-item data-owner=${r??g} .selected=${Y===r}>${X(r,I)}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(Q?.enabled&&!f&&!a)&&F({heading:o.membership.title,expanded:!!Q?.props?.expanded,setExpanded:r=>x("membership",r),active:l("membership"),clearLabel:O,onRemove:()=>w("membership"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="membership",p=T(Z,r,c);if(!p){w(c);return}m({id:c,label:k(o.membership.label,{label:o.membership[p]}),param:"q",value:fe(p,a),membership:p}),v({kind:c,value:p})}}>${Te.map(r=>n`<calcite-tree-item data-membership=${r??g} .selected=${Z===r}>${o.membership[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(L?.enabled&&!f)&&F({heading:o.memberOrg.title,expanded:!!L?.props?.expanded,setExpanded:r=>x("memberOrg",r),active:l("memberOrg"),clearLabel:O,onRemove:()=>w("memberOrg"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="memberOrg",p=T(ee,r,c);if(!p){w(c);return}m({id:c,label:k(o.memberOrg.label,{label:o.memberOrg[p]}),param:"q",value:be(p,Ee),memberOrg:p}),v({kind:c,value:p})}}>${Me.map(r=>n`<calcite-tree-item data-member-org=${r??g} .selected=${ee===r}>${o.memberOrg[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}${H?.enabled&&F({heading:o.specialGroups.title,expanded:!!H.props?.expanded,setExpanded:r=>x("specialGroups",r),active:l("specialGroups"),clearLabel:O,onRemove:()=>w("specialGroups"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${async r=>{let c="specialGroups",p=T(te,r,c);if(!p){w(c);return}let N=await ve(p,d);m({id:"specialGroups",label:k(o.specialGroups.label,{label:o.specialGroups[p]}),param:"q",value:N,specialGroup:p}),v({kind:"specialGroups",value:p})}}>${z.map(r=>n`<calcite-tree-item data-special-groups=${r??g} .selected=${te===r}><span class="special-groups-settings-option">${o.specialGroups[r]}${r==="settings"&&n`<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(r=>s[r]?.enabled).map(r=>{let c=s[r]?.props,p=E.filters[r],N=!!c?.includeNever,We=p?.range??c?.range??null,De=p?.start??c?.start,ze=p?.end??c?.end,Qe=c?.serverProperty,He=c?.expanded;return xe({property:r,filterDateMessages:e.filterDate,clearLabel:O,expanded:He,setExpanded:B=>x(r,B),includeNever:N,range:We,start:De,end:ze,serverProperty:Qe,onRemove:()=>{m({id:r,label:"",param:"q",value:"",range:null,start:null,end:null})},onFilter:B=>{m({id:r,label:B.label,param:"q",value:B.value,range:B.range,start:B.start,end:B.end})}})})}${!!V?.enabled&&F({heading:o.access.title,expanded:!!V?.props?.expanded,setExpanded:r=>x("access",r),active:l("access"),clearLabel:O,onRemove:()=>w("access"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="access",p=T(re,r,c);if(!p){w(c);return}m({id:c,label:k(o.access.label,{label:o.access[p]}),param:"q",value:$e(p),access:p}),v({kind:c,value:p})}}>${Ie.map(r=>n`<calcite-tree-item data-access=${r??g} .selected=${re===r}>${o.access[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}`})}var T=(i,e,t)=>{let s=e.target.selectedItems?.[0]?.dataset[t];return i===s?null:s??null};var Ye=ie`: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 Ze(i,e){let t=`${ne(i)}community/groups`,s=rt(e),a=st(e),l=!!e.searchUser?.trim();if(!s.trim()&&!l)return{nextStart:-1,num:0,q:s,queryParams:{...a,q:s},results:[],start:0,total:0};let o={...a,q:s},d=await ce({url:t,portal:i,params:o}),h=d.results.map(u=>{let G=Ke.fromJSON(u);return G.portal=i,G});return{...d,q:s,queryParams:o,results:h}}var et=["created","modified","owner","title"];function tt(i){return!!i&&et.includes(i)}function rt(i){let e=[],t=i.baseQuery?.trim();t&&e.push(`(${t})`);let s=i.searchTerm?.trim();s&&e.push(`(${ue(s)})`);for(let a of Object.values(i.filters??{}))typeof a.value=="string"&&a.value.trim()&&e.push(`(${a.value.trim()})`),typeof a.additionalParams=="string"&&a.additionalParams.trim()&&e.push(`(${a.additionalParams.trim()})`);return e.join(" AND ")}function st(i){return{num:i.num,start:i.start,...i.searchUser?{searchUserAccess:"groupMember",searchUserName:i.searchUser}:{},...i.sortField==="relevance"||!tt(i.sortField)?{}:{sortField:i.sortField,sortOrder:i.sortOrder}}}function _e(i,e="desc"){switch(i){case"owner":case"title":return"asc";case"created":case"modified":case"relevance":return"desc";default:return e}}function it(i){let e,t,s,a=()=>{e?.();let o=Xe(()=>i.getStore().width,()=>{l()});e=()=>{o.remove()}},l=()=>{let o=i.getStore(),d=o.width||i.getHostWidth()||i.getViewportWidth(),h=Math.min(d,i.getViewportWidth());o.width!==h&&(o.width=h);let u=h>R.md?"large":"small";i.getResponsiveFormFactor()==="large"&&u==="small"&&(o.panel=!1,o.filtersExpanded=!1),i.getResponsiveFormFactor()==="small"&&u==="large"&&(o.panel=!1,o.filtersExpanded=!0),i.setResponsiveFormFactor(u)};return{connect:()=>{typeof ResizeObserver<"u"&&(t=new ResizeObserver(o=>{let d=o[0]?.contentRect?.width??0;if(d>0){let h=Math.round(d);i.setHostWidth(h),i.getStore().width=h,l()}}),t.observe(i.el)),a(),l()},disconnect:()=>{s!==void 0&&(cancelAnimationFrame(s),s=void 0),e?.(),t?.disconnect(),t=void 0},refreshStoreWatcher:a,handleWindowResize:()=>{if(i.setViewportWidth(window.innerWidth),!t){if(s!==void 0)return;s=requestAnimationFrame(()=>{s=void 0;let o=Math.round(i.el.getBoundingClientRect().width||i.getHostWidth()||i.getViewportWidth()),d=Math.min(o,i.getViewportWidth()),h=i.getStore();h.width!==d&&(h.width=d),l()});return}l()},updateResponsiveLayout:l}}var Ue=["title","relevance","modified"],Ce={queryParams:void 0,nextStart:-1,results:[],start:-1,num:0,total:0},Re=["openData","sharedUpdate","distributed","admin","settings"],K=class extends oe{constructor(){super(...arguments),this._messages=j({name:"portal-group-browser",blocking:!0}),this._browserMessages=j({name:"portal-browser",blocking:!0}),this.responsiveLayoutController=it({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.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=Ce,this.specialGroupOptions=Re,this.responsiveFormFactor="large",this.viewportWidth=typeof window>"u"?R.lg:window.innerWidth,this.hostWidth=0,this.store=de({type:"group-browser",width:window?.innerWidth??R.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:Ue}},this.selection="none",this.alwaysShowSelection=!1,this.hidePreviewFooter=!1,this.hidePreviewBadges=!1,this.hasIndoorsSpaces=!1,this.arcgisGroupBrowserLoading=y(),this.arcgisGroupBrowserPreview=y(),this.arcgisGroupBrowserSelect=y(),this.arcgisGroupBrowserSublayerPreview=y(),this.arcgisGroupBrowserUpdate=y(),this.arcgisGroupBrowserInternalUIAction=y(),this.arcgisGroupBrowserUserFilterChange=y(),this.arcgisAriaUpdate=y()}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,selection:1,alwaysShowSelection:5,hidePreviewFooter:5,hidePreviewBadges:5,hasIndoorsSpaces:5}}static{this.styles=Ye}get currentUsername(){return this.portal.user?.username??""}async refresh(){await this.fetchGroups()}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.responsiveLayoutController.handleWindowResize),this.responsiveLayoutController.connect(),this.syncSortFromConfig(),this.selectedGroups=this.selected||[],this.syncSelectionsFromConfig(),this.updateSpecialGroupOptions(),this.fetchGroups()}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}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??Ue;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 s=e.props?.field,a=s&&t.includes(s)?s:t[0];this.sortField=a,this.sortOrder=e.props?.order??_e(a,this.sortOrder)}async updateSpecialGroupOptions(){if(!this.portal){this.specialGroupOptions=[];return}let e="";try{e=await ge(this.portal)}catch{e=""}this.specialGroupOptions=Re.filter(t=>!(t==="openData"&&this.portal.isPortal||t==="distributed"&&this.hasIndoorsSpaces||t==="settings"&&!e)),this.selectedSpecialGroup&&!this.specialGroupOptions.includes(this.selectedSpecialGroup)&&this.removeFilter("specialGroups")}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]:he(t)},this.resetSelectionByFilterId(e),this.publishFilterStateChange(),this.fetchGroups())}clearFilters(){this.store.filters=me(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:le(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:s}=e.detail;switch(this.selection){case"single":this.selectedGroups=[s];break;case"multiple":t?this.selectGroup(s):this.deselectGroup(s);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=_e(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 s=e.queryParams;this.arcgisGroupBrowserUpdate.emit({queryResponse:e,sortField:s?.sortField,sortOrder:s?.sortOrder,selectedGroups:this.selectedGroups,filters:{...this.store.filters},searchTerm:t})}async queryGroups(e){return await(this.fetch?.(e)??Ze(this.portal,e))}async fetchAndEmit(e,t){this.preflight&&(e=await this.preflight(e));let s=await this.queryGroups(e);this.queryResponse=s,this.loading=!1,this.emitUpdate(s,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:s}){this.loading=!0,this.arcgisGroupBrowserLoading.emit();let a=this.createQuery({start:t,num:e,total:s});await this.fetchAndEmit(a,this.searchTerm)}getBrowserResponseFromQueryResponse(e){let{nextStart:t,num:s,queryParams:a,results:l,start:o,total:d}=e??Ce;return{nextStart:t??-1,num:s??a?.num??0,results:l,start:o??a?.start??1,total:d}}async formatRange({start:e,end:t,total:s}){if(this._messages._lang==="en")return[`${e}-${t} of ${s}`,`${e}-${t} of ${s} group${s==="1"?"":"s"}`];let a=this._messages.browser,l={start:e,end:t,total:s},o=J(a.pageRange,l),d=J(a.pageRangeAria,l);return[o,d]}getPreviewFooterActionsEmpty(){return!this.el?.querySelector('[slot="preview-footer-action"]')}renderTopBar(){return n`<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 n`<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(a=>a.id)),t=this.queryResponse.results.map(a=>{let l=this.cards.group?.(a)??{},o=l.view||this.store.view||"list";return{group:a,cardProps:l,view:o}}),s=t.length>0&&t.every(({view:a})=>a==="compact");return n`<div class=${C({"group-browser__results":!0,"group-browser__results--compact":s})} .part=${"results"}>${t.map(({group:a,cardProps:l,view:o})=>{let d=a.id;return pe(d,n`<arcgis-portal-group-card class="group-browser__result-card" .portal=${this.portal} .group=${a} .user=${l.user} .indeterminate=${l.indeterminate} .view=${o} .selection=${this.selection} .selected=${e.has(d)} .preview=${l.preview??this.preview} .previewed=${l.previewed??this.store.preview===d} .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=${h=>{this.handleGroupCardSelect(h)}} @arcgisGroupBrowserCardPreview=${h=>{let u=h.detail;if(this.store.filtersExpanded=!1,!u||this.store.preview===u.id){this.closePreview();return}this.restoreFocusTarget=h.currentTarget,this.store.preview=u.id,this.previewGroup=u,this.arcgisGroupBrowserPreview.emit(u)}}></arcgis-portal-group-card>`)})}</div>`}render(){let e=this.responsiveFormFactor==="small"?"small":this.formFactor;return n`<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>${Fe({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>${Ge({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&&n`<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>${Pe({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>`}};ae("arcgis-portal-group-browser",K);return K},"portal/PortalGroup","core/reactiveUtils","intl","intl",a,b,c,d,e,f,h,i,k,l,m,o)
|
|
2
|
+
import{a as J,b as ue}from"./4QA4AYHJ.js";import o from"./CZQEMMJG.js";import m from"./AVMIEBYN.js";import l from"./EBYEZR4N.js";import k from"./5GK4VL6E.js";import"./2RMN34M3.js";import{a as ye}from"./6KVA4AKM.js";import"./CFBSBZSS.js";import"./2BUE3JLM.js";import i from"./SLSCUAED.js";import h from"./YLXNYRQX.js";import f from"./M7DQVQO6.js";import"./V4EVETH3.js";import e from"./FL3NSFMY.js";import{a as R}from"./4Q6KHGPX.js";import{a as pe}from"./TQLHU3PC.js";import"./OBBYT2AV.js";import d from"./JTIPENXE.js";import c from"./24L3PS2J.js";import"./UZCHLKLO.js";import"./DFTUMKSN.js";import b from"./TGTT2CVD.js";import a from"./F3ODJVJC.js";import{a as ne}from"./VMQIDO4Z.js";import"./QS3GXAIH.js";import{a as le}from"./2GBRZSEC.js";import"./XLLMHJCE.js";import{a as j}from"./W3UBNVKL.js";import"./QZD2UBOW.js";import"./JVGCIDQW.js";import{M as oe,N as C,P as g,S as ae,h as ie,j as n,w as y}from"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([Ke,{watch:Xe},{substitute:k},{substitute:Ne},,{b:ce},,{c:de},,,,{a:he,b:me},,,{a:ge,b:we,c:fe,d:be,e:ve,f:$e}])=>{var Ve=["title","relevance","modified"];function Fe(i){let{slot:e="sort",sort:t,formFactor:s,sortField:a,sortOrder:l,onSortFieldChange:o,onSortOrderChange:d}=i;return t.enabled?n`<arcgis-portal-browser-sort slot=${e??g} .options=${t.props?.options??Ve} .field=${a} .order=${l} .appearance=${t.props?.appearance??"dropdown"} .showText=${t.props?.showText??s!=="small"} .useDeleted=${t.props?.useDeleted??!1} @arcgisBrowserSortFieldChange=${h=>{o(h.detail)}} @arcgisBrowserSortOrderChange=${h=>{d(h.detail)}}></arcgis-portal-browser-sort>`:n`<slot name=${e??g} slot=${e??g}></slot>`}function Ge(i){let{slot:e="pagination",store:t,total:s,start:a,num:l,onPage:o}=i;return n`<slot name=${e??g} slot=${e??g}><arcgis-portal-browser-pagination .store=${t} .total=${s} .start=${a} .num=${l} @arcgisBrowserPage=${d=>{o(d.detail)}}></arcgis-portal-browser-pagination></slot>`}function F(i){let{action:e,active:t=!1,clearDisabled:s=!1,clearLabel:a="Clear",children:l,expanded:o=!1,heading:d,noPadding:h=!1,onRemove:u,primary:G=!1,setExpanded:P}=i;return G?n`<div class="filter--primary"><div class="filter__header filter__header--primary"><h3 class="filter__title">${d}</h3>${e}</div>${l}</div>`:n`<calcite-accordion-item class="filter__accordion-item" .heading=${d} .expanded=${o} @calciteAccordionItemExpand=${()=>{P?.(!0)}} @calciteAccordionItemCollapse=${()=>{P?.(!1)}}><div slot=actions-end class="filter__actions-slot arcgis-item-browser-filter__actions-slot">${e}${t&&!s&&n`<calcite-button class="clear-button" scale=s kind=neutral appearance=transparent @click=${()=>u?.()}>${a}</calcite-button>`||""}</div><div class=${C({filter__content:!0,"filter__content--padded":!h})}>${l}</div></calcite-accordion-item>`}var W=1440*60*1e3;function q(i){let e=typeof i=="string"?Number.parseInt(i,10):typeof i=="number"?i:(i??new Date).valueOf(),t=new Date(e);return t.setHours(0,0,0,0),t.valueOf()}function Se(i){return q(i)+W-1}var je=7*W,Oe=["today","yesterday","last7","last30","never","custom"],Je=(i,e,t)=>{let s=q(),a=Se();switch(i){case"yesterday":return[s-W,s-1];case"today":return[s,a];case"last7":return[s-je,a];case"last30":return[s-W*30,a];case"never":return[-1,-1];case"custom":return e&&t?[q(e),Se(t)]:null;default:return null}};function xe(i){let{clearLabel:e,end:t,expanded:s,filterDateMessages:a,includeNever:l,onFilter:o,onRemove:d,property:h,range:u,serverProperty:G,setExpanded:P,start:_}=i,D=a.title[h],z=l?Oe:Oe.filter(m=>m!=="never"),E=new Date().toISOString().slice(0,10),w=!!(u&&(u!=="custom"||_&&t)),v=(m,$,f)=>{let S=G??(h==="modified"?"modified":"uploaded"),b=Je(m,$,f),U=m?a[m]:"";o?.({id:h,label:m?Ne(a[h],{date:U}):"",value:b?`(${S}:[${b[0]} TO ${b[1]}])`:"",range:m,start:b?new Date(b[0]):void 0,end:b?new Date(b[1]):void 0})};return F({heading:D,expanded:s,setExpanded:P,active:w,clearLabel:e,onRemove:d,children:n`<div><calcite-tree selection-mode=children scale=m @calciteTreeSelect=${m=>{let $=m.target.selectedItems?.[0]?.dataset.range,f=u===$?null:$;if(!f){d?.();return}v(f,_,t)}}>${z.map(m=>n`<calcite-tree-item data-range=${m??g} .selected=${m===u}>${a[m]}</calcite-tree-item>`)}</calcite-tree>${u==="custom"&&n`<calcite-input-date-picker class="custom-date-picker" @calciteInputDatePickerChange=${m=>{let $=m.target.valueAsDate,[f,S]=Array.isArray($)?$:[];f&&S&&v("custom",f,S)}} scale=s .max=${E} calendars=1 layout=vertical month-style=abbreviated proximity-selection-disabled range .valueAsDate=${_&&t?[new Date(q(_)),new Date(q(t))]:[]}></calcite-input-date-picker>`||""}</div>`})}function Be(i){let{bottom:e,children:t,primary:s,slot:a,store:l,title:o,top:d}=i,h=!!l?.panel||(l?.width??0)<R.sm;return n`<div slot=${a??g} class="filters-shell" .inert=${!!l?.preview}><div class=${C({"filters-shell__top":!0,"filters-shell__top--padded":h})}>${d}</div>${s}${o}<calcite-accordion appearance=transparent icon-type=chevron icon-position=start scale=m>${t}</calcite-accordion>${e}</div>`}function Pe(i){let{browserMessages:e,slot:t,filters:s,hasIndoorsSpaces:a,isFilterActive:l,messages:o,portal:d,selectedAccess:h,selectedGroupsByUser:u,selectedMemberOrg:G,selectedMembership:P,selectedOwner:_,selectedSpecialGroup:D,specialGroupOptions:z,store:E,handleRemove:w,handleSelect:v,handleUpsert:m,handleUserFilterChange:$}=i,f=d.isPortal,S=d.user,b=ye(S),U=S?.username??"",ke=r=>r===U?k(o.groupsByUser.me,{username:r}):r,X=(r,c)=>r==="owner"?c:r==="outsideOrg"&&b?o.owner.someoneElse:r==="inOrg"?o.owner.inOrg:r==="outsideOrg"?o.owner.outsideOrg:c,M=s.owner,Y=_??M?.props?.owner??null,I=M?.props?.username??U,Ae=d.id??"",qe=b?["owner","outsideOrg"]:["owner","inOrg","outsideOrg"],Q=s.membership,Z=P??Q?.props?.membership??null,Te=["org","collaboration","anyOrg"],L=s.memberOrg,ee=G??L?.props?.memberOrg??null,Ee=L?.props?.orgId??d.id??"",Me=["myOrg","anotherOrg"],H=s.specialGroups,te=D??H?.props?.specialGroup??null,V=s.access,re=h??V?.props?.access??null,Ie=["public","org","private"],A=s.groupsByUser,se=A?.props?.usernames??[],Le=A?.props?.selectedUsername??u??se[0]??U,O=e.filter.clear,x=(r,c)=>{let p=s[r];p&&(p.props={...p.props,expanded:c})};return Be({slot:t,store:E,title:n`<div class="filters-title"><h2 class="filters-title__heading">${o.filters.title}</h2><slot name=before-filters></slot></div>`,children:n`${!!A?.enabled&&F({heading:o.groupsByUser.title,expanded:!!A?.props?.expanded,setExpanded:r=>x("groupsByUser",r),clearLabel:O,onRemove:()=>{v({kind:"groupsByUser",value:A?.props?.selectedUsername??U})},children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c=r.target.selectedItems?.[0]?.dataset.username??"";v({kind:"groupsByUser",value:c}),$(c)}}>${se.map(r=>n`<calcite-tree-item data-username=${r??g} .selected=${r===Le}><a class="groups-by-user__label">${ke(r)}</a></calcite-tree-item>`)}</calcite-tree>`})||""}${!!M?.enabled&&F({heading:o.owner.title,expanded:!!M?.props?.expanded,setExpanded:r=>x("owner",r),active:l("owner"),clearLabel:O,onRemove:()=>w("owner"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="owner",p=T(Y,r,c);if(!p){w(c);return}m({id:c,label:k(o.owner.label,{label:X(p,I)}),param:"q",value:we(p,I,{isPublicUser:b,orgId:Ae}),owner:p,username:I}),v({kind:c,value:p})}}>${qe.filter(r=>!(f||a)||r!=="outsideOrg").map(r=>n`<calcite-tree-item data-owner=${r??g} .selected=${Y===r}>${X(r,I)}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(Q?.enabled&&!f&&!a)&&F({heading:o.membership.title,expanded:!!Q?.props?.expanded,setExpanded:r=>x("membership",r),active:l("membership"),clearLabel:O,onRemove:()=>w("membership"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="membership",p=T(Z,r,c);if(!p){w(c);return}m({id:c,label:k(o.membership.label,{label:o.membership[p]}),param:"q",value:fe(p,a),membership:p}),v({kind:c,value:p})}}>${Te.map(r=>n`<calcite-tree-item data-membership=${r??g} .selected=${Z===r}>${o.membership[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}${!!(L?.enabled&&!f)&&F({heading:o.memberOrg.title,expanded:!!L?.props?.expanded,setExpanded:r=>x("memberOrg",r),active:l("memberOrg"),clearLabel:O,onRemove:()=>w("memberOrg"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="memberOrg",p=T(ee,r,c);if(!p){w(c);return}m({id:c,label:k(o.memberOrg.label,{label:o.memberOrg[p]}),param:"q",value:be(p,Ee),memberOrg:p}),v({kind:c,value:p})}}>${Me.map(r=>n`<calcite-tree-item data-member-org=${r??g} .selected=${ee===r}>${o.memberOrg[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}${H?.enabled&&F({heading:o.specialGroups.title,expanded:!!H.props?.expanded,setExpanded:r=>x("specialGroups",r),active:l("specialGroups"),clearLabel:O,onRemove:()=>w("specialGroups"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${async r=>{let c="specialGroups",p=T(te,r,c);if(!p){w(c);return}let N=await ve(p,d);m({id:"specialGroups",label:k(o.specialGroups.label,{label:o.specialGroups[p]}),param:"q",value:N,specialGroup:p}),v({kind:"specialGroups",value:p})}}>${z.map(r=>n`<calcite-tree-item data-special-groups=${r??g} .selected=${te===r}><span class="special-groups-settings-option">${o.specialGroups[r]}${r==="settings"&&n`<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(r=>s[r]?.enabled).map(r=>{let c=s[r]?.props,p=E.filters[r],N=!!c?.includeNever,We=p?.range??c?.range??null,De=p?.start??c?.start,ze=p?.end??c?.end,Qe=c?.serverProperty,He=c?.expanded;return xe({property:r,filterDateMessages:e.filterDate,clearLabel:O,expanded:He,setExpanded:B=>x(r,B),includeNever:N,range:We,start:De,end:ze,serverProperty:Qe,onRemove:()=>{m({id:r,label:"",param:"q",value:"",range:null,start:null,end:null})},onFilter:B=>{m({id:r,label:B.label,param:"q",value:B.value,range:B.range,start:B.start,end:B.end})}})})}${!!V?.enabled&&F({heading:o.access.title,expanded:!!V?.props?.expanded,setExpanded:r=>x("access",r),active:l("access"),clearLabel:O,onRemove:()=>w("access"),children:n`<calcite-tree selection-mode=single scale=m @calciteTreeSelect=${r=>{let c="access",p=T(re,r,c);if(!p){w(c);return}m({id:c,label:k(o.access.label,{label:o.access[p]}),param:"q",value:$e(p),access:p}),v({kind:c,value:p})}}>${Ie.map(r=>n`<calcite-tree-item data-access=${r??g} .selected=${re===r}>${o.access[r]}</calcite-tree-item>`)}</calcite-tree>`})||""}`})}var T=(i,e,t)=>{let s=e.target.selectedItems?.[0]?.dataset[t];return i===s?null:s??null};var Ye=ie`: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 Ze(i,e){let t=`${ne(i)}community/groups`,s=rt(e),a=st(e),l=!!e.searchUser?.trim();if(!s.trim()&&!l)return{nextStart:-1,num:0,q:s,queryParams:{...a,q:s},results:[],start:0,total:0};let o={...a,q:s},d=await ce({url:t,portal:i,params:o}),h=d.results.map(u=>{let G=Ke.fromJSON(u);return G.portal=i,G});return{...d,q:s,queryParams:o,results:h}}var et=["created","modified","owner","title"];function tt(i){return!!i&&et.includes(i)}function rt(i){let e=[],t=i.baseQuery?.trim();t&&e.push(`(${t})`);let s=i.searchTerm?.trim();s&&e.push(`(${ue(s)})`);for(let a of Object.values(i.filters??{}))typeof a.value=="string"&&a.value.trim()&&e.push(`(${a.value.trim()})`),typeof a.additionalParams=="string"&&a.additionalParams.trim()&&e.push(`(${a.additionalParams.trim()})`);return e.join(" AND ")}function st(i){return{num:i.num,start:i.start,...i.searchUser?{searchUserAccess:"groupMember",searchUserName:i.searchUser}:{},...i.sortField==="relevance"||!tt(i.sortField)?{}:{sortField:i.sortField,sortOrder:i.sortOrder}}}function _e(i,e="desc"){switch(i){case"owner":case"title":return"asc";case"created":case"modified":case"relevance":return"desc";default:return e}}function it(i){let e,t,s,a=()=>{e?.();let o=Xe(()=>i.getStore().width,()=>{l()});e=()=>{o.remove()}},l=()=>{let o=i.getStore(),d=o.width||i.getHostWidth()||i.getViewportWidth(),h=Math.min(d,i.getViewportWidth());o.width!==h&&(o.width=h);let u=h>R.md?"large":"small";i.getResponsiveFormFactor()==="large"&&u==="small"&&(o.panel=!1,o.filtersExpanded=!1),i.getResponsiveFormFactor()==="small"&&u==="large"&&(o.panel=!1,o.filtersExpanded=!0),i.setResponsiveFormFactor(u)};return{connect:()=>{typeof ResizeObserver<"u"&&(t=new ResizeObserver(o=>{let d=o[0]?.contentRect?.width??0;if(d>0){let h=Math.round(d);i.setHostWidth(h),i.getStore().width=h,l()}}),t.observe(i.el)),a(),l()},disconnect:()=>{s!==void 0&&(cancelAnimationFrame(s),s=void 0),e?.(),t?.disconnect(),t=void 0},refreshStoreWatcher:a,handleWindowResize:()=>{if(i.setViewportWidth(window.innerWidth),!t){if(s!==void 0)return;s=requestAnimationFrame(()=>{s=void 0;let o=Math.round(i.el.getBoundingClientRect().width||i.getHostWidth()||i.getViewportWidth()),d=Math.min(o,i.getViewportWidth()),h=i.getStore();h.width!==d&&(h.width=d),l()});return}l()},updateResponsiveLayout:l}}var Ue=["title","relevance","modified"],Ce={queryParams:void 0,nextStart:-1,results:[],start:-1,num:0,total:0},Re=["openData","sharedUpdate","distributed","admin","settings"],K=class extends oe{constructor(){super(...arguments),this._messages=j({name:"portal-group-browser",blocking:!0}),this._browserMessages=j({name:"portal-browser",blocking:!0}),this.responsiveLayoutController=it({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.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=Ce,this.specialGroupOptions=Re,this.responsiveFormFactor="large",this.viewportWidth=typeof window>"u"?R.lg:window.innerWidth,this.hostWidth=0,this.store=de({type:"group-browser",width:window?.innerWidth??R.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:Ue}},this.selection="none",this.alwaysShowSelection=!1,this.hidePreviewFooter=!1,this.hidePreviewBadges=!1,this.hasIndoorsSpaces=!1,this.arcgisGroupBrowserLoading=y(),this.arcgisGroupBrowserPreview=y(),this.arcgisGroupBrowserSelect=y(),this.arcgisGroupBrowserSublayerPreview=y(),this.arcgisGroupBrowserUpdate=y(),this.arcgisGroupBrowserInternalUIAction=y(),this.arcgisGroupBrowserUserFilterChange=y(),this.arcgisAriaUpdate=y()}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,selection:1,alwaysShowSelection:5,hidePreviewFooter:5,hidePreviewBadges:5,hasIndoorsSpaces:5}}static{this.styles=Ye}get currentUsername(){return this.portal.user?.username??""}async refresh(){await this.fetchGroups()}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.responsiveLayoutController.handleWindowResize),this.responsiveLayoutController.connect(),this.syncSortFromConfig(),this.selectedGroups=this.selected||[],this.syncSelectionsFromConfig(),this.updateSpecialGroupOptions(),this.fetchGroups()}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}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??Ue;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 s=e.props?.field,a=s&&t.includes(s)?s:t[0];this.sortField=a,this.sortOrder=e.props?.order??_e(a,this.sortOrder)}async updateSpecialGroupOptions(){if(!this.portal){this.specialGroupOptions=[];return}let e="";try{e=await ge(this.portal)}catch{e=""}this.specialGroupOptions=Re.filter(t=>!(t==="openData"&&this.portal.isPortal||t==="distributed"&&this.hasIndoorsSpaces||t==="settings"&&!e)),this.selectedSpecialGroup&&!this.specialGroupOptions.includes(this.selectedSpecialGroup)&&this.removeFilter("specialGroups")}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]:he(t)},this.resetSelectionByFilterId(e),this.publishFilterStateChange(),this.fetchGroups())}clearFilters(){this.store.filters=me(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:le(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:s}=e.detail;switch(this.selection){case"single":this.selectedGroups=[s];break;case"multiple":t?this.selectGroup(s):this.deselectGroup(s);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=_e(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 s=e.queryParams;this.arcgisGroupBrowserUpdate.emit({queryResponse:e,sortField:s?.sortField,sortOrder:s?.sortOrder,selectedGroups:this.selectedGroups,filters:{...this.store.filters},searchTerm:t})}async queryGroups(e){return await(this.fetch?.(e)??Ze(this.portal,e))}async fetchAndEmit(e,t){this.preflight&&(e=await this.preflight(e));let s=await this.queryGroups(e);this.queryResponse=s,this.loading=!1,this.emitUpdate(s,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:s}){this.loading=!0,this.arcgisGroupBrowserLoading.emit();let a=this.createQuery({start:t,num:e,total:s});await this.fetchAndEmit(a,this.searchTerm)}getBrowserResponseFromQueryResponse(e){let{nextStart:t,num:s,queryParams:a,results:l,start:o,total:d}=e??Ce;return{nextStart:t??-1,num:s??a?.num??0,results:l,start:o??a?.start??1,total:d}}async formatRange({start:e,end:t,total:s}){if(this._messages._lang==="en")return[`${e}-${t} of ${s}`,`${e}-${t} of ${s} group${s==="1"?"":"s"}`];let a=this._messages.browser,l={start:e,end:t,total:s},o=J(a.pageRange,l),d=J(a.pageRangeAria,l);return[o,d]}getPreviewFooterActionsEmpty(){return!this.el?.querySelector('[slot="preview-footer-action"]')}renderTopBar(){return n`<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 n`<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(a=>a.id)),t=this.queryResponse.results.map(a=>{let l=this.cards.group?.(a)??{},o=l.view||this.store.view||"list";return{group:a,cardProps:l,view:o}}),s=t.length>0&&t.every(({view:a})=>a==="compact");return n`<div class=${C({"group-browser__results":!0,"group-browser__results--compact":s})} .part=${"results"}>${t.map(({group:a,cardProps:l,view:o})=>{let d=a.id;return pe(d,n`<arcgis-portal-group-card class="group-browser__result-card" .portal=${this.portal} .group=${a} .user=${l.user} .indeterminate=${l.indeterminate} .view=${o} .selection=${this.selection} .selected=${e.has(d)} .preview=${l.preview??this.preview} .previewed=${l.previewed??this.store.preview===d} .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=${h=>{this.handleGroupCardSelect(h)}} @arcgisGroupBrowserCardPreview=${h=>{let u=h.detail;if(this.store.filtersExpanded=!1,!u||this.store.preview===u.id){this.closePreview();return}this.restoreFocusTarget=h.currentTarget,this.store.preview=u.id,this.previewGroup=u,this.arcgisGroupBrowserPreview.emit(u)}}></arcgis-portal-group-card>`)})}</div>`}render(){let e=this.responsiveFormFactor==="small"?"small":this.formFactor;return n`<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>${Fe({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>${Ge({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&&n`<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>${Pe({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>`}};ae("arcgis-portal-group-browser",K);return K},"portal/PortalGroup","core/reactiveUtils","intl","intl",a,b,c,d,e,f,h,i,k,l,m,o)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import f from"./PMRO7G6N.js";import e from"./Q75EBGI2.js";import{a as S,b as P}from"./AQLILDJK.js";import c from"./24L3PS2J.js";import a from"./DALGPO36.js";import{a as w}from"./W3UBNVKL.js";import{a as E,e as I}from"./QZD2UBOW.js";import"./JVGCIDQW.js";import{K as d,L as m,M as b,P as C,S as y,h as g,j as n}from"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([{createArcadeExecutor:F},{watch:q},{c:v},,{a:f,b:c,c:p,d:R,e:_,f:O},{a:x,b:$}])=>{async function k({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await T(e,r,t);return{[e]:{enabled:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function T(r,t,i){let a=t?.attributes?.[r];if(!a)return!1;let{isAttributeEnabled:e}=a;return e?await h(e,JSON.stringify(t),i):!0}async function j({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await M(e,r,t);return{[e]:{valueExpressionResult:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function M(r,t,i){let a=t.attributes[r];if(!a)throw Error(`Attribute ${r} not found in schema`);let e=a.valueExpression,s=a.validValues,o=a.validValuesMap;return s?.length?s:o&&Object.keys(o)?.length?o:e?await h(e,t,i,r):null}async function N({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await H(e,r,t);return{[e]:{attributeValidationResult:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function H(r,t,i){let a=t?.attributes?.[r];if(!a)return null;let e=a?.attributeValidation;return e?await h(e,JSON.stringify(t),i,r):null}var D=async(r,t)=>{let i=r?.bannerExpression;return i?.length?await h(i,r,t):W(r,t)},W=(r,t)=>{let i=Object.entries(r.attributes).sort(([,s],[,o])=>(s?.bannerOrder??0)-(o?.bannerOrder??0)),a=[],e=[];return i.forEach(([s,o])=>{let l=t?.[s];l&&o.bannerOrder&&(a.push(U({elementType:o.uiElement??"",selectionDisplayLabel:o.bannerLabel??"",labelDelimiter:o.labelDelimiter??"",classificationProp:l,valueDelimiter:o.valueDelimiter??""})),e.push(o.attributeDelimiter??""))}),a.length>0?a.reduce((s,o,l)=>l===0?o:`${s}${e[l-1]}${o}`,""):""},U=({elementType:r,selectionDisplayLabel:t,labelDelimiter:i,classificationProp:a,valueDelimiter:e})=>{let s=r.includes("multi")&&a?a.split("").join(e):a;return`${t}${i}${s}`};async function h(r,t,i,a=""){let e={schemaJsonString:typeof t=="string"?t:JSON.stringify(t),valueJsonString:JSON.stringify(i),attributeId:a};return(await J(r)).execute(e)}async function J(r){return await F(r,{variables:[{name:"schemaJsonString",type:"text"},{name:"valueJsonString",type:"text"},{name:"attributeId",type:"text"}]})}var L=g`:host{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.header-section{padding:var(--calcite-spacing-sm)}.header-section__title-container{display:flex;align-items:center;justify-content:space-between}.header-section__title-text{margin:unset;font-weight:unset;font-size:var(--calcite-font-size)}.header-section__title-popover{padding:var(--calcite-spacing-md)}.form-section{display:flex;border-top:var(--calcite-border-width-sm) solid var(--calcite-color-border-1);padding:var(--calcite-spacing-sm);height:100%;overflow:hidden}.form-section__sidebar{flex:1;padding:var(--calcite-spacing-sm)}.form-section__main-content{flex:3;padding:var(--calcite-spacing-sm);overflow:auto}.danger{color:var(--calcite-color-status-danger)}.spacing-y{margin:var(--calcite-spacing-md) 0}`,u=class extends b{constructor(){super(),this.classificationModel=x(this),this.messages=w(),this.formMainContentRef=d(),this.bannerRef=d(),this._classificationDataTask=$(this),this._formCreationTask=new P(this,{task:async()=>{if(await this._classificationDataTask.taskComplete,!this.portalClassificationSchema||!this.portalItem)throw new Error("Portal item and classification schema are required to render the form");let t=this.portalItem.clone();if(await t.load(),!this.primaryAttribute)throw new Error("primaryAttribute is required but was undefined.");this.existingClassification=!!t.classification,t.classification=f(t.classification,this.primaryAttribute,this.portalClassificationSchema),t.classification&&(t.classification.banner=await D(this.portalClassificationSchema,t.classification)),this.pendingPortalItem=t,this.cleanupItemClassificationWatchHandle(),this._itemClassificationWatchHandle=q(()=>this.portalItem.classification,i=>{if(this.pendingPortalItem){let a=this.pendingPortalItem.clone();a.load().then(()=>{a.classification=i,this.pendingPortalItem=a}).catch(e=>{console.error(e)})}}),this._itemClassificationWatchPortalItem=this.portalItem,this._itemClassificationWatchPortalItem.addHandles(this._itemClassificationWatchHandle,"arcgis-classification-config"),await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults),this.pendingPortalItem=this.pendingPortalItem.clone(),this.existingClassification&&this.validateForm()},args:()=>[this.portalItem,this.portalClassificationSchema]}),this.getFormDisplayOrder=t=>this.portalClassificationSchema?.layouts.default.layoutElements[t].formDisplayOrder??0,this.addEditInfoAttributes=()=>{if(!this.pendingPortalItem?.classification)return{};let t=structuredClone(this.pendingPortalItem.classification),i=O(this.pendingPortalItem,t);return{...t,...i}},this.updateFavoriteClassification=t=>{this.favoriteClassifications=t},this.updateClassificationData=async t=>{let i=t.classification;if(this.selectedFavoriteClassificationName=t.name,this.pendingPortalItem){let a=this.pendingPortalItem.clone();if(await a.load(),a.classification=p(this.portalClassificationSchema,i),!this.portalClassificationSchema)return;await this.evaluateAttributeExpressions(this.portalClassificationSchema,a),a.classification=c(a.classification,this.attributeExpressionResults),this.pendingPortalItem=a}},this.existingClassification=!1,this.portalClassificationSchema=this.classificationModel.portalClassificationSchema,this.primaryAttribute=this.classificationModel.primaryAttribute,this.attributeExpressionResults=new Map,this.formValidationErrors=[],this.remoteValidationErrors="",this.canUserConfigureClassification=!0,this.favoriteClassifications=[],this.isRequiredErrors=new Set,this.status=this.classificationModel.status,this.values={},this.valid=!1,this.autoDestroyDisabled=!1,this.arcgisPropertyChange=I()("status","values","valid")}static{this.properties={existingClassification:16,portalClassificationSchema:16,primaryAttribute:16,attributeExpressionResults:16,formValidationErrors:16,itemClassification:16,pendingPortalItem:16,selectedCategory:16,remoteValidationErrors:16,canUserConfigureClassification:16,favoriteClassifications:16,selectedFavoriteClassificationName:16,isRequiredErrors:16,portalItem:0,status:35,values:[1,{type:Object}],valid:7,autoDestroyDisabled:5}}static{this.styles=L}async destroy(){this.cleanupItemClassificationWatchHandle(),await this.destroyManagedChildren(),await this.manager.destroy()}async resetForm(){if(this.existingClassification)this.pendingPortalItem=this.portalItem?.clone(),this.portalClassificationSchema&&this.pendingPortalItem&&(await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults),this.validateForm());else if(this.portalItem&&this.primaryAttribute&&this.portalClassificationSchema){let t=this.portalItem.clone();await t.load(),this.pendingPortalItem=this.portalItem?.clone(),this.pendingPortalItem.classification=f(t.classification,this.primaryAttribute,this.portalClassificationSchema),this.portalClassificationSchema&&this.pendingPortalItem&&(await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults))}}async validateForm(){this.updateFormValidationErrors(),await this.updateRemoteValidationErrors()}async load(){try{await _(this.portalItem)||(this.canUserConfigureClassification=!1);let t=await v(this.portalItem);if(t){let{result:i,error:a}=t;if(a&&a.details.raw.messageCode!=="COM_1177"){console.error(a);return}i&&(this.favoriteClassifications=i.favorites)}}catch(t){console.error("Error occured while loading arcgis-classification-config:",t)}}willUpdate(t){if(t.has("pendingPortalItem")){let i=this.addEditInfoAttributes();this.values=i}(t.has("formValidationErrors")||t.has("remoteValidationErrors"))&&(this.valid=!this.formValidationErrors.length&&!this.remoteValidationErrors)}loaded(){let t=E(this.el,"form");t&&(this.listenOn(t,"formdata",this.updateFormData),this.listenOn(t,"submit",this.handleFormSubmit)),this.listen("submit",this.handleFormSubmit)}async updateClassificationProperty(t){if(!this.pendingPortalItem||!this.portalClassificationSchema)return;let i=this.pendingPortalItem.clone();await i.load(),Object.entries(t??{}).forEach(([a,e])=>{if(a===this.primaryAttribute){let s=R(e,i.classification,this.primaryAttribute);s=p(this.portalClassificationSchema,s),i.classification=s}else{let s=new Map(Object.entries(i.classification??{}));if(e===void 0||e===""||Array.isArray(e)&&e.length===0)s.delete(a);else if(s.set(a,e),a==="fgi"&&!s.has("fgiOptions")){let o=this.portalClassificationSchema?.attributes?.fgiOptions?.defaultValue??[];s.set("fgiOptions",Array.isArray(o)?o:[o])}i.classification=Object.fromEntries(s)}}),i.classification&&!i.classification.fgi&&delete i.classification.fgiOptions,await this.evaluateAttributeExpressions(this.portalClassificationSchema,i),i.classification=c(i.classification,this.attributeExpressionResults),i.classification&&(i.classification.banner=await D(this.portalClassificationSchema,i.classification)),this.pendingPortalItem=i,this.existingClassification&&this.validateForm(),t&&"classification"in t&&this.updateIsRequiredErrors()}handleCategorySelectChange(t){this.selectedCategory=t.target.selectedItems[0].value}async evaluateAttributeExpressions(t,i){let a=await k({portalClassificationSchema:t,itemClassification:i.classification}),e=await j({portalClassificationSchema:t,itemClassification:i.classification}),s=await N({portalClassificationSchema:t,itemClassification:i.classification});Object.keys(t.attributes).forEach(o=>{let l=a[o]?.enabled??!0,V=e[o]?.valueExpressionResult,A=s[o]?.attributeValidationResult;this.attributeExpressionResults.set(o,{enabled:l,valueExpressionResult:V,attributeValidationResult:A})})}updateIsRequiredErrors(){let t=new Set;Object.entries(this.portalClassificationSchema?.attributes??{})?.forEach(([i,a])=>{a.isRequired&&!this.pendingPortalItem?.classification?.[i]&&this.pendingPortalItem?.classification?.[i]!==0&&t.add(i)}),this.isRequiredErrors=t}updateFormValidationErrors(t=!1){let i=[];Object.entries(this.portalClassificationSchema?.attributes??{})?.forEach(([a,e])=>{e.isRequired&&!this.pendingPortalItem?.classification?.[a]&&this.pendingPortalItem?.classification?.[a]!==0&&(!t||this.isRequiredErrors.has(a))&&i.push({attribute:e.label,reason:this.messages.isrequired??"is required",category:e.attributeCategory}),this.attributeExpressionResults.get(a)?.attributeValidationResult&&i.push({attribute:e.label,reason:this.attributeExpressionResults.get(a)?.attributeValidationResult??"",category:e.attributeCategory})}),this.formValidationErrors=i}async updateRemoteValidationErrors(){if(!this.pendingPortalItem?.classification)return;let t=await this.classificationModel.validateClassification(void 0,this.pendingPortalItem?.classification,this.pendingPortalItem.portal.restUrl);this.remoteValidationErrors=t}cleanupItemClassificationWatchHandle(){this._itemClassificationWatchHandle?.remove(),this._itemClassificationWatchHandle=void 0,this._itemClassificationWatchPortalItem?.removeHandles("arcgis-classification-config"),this._itemClassificationWatchPortalItem=void 0}async destroyManagedChildren(){let t=this.bannerRef.value;!t?.autoDestroyDisabled||t.manager?.destroyed||await t.destroy()}async handleFormSubmit(t){this.validateForm(),this.updateIsRequiredErrors(),this.formMainContentRef.value?.scrollIntoView()}updateFormData(t){let i=t.formData,a=this.addEditInfoAttributes();a=c(a,this.attributeExpressionResults),Object.entries(a??{}).forEach(([e,s])=>{i.set(e,s)})}renderCategoryTabs(){return this._classificationDataTask.render({complete:()=>{if(this.portalClassificationSchema?.attributeCategories?.length)return this.selectedCategory||(this.selectedCategory=this.portalClassificationSchema?.attributeCategories[0]),n`<calcite-list .label=${this.messages.selectcategory??"select category"} selection-appearance=border selection-mode=single-persist @calciteListChange=${this.handleCategorySelectChange}>${this.portalClassificationSchema.attributeCategories.map(t=>{let i=this.formValidationErrors.filter(a=>a.category===t).length;return n`<calcite-list-item .label=${t} .value=${t} .selected=${this.selectedCategory===t} .description=${i?`${i} ${i>1?this.messages.errors:this.messages.error}`:void 0}>${i&&n`<div slot=content-end class="danger"><calcite-icon icon=exclamation-mark-triangle scale=s></calcite-icon></div>`||""}</calcite-list-item>`})}</calcite-list>`}})}renderValidationErrors(){return this.formValidationErrors.length&&(!this.selectedCategory||this.formValidationErrors.some(t=>this.selectedCategory===t.category))?n`<calcite-notice open icon=exclamation-mark-triangle class="spacing-y" kind=danger><div slot=message>${this.messages.bannererror??"Some fields are incomplete or contain errors. Check the highlighted fields for details."}</div></calcite-notice>`:null}renderFavoriteClassification(){let t=this.portalClassificationSchema?.attributeCategories?.[0]??"Default";return this.selectedCategory=this.portalClassificationSchema?.attributeCategories?.length?this.selectedCategory:"Default",this.selectedCategory===t?n`<arcgis-portal-classification-favorite .portalItem=${this.pendingPortalItem??this.portalItem} .classificationValue=${this.pendingPortalItem?.classification} .favoriteClassifications=${this.favoriteClassifications} .selectedFavoriteClassificationName=${this.selectedFavoriteClassificationName} .attributeExpressionResults=${this.attributeExpressionResults} .resetFavoriteClassification=${i=>this.updateFavoriteClassification(i)} .updateClassificationData=${async i=>{await this.updateClassificationData(i),this.updateFormValidationErrors(),this.updateIsRequiredErrors()}}></arcgis-portal-classification-favorite>`:null}renderForm(){return this._formCreationTask.render({pending:()=>n`<calcite-loader .label=${this.messages.loading??"loading"}></calcite-loader>`,complete:()=>{if(!this.pendingPortalItem||!this.portalClassificationSchema)return;let t=Object.entries(this.portalClassificationSchema.attributes).sort(([i],[a])=>this.getFormDisplayOrder(i)-this.getFormDisplayOrder(a));return n`${this.renderValidationErrors()}${this.renderFavoriteClassification()}${t.filter(([,{attributeCategory:i}])=>this.selectedCategory===i||!i).map(([i,a])=>{if(this.attributeExpressionResults.get(i)?.enabled===!1)return null;let e=this.pendingPortalItem?.classification?.[i];return n`<arcgis-portal-classification-form-element .attributeKey=${i} .attribute=${a} .value=${e} @arcgisAttributeValueChange=${async s=>{await this.updateClassificationProperty(s.detail),a.isRequired&&!s.detail[i]?this.isRequiredErrors.add(i):this.isRequiredErrors=new Set(Array.from(this.isRequiredErrors).filter(o=>o!==i)),this.updateFormValidationErrors(!0)}} .renderingInfo=${this.attributeExpressionResults.get(i)} .isRequiredErrors=${this.isRequiredErrors}></arcgis-portal-classification-form-element>`})}`}})}renderNotice(t,i="warning"){return n`<calcite-notice icon=exclamation-mark-triangle open class="spacing-y" .kind=${i}><div slot=message>${t}</div></calcite-notice>`}renderHelpTooltip(){return this.portalClassificationSchema?.helpTooltip?n`<calcite-action id=portal-classification-config-tooltip-button .text=${this.portalClassificationSchema?.helpTooltip} icon=information></calcite-action><calcite-popover .label=${this.portalClassificationSchema?.helpTooltip} reference-element=portal-classification-config-tooltip-button placement=bottom-end overlay-positioning=fixed auto-close><div class="header-section__title-popover"><calcite-link .href=${this.portalClassificationSchema?.helpUrl} target=_blank id=portal-classification-config-tooltip-button>${this.portalClassificationSchema?.helpTooltip}</calcite-link></div></calcite-popover>`:null}render(){return this.portalItem?this._classificationDataTask.render({pending:()=>n`<calcite-loader .label=${this.messages.loading??"loading"}></calcite-loader>`,error:()=>this.renderNotice(this.messages.anerroroccurred??"An error has occurred.","danger"),complete:()=>this.portalItem?this.canUserConfigureClassification?this.portalItem.portal.hasClassificationSchema?n`<div class="header-section" role=region aria-label=${this.messages.documentbannerpreview??"documentbannerpreview"??C}><div class="header-section__title-container"><h2 class="header-section__title-text">${this.messages.documentbannerpreview??"documentbannerpreview"}</h2>${this.renderHelpTooltip()}</div>${this._formCreationTask.status===S.COMPLETE&&n`<arcgis-portal-classification-banner .portalItem=${this.pendingPortalItem??this.portalItem} variant=preview .missingExistingClassification=${!this.existingClassification} .autoDestroyDisabled=${this.autoDestroyDisabled} ${m(this.bannerRef)}></arcgis-portal-classification-banner>`||""}</div><div class="form-section">${this.portalClassificationSchema?.attributeCategories?.length&&n`<div class="form-section__sidebar">${this.renderCategoryTabs()}</div>`||""}<div class="form-section__main-content" ${m(this.formMainContentRef)}>${this.renderForm()}</div></div>`:this.renderNotice(this.messages.missingclassificationschema??"Portal is missing classification schema."):this.renderNotice(this.messages.userconfigurepermissionrequired??"User configuration permission is required."):this.renderNotice(this.messages.portalitemrequired??"Portal item is required.")}):this.renderNotice(this.messages.portalitemrequired??"Portal item is required.")}};y("arcgis-portal-classification-config",u);return u},"arcade","core/reactiveUtils",a,c,e,f)
|
|
2
|
+
import f from"./V6ZHHCLD.js";import e from"./Q75EBGI2.js";import{a as S,b as P}from"./AQLILDJK.js";import c from"./24L3PS2J.js";import a from"./F3ODJVJC.js";import{a as w}from"./W3UBNVKL.js";import{a as E,e as I}from"./QZD2UBOW.js";import"./JVGCIDQW.js";import{K as d,L as m,M as b,P as C,S as y,h as g,j as n}from"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([{createArcadeExecutor:F},{watch:q},{c:v},,{a:f,b:c,c:p,d:R,e:_,f:O},{a:x,b:$}])=>{async function k({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await T(e,r,t);return{[e]:{enabled:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function T(r,t,i){let a=t?.attributes?.[r];if(!a)return!1;let{isAttributeEnabled:e}=a;return e?await h(e,JSON.stringify(t),i):!0}async function j({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await M(e,r,t);return{[e]:{valueExpressionResult:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function M(r,t,i){let a=t.attributes[r];if(!a)throw Error(`Attribute ${r} not found in schema`);let e=a.valueExpression,s=a.validValues,o=a.validValuesMap;return s?.length?s:o&&Object.keys(o)?.length?o:e?await h(e,t,i,r):null}async function N({portalClassificationSchema:r,itemClassification:t}){let i=Object.entries(r.attributes).map(async([e])=>{let s=await H(e,r,t);return{[e]:{attributeValidationResult:s}}}),a=await Promise.all(i);return Object.assign({},...a)}async function H(r,t,i){let a=t?.attributes?.[r];if(!a)return null;let e=a?.attributeValidation;return e?await h(e,JSON.stringify(t),i,r):null}var D=async(r,t)=>{let i=r?.bannerExpression;return i?.length?await h(i,r,t):W(r,t)},W=(r,t)=>{let i=Object.entries(r.attributes).sort(([,s],[,o])=>(s?.bannerOrder??0)-(o?.bannerOrder??0)),a=[],e=[];return i.forEach(([s,o])=>{let l=t?.[s];l&&o.bannerOrder&&(a.push(U({elementType:o.uiElement??"",selectionDisplayLabel:o.bannerLabel??"",labelDelimiter:o.labelDelimiter??"",classificationProp:l,valueDelimiter:o.valueDelimiter??""})),e.push(o.attributeDelimiter??""))}),a.length>0?a.reduce((s,o,l)=>l===0?o:`${s}${e[l-1]}${o}`,""):""},U=({elementType:r,selectionDisplayLabel:t,labelDelimiter:i,classificationProp:a,valueDelimiter:e})=>{let s=r.includes("multi")&&a?a.split("").join(e):a;return`${t}${i}${s}`};async function h(r,t,i,a=""){let e={schemaJsonString:typeof t=="string"?t:JSON.stringify(t),valueJsonString:JSON.stringify(i),attributeId:a};return(await J(r)).execute(e)}async function J(r){return await F(r,{variables:[{name:"schemaJsonString",type:"text"},{name:"valueJsonString",type:"text"},{name:"attributeId",type:"text"}]})}var L=g`:host{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.header-section{padding:var(--calcite-spacing-sm)}.header-section__title-container{display:flex;align-items:center;justify-content:space-between}.header-section__title-text{margin:unset;font-weight:unset;font-size:var(--calcite-font-size)}.header-section__title-popover{padding:var(--calcite-spacing-md)}.form-section{display:flex;border-top:var(--calcite-border-width-sm) solid var(--calcite-color-border-1);padding:var(--calcite-spacing-sm);height:100%;overflow:hidden}.form-section__sidebar{flex:1;padding:var(--calcite-spacing-sm)}.form-section__main-content{flex:3;padding:var(--calcite-spacing-sm);overflow:auto}.danger{color:var(--calcite-color-status-danger)}.spacing-y{margin:var(--calcite-spacing-md) 0}`,u=class extends b{constructor(){super(),this.classificationModel=x(this),this.messages=w(),this.formMainContentRef=d(),this.bannerRef=d(),this._classificationDataTask=$(this),this._formCreationTask=new P(this,{task:async()=>{if(await this._classificationDataTask.taskComplete,!this.portalClassificationSchema||!this.portalItem)throw new Error("Portal item and classification schema are required to render the form");let t=this.portalItem.clone();if(await t.load(),!this.primaryAttribute)throw new Error("primaryAttribute is required but was undefined.");this.existingClassification=!!t.classification,t.classification=f(t.classification,this.primaryAttribute,this.portalClassificationSchema),t.classification&&(t.classification.banner=await D(this.portalClassificationSchema,t.classification)),this.pendingPortalItem=t,this.cleanupItemClassificationWatchHandle(),this._itemClassificationWatchHandle=q(()=>this.portalItem.classification,i=>{if(this.pendingPortalItem){let a=this.pendingPortalItem.clone();a.load().then(()=>{a.classification=i,this.pendingPortalItem=a}).catch(e=>{console.error(e)})}}),this._itemClassificationWatchPortalItem=this.portalItem,this._itemClassificationWatchPortalItem.addHandles(this._itemClassificationWatchHandle,"arcgis-classification-config"),await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults),this.pendingPortalItem=this.pendingPortalItem.clone(),this.existingClassification&&this.validateForm()},args:()=>[this.portalItem,this.portalClassificationSchema]}),this.getFormDisplayOrder=t=>this.portalClassificationSchema?.layouts.default.layoutElements[t].formDisplayOrder??0,this.addEditInfoAttributes=()=>{if(!this.pendingPortalItem?.classification)return{};let t=structuredClone(this.pendingPortalItem.classification),i=O(this.pendingPortalItem,t);return{...t,...i}},this.updateFavoriteClassification=t=>{this.favoriteClassifications=t},this.updateClassificationData=async t=>{let i=t.classification;if(this.selectedFavoriteClassificationName=t.name,this.pendingPortalItem){let a=this.pendingPortalItem.clone();if(await a.load(),a.classification=p(this.portalClassificationSchema,i),!this.portalClassificationSchema)return;await this.evaluateAttributeExpressions(this.portalClassificationSchema,a),a.classification=c(a.classification,this.attributeExpressionResults),this.pendingPortalItem=a}},this.existingClassification=!1,this.portalClassificationSchema=this.classificationModel.portalClassificationSchema,this.primaryAttribute=this.classificationModel.primaryAttribute,this.attributeExpressionResults=new Map,this.formValidationErrors=[],this.remoteValidationErrors="",this.canUserConfigureClassification=!0,this.favoriteClassifications=[],this.isRequiredErrors=new Set,this.status=this.classificationModel.status,this.values={},this.valid=!1,this.autoDestroyDisabled=!1,this.arcgisPropertyChange=I()("status","values","valid")}static{this.properties={existingClassification:16,portalClassificationSchema:16,primaryAttribute:16,attributeExpressionResults:16,formValidationErrors:16,itemClassification:16,pendingPortalItem:16,selectedCategory:16,remoteValidationErrors:16,canUserConfigureClassification:16,favoriteClassifications:16,selectedFavoriteClassificationName:16,isRequiredErrors:16,portalItem:0,status:35,values:[1,{type:Object}],valid:7,autoDestroyDisabled:5}}static{this.styles=L}async destroy(){this.cleanupItemClassificationWatchHandle(),await this.destroyManagedChildren(),await this.manager.destroy()}async resetForm(){if(this.existingClassification)this.pendingPortalItem=this.portalItem?.clone(),this.portalClassificationSchema&&this.pendingPortalItem&&(await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults),this.validateForm());else if(this.portalItem&&this.primaryAttribute&&this.portalClassificationSchema){let t=this.portalItem.clone();await t.load(),this.pendingPortalItem=this.portalItem?.clone(),this.pendingPortalItem.classification=f(t.classification,this.primaryAttribute,this.portalClassificationSchema),this.portalClassificationSchema&&this.pendingPortalItem&&(await this.evaluateAttributeExpressions(this.portalClassificationSchema,this.pendingPortalItem),this.pendingPortalItem.classification=c(this.pendingPortalItem.classification,this.attributeExpressionResults))}}async validateForm(){this.updateFormValidationErrors(),await this.updateRemoteValidationErrors()}async load(){try{await _(this.portalItem)||(this.canUserConfigureClassification=!1);let t=await v(this.portalItem);if(t){let{result:i,error:a}=t;if(a&&a.details.raw.messageCode!=="COM_1177"){console.error(a);return}i&&(this.favoriteClassifications=i.favorites)}}catch(t){console.error("Error occured while loading arcgis-classification-config:",t)}}willUpdate(t){if(t.has("pendingPortalItem")){let i=this.addEditInfoAttributes();this.values=i}(t.has("formValidationErrors")||t.has("remoteValidationErrors"))&&(this.valid=!this.formValidationErrors.length&&!this.remoteValidationErrors)}loaded(){let t=E(this.el,"form");t&&(this.listenOn(t,"formdata",this.updateFormData),this.listenOn(t,"submit",this.handleFormSubmit)),this.listen("submit",this.handleFormSubmit)}async updateClassificationProperty(t){if(!this.pendingPortalItem||!this.portalClassificationSchema)return;let i=this.pendingPortalItem.clone();await i.load(),Object.entries(t??{}).forEach(([a,e])=>{if(a===this.primaryAttribute){let s=R(e,i.classification,this.primaryAttribute);s=p(this.portalClassificationSchema,s),i.classification=s}else{let s=new Map(Object.entries(i.classification??{}));if(e===void 0||e===""||Array.isArray(e)&&e.length===0)s.delete(a);else if(s.set(a,e),a==="fgi"&&!s.has("fgiOptions")){let o=this.portalClassificationSchema?.attributes?.fgiOptions?.defaultValue??[];s.set("fgiOptions",Array.isArray(o)?o:[o])}i.classification=Object.fromEntries(s)}}),i.classification&&!i.classification.fgi&&delete i.classification.fgiOptions,await this.evaluateAttributeExpressions(this.portalClassificationSchema,i),i.classification=c(i.classification,this.attributeExpressionResults),i.classification&&(i.classification.banner=await D(this.portalClassificationSchema,i.classification)),this.pendingPortalItem=i,this.existingClassification&&this.validateForm(),t&&"classification"in t&&this.updateIsRequiredErrors()}handleCategorySelectChange(t){this.selectedCategory=t.target.selectedItems[0].value}async evaluateAttributeExpressions(t,i){let a=await k({portalClassificationSchema:t,itemClassification:i.classification}),e=await j({portalClassificationSchema:t,itemClassification:i.classification}),s=await N({portalClassificationSchema:t,itemClassification:i.classification});Object.keys(t.attributes).forEach(o=>{let l=a[o]?.enabled??!0,V=e[o]?.valueExpressionResult,A=s[o]?.attributeValidationResult;this.attributeExpressionResults.set(o,{enabled:l,valueExpressionResult:V,attributeValidationResult:A})})}updateIsRequiredErrors(){let t=new Set;Object.entries(this.portalClassificationSchema?.attributes??{})?.forEach(([i,a])=>{a.isRequired&&!this.pendingPortalItem?.classification?.[i]&&this.pendingPortalItem?.classification?.[i]!==0&&t.add(i)}),this.isRequiredErrors=t}updateFormValidationErrors(t=!1){let i=[];Object.entries(this.portalClassificationSchema?.attributes??{})?.forEach(([a,e])=>{e.isRequired&&!this.pendingPortalItem?.classification?.[a]&&this.pendingPortalItem?.classification?.[a]!==0&&(!t||this.isRequiredErrors.has(a))&&i.push({attribute:e.label,reason:this.messages.isrequired??"is required",category:e.attributeCategory}),this.attributeExpressionResults.get(a)?.attributeValidationResult&&i.push({attribute:e.label,reason:this.attributeExpressionResults.get(a)?.attributeValidationResult??"",category:e.attributeCategory})}),this.formValidationErrors=i}async updateRemoteValidationErrors(){if(!this.pendingPortalItem?.classification)return;let t=await this.classificationModel.validateClassification(void 0,this.pendingPortalItem?.classification,this.pendingPortalItem.portal.restUrl);this.remoteValidationErrors=t}cleanupItemClassificationWatchHandle(){this._itemClassificationWatchHandle?.remove(),this._itemClassificationWatchHandle=void 0,this._itemClassificationWatchPortalItem?.removeHandles("arcgis-classification-config"),this._itemClassificationWatchPortalItem=void 0}async destroyManagedChildren(){let t=this.bannerRef.value;!t?.autoDestroyDisabled||t.manager?.destroyed||await t.destroy()}async handleFormSubmit(t){this.validateForm(),this.updateIsRequiredErrors(),this.formMainContentRef.value?.scrollIntoView()}updateFormData(t){let i=t.formData,a=this.addEditInfoAttributes();a=c(a,this.attributeExpressionResults),Object.entries(a??{}).forEach(([e,s])=>{i.set(e,s)})}renderCategoryTabs(){return this._classificationDataTask.render({complete:()=>{if(this.portalClassificationSchema?.attributeCategories?.length)return this.selectedCategory||(this.selectedCategory=this.portalClassificationSchema?.attributeCategories[0]),n`<calcite-list .label=${this.messages.selectcategory??"select category"} selection-appearance=border selection-mode=single-persist @calciteListChange=${this.handleCategorySelectChange}>${this.portalClassificationSchema.attributeCategories.map(t=>{let i=this.formValidationErrors.filter(a=>a.category===t).length;return n`<calcite-list-item .label=${t} .value=${t} .selected=${this.selectedCategory===t} .description=${i?`${i} ${i>1?this.messages.errors:this.messages.error}`:void 0}>${i&&n`<div slot=content-end class="danger"><calcite-icon icon=exclamation-mark-triangle scale=s></calcite-icon></div>`||""}</calcite-list-item>`})}</calcite-list>`}})}renderValidationErrors(){return this.formValidationErrors.length&&(!this.selectedCategory||this.formValidationErrors.some(t=>this.selectedCategory===t.category))?n`<calcite-notice open icon=exclamation-mark-triangle class="spacing-y" kind=danger><div slot=message>${this.messages.bannererror??"Some fields are incomplete or contain errors. Check the highlighted fields for details."}</div></calcite-notice>`:null}renderFavoriteClassification(){let t=this.portalClassificationSchema?.attributeCategories?.[0]??"Default";return this.selectedCategory=this.portalClassificationSchema?.attributeCategories?.length?this.selectedCategory:"Default",this.selectedCategory===t?n`<arcgis-portal-classification-favorite .portalItem=${this.pendingPortalItem??this.portalItem} .classificationValue=${this.pendingPortalItem?.classification} .favoriteClassifications=${this.favoriteClassifications} .selectedFavoriteClassificationName=${this.selectedFavoriteClassificationName} .attributeExpressionResults=${this.attributeExpressionResults} .resetFavoriteClassification=${i=>this.updateFavoriteClassification(i)} .updateClassificationData=${async i=>{await this.updateClassificationData(i),this.updateFormValidationErrors(),this.updateIsRequiredErrors()}}></arcgis-portal-classification-favorite>`:null}renderForm(){return this._formCreationTask.render({pending:()=>n`<calcite-loader .label=${this.messages.loading??"loading"}></calcite-loader>`,complete:()=>{if(!this.pendingPortalItem||!this.portalClassificationSchema)return;let t=Object.entries(this.portalClassificationSchema.attributes).sort(([i],[a])=>this.getFormDisplayOrder(i)-this.getFormDisplayOrder(a));return n`${this.renderValidationErrors()}${this.renderFavoriteClassification()}${t.filter(([,{attributeCategory:i}])=>this.selectedCategory===i||!i).map(([i,a])=>{if(this.attributeExpressionResults.get(i)?.enabled===!1)return null;let e=this.pendingPortalItem?.classification?.[i];return n`<arcgis-portal-classification-form-element .attributeKey=${i} .attribute=${a} .value=${e} @arcgisAttributeValueChange=${async s=>{await this.updateClassificationProperty(s.detail),a.isRequired&&!s.detail[i]?this.isRequiredErrors.add(i):this.isRequiredErrors=new Set(Array.from(this.isRequiredErrors).filter(o=>o!==i)),this.updateFormValidationErrors(!0)}} .renderingInfo=${this.attributeExpressionResults.get(i)} .isRequiredErrors=${this.isRequiredErrors}></arcgis-portal-classification-form-element>`})}`}})}renderNotice(t,i="warning"){return n`<calcite-notice icon=exclamation-mark-triangle open class="spacing-y" .kind=${i}><div slot=message>${t}</div></calcite-notice>`}renderHelpTooltip(){return this.portalClassificationSchema?.helpTooltip?n`<calcite-action id=portal-classification-config-tooltip-button .text=${this.portalClassificationSchema?.helpTooltip} icon=information></calcite-action><calcite-popover .label=${this.portalClassificationSchema?.helpTooltip} reference-element=portal-classification-config-tooltip-button placement=bottom-end overlay-positioning=fixed auto-close><div class="header-section__title-popover"><calcite-link .href=${this.portalClassificationSchema?.helpUrl} target=_blank id=portal-classification-config-tooltip-button>${this.portalClassificationSchema?.helpTooltip}</calcite-link></div></calcite-popover>`:null}render(){return this.portalItem?this._classificationDataTask.render({pending:()=>n`<calcite-loader .label=${this.messages.loading??"loading"}></calcite-loader>`,error:()=>this.renderNotice(this.messages.anerroroccurred??"An error has occurred.","danger"),complete:()=>this.portalItem?this.canUserConfigureClassification?this.portalItem.portal.hasClassificationSchema?n`<div class="header-section" role=region aria-label=${this.messages.documentbannerpreview??"documentbannerpreview"??C}><div class="header-section__title-container"><h2 class="header-section__title-text">${this.messages.documentbannerpreview??"documentbannerpreview"}</h2>${this.renderHelpTooltip()}</div>${this._formCreationTask.status===S.COMPLETE&&n`<arcgis-portal-classification-banner .portalItem=${this.pendingPortalItem??this.portalItem} variant=preview .missingExistingClassification=${!this.existingClassification} .autoDestroyDisabled=${this.autoDestroyDisabled} ${m(this.bannerRef)}></arcgis-portal-classification-banner>`||""}</div><div class="form-section">${this.portalClassificationSchema?.attributeCategories?.length&&n`<div class="form-section__sidebar">${this.renderCategoryTabs()}</div>`||""}<div class="form-section__main-content" ${m(this.formMainContentRef)}>${this.renderForm()}</div></div>`:this.renderNotice(this.messages.missingclassificationschema??"Portal is missing classification schema."):this.renderNotice(this.messages.userconfigurepermissionrequired??"User configuration permission is required."):this.renderNotice(this.messages.portalitemrequired??"Portal item is required.")}):this.renderNotice(this.messages.portalitemrequired??"Portal item is required.")}};y("arcgis-portal-classification-config",u);return u},"arcade","core/reactiveUtils",a,c,e,f)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import d from"./
|
|
2
|
+
import d from"./W2AW2BW3.js";import c from"./V6VNED6L.js";import"./6TO2BYXU.js";import"./6KVA4AKM.js";import"./CFBSBZSS.js";import"./2BUE3JLM.js";import"./OBBYT2AV.js";import"./DFTUMKSN.js";import b from"./TGTT2CVD.js";import a from"./F3ODJVJC.js";import"./VMQIDO4Z.js";import"./QS3GXAIH.js";import"./2GBRZSEC.js";import"./W3UBNVKL.js";import"./QZD2UBOW.js";import"./JVGCIDQW.js";import"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([,,,{b:r}])=>{return r},a,b,c,d)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import a from"./
|
|
2
|
+
import a from"./F3ODJVJC.js";import{a as i,d as w,e as P}from"./VMQIDO4Z.js";export default $arcgis.t(([v,q,{e:$,f:A,g:h}])=>{var l={},p={},d={};async function k({requester:r,key:t,id:e,cacheOption:n}){let s=d[t]?.[e]?.expireAt,o=!!s&&new Date().getTime()>s;if(l[t]?.[e]&&!o)return l[t][e];p[t]||(p[t]={}),(!p[t][e]||o)&&(p[t][e]=r());let a=await p[t][e];if(l[t]||(l[t]={}),d[t]||(d[t]={}),l[t][e]=a,n){let{expireAfter:f,getExpireAfterFromResult:c}=n,g=c||f?new Date().getTime()+(c?.(a)??f??0):null;d[t][e]={...d[t][e],expireAt:g}}return a}async function x({url:r,portal:t,params:e={},options:n={},method:s,abortControllerId:o,excludeJson:a}){let f=E(o)?.signal,{customToken:c,addTokenManually:g,addSSL:S,useProxy:b}=n,y={...e};if(!r.includes("f=")&&!a&&(y.f="json"),c)y.token=c;else if(g!==!1){let U=await I(t);U&&(y.token=U)}let C=S?R(r,t):r,L={query:y,method:s||"auto",...n,timeout:n.timeout||0,useProxy:b,...n?.disableIdentityLookup?{authMode:"anonymous"}:{}},T=await q(C,{signal:f,...L});return o&&(m[o]=void 0),T.data}var m={};function E(r){if(r)return m[r]&&m[r].abort(),m[r]=new AbortController,m[r]}async function I(r){let t=P(r);if(!r?.isPortal||!t)return w(r);let e=r?.user;if(!e&&t)return;let{token:n}=await k({requester:async()=>await M(r),key:"platformSelf",id:e?.id??r.id??"<unknown>",cacheOption:{getExpireAfterFromResult:s=>s.expires_in}});return n}var M=async r=>{let t={"X-Esri-Auth-Client-Id":await O(r),"X-Esri-Auth-Redirect-Uri":window.location.href.replace(/#.*$/u,"")};return(await q(`${i(r)}/oauth2/platformSelf`,{authMode:"no-prompt",headers:t,withCredentials:!0,method:"post"})).data},O=async r=>(await k({requester:async()=>await v.getCredential(i(r),{oAuthPopupConfirmation:!1}),key:"credential",id:r.user?.id??"<unknown>"})).oAuthState?.appId??"arcgisonline";function R(r,t){return window.location.protocol==="https:"||t.allSSL?r.replace("http:","https:"):r}async function _(r,t,e){let n=`${e?"https://www.arcgis.com/sharing/rest/":i(t)}community/users/${r}`,s=n?.includes("www.arcgis.com")&&t.isPortal,o=n?.includes(".arcgis.com")&&!t.isPortal&&!t.user,a=s||o?{disableIdentityLookup:!0,addTokenManually:!1}:{};return await k({requester:async()=>{try{return await x({url:n,portal:t,options:a})}catch{return{username:r}}},key:"user",id:n})}var z=async r=>{let t=`${i(r)}/portals/${r.id}/users`;return await x({url:t,portal:r,params:{num:100,sortField:"lastlogin",sortOrder:"desc"}})};function u(r,t){return`${r.restUrl}/community/users/${t?.id||r?.user?.id}`}async function B(r,t){let e=`${u(r,t)}/properties`;return await $(e)}async function G(r,t,e){let n=`${u(t,e)}/setProperties`,s=w(t),o=new FormData;return o.append("properties",JSON.stringify(r)),o.append("token",s),o.append("f","json"),await $(n,{method:"post",body:o})}async function K(r,t){let e=`${u(r,t)}/provisionedListings`;return await h(e,{returnAppClientIds:!0,returnAllProvisions:!0},"provisionedListings")}async function Q(r,t){let e=`${u(r,t)}/linkedUsers`;try{return await h(e,{num:10},"linkedUsers")}catch(n){return console.error("Error fetching linked accounts:",n),[]}}async function V(r,t,e){try{return await h(`https://${r.portalHostname}/sharing/rest/community/users/${t}/linkedUsers`,{num:10,token:e},"linkedUsers")}catch(n){return console.error(n),[]}}async function W({portal:r,user:t,targetUser:e,targetToken:n}){let s=`${u(r,t)}/linkUser`,o=await A(s,{method:"post",query:{user:e,userToken:n}});return o.error&&console.error(o.error),o}async function Y({portal:r,user:t,linkedUsername:e}){let n=`${u(r,t)}/unlinkUser`,s=await A(n,{method:"post",query:{user:e}});return s.error&&console.error(s.error),s}return{a:k,b:x,c:I,d:_,e:z,f:B,g:G,h:K,i:Q,j:V,k:W,l:Y}},"identity/IdentityManager","request",a)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{b as y}from"./OBBYT2AV.js";import a from"./
|
|
2
|
+
import{b as y}from"./OBBYT2AV.js";import a from"./TGTT2CVD.js";export default $arcgis.t(([{a:$,b:i}])=>{async function k(a,s,o,t,r){let l=a.portal?.portalHostname||t?.portalHostname||t?.restUrl?.replace("/sharing/rest",""),p=r?`https://www.arcgis.com/sharing/rest/portals/${s}`:`https://${l}/sharing/rest/portals/${s}`;if(!l&&!r)return null;let c=r?{disableIdentityLookup:!0,addTokenManually:!1}:{},e=await i({url:p,portal:t,options:c}),{urlKey:g,thumbnail:u,customBaseUrl:w}=e,m=`https://${g}.${w}/`,b=u?`${m}sharing/rest/portals/self/resources/${u}`:null,d="",f="";try{let n=await i({url:`${p}/resources/localizedOrgProperties`,portal:t,params:{start:1,num:100},options:c});if(n){let h=n[o]||n.default;d=h.name,f=h.description}}catch{}return{name:d||e.name,description:y(f||e.description),url:`${m}home/`,thumbnail:b}}async function H(a,s,o,t){let r=a.sourceJSON?.orgId??a.portal?.id??o?.id;return await $({requester:async()=>await k(a,r,s,o,t),key:"verified",id:r})}return H},a)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{b as h}from"./AQLILDJK.js";import b from"./24L3PS2J.js";import a from"./
|
|
2
|
+
import{b as h}from"./AQLILDJK.js";import b from"./24L3PS2J.js";import a from"./F3ODJVJC.js";import{o as f}from"./6BUBZ7WC.js";export default $arcgis.t(([g,{property:c,subclass:C},{a:p,b:d},{a:m}])=>{var w=Object.defineProperty,y=Object.getOwnPropertyDescriptor,e=(t,a,s,i)=>{for(var r=i>1?void 0:i?y(a,s):a,l=t.length-1,n;l>=0;l--)(n=t[l])&&(r=(i?n(a,s,r):n(r))||r);return i&&r&&w(a,s,r),r},o=class extends g{constructor(){super(...arguments),this.fetching=!1,this.status="idle",this.error=void 0,this.portalUrl=void 0,this._itemClassificationValidationErrors=new Map,this.fetchingPromise=new f}get primaryAttribute(){return this.portalClassificationSchema?.classificationMetadata.primaryAttribute}setPortalClassificationData({portalUrl:t,schema:a}){this.portalUrl=t,this.portalClassificationSchema=a,this.status="loaded",this.fetchingPromise.resolve(!0)}setFetching(t){this.fetching=t}async loadPortalClassificationData(t,{signal:a}){this.status="loading";let{result:s,error:i}=await p(t,a);if(i){i.name==="AbortError"?console.log("Request aborted."):(this.error=i,this.status="error",this.fetchingPromise.reject(i));return}else this.setPortalClassificationData({schema:s,portalUrl:t})}async validateClassification(t,a,s,i){if(!a)return"";let r=t?this._itemClassificationValidationErrors.get(t):void 0;if(r)return await r;let l=(async()=>{let{error:n}=await d(s,a,i??{});return n?n?.details.raw.messages.join(", "):""})();return t&&this._itemClassificationValidationErrors.set(t,l),t?await this._itemClassificationValidationErrors.get(t):await l}};e([c()],o.prototype,"portalClassificationSchema",2);e([c()],o.prototype,"fetching",2);e([c()],o.prototype,"status",2);e([c()],o.prototype,"error",2);e([c()],o.prototype,"portalUrl",2);e([c()],o.prototype,"_itemClassificationValidationErrors",2);o=e([C("custom.ClassificationModel")],o);var u;function P(t){return u??=new o(t),u}var A=m(P),S=t=>new h(t,{task:async([a],{signal:s})=>{if(!a)throw new Error("Portal item is required to load classification data");if(a.loaded||await a.load({signal:s}),t.itemClassification=a.classification,t.classificationModel.status==="loading"&&await t.classificationModel.fetchingPromise.promise,!t.portalItem?.portal.hasClassificationSchema){t.classificationModel.setPortalClassificationData({portalUrl:a.portal.restUrl,schema:void 0});return}(t.classificationModel.status==="idle"||t.classificationModel.status==="loaded"&&t.classificationModel.portalUrl!==a.portal.restUrl)&&await t.classificationModel.loadPortalClassificationData(a.portal.restUrl,{signal:s})},args:()=>[t.portalItem]});return{a:A,b:S}},"core/Accessor","core/accessorSupport/decorators",a,b)
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
+
import c from"./V6VNED6L.js";import{a as m,b as f}from"./6TO2BYXU.js";import{a as B}from"./6KVA4AKM.js";import{a as C}from"./CFBSBZSS.js";import{a as h,b as d,c as b,d as D,e as M,f as $,g as x,h as L,i as W}from"./2BUE3JLM.js";import a from"./TGTT2CVD.js";import{a as R}from"./W3UBNVKL.js";import{M as v,N as w,P as S,S as A,h as T,j as u}from"./6BUBZ7WC.js";export default $arcgis.t(([{substitute:k},{d:I},_])=>{var G=T`.badge{--calcite-color-foreground-2: var(--arcgis-item-badge-info-background, #dfeffa);--calcite-color-text-1: var(--arcgis-item-badge-info-foreground, #00619b);--arcgis-item-badge-color: var(--arcgis-item-badge-info-foreground, #00619b);--calcite-chip-background-color: var(--arcgis-item-badge-info-background, #dfeffa);border:0}.badge--colored{--calcite-chip-icon-color: var(--calcite-color-brand)}.authoritative{--calcite-color-foreground-2: var(--arcgis-item-badge-success-background, #e4f0e4);--calcite-color-text-1: var(--arcgis-item-badge-success-foreground, #1a6324);--arcgis-item-badge-color: var(--arcgis-item-badge-success-foreground, #1a6324);--calcite-chip-background-color: var(--arcgis-item-badge-success-background, #e4f0e4)}.deprecated{--calcite-color-foreground-2: var(--arcgis-item-badge-danger-background, #fadfdc);--calcite-color-text-1: var(--arcgis-item-badge-danger-foreground, #a82b1e);--arcgis-item-badge-color: var(--arcgis-item-badge-danger-foreground, #a82b1e);--calcite-chip-background-color: var(--arcgis-item-badge-danger-background, #fadfdc)}.beta{border:0}.narrow{box-sizing:border-box;width:2rem;--calcite-chip-spacing-unit-l: 0}.narrow--s{width:1.5rem}.narrow--l{width:2.75rem}.tooltip-title{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-1);margin:0 0 .25rem;padding:0}.tooltip-text{font-size:var(--calcite-font-size--2);color:var(--calcite-color-text-1);margin:0;padding:0}:host-context(.calcite-mode-dark) .badge{--calcite-color-foreground-2: var(--arcgis-item-badge-info-background, #214155);--calcite-color-text-1: var(--arcgis-item-badge-info-foreground, #9fd4f3);--arcgis-item-badge-color: var(--arcgis-item-badge-info-foreground, #9fd4f3);--calcite-chip-background-color: var(--arcgis-item-badge-info-background, #214155)}:host-context(.calcite-mode-dark) .authoritative{--calcite-color-foreground-2: var(--arcgis-item-badge-success-background, #2b472a);--calcite-color-text-1: var(--arcgis-item-badge-success-foreground, #a2e4ab);--arcgis-item-badge-color: var(--arcgis-item-badge-success-foreground, #a2e4ab);--calcite-chip-background-color: var(--arcgis-item-badge-success-background, #2b472a)}:host-context(.calcite-mode-dark) .deprecated{--calcite-color-foreground-2: var(--arcgis-item-badge-danger-background, #5e241e);--calcite-color-text-1: var(--arcgis-item-badge-danger-foreground, #ffaaa1);--arcgis-item-badge-color: var(--arcgis-item-badge-danger-foreground, #ffaaa1);--calcite-chip-background-color: var(--arcgis-item-badge-danger-background, #5e241e)}`,z=["Operations Dashboard Add In","Operations Dashboard Extension","Operation View","CityEngine Web Scene","Big Data File Share","Globe Document","Map Document","Published Map","Scene Document","Map Template","Mobile Basemap Package","Desktop Add In"],U=["Cascade","MapTour","MapJournal","MapSeries","Shortlist","StoryMapCrowdsource","StorytellingSwipe"],J={"Geoprocessing Package":".gpk",Layer:".lyr","Layer Package":".lpk","Map Package":".mpk","Scene Package":".spk"},O="",j="template_name";function F(e){let t=decodeURIComponent(e.url||h(e).url||"");return U.find(i=>t.includes(`/apps/${i}/index.html`))}function V(e){return M(e)}function N(e){return $(e)}function Q(e){return x(e)}function K(e){return e.type==="Web Mapping Application"&&d(e).includes("Web AppBuilder")}function P(e,t){return(t?.isPortal??!1)&&d(e).includes("AppBuilder Extension")}function g(e,t){return e.typeKeywords?.some(i=>t.includes(i))}function E(e,t){let i=["HTML3D/HTML","App Builder","Widget"],a=["HTML3D/HTML","Web AppBuilder","Widget"],r=e.type==="Web Mapping Application",n=r&&g(e,["Web AppBuilder"]),l=r&&g(e,["WABTemplate"]),c=e.type==="AppBuilder Widget Package"&&g(e,i),o=e.type==="Web AppBuilder Widget"&&g(e,a),s=!!e?.owner?.startsWith("esri_")&&r&&g(e,["Web AppBuilder for ArcGIS"]);return n||l||c||o||P(e,t)||s}function X(e,t){return t?.isPortal&&["Insights Workbook","Insights Page","Insights Model","Insights Theme","Insights Workbook Package","Kernel Gateway Connection","Insights Script","Insights Data Engineering Workbook","Insights Data Engineering Model","Relational Database Connection"].includes(e.type||"")}var Y=(e,t)=>(t?.isPortal??!1)&&(K(e)||P(e,t)||m(e)||X(e,t));function Z(e,t,i){return e.type===t&&(h(e).name?.endsWith(i)??!1)}function ee(e){return Object.entries(J).some(([t,i])=>Z(e,t,i))}function te(e,t){return z.includes(e.type)||ee(e)||f(e)||V(e)||m(e)||Y(e,t)}function ie(e){return(e.owner||"").toLowerCase().includes("esri")&&d(e).includes("Requires Credits")}function ae(e){return(e.owner||"").toLowerCase().includes("esri")&&d(e).includes("Requires Subscription")}function re(e){return b(e)==="org_authoritative"}function q(e){return b(e)==="public_authoritative"}function oe(e,t){return t==="Registered API Key Credentials (Standard)"||t==="Registered OAuth 2.0 Credentials (Standard)"?O:e[t].title||O}function we(e,t,i){let a=[],r=d(e),n=h(e),l=D(e);if((re(e)||q(e))&&a.push("Authoritative"),b(e)==="deprecated"&&a.push("Deprecated"),E(e,t)&&a.push("DeprecatedItemType"),L(e)&&a.push("Beta"),e.type==="Solution"&&r.includes("ArcGIS Solution")&&a.push("Solution"),r.includes("Public Data Collection")&&i&&a.push("Public Data Collection"),te(e,t)&&a.push("Retired"),l.includes("livingatlas")&&a.push("Living Atlas"),l.includes("opendata")&&a.push("Open Data"),ie(e)&&a.push("Premium"),ae(e)&&a.push("Subscriber"),n.origin&&a.push("Collaboration"),e.owner!=="esri_apps"&&n.listed&&!t?.isPortal&&a.push("Marketplace"),r.includes("Registered App")){let c=t?.isPortal??!1;if(e.type!=="API Key"&&(!c||e.owner!=="esri_apps")){let o=r.includes("APIToken"),s=r.includes("Personal API Token")&&!c;o?a.push(s?"Registered API Key Credentials (Personal)":"Registered API Key Credentials (Standard)"):a.push(s?"Registered OAuth 2.0 Credentials (Personal)":"Registered OAuth 2.0 Credentials (Standard)")}}return r.includes("hasReplacementItem")&&a.push("Has Replacement"),a}function se({badgeType:e,i18n:t,portal:i}){let a=i?.isPortal??!1;if(e==="Registered API Key Credentials (Standard)"){let r=t[e].title;return a?r.enterprise:r.online}if(e==="Registered OAuth 2.0 Credentials (Standard)"){let r=t[e].title;return a?r.enterprise:r.online}return oe(t,e)}function ne(e){let t={MapSeries:"Series",MapJournal:"Journal",SwipeSpyglass:"Swipe & Spyglass",Shortlist:"Shortlist",Cascade:"Cascade",MapTour:"Tour",StoryMapCrowdsource:"Crowdsource",StorytellingSwipe:"Swipe & Spyglass"},i=d(e).find(r=>r in t);if(i)return t[i];let a=F(e);return a&&t[a]||!1}async function le({badgeType:e,i18n:t,item:i,locale:a,portal:r,user:n,useProduction:l}){let c=!n||B(n);switch(e){case"Authoritative":{if(q(i)){let o=await _(i,a,r,l),s=t.Authoritative.tooltip,p=r?.isPortal&&!l?r?.name:o?.name||r?.name||i.owner;return k(s.public,{name:p||""})}return t.Authoritative.tooltip.org}case"Deprecated":{let o=i.owner||"",s=await I(o,r,l),p=C(s,a);return k(t.Deprecated.tooltip,{owner:p})}case"DeprecatedItemType":{let o=t.DeprecatedItemType.tooltip;return E(i,r)?o.webAppBuilder:o.general}case"Retired":{let o=t.Retired.tooltip;if(f(i)){let s=ne(i);if(s){let p={[j]:s};return k(o.classicStoryMap,p)}return o.classicStoryMapGeneric}return Q(i)?o.cityEngine:K(i)||P(i,r)?o.webAppBuilder:m(i)?o.app:N(i)?o.bdfs:o.general}case"Subscriber":{let o=t.Subscriber.tooltip;return c?o.public:o.org}case"Premium":{let o=t.Premium.tooltip;return c?o.public:o.org}case"Registered":{let o=t.Registered.tooltip;return r?.isPortal?o.enterprise:o.online}case"Personal credential":return t["Personal credential"].tooltip;case"Has Replacement":{let o=t["Has Replacement"];return r.isPortal?(globalThis.location?.href||"").includes("item.html")?o.itemPageTooltip:o.tooltip:o.itemPageTooltip}default:return t[e].tooltip}}function ce({badgeType:e,i18n:t,item:i,portal:a}){if(e!=="Has Replacement"||a.isPortal)return null;let r=W(i);return r?{title:t["Has Replacement"].link,href:de({portal:a,itemId:r})}:null}function de({itemId:e,portal:t}){return t?.restUrl?`${t.restUrl.replace("sharing/rest","home")}/item.html?id=${e}`:""}function H(){return{loading:!1,title:"",tooltip:"",tooltipLink:null}}var y=class extends v{constructor(){super(...arguments),this._messages=R({name:"portal-item-badges",blocking:!0}),this.tooltipRequestId=0,this.tooltipId=`portal-item-badge-${Math.random().toString(36).slice(2,10)}`,this.details=H(),this.width="full",this.scale="m",this.showTooltip=!1}static{this.properties={details:16,item:0,portal:0,user:0,badgeType:1,width:1,appearance:1,scale:1,showTooltip:5,useProduction:5}}static{this.styles=G}willUpdate(t){(t.has("badgeType")||t.has("item")||t.has("portal")||t.has("user")||t.has("showTooltip")||t.has("useProduction"))&&this.loadDetails()}loadDetails(){if(!this.badgeType||!this.portal){this.details=H();return}let t=se({badgeType:this.badgeType,i18n:this._messages,portal:this.portal}),i=this.item&&this.portal?ce({badgeType:this.badgeType,i18n:this._messages,item:this.item,portal:this.portal}):null;if(!this.showTooltip||!this.item){this.details={loading:!1,title:t,tooltip:"",tooltipLink:i};return}let a=++this.tooltipRequestId;this.details={loading:!0,title:t,tooltip:"",tooltipLink:i},le({badgeType:this.badgeType,i18n:this._messages,item:this.item,locale:this._messages._lang||"en",portal:this.portal,user:this.user,useProduction:this.useProduction}).then(r=>{a===this.tooltipRequestId&&(this.details={loading:!1,title:t,tooltip:r,tooltipLink:i})}).catch(()=>{a===this.tooltipRequestId&&(this.details={loading:!1,title:t,tooltip:"",tooltipLink:i})})}render(){if(!this.badgeType)return null;let t=pe[this.badgeType],i=this.width==="narrow",a=this.showTooltip&&(this.details.loading||!!this.details.tooltip||!!this.details.tooltipLink),r={badge:this.badgeType!=="Beta","badge--colored":this.badgeType==="Living Atlas"||this.badgeType==="Open Data"||this.badgeType==="Solution",beta:this.badgeType==="Beta",authoritative:this.badgeType==="Authoritative",deprecated:this.badgeType==="Deprecated"||this.badgeType==="DeprecatedItemType",narrow:i,[`narrow--${this.scale}`]:i};return u`<calcite-chip id=${this.tooltipId??S} class=${w(r)} .value=${this.badgeType} .tabIndex=${this.showTooltip?0:-1} .scale=${this.scale} .appearance=${this.appearance} .label=${this.details.title} .icon=${t}>${i?null:this.details.title}</calcite-chip>${a?u`<calcite-tooltip .referenceElement=${this.tooltipId} close-on-click placement=bottom-start overlay-positioning=fixed offset-distance=6 offset-skidding=0>${i?u`<h3 class="tooltip-title">${this.details.title}</h3>`:null}<p class="tooltip-text"><calcite-loader .hidden=${!this.details.loading} .label=${this._messages.loading} inline scale=s></calcite-loader>${this.details.loading?this._messages.loading:this.details.tooltip}</p>${this.details.tooltipLink?u`<calcite-link @click=${n=>n.stopPropagation()} icon-end=launch .href=${this.details.tooltipLink.href} target=_blank>${this.details.tooltipLink.title}</calcite-link>`:null}</calcite-tooltip>`:null}`}},pe={Authoritative:"check-circle",Beta:"beaker",Collaboration:"collaboration-distributed",Deprecated:"circle-disallowed",DeprecatedItemType:"exclamation-mark-triangle","Has Replacement":"arrow-right-left","Living Atlas":"arcgis-living-atlas",Marketplace:"marketplace","Open Data":"open-data","Personal credential":"user-key",Premium:"shield-coin","Public Data Collection":"pencil",Registered:"key","Registered API Key Credentials (Personal)":"key","Registered API Key Credentials (Standard)":"key","Registered Application":"app-gear","Registered OAuth 2.0 Credentials (Personal)":"app-gear","Registered OAuth 2.0 Credentials (Standard)":"app-gear",Retired:"exclamation-mark-triangle",Solution:"arcgis-solutions",Subscriber:"security"};A("arcgis-portal-item-badge",y);return{a:we,b:y}},"intl",a,c)
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
+
import g from"./2WI5FBDF.js";import{b as Le}from"./4QA4AYHJ.js";import f from"./EBYEZR4N.js";import{a as se}from"./XEK22IDA.js";import{b as P,c as oe,d as Oe}from"./CFBSBZSS.js";import e from"./D4VYYWA6.js";import{a as X}from"./TQLHU3PC.js";import{d as Me,e as Ee}from"./OBBYT2AV.js";import d from"./A4AA5T6M.js";import"./DFTUMKSN.js";import{a as Ne}from"./YVKSTDL6.js";import b from"./TGTT2CVD.js";import a from"./F3ODJVJC.js";import{a as K,b as B,c as Q,d as ke,j as Se}from"./VMQIDO4Z.js";import{b as J,c as ne}from"./QS3GXAIH.js";import{b as xe}from"./2GBRZSEC.js";import{a as L}from"./XLLMHJCE.js";import{a as Ce}from"./W3UBNVKL.js";import"./QZD2UBOW.js";import"./JVGCIDQW.js";import{K as z,L as G,M as $e,N as H,O as ae,S as Ae,T as q,h as we,j as c,k as ye,m as C,w as F}from"./6BUBZ7WC.js";import"./UZLQALHY.js";export default $arcgis.t(([{formatDate:Rt,substitute:Z,getLocale:Wt},,Ft,{e:E},{c:Ie,f:Te,g:Pe,h:je},{c:re},,{a:De,b:ze,c:Ge,d:Re,e:We},{a:ce,c:Fe}])=>{function He({portal:e,productInfo:t}){let{name:i,glyph:a}=t||{};return c`<img alt class="logo__glyph" src=${a??C}><span class="logo__text"><span class="logo__title">${i}</span>${e?.name&&c`<span class="logo__subtitle">${e.name}</span>`||""}</span>`}function Ht({navigate:e,portal:t,product:i,productInfo:a,productHref:n,messages:r,searchActive:o,showNav:s,projectTitleEditing:l}){let u=o&&i==="Online"&&!s||i!=="Online"&&l&&window.innerWidth<960;return!i||!t||!r||u?null:n?c`<a href=${n??C} @click=${m=>{e({event:m,href:n})}} class="logo fade-in logo--link">${He({portal:t,productInfo:a})}</a>`:c`<div class="logo fade-in">${He({portal:t,productInfo:a})}</div>`}var le={},j={Month:2628e3,Week:604800,Day:86400,Hour:3600,Minute:60,Second:1};function Xe(e){if(!e)return null;let t=Math.floor(e/1e3),i=Math.abs(t),a=j.Day*365;switch(!0){case i<j.Minute:return[Math.floor(t/j.Second),"second"];case i<j.Hour:return[Math.floor(t/j.Minute),"minute"];case i<j.Day:return[Math.floor(t/j.Hour),"hour"];case i<j.Week:return[Math.floor(t/j.Day),"day"];case i<j.Month:return[Math.floor(t/j.Week),"week"];case i<a:return[Math.floor(t/j.Month),"month"];default:return[Math.floor(t/a),"year"]}}function Ye(e){return(typeof e=="number"?e:e.getTime?.())-new Date().getTime()}function Ze({locale:e,time:t,t9n:i}){if(!e||!t)return"";let a=Ye(t);le[e]??=new Intl.RelativeTimeFormat(e,{style:"long"});let n=Xe(a);return n?n[1]==="second"?i?.lessThanOneMinute||`< ${le[e].format(n[0]>0?1:-1,"minutes")}`:le[e].format(n[0],n[1]):""}var Bt={month:"long",day:"numeric",year:"numeric"},Vt={month:"long",day:"numeric"};function Ut({locale:e,time:t},i){if(!e||!t)return"";let a=new Date(t);return Rt(a,i?Bt:Vt)}async function qt({portal:e}){if(!e?.user)return{result:[]};let t=`${e.restUrl}/community/users/${e.user.id}/notifications`,{result:i,error:a}=await E(t);return a?{error:a}:{result:i?.notifications}}async function Jt(e,t){if(!e?.user)return{success:!0};let i=t.map(a=>({portal:e,id:a})).map(et);return{success:!((await Promise.allSettled(i))?.filter(a=>a.status==="rejected"||!a.value?.success)).length}}async function et({portal:e,id:t}){let i=`${e.restUrl}/community/users/${e.user?.id}/notifications/${t}/delete`,{result:a}=await E(i,{method:"post"});return a?.success?{success:!0,id:t}:{success:!1,id:t}}var tt="notifications-menu";function Kt(e){try{let t=decodeURIComponent(e);return t!==e?t:e}catch{return e}}function Qt(e){switch(e){case"group_join_admin":return"users";case"group_application_accepted":return"register";case"group_join":return"file-user";case"group_application_declined":return"user-risk";case"user_invitation_declined":return"group-x";case"user_invitation_accepted":return"user-plus";case"user_invite":return"envelope";case"user_added_to_group":return"user-plus";case"collaboration_workspace_added":case"collaboration_deleted":case"collaboration_leaving":case"collaboration_join":case"collaboration_participant_workspace_join":case"collaboration_participant_workspace_unjoin":case"collaboration_participant_removed":case"collaboration_peer_participant_removed":case"collaboration_participant_access_changed":return"collaboration";case"collaboration_participant_join":return"collaboration-user";case"collaboration_content_store_disk_limit_reached":return"gauge";case"user_email_bounced":return"speech-bubble-exclamation";case"feature_layer_copy_over_failed":case"feature_layer_one_way_shared_not_two_way":case"feature_view_copy_over_failed":case"webapp_not_copied":case"webapp_not_copied_portal":case"insights_item_not_copied":return"collaboration";case"scheduled_task_disabled":return"date-time";case"portal_certificate_about_to_expire":case"portal_certificate_expired":return"hourglass-expired";case"notebook_runtime_deprecated":return"notebook-server";case"ingress_certificate_about_to_expire":case"ingress_certificate_expired":return"certificate";default:return"bell"}}function Xt({notification:e,portal:t,locale:i,t9n:a}){if(e?.received&&e.id){let n={date:Ze({locale:i,time:e.received,t9n:a}),id:e.id,text:"",icon:Qt(e.type)};if(e.type==="webapp_not_copied"&&t.isPortal&&(e.type="webapp_not_copied_portal"),e.data?.taskTitle&&(e.data.taskTitle=Kt(e.data.taskTitle)),e.type==="message_received")n.text=e.data.message||"";else if(a.types[e.type]){let r=J({portal:t,usePortalHostname:!!t.user});e.data.baseUrl=`${r}/home/`,n.text=Z(a.types[e.type],e.data)}if(n.text)return n}return null}async function Be({portal:e,locale:t,t9n:i}){if(!i)return[];let{result:a,error:n}=await qt({portal:e});return n&&console.error(n),a?.length?a.map(r=>Xt({notification:r,portal:e,t9n:i,locale:t})).filter(r=>r):[]}function Yt({notifications:e,messages:t,handleToggleNotifications:i,handleToggleSearch:a,notificationsActive:n}){return t?c`<calcite-action class="action" scale=l .text=${t.label} icon=bell .indicator=${!!e?.length} id=${tt} @click=${()=>i(!n)} @focusin=${()=>a(!1,!0)}></calcite-action>`:null}function Y({icon:e,title:t,description:i}){return!t&&!i?null:c`<div class="empty">${e&&c`<svg xmlns=http://www.w3.org/2000/svg width=64 height=64 viewBox="0 0 64 64" fill=none>${ye`<path d=${Ne[e]??C} fill=var(--calcite-color-border-input) />`}</svg>`||""}${t&&c`<h3 class="notifications__empty__header">${t}</h3>`||""}${i&&c`<p class="notifications__empty__text">${i}</p>`||""}</div>`}function Zt({notifications:e,deleteNotifications:t,messages:i,navigate:a,portal:n,notificationsActive:r,handleToggleNotifications:o,notificationDeleteProgress:s}){return i?c`<calcite-popover .referenceElement=${tt} @calcitePopoverClose=${()=>o(!1)} .label=${i.label} auto-close .open=${r} pointer-disabled flip-disabled trigger-disabled placement=bottom-end scale=l .heading=${i.label}>${e?.length>0?c`<div class="notifications notifications--full">${typeof s=="number"&&c`<calcite-scrim><calcite-loader type=determinate-value .label=${i.deleting} .value=${s}></calcite-loader></calcite-scrim>`||""}<calcite-list .label=${i.label} interaction-mode=static class="notifications__list" scale=l>${L(e,l=>l.id,l=>c`<calcite-list-item closable @calciteListItemClose=${async()=>await t([l.id])} .messageOverrides=${{close:i.dismissLabel}} .iconStart=${l.icon}><div slot=content class="notification"><div class="notification__message" .innerHTML=${l.text??""} @click=${u=>{let m=u.target,b=m.href;if(m.nodeName==="CALCITE-LINK"&&b){let h=`${J({portal:n,usePortalHostname:!!n.user})}/home/`;a({event:u,href:b,relativePath:b.replace(h,"")})}}}></div><div class="notification__date">${l.date}</div></div></calcite-list-item>`)}</calcite-list></div><calcite-button class="notifications__dismiss" scale=l appearance=transparent @click=${async l=>{let u=l.currentTarget?.parentElement;await t(e?.map(({id:m})=>m)),u.open=!1}}>${i.dismissAllLabel}</calcite-button>`:c`<div class="notifications">${Y({title:i.noNotifications,description:i.noNotificationsDescription,icon:"check"})}</div>`}</calcite-popover>`:null}function ei(e){return e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}function ti(e,t,i,a){si(e,JSON.stringify(t),i)}function ii(e){return ri(e,!0)}function ai(e){try{window.localStorage.removeItem(e)}catch{}}function ni(e){try{window.sessionStorage.removeItem(e)}catch{}}function ri(e,t){let i=oi(e);return i&&t?JSON.parse(i):i}function oi(e){let t=document.cookie,i=new RegExp(`(?:^|; )${ei(e)}=([^;]*)`,"u"),a=t.match(i);return a?decodeURIComponent(a[1]):""}function si(e,t,i){i=i||{};let a=i?.expires;if(typeof a=="number"){let r=new Date,o=a*24*60*60*1e3;r.setTime(Date.now()+o),a=r,i.expires=r}typeof a!="string"&&a?.toUTCString&&(i.expires=a.toUTCString());let n=`${e}=${encodeURIComponent(t)}`;for(let r of Object.keys(i)){n+=`; ${r}`;let o=i[r];o!==!0&&(n+=`=${o}`)}document.cookie=n}async function ci(e){let t=`owner:"${e.isPortal?"esri":"esri_config"}" AND title:"AppSwitcher Config" AND type:"Application Configuration"`,i=`${e.restUrl}/search`;return await E(i,{query:{num:1,start:0,sortField:"title",sortOrder:"asc",q:t}})}async function li(e){let t={appSwitcher:{apps:[]}};if(!e?.id||!e.user)return t;let{result:i}=await ci(e),a=i?.results?.[0];if(!a)return t;let n=a.id;return(await re(e,n)).result}async function pi(e,t,i){if(!t||!e?.length)return{result:null};let a=`${i.restUrl}/search`;return await E(a,{query:{num:100,q:`id:(${e.map(n=>`"${n.itemId}"`).join(" OR ")})`}})}async function di(e){let t=`${e.restUrl}/search`,i={num:10,start:0,sortField:"title",sortOrder:"asc",q:'owner:"esri" AND title:"BlockedApps Config" AND type: "Application Configuration"'},{result:a}=await E(t,{query:i}),n=a?.results?.[0]?.id;return n?(await re(e,n))?.result?.blockedApps||[]:[]}function ui(e,t){let i=e?.toLowerCase()||"",a=`${t.title||""} ${t.label||""}`;return!i||a.toLowerCase().includes(i)}function hi(){if(ii("APSW-query")?.expires>new Date().setHours(new Date().getHours()))return!0;let e={expires:new Date().setHours(new Date().getHours()+5)};return ti("APSW-query",e,{path:"/",domain:window.location.hostname,sameSite:"Strict"}),!1}function mi(e,t){let{landingPage:i}=t||{};return{image:"arcgis-online.png",label:"ArcGIS Online",title:"ArcGIS Online",url:`${ne({portal:e})}/${i?.url?i.url:ce(e.user)?"organization.html":"index.html"}`}}function Ve(e){let t=["api-for-python","appstudio","arcade","arcgis-earth","arcgis-enterprise","arcgis-experience-builder","arcgis-geoanalytics","arcgis-hub","arcgis-online","arcgis-pro","arcgis-urban","blank","business-analyst","city-engine","collector","community-analyst","configurable-apps","dashboards-beta","dashboards-classic","data-pipelines","deeplearningstudio","demographics","drone2map","esri-events","essential-apps","excalibur","explorer","field-apps","fieldmaps-beta","fieldmaps-ea","fieldmaps","generic-app","geobim","geoplanner","grid-view-9","indoor","indoors","insights","instant-apps","ips","knowledge-studio","living-atlas","location-platform","map-maker","map-viewer-beta","map-viewer-classic","map-viewer","maps-adobe-cloud","maps-for-office","maps-for-power-bi","maps-for-sharepoint","marketplace","mission","monitor","navigator","notebook","office-apps","open-data","operations-dashboard","ortho-maker","pro-extension","quick-capture","redistricting","runtime","scene-viewer","sites","solutions","story-maps","streetmap-premium","survey123","track-viewer","user-type-extension-online","user-type-extension","vector-tile-style-editor","velocity","web-app-builder","web-editor","web-mapping","workflow-manager-beta","workflow-manager","workforce"].find(i=>e?.includes(i)&&V(`${i}.png`)===e);return t?V(`${t}.avif`):e}function gi(e,t){let i=e?.blockedApps||[],a=[];return!i.length&&!e.blockBetaApps||!t?.length?[]:(e.blockBetaApps&&t.forEach(n=>{n.isBeta&&!i.includes(n.clientid)&&i.push(n.clientid)}),i.forEach(n=>{let r=t.find(o=>o.clientid===n);r&&a.push(r)}),a)}function S(e,t){return t&&t[e.toLowerCase()]?.valid||!1}function fi(e,t){return e?.portalProperties&&!e.portalProperties?.openData?.enabled?!1:S("HubforArcGIS",t)}function vi(e,t){if(!e)return!1;let i=["portal:publisher:publishFeeds","portal:publisher:publishRealTimeAnalytics","portal:publisher:publishBigDataAnalytics"],a=(e?.privileges||[]).some(r=>i.includes(r)),n=S("velocity",t);return a&&n}function bi(e){return S("HubforArcGIS",e)}function _i(e,t){return!(e.isPortal&&e.portalProperties?.newMapViewerEnabled===!1)&&S("arcgisWebApps",t)}function wi(e){return!!e.helperServices?.rasterAnalytics&&!!e.helperServices.orthoMapping}function yi(e,t,i){let a=i&&(!e.isPortal||!!e.sourceJSON?.supportsHostedNotebooks),n=!!t?.privileges?.length&&t.privileges.some(r=>r==="premium:publisher:createNotebooks");return a&&n}function $i(e,t){return!!e.helperServices?.locationTracking&&t}function Ai(e,t,i,a){let n=e?.user;return{"Open Data":{hasAccess:()=>fi(e,a)},AppStudio:{hasAccess:()=>S("arcgisWebApps",a)},"ArcGIS Velocity":{hasAccess:()=>e.isPortal||vi(n,a)},"ArcGIS Hub":{hasAccess:()=>S("HubforArcGIS",a)},"ArcGIS Enterprise Sites":{hasAccess:()=>bi(a)},"ArcGIS QuickCapture Web Designer":{hasAccess:()=>S("arcgisWebApps",a)},"ArcGIS Dashboards":{hasAccess:()=>S("dashboards",a)},"Map Viewer":{hasAccess:()=>_i(e,a)},"Map Viewer Classic":{hasAccess:()=>S("arcgisWebApps",a)},"Operations Dashboard for ArcGIS":{hasAccess:()=>S("opsdashboard",a)},"ArcGIS Dashboards Classic":{hasAccess:()=>S("opsdashboard",a)},"Ortho Maker":{hasAccess:()=>wi(e)},Notebook:{hasAccess:()=>yi(e,n,t)},"Scene Viewer":{hasAccess:()=>S("arcgisWebApps",a)},"Story Maps":{hasAccess:()=>S("arcgisWebApps",a)},Survey123:{hasAccess:()=>S("survey123",a)},"Track Viewer":{hasAccess:()=>$i(e,i)},"Instant Apps":{hasAccess:()=>S("arcgisWebApps",a)},"ArcGIS Maps for Adobe Creative Cloud":{hasAccess:()=>S("arcgisWebApps",a)&&!e.isPortal}}}function xi(e){let t={opsdashboard:1,arcgisWebApps:1,Workforce:1,geoplanner:1,webappbuilder:1,HubforArcGIS:1,appstudio:1,survey123:1,storymaps:1,mapsForOffice:1,mapsForO365:1,mapsForSharePoint:1,mapsForCreativeCloud:1,indoorsweb:1,indoorskiosk:1,indoorsspaceplanner:1,locationplatformWebApps:1,communityanalyst_2:1};return e.isPortal&&(t={...t,arcgisonline:1,arcgisUrban:1,arcgisinstantapps:1}),t}function de(e){return e.sourceJSON?.subscriptionInfo?.options?.includes("Developer")}function V(e){return q(`assets/portal-navigation/apps/${e||""}`)}function it(e,t,i){return e.icon?`${t.restUrl}/portals/self/resources/${e.icon}?token=${i}`:`${t.restUrl}/content/items/${e.itemId}/resources/${e.image||e.properties?.appSwitcher?.image}?token=${i}`}function R(e,t,i){if(e.image?e.image=V(e.image):e.placeHolderIcon=`${V()}svg-app-icon.svg`,e.url?.startsWith("../")){let a=i.urlKey?`${i.urlKey}.${i.customBaseUrl}`:i.portalHostname;e.url=`${window.location.protocol}//${a}${e.url.substring(2,e.url.length)}`}return delete e.isLicensed,delete e.privileges,e.itemId=t,e}function at(){return`${V()}svg-app-circle.svg`}function ki(e,t,i){let a=e.properties?.appSwitcher?.image||e.icon;return{abbr:e.properties?.appSwitcher?.abbr||e.abbreviation,itemId:e.itemId,canAccess:!0,webMappingApp:!0,image:a?it(e,t,i):void 0,label:e.title||e.label,url:e.url,placeHolderIcon:e.placeHolderIcon||at()}}function Si(e,t,i){return e.appSwitcher?.image||e.icon?e.image=it(e,t,i):e.placeHolderIcon=at(),e.abbr=e.appSwitcher?.abbr||e.abbreviation,delete e.abbreviation,delete e.appSwitcher,delete e.approvedApp,delete e.webMappingApp,e}function Ue(e,t){e.forEach(i=>{i.uid==="Map Viewer Beta"&&(i.uid="Map Viewer"),t.isPortal&&(i.uid==="Operations Dashboard for ArcGIS"?i.uid="ArcGIS Dashboards Classic":i.uid==="Workforce for ArcGIS"&&(i.uid="ArcGIS Workforce"))})}async function Ii({userApps:e,servers:t,portal:i,licenses:a,blockedApps:n,provisionedListings:r,orgCapabilities:o,trackViewerEnabled:s,notebookServerEnabled:l,willQueryForItems:u,approvedApps:m}){let b={},h={},y=Ai(i,l,s,a),x=xi(i),A=[],I=e.length;for(let d=0;d<I;d++){let p=e[d],_=p.itemId||p.title,k=!0,T=!p.serverFunction||t?.some(g=>(g.serverFunction?.split(",")||[]).includes(p.serverFunction)),f=n?.some(g=>p.itemId&&p.itemId===g.itemid||p.title&&p.title===g.title);if(b[_]=1,h[_]=p,f||de(i)&&!p.showInLocationPlatform||i.sourceJSON?.portalDeploymentType==="ArcGISEnterpriseOnKubernetes"&&p.supportsKubernetes===!1)continue;let v=p.title;if(y[v]&&!y[v]?.hasAccess())continue;let $=i.sourceJSON?.subscriptionInfo;if(p.subscriptionType){$?.type===p.subscriptionType&&(h[_].canAccess=!0,A.push(R(p,_,i)));continue}if(p.orgCapabilities){o?.length&&o.some(g=>p.orgCapabilities?.includes(g.id))&&(h[_].canAccess=!0,A.push(R(p,_,i)));continue}if(!p.privileges?.length&&!p.isLicensed&&T&&(p.label!=="ArcGIS Location Platform"||de(i))){h[_].canAccess=!0,A.push(R(p,_,i));continue}if(i.user?.sourceJSON?.userLicenseTypeId?.toLowerCase()==="storytellerut"&&p.label?.toLowerCase()==="storymaps"){h[_].canAccess=!0,A.push(R(p,_,i));continue}if(p.privileges?.length&&i.user?.privileges){for(let g=0;g<p.privileges.length;g++)if(!i.user.privileges.includes(p.privileges[g])){k=!1;break}if(!p.isLicensed&&k&&T){h[_].canAccess=!0,A.push(R(p,_,i));continue}}if(p.isLicensed&&k&&T){for(let g=0;g<r.length;g++)if(_===r[g].itemId||_===r[g].title){h[_].canAccess=!0,A.push(R(p,_,i));break}}}let w=await Ie(i);return r.forEach(d=>{if(d.type==="Web Mapping Application"&&!x[d.clientId]&&!b[d.itemId]&&d.url&&d.title&&!b[d.title]&&!d.typeKeywords.includes("hideFromAppSwitcher")){let p=ki(d,i,w);h[d.itemId]=p,A.push(p)}}),{apps:[...m.map(d=>{let p={...d.appProperties,itemId:d.itemId,webMappingApp:!0,approvedApp:!0,canAccess:!u};return h[d.itemId]=p,Si(p,i,w)}),...A],appDictionary:h}}function pe(e,t){return e.filter(i=>!t?.some(a=>i.itemId&&i.itemId===a.itemid||i.title&&i.title===a.title))}function qe({apps:e,app:t,appDictionary:i,newAppDictionary:a,portal:n}){let r=Object.keys(i).map(o=>i[o]).filter(o=>o.itemId===t.uid||o.title===t.uid).shift();return r&&!i[t.uid]&&(t.uid=r.itemId||r.title||""),r?.hasBeenPopulated||(r?((t.hasChanged||r.hasChanged||!r.canAccess&&!r.ignoreNoAccess)&&ce(n.user)&&(i[t.uid].hasChanged=!0,i[t.uid].ignoreNoAccess=t.ignoreNoAccess),t.isNew&&(i[t.uid].isNew=!0),delete a[t.uid]):(r=t,r.canAccess=!1,r.itemId=t.uid,i[t.uid]=r),i[t.uid].hasBeenPopulated=!0,e.push(r)),e}async function Ti({portal:e,trackViewerEnabled:t,notebookServerEnabled:i}){if(!e?.id||!e.user)return{apps:[],hiddenApps:{}};let a=hi(),[n,r,o,s,l,u,m]=await Promise.all([li(e),je(e),Te(e),De(e),ze(e),We(e),di(e)]),b=e.isPortal?await Re(e):null,h=o?.result?.properties,y=n?.appSwitcher?.apps||[];e.isPortal||(y=y.filter(f=>f.title!=="Map Viewer Classic"||e.sourceJSON.created<new Date("February 26 2025")),y.unshift(mi(e,h)));let x=s?.result?.approvedApps?.filter(f=>!f.hideForNonPrivilegedMember)||[],A={};r?.forEach(f=>{let v=f.clientId?.toLowerCase();v&&(A[v]={valid:!0,itemId:f.itemId,clientId:f.clientId})}),l?.forEach(f=>{let v=f.id?.toLowerCase();v&&(A[v]={valid:!0,clientId:f.id})});let I=gi(u,m),{apps:w,appDictionary:d}=await Ii({userApps:y,servers:b,portal:e,blockedApps:I,provisionedListings:r,orgCapabilities:l,licenses:A,trackViewerEnabled:t,notebookServerEnabled:i,willQueryForItems:a,approvedApps:x});h?.appLauncher&&(h?.appLauncher.primary&&Ue(h?.appLauncher.primary,e),h?.appLauncher.secondary&&Ue(h?.appLauncher.secondary,e));let p=[],_=[];if(!h?.appLauncher?.primary||!h?.appLauncher.secondary)p=w.slice().sort((f,v)=>(f.label||"")<(v.label||"")?-1:1),p=pe(p,I),_=[];else{let{result:f}=await pi(x,a,e);f?.results?.length&&f.results.forEach($=>{let g=d[$.id];g.canAccess=!0,g.hasChanged=g.url!==$.url?!!$.url:!1});let v={...d};h?.appLauncher?.primary?.forEach($=>{$.label==="Map Viewer"&&($.uid="Map Viewer")}),p=h?.appLauncher.primary.reduce(($,g)=>qe({apps:$,app:g,appDictionary:d,newAppDictionary:v,portal:e}),[])||[],_=h?.appLauncher.secondary.reduce(($,g)=>qe({apps:$,app:g,appDictionary:d,newAppDictionary:v,portal:e}),[])||[],p=pe(p,I),_=pe(_,I),de(e)&&(p=p.filter($=>$.canAccess),_=_.filter($=>$.canAccess));for(let $ of Object.keys(v))v[$].canAccess&&(v[$].isNew=!0,d[$]=v[$],p.push(v[$]))}let k=[...p,..._],T=_.reduce((f,v)=>(v.itemId&&(f[v.itemId]=!0),f),{});return{apps:k,hiddenApps:T,signInSettings:u,licenses:A,userProperties:h}}function Pi(e,t){return!e?.itemId||!t?!1:t[e.itemId]}async function ji({apps:e,hiddenApps:t,userProperties:i,portal:a}){let n=e.reduce((o,s)=>{let l=t[s.itemId];return o[l?"secondary":"primary"].push({label:s.label,uid:s.itemId||s.title}),o},{primary:[],secondary:[]}),r={...i||{},appLauncher:n};return await Pe(r,a)}function nt({app:e}){if(!e)return null;if(!e.canAccess)return c`<span class="list-item__logo list-item__logo-empty"></span>`;let t=!e.image&&e.abbr;return c`${t&&c`<span class="list-item__logo">${e.placeHolderIcon&&c`<img src=${Ve(e.placeHolderIcon)??C} class="list-item__logo-bg" alt>`||""}<span style=${ae({fontSize:e.fontSize||"20px"})} class="list-item__abbr">${e.abbr}</span></span>`||""}${e.image&&c`<img src=${Ve(e.image)??C} class="list-item__logo" alt>`||""}${e.isNew&&c`<span class=${H({"list-item__indicator":!0})}></span>`||""}`}function Ci({app:e,hiddenApps:t,messages:i,toggleAppVisibility:a}){if(!e||!i)return null;let n=Pi(e,t),{title:r,itemId:o,label:s}=e;return c`<calcite-list-item .label=${r||s} class=${H(n?"app--hidden":"")}><span slot=content-start>${nt({app:e})}</span><calcite-action .text=${n?i.show:i.hide} .icon=${n?"view-hide":"view-visible"} slot=actions-end @click=${()=>o&&a(o,!n)}></calcite-action></calcite-list-item>`}function Ni({app:e,messages:t}){if(!e||!t)return null;let{title:i,itemId:a,label:n,url:r,isNew:o}=e,s=t?.descriptions?.[i]||t?.descriptions?.[n];return c`<li class="list-item"><a class="list-item__link" href=${r??C} target=_blank id=${a??C} aria-describedby=${`${a}--tooltip`}>${c`<span class="list-item__container">${nt({app:e})}<span class="list-item__title">${i||n}</span>${o&&c`<calcite-chip scale=s class="list-item__chip" icon=asterisk-small .label=${t.new}>${t.new}</calcite-chip>`||""}</span>`}</a>${s&&c`<calcite-tooltip .referenceElement=${a} placement=trailing .id=${`${a}--tooltip`} role=tooltip>${s}</calcite-tooltip>`||""}</li>`}function Mi({apps:e,appsLoading:t,appsSearchTerm:i,hiddenApps:a,messages:n,handleAppsSearch:r,handleAppReorder:o,handleAppSave:s,handleAppHide:l,handleAppCancel:u,handleAppEdit:m,editingApplications:b,portal:h}){if(!e||!n)return null;let y=i?.length>0,x=(e||[]).filter(w=>w.itemId&&(!a?.[w.itemId]||y)&&ui(i,w)),A=y?n.noAppResults.replace("{term}",i):n.noAppsAvailable,I=y?P(h)?n.noAppsDescriptionPublic:n.noAppResultsDescriptionOrg:n.noAppsAvailable;return b?c`<div class="list__header"><calcite-button appearance=outline width=half @click=${()=>{u()}}>${n.cancel}</calcite-button><calcite-button width=half @click=${()=>{s()}}>${n.applyChanges}</calcite-button></div><calcite-list .label=${n.allMyApplications} drag-enabled @calciteListDragEnd=${w=>{let{newIndex:d,oldIndex:p}=w.detail;o({newIndex:d,oldIndex:p})}} .loading=${t}>${L(e,w=>w.itemId,w=>Ci({app:w,hiddenApps:a,messages:n,toggleAppVisibility:(d,p)=>{l({app:d,hidden:p})}}))}</calcite-list>`:c`<div class="list__header"><calcite-input type=search icon .placeholder=${n.searchMyApps} scale=m class="list__search" @calciteInputInput=${w=>{r(w.currentTarget.value)}}></calcite-input><calcite-button appearance=transparent kind=neutral icon-start=reorder-cards .label=${n.reorder} @click=${()=>m()} id=customize-apps></calcite-button><calcite-tooltip reference-element=customize-apps><span>${n.customizeApps}</span></calcite-tooltip></div>${x?.length>0?c`<ul class="list">${L(x,w=>w.itemId,w=>Ni({app:w,messages:n}))}</ul>`:Y({title:A,description:I,icon:i?"search":"apps"})}`}var Je="portalAppClientId",ge={GeoanalyticsEngine:"geoanalyticsengine",GeoanalyticsFabric:"geoanalyticsfabric",IndoorsOnline:"indoorsonline"};function fe(e){return ge.GeoanalyticsEngine===e}function ve(e){return ge.GeoanalyticsFabric===e}function rt(e){return ge.IndoorsOnline===e}function be(e){return["Location Platform","GeoAnalytics Fabric","GeoAnalytics Engine","Online","Enterprise"].includes(e)}function Ei({portal:e,messages:t,licenses:i,clientId:a,signInSettings:n}){if(!t||!e)return[];let r=e.sourceJSON?.subscriptionInfo,o=zi({messages:t,portal:e});if(!e.user)return o;if(!e||!o||e?.user&&!i&&!P(e))return[];let s=Ri({portal:e,licenses:i,subscriptionInfo:r});return Gi({messages:t,portal:e,clientId:a,signInSettings:n,navLinkDictionary:s})}function Li(e){let{id:t,access:i,isPortal:a}=e;return!t&&!i&&!a}function Oi(e,t){let i=new URL(e),a=t||window.location.pathname;return i.pathname===a}function ot({portal:e,clientId:t,signInSettings:i}){let a=e.user,n=rt(t),r=!!i?.blockedApps?.includes("arcgisnotebooks"),{gallery:o="all",groups:s="all",map:l="all",notebook:u="notebookCreators",scene:m="all"}=e.portalProperties?.topNav||{},b=["home"];if(!a){if(!e.portalProperties?.topNav){let y=["gallery","map","scene","groups"],x=e.isPortal?["help"]:[];return[...b,...y,...x]}return[...b,...o==="all"?["gallery"]:[],...l==="all"?["map"]:[],...m==="all"?["scene"]:[],...s==="all"?["groups"]:[],...e.isPortal?["help"]:[]]}let h=a.orgId===e.id;return!e.portalProperties?.topNav&&P(e)?b=["ArcGIS","overview","pricing","map","scene","groups","myContent"]:b=[...b,...(o==="all"||o==="members"&&h)&&!n?["gallery"]:[],...(l==="all"||l==="members"&&h||l==="mapCreators"&&oe(a))&&!n?["map"]:[],...(m==="all"||m==="members"&&h||m==="sceneCreators"&&oe(a))&&!n?["scene"]:[],...!r&&(!e.isPortal||e.sourceJSON.supportsHostedNotebooks)&&(u==="members"&&h||u==="notebookCreators"&&Oe(a))&&!n?["notebook"]:[],...(s==="all"||s==="members"&&h)&&!n?["groups"]:[],...h&&!n?["myContent","organization"]:[]],b}function N(e){return`${ne({portal:e})}/`}function Di({keys:e,navLinkDictionary:t,messages:i}){let a=[];return e.forEach(n=>{let r=t[n];if(r&&(!("show"in r)||r.show)){let{href:o,newTab:s,icon:l,relativePath:u}=r;a.push({label:i[n],href:o,newTab:s,relativePath:u,icon:l})}}),a}function zi({messages:e,portal:t}){if(!e||!t)return[];let i=N(t),a={overview:{label:e.overview,href:`${i}../features/features.html`,icon:"information"},pricing:{label:e.pricing,href:`${i}../features/plans/pricing.html`,icon:"credit-card"},map:{label:e.map,href:`${i}apps/mapviewer/index.html`,icon:"map"},scene:{label:e.scene,href:`${i}webscene/viewer.html`,icon:"globe"},help:{label:e.help,href:Q(t),newTab:!0,icon:"headset"},home:{label:e.home,href:`${i}index.html`,relativePath:"index.html",icon:"home"},gallery:{label:e.gallery,href:`${i}gallery.html`,relativePath:"gallery.html",icon:"gallery"},groups:{label:e.groups,href:`${i}groups.html`,relativePath:"groups.html",icon:"group"}};return(Li(t)?["overview","pricing","map","scene","help"]:ot({portal:t})).map(n=>a[n])}function Gi({messages:e,portal:t,clientId:i,signInSettings:a,navLinkDictionary:n}){let r=fe(i),o=ot({portal:t,clientId:i,signInSettings:a}),s=`${N(t)}geoanalytics${r?"engine":"fabric"}.html`;return r||ve(i)?[{href:`${s}#subscription`,label:e.subscription},...r?[{href:`${s}#downloads`,label:e.downloads}]:[],{href:`${s}#credentials`,label:e.developerCredentials},{href:`${s}#account`,label:e.account}]:Di({keys:o,messages:e,navLinkDictionary:n})}function Ri({portal:e,licenses:t,subscriptionInfo:i}){let a=e.user,n=N(e),r=i?.options?.includes("Developer"),o=S("arcgiswebapps",t)||r&&S("locationplatformwebapps",t)||P(e);return{pricing:{href:`${n}../features/plans/pricing.html`},overview:{href:`${n}../features/features.html`},ArcGIS:{href:`${n}${P(e)?"index.html":"../features/features.html"}`,show:P(e)||!a},groups:{href:`${n}groups.html`,relativePath:"groups.html",icon:"group"},myContent:{href:`${n}content.html`,relativePath:"content.html",icon:"files"},map:{show:o,href:`${n}apps/mapviewer/index.html`,icon:"map"},help:{href:Q(e),newTab:!0},gallery:{show:!!e.id&&!r,href:`${n}gallery.html`,relativePath:"gallery.html",icon:"gallery"},home:{show:!P(e)&&!r,href:`${n}index.html`,relativePath:"index.html",icon:"home"},scene:{show:o,href:`${n}webscene/viewer.html`,icon:"globe"},notebook:{show:Se(e),href:`${n}notebook/notebookhome.html`,relativePath:"notebook/notebookhome.html",icon:"notebook"},organization:{show:!P(e),href:`${n}organization.html`,relativePath:"organization.html",icon:"organization"},features:{show:P(e)&&!e.isPortal,href:`${n}../features/features.html`,icon:"information"}}}function Wi({portal:e,item:t,messages:i,navigate:a,locale:n}){if(!t||!i||!t.modified)return null;let r=t.modified,o={lessThanOneMinute:i.lessThanOneMinute},s=Xe(Ye(r)),l=s?.[1]==="year"||s?.[1]==="month"?Ut({locale:n,time:r},s?.[1]==="year"):Ze({locale:n,time:r,t9n:o}),u=`item.html?id=${t.id}`,m=`${N(e)}${u}}`;return X(t.id,c`<li class="list-item"><a class="list-item__link" href=${m??C} @click=${b=>{a({event:b,href:m,relativePath:u})}}>${c`<span class="list-item__container"><span class="list-item__logo list-item__logo--item-type"><arcgis-portal-item-type .item=${t} .user=${e.user} hide-text></arcgis-portal-item-type></span><span class="list-item__content"><span class="list-item__title list-item__title--regular">${t.title}</span><span class="list-item__subtitle">${Z(i.lastUpdated,{date:l})}</span></span></span>`}</a></li>`)}function Fi({locale:e,navigate:t,portal:i,open:a,apps:n,appsLoading:r,hiddenApps:o,appsSearchTerm:s,handlePlatformClose:l,handleAppsSearch:u,handleAppReorder:m,handleAppSave:b,handleAppHide:h,handleAppCancel:y,handleAppEdit:x,handleItemSearch:A,editingApplications:I,recentContent:w,recentContentLoading:d,recentContentSearchTerm:p,product:_,productInfo:k,links:T,messages:f}){if(!_||!i||!f)return null;let{name:v,icon:$}=k||{};return c`<calcite-sheet class="platform" .label=${f.label} position=inline-start display-mode=overlay id=example-sheet .open=${a} @calciteSheetClose=${l}><calcite-panel class="platform__panel"><div slot=header-content class="platform__header"><img src=${$??C} class="platform__header-image"><div class="platform__header-text"><h2 class="platform__title">${v}</h2><p class="platform__subtitle">${i.name}</p></div><calcite-action icon=x text="Close menu" scale=l @click=${l}></calcite-action></div><div class="platform__container"><div class="platform__tiles">${T.filter(({icon:g})=>g).map(({label:g,href:D,icon:ee,relativePath:U})=>c`<calcite-tile .icon=${ee} .description=${g} .href=${D} alignment=center scale=s @keydown=${M=>{(M.key==="Enter"||M.key===" ")&&t({event:M,href:D,relativePath:U})}} @click=${M=>{t({event:M,href:D,relativePath:U})}}></calcite-tile>`)}</div>${i?.user&&c`<calcite-tabs layout=center class="platform__tabs"><calcite-tab-nav slot=title-group>${!P(i)&&c`<calcite-tab-title selected>${f.myApps}</calcite-tab-title>`||""}<calcite-tab-title>${f.recentContent}</calcite-tab-title></calcite-tab-nav>${!P(i)&&c`<calcite-tab selected class="platform__tab">${r&&c`<calcite-scrim loading></calcite-scrim>`||""}${Mi({apps:n,appsLoading:r,appsSearchTerm:s,hiddenApps:o,messages:f,handleAppsSearch:u,handleAppReorder:m,handleAppSave:b,handleAppHide:h,handleAppCancel:y,handleAppEdit:x,editingApplications:I,portal:i})}</calcite-tab>`||""}<calcite-tab class="platform__tab"><div class="list__header"><calcite-input type=search icon .placeholder=${f.searchRecentContent} scale=m class="list__search" @calciteInputInput=${g=>A(g.target.value)}></calcite-input></div>${d&&!r&&c`<calcite-scrim loading></calcite-scrim>`||""}<div class="list__container">${w?.length>0||d?c`<ul class="list">${L(w,g=>g.id,g=>Wi({portal:i,messages:f,navigate:t,item:g,locale:e}))}</ul>`:p?.length?Y({title:Z(f.noAppResults,{term:p}),description:f.recentContentNoResultsDescription,icon:"search"}):Y({title:f.noContent,description:f.noContentDescription,icon:"clock"})}</div></calcite-tab></calcite-tabs>`||""}</div></calcite-panel></calcite-sheet>`}var ue=["new","open","rename","save","saveCopy","share","copyLink","embed","details"];async function Hi(e){return await Promise.resolve({status:"success"})}function he(e){return ue.includes(e.id)}function Bi(e){return(e||[])?.toSorted((t,i)=>{let a=he(t),n=he(i);return a&&!n?-1:n&&!a?1:n&&a?ue.indexOf(t.id)-ue.indexOf(i.id):-1})}function Vi(e,t){let i={new:[],save:[],share:[],details:[],custom:[]};if(!t||!e?.length)return i;let a={new:{text:t.new,group:"new"},open:{text:t.open,group:"new"},rename:{text:t.rename,group:"save"},save:{text:t.save,group:"save"},saveCopy:{text:t.saveAsCopy,group:"save"},share:{text:t.manageSharing,group:"share"},copyLink:{text:t.copyLink,group:"share"},embed:{text:t.embed,group:"share"},details:{text:t.itemDetails,group:"details",external:!0}},n=Bi(e),r=[];return n.forEach(o=>{if(!he(o)){r.push(o);return}let{text:s,external:l,group:u}=a[o.id];i[u].push({text:s,external:l,...o})}),r.forEach(o=>{let s=o.group||"custom";i[s].push(o)}),i}function Ui({navigate:e,portal:t,menuItem:i,messages:a,portalItem:n,openProjectTitleEdit:r,projectMenuClick:o}){if(!t||!a||!i||i.id==="details"&&!n)return null;let{external:s,id:l,text:u}=i,m=`${N(t)}item.html?id=${n?.id}`;return X(`${l}${u}`,c`<calcite-dropdown-item .iconEnd=${s?"launch":void 0} .href=${l==="details"?m:i.href} .target=${s?"_blank":void 0} @calciteDropdownItemSelect=${b=>{if(l==="rename"){r?.();return}l==="details"&&e({event:b,href:m}),o?.({type:l})}}>${u}${l==="save"&&c`<calcite-icon icon=bullet-point-large class="project__indicator" scale=s></calcite-icon>`||""}</calcite-dropdown-item>`)}function qi({navigate:e,portal:t,projectTitle:i,editedProjectTitle:a,handleProjectTitleSave:n,handleProjectTitleEdit:r,handleProjectTitleCancel:o,openProjectTitleEdit:s,portalItem:l,projectTitleEditing:u,projectTitleSaving:m,projectTitleErrorMessage:b,projectMenuIcon:h,projectMenuSaveIndicator:y,projectMenuClick:x,projectMenuOptions:A,projectTitleInputRef:I,projectButtonRef:w,messages:d}){if(!t||!d||!A?.length&&!i)return null;if(!A?.length)return c`<div class="project__title">${h&&c`<calcite-icon .icon=${h} scale=s class="project__menu-icon"></calcite-icon>`||""}<h1 class="project__title__header">${i}</h1>${y&&c`<calcite-icon scale=s icon=bullet-point-large class="project__indicator"></calcite-icon>`||""}</div>`;let p=Vi(A,d),_=!!b;return u?c`<form class="rename" @submit=${async k=>{k.preventDefault(),await n?.(a)}} @keydown=${k=>{k.key==="Escape"&&o?.()}}><calcite-input id=project-title-input type=text scale=l class="rename__input" .label=${d.title} .value=${a} .status=${_?"invalid":"idle"} @calciteInputInput=${k=>r?.(k.target.value)} ${G(I)}></calcite-input>${_&&c`<calcite-popover open .label=${d.error} .referenceElement=${I?.value||"project-title-input"} pointer-disabled placement=bottom-start><calcite-notice kind=danger open><div slot=message>${b}</div></calcite-notice></calcite-popover>`||""}<calcite-action .disabled=${m} icon=check scale=l .text=${d?.saveRename} active class="rename__action" type=submit .loading=${m}></calcite-action><calcite-action .disabled=${m} icon=x scale=l .text=${d?.cancelRename} class="rename__action" @click=${()=>o?.()}></calcite-action></form>`:c`<calcite-dropdown width=m class="fade-in project__dropdown"><button slot=trigger class="project" ${G(w)}>${h&&c`<calcite-icon scale=s .icon=${h} class="project__menu-icon"></calcite-icon>`||""}<span class="project__text">${i}</span>${y&&c`<calcite-icon scale=s icon=bullet-point-large class="project__indicator"></calcite-icon>`||""}<calcite-icon scale=s icon=chevron-down></calcite-icon></button>${L(Object.entries(p).filter(([k,T])=>T.length),([k,T])=>k,([k,T])=>c`<calcite-dropdown-group selection-mode=none>${T.map(f=>Ui({menuItem:f,navigate:e,portal:t,messages:d,portalItem:l,openProjectTitleEdit:s,projectMenuClick:x}))}</calcite-dropdown-group>`)}</calcite-dropdown>`}function Ji(e){return["Location Platform","Online","Enterprise"].includes(e)}function st({portal:e,searchType:t,searchTerm:i}){let a=e?.sourceJSON?.vectorSearchEnabled?`&mode=${t}`:"";return`search.html?q=${i}${a}`}function Ki({portal:e,item:t,messages:i,navigate:a}){if(!t||!i)return null;let n=Z(i.by,{itemType:Fe(t),owner:t.owner}),r=`item.html?id=${t.id}`,o=`${N(e)}${r}`;return X(t.id,c`<li class="list-item"><a class="list-item__link" href=${o??C} @click=${s=>a({event:s,href:o,relativePath:r})}>${c`<span class="list-item__container"><span class="list-item__logo list-item__logo--item-type"><arcgis-portal-item-type .item=${t} .user=${e.user} hide-text></arcgis-portal-item-type></span><span class="list-item__content"><span class="list-item__title list-item__title--regular list-item__title--large">${t.title}</span><span class="list-item__subtitle list-item__subtitle--large">${n}</span></span></span>`}</a></li>`)}function Qi({portal:e,suggestions:t,messages:i,navigate:a,searchType:n,searchTerm:r}){if(!i||!e||!r)return null;if(!t)return c`<div><calcite-loader scale=l .label=${i.loadingResults}></calcite-loader></div>`;let o=st({portal:e,searchType:n,searchTerm:r}),s=`/${o}`,l=`${N(e)}${o}`;return c`<ul class="list">${t.map(u=>Ki({messages:i,portal:e,item:u,navigate:a}))}</ul><div class="suggestions__footer"><calcite-button icon-end=arrow-right scale=l appearance=outline class="suggestions__footer__button" kind=neutral round .href=${l} @click=${u=>{a({href:l,event:u,relativePath:s})}}>${i.viewAll}</calcite-button></div>`}function Xi({portal:e,messages:t,searchType:i,handleSearchTypeChange:a}){if(!t||!e?.sourceJSON?.vectorSearchEnabled)return null;let n=i==="keyword",r=t.searchType;return c`<calcite-chip .label=${r.label} .icon=${n?"text":"effects"} id=search-type-toggle appearance=solid kind=neutral><span>${n?r.keywordTitle:r.semanticTitle}</span><calcite-icon icon=chevron-down scale=s class="suggestions__search-type__icon" aria-hidden=true></calcite-icon></calcite-chip><calcite-popover pointer-disabled .label=${t.searchType.label} reference-element=search-type-toggle placement=bottom-end class="suggestions__search-type"><div class="esri-header-search-type-popover-contents"><calcite-list .label=${t.searchType.label} interaction-mode=interactive display-mode=flat scale=m selection-mode=none><calcite-list-item @calciteListItemSelect=${()=>a("keyword")} icon-start=text value=keyword .label=${r.keywordTitle} .description=${r.keywordDescription}></calcite-list-item><calcite-list-item @calciteListItemSelect=${()=>a("vector")} icon-start=effects value=semantic .label=${r.semanticTitle} .description=${r.semanticDescription}></calcite-list-item></calcite-list></div></calcite-popover>`}function Yi({currentPathname:e,navigate:t,product:i,portal:a,messages:n,searchActive:r,searchType:o,searchTerm:s,suggestions:l,searchInputRef:u,searchActionRef:m,searchPopoverRef:b,handleSearch:h,handleToggleSearch:y,handleSearchTypeChange:x}){if(!Ji(i)||!n||!a||e?.includes("search.html"))return null;let A=st({portal:a,searchType:o,searchTerm:s}),I=`/${A}`,w=`${N(a)}${A}`;return r?c`<div class="search" id=search-reference-element><calcite-input type=search scale=l icon=search class="search__input" .ariaLabel=${n.label} .placeholder=${o==="vector"?n.searchType.semanticPlaceholder:n.searchType.keywordPlaceholder} @calciteInputInput=${d=>h(d.target.value)} @keydown=${d=>{d.key==="Enter"&&(t({href:w,event:d,relativePath:I}),d.defaultPrevented||(window.location.href=w)),d.key==="Escape"&&y(!1)}} ${G(u)}></calcite-input><calcite-action icon=x scale=l .text=${n?.close} active class="search__action" @click=${()=>y(!1)}></calcite-action><calcite-popover .label=${n.suggestions} reference-element=search-reference-element .open=${r&&!!s} pointer-disabled placement=bottom-start trigger-disabled .focusTrapOptions=${{initialFocus:!1}} ${G(b)}><div class="suggestions__header"><h3 class="suggestions__title">${n.topResults}</h3>${Xi({portal:a,messages:n,searchType:o,handleSearchTypeChange:x})}</div><div class="suggestions__results">${Qi({portal:a,suggestions:l,navigate:t,messages:n,searchType:o,searchTerm:s})}</div></calcite-popover></div>`:c`<calcite-action icon=search scale=l text=search class="search__action fade-in" @click=${()=>y(!0)} ${G(m)}></calcite-action>`}function Zi({signIn:e,messages:t}){return c`<calcite-menu slot=user .label=${t?.account||""} class="border-start fade-in"><calcite-menu-item .label=${t?.signIn||""} text-enabled .text=${t?.signIn||""} @calciteMenuItemSelect=${()=>e()}></calcite-menu-item></calcite-menu>`}function ea({navigate:e,portal:t,product:i,links:a,messages:n,currentPathname:r,searchActive:o}){return!i||!t||!n||!be(i)||!a||o?null:c`<calcite-menu slot=content-start .label=${n.label} class="site-nav fade-in">${L(a,({href:s})=>s,({label:s,href:l,relativePath:u})=>c`<calcite-menu-item .text=${s} text-enabled .label=${s} .href=${l} .active=${Oi(l,r)} @click=${m=>e({event:m,href:l,relativePath:u})}></calcite-menu-item>`)}</calcite-menu>`}function ta({userLinks:e,messages:t,navigate:i,openAccountSwitcher:a,portal:n,signOut:r,textDisabled:o}){let s=n?.user;return!s||!e||!t||e?.account?.options.length<1&&e?.resources?.options.length<1?null:c`<div class="user fade-in"><calcite-dropdown .width=${o?"l":"m"} class="user__dropdown"><calcite-button class="user__button" slot=trigger appearance=transparent kind=neutral><span class="user__button__contents"><arcgis-portal-user-avatar .user=${s} .portal=${n} scale=l class="user__button__avatar"></arcgis-portal-user-avatar>${!o&&c`<span class="user__button__text"><h2 class="user__button__full user__full">${s.fullName}</h2><p class="user__button__username user__username">${s.username}</p></span>`||""}</span></calcite-button>${o&&c`<div class="user__top"><arcgis-portal-user-avatar .user=${s} .portal=${n} scale=l class="user__avatar"></arcgis-portal-user-avatar><div class="user__top__text"><h2 class="user__top__full user__full">${s.fullName}</h2><p class="user__top__username user__username">${s.username}</p></div></div>`||""}${Object.values(e).filter(l=>l.options.length).map(({title:l,options:u})=>c`<calcite-dropdown-group selection-mode=none .groupTitle=${l}>${u.map(({icon:m,label:b,href:h,relativePath:y})=>c`<calcite-dropdown-item .iconStart=${m} .href=${h} @keydown=${x=>{(x.key==="Enter"||x.key===" ")&&i({event:x,href:h,relativePath:y})}} @click=${x=>{i({event:x,href:h,relativePath:y})}}>${b}</calcite-dropdown-item>`)}</calcite-dropdown-group>`)}<calcite-dropdown-group selection-mode=none>${a&&c`<calcite-dropdown-item icon-start=users @calciteDropdownItemSelect=${l=>{let u=Me(l.target,"calcite-dropdown");u&&(u.open=!1),a()}}>${t.switchAccounts}</calcite-dropdown-item>`||""}<calcite-dropdown-item icon-start=sign-out @calciteDropdownItemSelect=${()=>r()}>${t.signOut}</calcite-dropdown-item></calcite-dropdown-group></calcite-dropdown></div>`}var ct={community:"https://community.esri.com/plugins/common/feature/oauth2sso_v2/sso_login_redirect?referer=https%3A%2F%2Fcommunity.esri.com%2F",myEsri:"https://my.esri.com"};function ia({messages:e,userLinks:t}){let i={account:{title:e.account,options:[]},resources:{title:e.resources,options:[]}};return t.forEach(a=>{i[a.group].options.push(a)}),i}function aa({portal:e,messages:t,clientId:i}){if(!e?.user||!t)return{account:{title:t?.account,options:[]},resources:{title:t?.account,options:[]}};let a=oa(e),n=na({navLinkDictionary:a,messages:t,clientId:i});return ia({userLinks:n,messages:t})}function na({navLinkDictionary:e,messages:t,clientId:i}){let a=["myProfile","mySettings","myEsri","training","trialDownload","communityForums","arcgisBlog","help"];return(fe(i)||ve(i))&&(a=["mySettings","arcgisBlog","help"]),rt(i)&&(a=[]),ra(a,t,e)}function ra(e,t,i){let a=[];return e.forEach(n=>{let r=i[n];if(r&&(!("show"in r)||r.show)){let{href:o,newTab:s,icon:l,group:u,relativePath:m}=r;a.push({label:t[n],group:u,href:o,newTab:s,relativePath:m,icon:l})}}),a}function oa(e){let t=N(e),i=sa(e),a=`user.html${window.location.pathname.includes("home/user.html")?"?nav=1":""}`;return{myProfile:{href:`${t}${a}`,relativePath:a,group:"account",icon:"user"},mySettings:{href:`${t}${a}#settings`,relativePath:`${a}#settings`,group:"account",icon:"gear"},help:{group:"resources",icon:"question",href:Q(e),newTab:!0},communityForums:{show:i,group:"resources",icon:"speech-bubbles",href:ct.community,newTab:!0},myEsri:{show:i,group:"account",icon:"globe",href:la(e),newTab:!0},arcgisBlog:{show:i,group:"resources",icon:"article",href:"https://www.esri.com/arcgis-blog/products/arcgis-online",newTab:!0},training:{show:i,group:"resources",icon:"education",href:ca(e),newTab:!0},trialDownload:{group:"resources",icon:"download-to",show:da(e),href:`${t}/home/user.html${window.location.pathname.includes("home/user.html")?"?nav=1&tab=licenses":"?tab=licenses"}#settings`}}}function sa(e){return!e.isPortal&&e?.user?.sourceJSON?.userType==="both"}function ca(e){return lt(e,`${window.location.protocol}//www.esri.com/training/arcgis-online-training`)}function la(e){return lt(e,ct.myEsri)}function lt(e,t){let i=K(e),a=pa(e),n=`https://accounts${a?a==="dev"?"-dev":"-stg":""}.esri.com/`,r=`&authBaseUrl=${B(i.replace("/sharing/rest/",""),e)}`,o=`${n}LoginHandler/switchuser?`,s=`username=${e?.user?.username??""}&redirect_uri=${t}${r}`;return`${o}${s}`}function pa(e){let t=e.portalHostname;return t?.includes("dev")?"dev":t?.includes("qa")?"qa":""}function da(e){return!e?.isPortal&&["Trial","Trial Press"].includes(e?.sourceJSON.subscriptionInfo?.type)}function ua(e){switch(e){case"360 VR":return{name:"360 VR",fileName:"arcgis-360-vr",icon:"arcgis-360-vr"};case"Business Analyst":return{name:"ArcGIS Business Analyst",fileName:"arcgis-business-analyst",icon:"business-analyst"};case"Dashboards":return{name:"ArcGIS Dashboards",fileName:"arcgis-dashboards",icon:"operations-dashboard"};case"Data Pipelines":return{name:"ArcGIS Data Pipelines",fileName:"arcgis-data-pipelines",icon:"data-pipelines"};case"Deep Learning Studio":return{name:"Deep Learning Studio",fileName:"arcgis-deep-learning-studio",icon:"deeplearningstudio"};case"Enterprise":return{name:"ArcGIS Enterprise",fileName:"arcgis-enterprise",icon:"arcgis-enterprise"};case"Excalibur":return{name:"ArcGIS Excalibur",fileName:"arcgis-excalibur",icon:"excalibur"};case"Experience Builder":return{name:"ArcGIS Experience Builder",fileName:"arcgis-experience-builder",icon:"arcgis-experience-builder"};case"Field Maps":return{name:"Field Maps Designer",fileName:"arcgis-field-maps",icon:"fieldmaps"};case"Field Maps Designer EA":return{name:"Field Maps Designer (EA)",fileName:"arcgis-field-maps-designer-ea",icon:"fieldmaps"};case"GeoAnalytics Engine":case"GeoAnalytics Fabric":return{name:e,fileName:"arcgis-geoanalytics-engine",icon:"arcgis-geoanalytics"};case"GeoBIM":return{name:"ArcGIS GeoBIM",fileName:"arcgis-geobim",icon:"geobim"};case"Hub":return{name:"ArcGIS Hub",fileName:"arcgis-hub",icon:"arcgis-hub"};case"Instant Apps":return{name:"Instant Apps",fileName:"arcgis-instant-apps",icon:"instant-apps"};case"Knowledge":return{name:"ArcGIS Knowledge Studio",fileName:"arcgis-knowledge",icon:"knowledge-studio"};case"Location Platform":return{name:"Location Platform",fileName:"arcgis-location-platform",icon:"location-platform"};case"Map Viewer":return{name:"Map Viewer",fileName:"map-viewer",icon:"map-viewer"};case"Mission":return{name:"ArcGIS Mission Manager",fileName:"arcgis-mission",icon:"mission"};case"Monitor":return{name:"ArcGIS Monitor",fileName:"arcgis-monitor",icon:"monitor"};case"Notebooks":return{name:"ArcGIS Notebooks",fileName:"arcgis-notebooks",icon:"notebook"};case"Online":return{name:"ArcGIS Online",fileName:"arcgis-online",icon:"arcgis-online"};case"Ortho Maker":return{name:"Ortho Maker",fileName:"arcgis-ortho-maker",icon:"ortho-maker"};case"QuickCapture":return{name:"ArcGIS QuickCapture",fileName:"arcgis-quickcapture",icon:"quick-capture"};case"Reality Studio":return{name:"ArcGIS Reality Studio",fileName:"arcgis-reality-studio",icon:"arcgis-reality-studio"};case"Scene Viewer":return{name:"Scene Viewer",fileName:"sceneviewer",icon:"scene-viewer"};case"Solutions":return{name:"ArcGIS Solutions",fileName:"arcgis-solutions",icon:"solutions"};case"StoryMaps":return{name:"ArcGIS StoryMaps",fileName:"arcgis-storymaps",icon:"story-maps"};case"Survey123":return{name:"ArcGIS Survey123",fileName:"arcgis-survey123",icon:"survey123"};case"Tracker":return{name:"Track Viewer",fileName:"arcgis-tracker",icon:"track-viewer"};case"Urban":return{name:"ArcGIS Urban",fileName:"arcgis-urban",icon:"arcgis-urban"};case"Vector Tile Style Editor":return{name:"Vector Tile Style Editor",fileName:"vector-tile-style-editor",icon:"vector-tile-style-editor"};case"Velocity":return{name:"ArcGIS Velocity",fileName:"arcgis-velocity",icon:"velocity"};case"Web Editor":return{name:"Web Editor",fileName:"arcgis-web-editor",icon:"web-editor"};case"Workflow Manager":return{name:"ArcGIS Workflow Manager",fileName:"arcgis-workflow-manager",icon:"workflow-manager"};case"Workforce":return{name:"ArcGIS Workforce",fileName:"arcgis-workforce",icon:"workforce"};default:return{name:"ArcGIS Online",fileName:"arcgis-online",icon:"arcgis-online"}}}function ha({product:e,portal:t,clientId:i}){return e!=="Online"?e:t?.sourceJSON?.subscriptionInfo?.options?.includes("Developer")?"Location Platform":ve(i)?"GeoAnalytics Fabric":fe(i)?"GeoAnalytics Engine":t?.isPortal?"Enterprise":"Online"}function Ke(e){let t=ha(e),{name:i,fileName:a,icon:n}=ua(t);return{name:i,glyph:q(`assets/portal-navigation/product-logos/${a}-glyph-32.svg`),icon:q(`assets/portal-navigation/apps/${n}.avif`)}}function ma(){let e=Wt();["item.html","group.html"].some(t=>window.location.href.includes(t))?window.location.href=`./signin.html?locale=${e}&useLandingPage=false&returnUrl=${encodeURIComponent(window.location.href)}`:window.location.href=`./signin.html?locale=${e}&useLandingPage=true`}function ga({portal:e,clientId:t}){let i=J({portal:e});if(e?.isPortal){let a=e.access==="private"?B("signin.html",e):e.allSSL||window.location.protocol==="https:"?B("./index.html",e):`${i}/index.html`;va(e,a)}else window.location.href=`${i}/pages/Account/manage_accounts.html#client_id=${t}&signout=true`}function fa(){ai(Je),ni(Je)}function va(e,t=window.location.href){let i=window.location.href.startsWith("http://"),a=ke(e);Ft.destroyCredentials(),fa();let n=new URL(B(`${K(e)}oauth2/signout`,e)),{searchParams:r}=n;r.append("client_id","arcgisonline"),r.append("redirect_uri",t),a&&i&&(e.isPortal||e.user?.sourceJSON.provider==="enterprise")&&r.append("token",a),window.location.href=n.href}function O(e,t){if(!e)return 0;let i=Ee({text:e,font:`${t==="s"?".875rem":"1rem"} 'Avenir Next'`});return Math.ceil(i)}function ba({portal:e,product:t,projectTitle:i,links:a,messages:n,productInfo:r}){if(!t||!e)return;let o=e.user,s=be(t)&&a?.length?24+a.reduce((m,b)=>m+16+O(b.label)+16,0):0,l=40+O(i)+32+16+16+12,u=o?Math.max(O(o?.username,"s"),O(o?.fullName)):O(n?.signIn);return{actions:192,project:i?Math.min(l,400):0,product:64+Math.max(O(r?.name),O(e.name,"s"))+16,nav:s,user:64+u+16}}function _a({measurements:e,screenWidth:t}){let{actions:i,nav:a,product:n,project:r,user:o}=e,s=64,l=t-i-s>a,u=t-i-(l?a:0)-r-s>Math.min(n,400),m=t-a-r-i-n<Math.min(o,320);return{nav:l,product:u,user:m?"avatar":"full"}}var pt=' -type:"Code Attachment" -type:"Featured Items" -type:"Symbol Set" -type:"Color Set" -type:"Windows Viewer Add In" -type:"Windows Viewer Configuration" -type:"Map Area" -typekeywords:"MapAreaPackage" -type:"Indoors Map Configuration" -typekeywords:"SMX"';async function Qe({portal:e,searchTerm:t}){if(!e?.user)return[];try{return(await e.queryItems({...t?{query:t}:{},filter:`owner:${e.user.username}${pt}`,num:20,sortField:"modified",sortOrder:"desc"})).results}catch{return[]}}async function wa({portal:e,searchTerm:t}){if(!e)return[];let i=Le((t||"").substring(0,409)),a=`${e?.id?`accountid:"${e.id}"`:""}${pt}`,n=`${K(e)}search/suggest`;return(await E(n,{query:{suggest:i,filters:a,searchFields:"title",f:"json"}}))?.result?.results||[]}var ya=we`:host{display:block;--arcgis-portal-navigation-logo-max-width: 260px;--arcgis-portal-navigation-logo-text-display: flex;--arcgis-portal-navigation-user-max-width: 260px;--arcgis-portal-navigation-user-text-display: block;--arcgis-portal-navigation-project-max-width: auto}.scrim{z-index:100;pointer-events:none;opacity:0;transition:opacity .2s ease-in-out;--calcite-scrim-background: rgba(0, 0, 0, .85)}.scrim--active{opacity:1}.wrapper{background:var(--calcite-color-foreground-1);border-bottom:1px solid var(--calcite-color-border-3);position:relative;z-index:200}.navigation{width:100%;min-width:0;min-height:4rem;display:flex;align-items:stretch;max-width:var(--arcgis-portal-navigation-max-width);margin-inline:auto;overflow:hidden}.navigation--loading .fade-in{opacity:0}.fade-in{opacity:1;transition:opacity ease-in-out .15s}.content-end{margin-inline-start:auto;display:flex;align-items:center}.content-end[hidden]{display:none}.action{height:100%;--calcite-internal-action-spacing: 1.25rem}.border-start{border-inline-start:1px solid var(--calcite-color-border-3)}.platform{--calcite-sheet-width: 24rem}.platform__container{display:flex;flex-direction:column;max-height:100%}.platform__header{display:flex;align-items:center}.platform__header-image{width:48px;height:48px;margin-inline-end:1rem}.platform__header-text{flex:1 1 auto;line-height:1.375}.platform__title{margin:0;padding:0;color:var(--calcite-color-text-1);font-size:var(--calcite-font-size--1);font-weight:var(--calcite-font-weight-medium)}.platform__subtitle{margin:0;padding:0;font-size:var(--calcite-font-size--2);color:var(--calcite-color-text-2)}.platform__panel{border-inline-end:1px solid var(--calcite-color-border-3);--calcite-panel-background-color: var(--calcite-color-foreground-1)}.platform__tiles{margin:.75rem .75rem 1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:.5rem}.platform__tabs{min-height:0;flex:1 1 auto;--calcite-tab-content-space-y: 0}.platform__tab{position:relative}.list{list-style:none;margin:0;padding:0}.list__container{position:relative}.list__header{display:flex;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--calcite-color-border-3);background-color:var(--calcite-color-foreground-1);position:sticky;top:0;z-index:701}.list__search{flex:1 1 auto;--calcite-color-border-input: var(--calcite-color-foreground-1)}.list-item__link{display:block;box-sizing:border-box;width:100%;padding-inline-start:.75rem;background-color:var(--calcite-color-foreground-1);outline-color:transparent;text-decoration:none;outline-offset:0;transition:color var(--calcite-animation-timing) ease-in-out,background-color var(--calcite-animation-timing) ease-in-out,outline-color var(--calcite-internal-animation-timing-fast) ease-in-out,outline-offset var(--calcite-internal-animation-timing-fast) ease-in-out}.list-item__link:hover{background-color:var(--calcite-color-transparent-hover)}.list-item__link:focus{outline:var(--calcite-border-width-md) solid var(--calcite-color-focus);outline-offset:-2px}.list-item:focus-within .list-item__container{border-bottom-color:transparent}.list-item__container{box-sizing:border-box;width:100%;padding-block:.5rem;padding-inline-start:0;padding-inline-end:.5rem;border-bottom:1px solid var(--calcite-color-border-3);display:flex;align-items:center;position:relative;pointer-events:none}.list-item__content{display:flex;flex-direction:column;justify-content:center;min-width:0}.list-item__logo{width:48px;height:48px;flex:0 0 auto;box-sizing:border-box;margin-inline-end:.5rem;justify-content:center;align-items:center;position:relative;display:flex}.list-item__logo-bg{position:absolute}.list-item__indicator{position:absolute;width:.5rem;height:.5rem;border-radius:50%;background-color:var(--calcite-color-status-success);border:2px solid var(--calcite-color-foreground-1);z-index:50;top:.25rem;inset-inline-start:-.25rem}.list-item__abbr{color:#fff;font-weight:700;position:relative}.list-item__logo-empty{border:2px dashed var(--calcite-color-border-3);border-radius:8px}.list-item__logo--item-type{background-color:var(--calcite-color-background);display:flex;justify-content:center;align-items:center}.list-item__title{display:block;font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-1);font-weight:500;word-wrap:break-word}.list-item__title--regular{font-weight:400;padding-top:.25rem}.list-item__title--large{font-size:var(--calcite-font-size-0);line-height:1}.list-item__subtitle{display:block;font-size:var(--calcite-font-size--2);color:var(--calcite-color-text-3);font-weight:500;padding-top:.25rem;padding-bottom:.25rem}.list-item__subtitle--large{font-size:var(--calcite-font-size--1);font-weight:400;padding:0}.list-item__chip{margin-inline-start:auto;--calcite-chip-background-color: var(--calcite-color-foreground-current)}.app--hidden{--calcite-list-background-color: var(--calcite-color-background)}.app--hidden .list-item__logo{opacity:.4}.logo{border-inline-end:1px solid var(--calcite-color-border-3);max-width:var(--arcgis-portal-navigation-logo-max-width);display:flex;align-items:center}.logo--link{text-decoration:none}.logo--link:hover{background-color:var(--calcite-color-transparent-hover)}.logo--link:focus{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.logo__glyph{width:32px;height:32px;padding-inline:1rem}.logo__text{display:var(--arcgis-portal-navigation-logo-text-display);flex-direction:column;overflow:hidden;white-space:nowrap;text-align:start;padding-inline:var(--calcite-internal-navigation-logo-padding-inline);padding-inline-end:1rem}.logo__title{margin:0;padding:0;color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);line-height:1.25rem;text-overflow:ellipsis;overflow:hidden}.logo__subtitle{margin:0;padding:0;font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-2);font-size:.875rem;line-height:1rem;text-overflow:ellipsis;overflow:hidden}.site-nav{margin-inline-start:1.5rem}.project{min-width:0;outline:none;border:none;border-inline-end:1px solid var(--calcite-color-border-3);cursor:pointer;background-color:var(--calcite-color-foreground-1);box-sizing:border-box;display:flex;user-select:none;appearance:none;align-items:center;justify-content:center;text-align:center;font-family:inherit;font-weight:var(--calcite-font-weight-normal);text-decoration-line:none;outline-color:transparent;box-shadow:var(--calcite-button-shadow, var(--calcite-shadow-none));color:var(--calcite-color-text-1);transition:all var(--calcite-animation-timing) ease-in-out 0s,outline 0s,outline-offset 0s;inset-inline-end:.25rem;background:transparent;white-space:nowrap;padding:0 1.375rem;flex-grow:2}.project:hover{background-color:var(--calcite-color-transparent-hover)}.project:focus{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.project__title{display:flex;justify-self:stretch;min-width:0;align-items:center;justify-content:center;padding:0 1.5rem;margin-inline-end:1.5rem;color:var(--calcite-color-text-1);border-inline-end:1px solid var(--calcite-color-border-3);max-width:var(--arcgis-portal-navigation-project-max-width, 60%)}.project__title__header{padding:0;margin:0;font-size:1rem;font-weight:400;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project__dropdown{max-width:var(--arcgis-portal-navigation-project-max-width, 60%);min-width:0;margin-inline-end:1.5rem}.project__indicator{margin-inline-end:.5rem;--calcite-ui-icon-color: var(--calcite-color-status-danger)}.project__menu-icon{margin-inline-end:.75rem}.project__text{font-size:1rem;min-width:0;overflow:hidden;text-overflow:ellipsis;margin-inline-end:.75rem}.rename{width:100%;min-width:0;display:flex;flex:1 1 0;align-items:center;margin-inline-start:.5rem}.rename__action{margin-inline-end:.5rem;display:flex;align-items:center}.rename__input{margin-inline-end:.5rem;display:block;width:100%}.search{width:100%;min-width:0;display:flex;flex:1 1 0;align-items:center;margin-inline-start:.5rem}.search__action{margin-inline-end:.5rem;display:flex;align-items:center}.search__input{margin-inline-end:.5rem;display:block;width:100%}.suggestions__header{display:flex;align-items:center;width:var(--calcite-popover-max-size-x);box-sizing:border-box;padding:.75rem 1rem;border-bottom:1px solid var(--calcite-color-border-3)}.suggestions__title{padding:0;margin:0;font-weight:500;color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-1);flex:1 1 0}.suggestions__search-type{--calcite-popover-max-size-x: 320px}.suggestions__search-type__icon{vertical-align:-.2rem}.suggestions__footer{display:flex;align-items:center;justify-content:center;padding:1rem}.notifications{width:min(24rem,80vw)}.notifications--full:after{content:"";display:block;border-top:1px solid var(--calcite-color-border-3);margin-left:1rem}.notifications__list{max-height:min(18rem,80vh);overflow:auto;box-sizing:border-box;width:100%}.notifications--empty{padding:2rem}.empty{padding:1rem;text-align:center;color:var(--calcite-color-text-3);--calcite-icon-color: var(--calcite-color-status-success-hover)}.empty__header{margin:0;padding:.75rem 0 0;color:var(--calcite-color-text-1);font-weight:500;font-size:var(--calcite-font-size-1)}.empty__text{margin:0;padding:0;color:var(--calcite-color-text-3);font-weight:400;font-size:var(--calcite-font-size-0)}.notification{display:flex;flex-direction:column;padding:.5rem}.notification__message{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-0);--calcite-color-brand-underline: transparent}.notification__date{color:var(--calcite-color-text-3);font-size:var(--calcite-font-size-0)}.notifications__dismiss{margin-inline-start:auto;margin-inline-end:1rem;margin-block:.5rem}.user{display:flex;max-width:var(--arcgis-portal-navigation-user-max-width);--calcite-dropdown-item-text-color: var(--calcite-color-text-3);--calcite-dropdown-group-title-text-color: var(--calcite-color-text-2)}.user__dropdown{max-width:100%}.user__button{max-width:100%;--calcite-spacing-base: -2px}.user__button__contents{display:flex;text-align:start}.user__button__text{display:var(--arcgis-portal-navigation-user-text-display);flex:1 1 0;min-width:0;padding-inline-start:1rem;line-height:1.375;overflow:hidden}.user__button__avatar{flex:0 0 auto}.user__button__full,.user__button__username{max-width:100%;overflow:hidden;text-overflow:ellipsis}.user__top{display:flex;padding:.75rem;border-bottom:1px solid var(--calcite-color-border-3)}.user__top__avatar{flex:0 0 auto}.user__top__text{box-sizing:border-box;word-wrap:break-word;flex:1 1 0;min-width:0;padding-inline-start:1rem;line-height:1.375}.user__full{font-size:1rem;font-weight:medium;color:var(--calcite-colot-text-1);line-height:1.25;padding:0;margin:0}.user__username{font-size:.875rem;line-height:1.25;color:var(--calcite-colot-text-2);padding:0;margin:0}`;function $a({messages:e,portal:t,showNav:i,openPlatformMenu:a,handleToggleSearch:n}){return!e||i&&!t?.user?null:c`<calcite-action .label=${e.applicationMenu} text="app switcher" icon=app-launcher scale=l class="action" @click=${a} @focusin=${()=>n(!1,!0)}></calcite-action>`}var me=class extends $e{constructor(){super(...arguments),this.messages=Ce({blocking:!0}),this.refreshNotifications=async()=>{let{portal:t,messages:i}=this;this.notifications=await Be({portal:t,locale:i._t9nLocale,t9n:i.notifications})},this.deleteNotifications=async t=>{let{portal:i}=this;if(t?.length<20)await Jt(i,t);else{let a=0;for await(let n of t)await et({id:n,portal:i}),this.notificationDeleteProgress=Math.ceil(a++/t.length*100)}this.notificationDeleteProgress=void 0,this.refreshNotifications()},this.navigate=t=>{this.arcgisNavigate.emit(t),this.platformMenuOpen=!1,this.notificationsActive=!1,this.searchActive=!1},this.openPlatformMenu=()=>{this.platformMenuOpen=!0,this.searchActive=!1},this.projectMenuClick=t=>{this.arcgisNavigationProjectMenuClick.emit(t)},this.openProjectTitleEdit=()=>{this.projectTitleEditing=!0,this.editedProjectTitle=this.projectTitle,requestAnimationFrame(()=>{this.projectTitleInputRef?.value?.setFocus()})},this.closeProjectTitleEdit=()=>{this.projectTitleEditing=!1,this.projectTitleErrorMessage=void 0,requestAnimationFrame(()=>{this.projectButtonRef?.value?.focus()})},this.handleProjectTitleSave=async t=>{this.projectTitleSaving=!0;let i=await(this.projectTitleSave||Hi)(t);if(this.projectTitleSaving=!1,i.status==="success"){this.closeProjectTitleEdit();return}i.message&&(this.projectTitleErrorMessage=i.message)},this.handleProjectTitleEdit=t=>{this.editedProjectTitle=t},this.handleProjectTitleCancel=()=>{this.editedProjectTitle=this.projectTitle,this.closeProjectTitleEdit()},this.signOut=()=>{let{portal:t,clientId:i}=this;ga({portal:t,clientId:i}),this.arcgisNavigationSignOut.emit()},this.signIn=()=>{this.arcgisNavigationSignIn.emit(),ma()},this.openAccountSwitcher=()=>{this.accountSwitcherOpen=!0},this.handlePlatformClose=()=>{this.platformMenuOpen=!1,this.handleAppCancel()},this.handleAppSave=async()=>{let{hiddenApps:t,sortedApps:i,userProperties:a,portal:n}=this;this.apps=[...i],this.editingApplications=!1,this.appsLoading=!0;let{result:r}=await ji({apps:i,hiddenApps:t,userProperties:a,portal:n});r?.success&&(this.previousAppState={apps:i,hiddenApps:t}),await xe(1e3),this.appsLoading=!1},this.handleAppCancel=()=>{this.previousAppState&&(this.apps=this.previousAppState.apps,this.hiddenApps=this.previousAppState.hiddenApps),this.editingApplications=!1},this.handleAppHide=({app:t,hidden:i})=>{!this.hiddenApps||!t||(this.hiddenApps={...this.hiddenApps||{},[t]:i})},this.handleAppReorder=({oldIndex:t,newIndex:i})=>{let a=[...this.sortedApps],n=a[t];a.splice(t,1),a.splice(i,0,n),this.sortedApps=a},this.handleItemSearch=t=>{this.recentContentLoading=!0,this.recentContentSearchTerm=t,this.debouncedItemSearch(t)},this.debouncedItemSearch=se(async t=>{this.recentContent=await Qe({portal:this.portal,searchTerm:t}),this.recentContentLoading=!1},1e3),this.debouncedSuggest=se(async t=>{this.suggestions=await wa({portal:this.portal,searchTerm:t})},1e3),this.handleSearch=t=>{this.searchTerm=t,this.suggestions=void 0,this.debouncedSuggest(t)},this.sizeSearchPopover=()=>{let t=this.searchInput?.value,i=this.searchPopover?.value;if(!t||!i)return;let a=t.offsetWidth>480?`${t.offsetWidth}px`:"80vw";i.style?.setProperty?.("--calcite-popover-max-size-x",a)},this.handleToggleNotifications=t=>{this.notificationsActive=t},this.handleToggleSearch=(t,i)=>{this.searchActive=t,this.searchTerm="",this.suggestions=void 0,document.documentElement.style.overflow=t?"hidden":this.initialDocumentOverflowStyle,!i&&requestAnimationFrame(()=>{if(t){this.searchInput?.value?.setFocus(),this.sizeSearchPopover();return}this.searchAction?.value?.setFocus()})},this.handleSearchTypeChange=t=>{this.searchType=t},this.searchInput=z(),this.searchAction=z(),this.searchPopover=z(),this.projectTitleInputRef=z(),this.projectButtonRef=z(),this.initialDocumentOverflowStyle=document.documentElement.style.overflow,this.links=[],this.notifications=[],this.notificationsActive=!1,this.apps=[],this.hiddenApps={},this.sortedApps=[],this.appsSearchTerm="",this.appsLoading=!0,this.editingApplications=!1,this.recentContent=[],this.recentContentSearchTerm="",this.recentContentLoading=!0,this.platformMenuOpen=!1,this.accountSwitcherOpen=!1,this.projectTitleEditing=!1,this.projectTitleSaving=!1,this.screenWidth=window.innerWidth,this.searchActive=!1,this.searchTerm="",this.searchType="keyword",this.projectMenuOptions=[],this.currentPathname=window.location.pathname,this.arcgisNavigate=F(),this.arcgisNavigationProjectMenuClick=F(),this.arcgisNavigationSignIn=F(),this.arcgisNavigationSignOut=F()}static{this.properties={infoBanner:16,links:16,userLinks:16,notifications:16,notificationsActive:16,apps:16,hiddenApps:16,sortedApps:16,previousAppState:16,appsSearchTerm:16,appsLoading:16,editingApplications:16,recentContent:16,recentContentSearchTerm:16,recentContentLoading:16,platformMenuOpen:16,accountSwitcherOpen:16,editedProjectTitle:16,projectTitleEditing:16,projectTitleSaving:16,projectTitleErrorMessage:16,productInfo:16,notificationDeleteProgress:16,measurements:16,screenWidth:16,showProduct:16,showNav:16,showUser:16,searchActive:16,searchTerm:16,suggestions:16,searchType:16,portal:0,portalItem:0,product:1,productHref:1,projectTitle:1,projectTitleSave:0,projectMenuIcon:1,projectMenuSaveIndicator:5,projectMenuOptions:0,disableTrackViewer:5,disableNotebookServer:5,clientId:1,currentPathname:1,maxWidth:9}}static{this.styles=ya}#e;async loaded(){let{portal:t,messages:i,clientId:a,product:n}=this;this.calculateMeasurements(),this.productInfo=Ke({product:n,clientId:a,portal:t}),this.userLinks=aa({portal:t,messages:i.user,clientId:a}),this.notifications=await Be({portal:t,locale:i._t9nLocale,t9n:i.notifications}),this.recentContent=await Qe({portal:t}),this.recentContentLoading=!1;let{apps:r,hiddenApps:o,signInSettings:s,licenses:l,userProperties:u}=await Ti({portal:t,trackViewerEnabled:!this.disableTrackViewer,notebookServerEnabled:!this.disableNotebookServer}),m=await Ge(t);this.infoBanner=m?.informationalBanner,this.userProperties=u,this.apps=r,this.hiddenApps=o,this.sortedApps=r,this.previousAppState={apps:r,hiddenApps:o},this.appsLoading=!1,this.links=Ei({portal:t,messages:i.links,licenses:l,clientId:a,signInSettings:s}),this.calculateMeasurements()}connectedCallback(){super.connectedCallback(),this.initialDocumentOverflowStyle=document.documentElement.style.overflow,!(typeof ResizeObserver>"u")&&(this.#e=new ResizeObserver(()=>{requestAnimationFrame(()=>{this.screenWidth=window.innerWidth,this.updateBreakpoints(),this.sizeSearchPopover()})}))}firstUpdated(){this.el&&this.#e&&(this.#e.observe(this.el),this.screenWidth=window.innerWidth)}willUpdate(t){(t.has("product")||t.has("clientId"))&&this.hasUpdated&&(this.productInfo=Ke({product:this.product,clientId:this.clientId,portal:this.portal}))}disconnectedCallback(){this.#e?.disconnect(),this.#e=void 0,document.documentElement.style.overflow=this.initialDocumentOverflowStyle,super.disconnectedCallback()}calculateMeasurements(){let{links:t,messages:i,portal:a,product:n,productInfo:r,projectTitle:o}=this;if(a){let s=ba({portal:a,product:n,productInfo:r,links:t,messages:i.user,projectTitle:o});this.measurements=s,this.updateBreakpoints()}}updateBreakpoints(){let{measurements:t,maxWidth:i}=this;if(t){let a=i?Math.min(this.screenWidth,i):this.screenWidth,n=_a({measurements:t,screenWidth:a});this.showProduct=n.product,this.showNav=n.nav,this.showUser=n.user}}render(){let{accountSwitcherOpen:t,apps:i,appsLoading:a,appsSearchTerm:n,currentPathname:r,handleAppCancel:o,handleAppHide:s,handleAppReorder:l,handleAppSave:u,handleItemSearch:m,handlePlatformClose:b,handleSearch:h,handleToggleSearch:y,handleSearchTypeChange:x,hiddenApps:A,infoBanner:I,links:w,messages:d,navigate:p,notifications:_,notificationsActive:k,notificationDeleteProgress:T,openAccountSwitcher:f,portal:v,portalItem:$,product:g,productInfo:D,productHref:ee,projectTitle:U,editedProjectTitle:M,handleProjectTitleSave:dt,handleProjectTitleEdit:ut,handleProjectTitleCancel:ht,handleToggleNotifications:_e,openProjectTitleEdit:mt,openPlatformMenu:gt,platformMenuOpen:ft,projectTitleEditing:te,projectTitleSaving:vt,projectTitleErrorMessage:bt,projectMenuIcon:_t,projectMenuSaveIndicator:wt,projectMenuClick:yt,projectMenuOptions:$t,projectTitleInputRef:At,projectButtonRef:xt,recentContent:kt,recentContentSearchTerm:St,recentContentLoading:It,userLinks:Tt,searchActive:W,searchTerm:Pt,searchType:jt,searchInput:Ct,searchAction:Nt,searchPopover:Mt,showNav:ie,showProduct:Et,showUser:Lt,suggestions:Ot}=this,Dt=v?.user,zt=be(g)&&!w?.length||!this.measurements;return c`<calcite-scrim class=${H({scrim:!0,"scrim--active":W})}></calcite-scrim><div class="wrapper" style=${ae({"--arcgis-portal-navigation-max-width":this.maxWidth?`${this.maxWidth}px`:"100%"})}><arcgis-portal-info-banner .config=${I}></arcgis-portal-info-banner>${v?.isPortal&&$?.loaded&&c`<arcgis-portal-classification-banner .portalItem=${$}></arcgis-portal-classification-banner>`||""}<header class=${H({navigation:!0,"navigation--loading":zt})}>${$a({messages:d?.platform,portal:v,showNav:ie,openPlatformMenu:gt,handleToggleSearch:y})}${Et&&Ht({navigate:p,portal:v,product:g,productInfo:D,productHref:ee,messages:d?.logo,showNav:ie,searchActive:W,projectTitleEditing:te})||""}${qi({navigate:p,portal:v,portalItem:$,messages:d?.project,projectTitle:U,editedProjectTitle:M,handleProjectTitleSave:dt,handleProjectTitleEdit:ut,openProjectTitleEdit:mt,projectTitleErrorMessage:bt,handleProjectTitleCancel:ht,projectTitleEditing:te,projectTitleSaving:vt,projectMenuIcon:_t,projectMenuSaveIndicator:wt,projectMenuClick:yt,projectMenuOptions:$t,projectTitleInputRef:At,projectButtonRef:xt})}${ie&&ea({searchActive:W,navigate:p,portal:v,product:g,messages:d?.links,links:w,currentPathname:r})||""}<div slot=content-end class="content-end fade-in" .hidden=${te||W}><slot name=content-end></slot></div>${Yi({currentPathname:r,navigate:p,portal:v,product:g,messages:d?.search,searchActive:W,searchType:jt,searchTerm:Pt,suggestions:Ot,handleSearch:h,handleToggleSearch:y,handleSearchTypeChange:x,searchInputRef:Ct,searchActionRef:Nt,searchPopoverRef:Mt})}${Dt?c`<div class="border-start fade-in">${Yt({notifications:_,notificationsActive:k,messages:d?.notifications,handleToggleNotifications:_e,handleToggleSearch:y})}${Zt({notificationsActive:k,notifications:_,navigate:p,portal:v,deleteNotifications:this.deleteNotifications,handleToggleNotifications:_e,messages:d?.notifications,notificationDeleteProgress:T})}</div>${ta({portal:v,userLinks:Tt,openAccountSwitcher:v?.isPortal?void 0:f,signOut:this.signOut,messages:d?.user,textDisabled:Lt==="avatar",navigate:p})}`:Zi({messages:d.user,signIn:this.signIn})}</header>${Fi({locale:d._t9nLocale,navigate:p,portal:v,product:g,productInfo:D,messages:d?.platform,apps:i,appsLoading:a,hiddenApps:A,appsSearchTerm:n,editingApplications:this.editingApplications,open:ft,links:w,recentContent:kt,recentContentSearchTerm:St,recentContentLoading:It,handlePlatformClose:b,handleAppReorder:l,handleAppEdit:()=>this.editingApplications=!0,handleAppsSearch:Gt=>this.appsSearchTerm=Gt,handleAppSave:u,handleAppCancel:o,handleAppHide:s,handleItemSearch:m})}${t&&c`<arcgis-portal-account-switcher .portal=${v} @arcgisClose=${()=>{this.accountSwitcherOpen=!1}}></arcgis-portal-account-switcher>`||""}</div>`}};Ae("arcgis-portal-navigation",me);return me},"intl","portal/Portal","identity/IdentityManager",a,b,d,e,f,g)
|