@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,39 +1,39 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import { g as
|
|
3
|
-
import { safeStyleMap as
|
|
2
|
+
import { g as ee, c as gt } from "../../chunks/runtime.js";
|
|
3
|
+
import { safeStyleMap as ke, safeClassMap as H, LitElement as bt, createEvent as V } from "@arcgis/lumina";
|
|
4
4
|
import { u as vt } from "../../chunks/useT9n.js";
|
|
5
5
|
import { nothing as L, html as c, svg as _t, css as wt } from "lit";
|
|
6
|
-
import { formatDate as yt, substitute as
|
|
7
|
-
import { g as
|
|
6
|
+
import { formatDate as yt, substitute as K, getLocale as $t } from "@arcgis/core/intl.js";
|
|
7
|
+
import { g as re, b as Ae } from "../../chunks/url.js";
|
|
8
8
|
import { a as G } from "../../chunks/requests.js";
|
|
9
9
|
import { repeat as z } from "lit/directives/repeat.js";
|
|
10
10
|
import { m as kt } from "../../chunks/icons.js";
|
|
11
|
-
import { i as C, c as
|
|
11
|
+
import { i as C, c as he, a as At } from "../../chunks/user2.js";
|
|
12
12
|
import "@arcgis/core/portal/Portal.js";
|
|
13
13
|
import { c as xt, d as St, e as It, f as Pt, h as Nt } from "../../chunks/portal2.js";
|
|
14
14
|
import { c as Tt, d as Ct, e as Mt } from "../../chunks/user.js";
|
|
15
|
-
import { i as
|
|
15
|
+
import { i as xe, a as Lt } from "../../chunks/utils2.js";
|
|
16
16
|
import { g as Ot } from "../../chunks/request.js";
|
|
17
|
-
import { g as
|
|
18
|
-
import { keyed as
|
|
19
|
-
import { e as
|
|
17
|
+
import { g as Se } from "../../chunks/item2.js";
|
|
18
|
+
import { keyed as oe } from "lit/directives/keyed.js";
|
|
19
|
+
import { e as se, n as Et, g as ae, f as q, a as jt } from "../../chunks/portal.js";
|
|
20
20
|
import { ref as F, createRef as B } from "lit/directives/ref.js";
|
|
21
21
|
import { c as Dt, g as zt } from "../../chunks/dom.js";
|
|
22
|
-
import { debounce as
|
|
22
|
+
import { debounce as me } from "@arcgis/toolkit/function";
|
|
23
23
|
import Gt from "@arcgis/core/identity/IdentityManager.js";
|
|
24
24
|
import { t as Ut } from "../../chunks/functionalities.js";
|
|
25
25
|
import { c as Bt } from "../../chunks/string.js";
|
|
26
|
-
function
|
|
26
|
+
function fe({ portal: e, productInfo: t }) {
|
|
27
27
|
const { name: i, glyph: n } = t || {};
|
|
28
28
|
return c`<img alt class="logo__glyph" src=${n ?? L}><span class="logo__text"><span class="logo__title">${i}</span>${e?.name && c`<span class="logo__subtitle">${e.name}</span>` || ""}</span>`;
|
|
29
29
|
}
|
|
30
30
|
function Ft({ navigate: e, portal: t, product: i, productInfo: n, productHref: r, messages: o, searchActive: s, showNav: a, projectTitleEditing: l }) {
|
|
31
|
-
const
|
|
32
|
-
return !i || !t || !o ||
|
|
31
|
+
const u = s && i === "Online" && !a || i !== "Online" && l && window.innerWidth < 960;
|
|
32
|
+
return !i || !t || !o || u ? null : r ? c`<a href=${r ?? L} @click=${(h) => {
|
|
33
33
|
e({ event: h, href: r });
|
|
34
|
-
}} class="logo fade-in logo--link">${
|
|
34
|
+
}} class="logo fade-in logo--link">${fe({ portal: t, productInfo: n })}</a>` : c`<div class="logo fade-in">${fe({ portal: t, productInfo: n })}</div>`;
|
|
35
35
|
}
|
|
36
|
-
const
|
|
36
|
+
const Y = {}, T = {
|
|
37
37
|
Month: 2628e3,
|
|
38
38
|
Week: 604800,
|
|
39
39
|
Day: 86400,
|
|
@@ -41,7 +41,7 @@ const Z = {}, T = {
|
|
|
41
41
|
Minute: 60,
|
|
42
42
|
Second: 1
|
|
43
43
|
};
|
|
44
|
-
function
|
|
44
|
+
function Ie(e) {
|
|
45
45
|
if (!e)
|
|
46
46
|
return null;
|
|
47
47
|
const t = Math.floor(e / 1e3), i = Math.abs(t), n = T.Day * 365;
|
|
@@ -62,16 +62,16 @@ function Pe(e) {
|
|
|
62
62
|
return [Math.floor(t / n), "year"];
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
function
|
|
65
|
+
function Pe(e) {
|
|
66
66
|
return (typeof e == "number" ? e : e.getTime?.()) - (/* @__PURE__ */ new Date()).getTime();
|
|
67
67
|
}
|
|
68
|
-
function
|
|
68
|
+
function Ne({ locale: e, time: t, t9n: i }) {
|
|
69
69
|
if (!e || !t)
|
|
70
70
|
return "";
|
|
71
|
-
const n =
|
|
72
|
-
|
|
73
|
-
const r =
|
|
74
|
-
return r ? r[1] === "second" ? i?.lessThanOneMinute || `< ${
|
|
71
|
+
const n = Pe(t);
|
|
72
|
+
Y[e] ??= new Intl.RelativeTimeFormat(e, { style: "long" });
|
|
73
|
+
const r = Ie(n);
|
|
74
|
+
return r ? r[1] === "second" ? i?.lessThanOneMinute || `< ${Y[e].format(r[0] > 0 ? 1 : -1, "minutes")}` : Y[e].format(r[0], r[1]) : "";
|
|
75
75
|
}
|
|
76
76
|
const Wt = {
|
|
77
77
|
month: "long",
|
|
@@ -96,17 +96,17 @@ async function Ht({ portal: e }) {
|
|
|
96
96
|
async function qt(e, t) {
|
|
97
97
|
if (!e?.user)
|
|
98
98
|
return { success: !0 };
|
|
99
|
-
const i = t.map((o) => ({ portal: e, id: o })).map(
|
|
99
|
+
const i = t.map((o) => ({ portal: e, id: o })).map(Te);
|
|
100
100
|
return { success: !((await Promise.allSettled(i))?.filter((o) => o.status === "rejected" || !o.value?.success)).length };
|
|
101
101
|
}
|
|
102
|
-
async function
|
|
102
|
+
async function Te({
|
|
103
103
|
portal: e,
|
|
104
104
|
id: t
|
|
105
105
|
}) {
|
|
106
106
|
const i = `${e.restUrl}/community/users/${e.user?.id}/notifications/${t}/delete`, { result: n } = await G(i, { method: "post" });
|
|
107
107
|
return n?.success ? { success: !0, id: t } : { success: !1, id: t };
|
|
108
108
|
}
|
|
109
|
-
const
|
|
109
|
+
const Ce = "notifications-menu";
|
|
110
110
|
function Jt(e) {
|
|
111
111
|
try {
|
|
112
112
|
const t = decodeURIComponent(e);
|
|
@@ -178,7 +178,7 @@ function Qt({
|
|
|
178
178
|
}) {
|
|
179
179
|
if (e?.received && e.id) {
|
|
180
180
|
const r = {
|
|
181
|
-
date:
|
|
181
|
+
date: Ne({ locale: i, time: e.received, t9n: n }),
|
|
182
182
|
id: e.id,
|
|
183
183
|
text: "",
|
|
184
184
|
icon: Kt(e.type)
|
|
@@ -186,15 +186,15 @@ function Qt({
|
|
|
186
186
|
if (e.type === "webapp_not_copied" && t.isPortal && (e.type = "webapp_not_copied_portal"), e.data?.taskTitle && (e.data.taskTitle = Jt(e.data.taskTitle)), e.type === "message_received")
|
|
187
187
|
r.text = e.data.message || "";
|
|
188
188
|
else if (n.types[e.type]) {
|
|
189
|
-
const o =
|
|
190
|
-
e.data.baseUrl = `${o}/home/`, r.text =
|
|
189
|
+
const o = re({ portal: t, usePortalHostname: !!t.user });
|
|
190
|
+
e.data.baseUrl = `${o}/home/`, r.text = K(n.types[e.type], e.data);
|
|
191
191
|
}
|
|
192
192
|
if (r.text)
|
|
193
193
|
return r;
|
|
194
194
|
}
|
|
195
195
|
return null;
|
|
196
196
|
}
|
|
197
|
-
async function
|
|
197
|
+
async function ge({
|
|
198
198
|
portal: e,
|
|
199
199
|
locale: t,
|
|
200
200
|
t9n: i
|
|
@@ -205,22 +205,22 @@ async function be({
|
|
|
205
205
|
return r && console.error(r), n?.length ? n.map((s) => Qt({ notification: s, portal: e, t9n: i, locale: t })).filter((s) => s) : [];
|
|
206
206
|
}
|
|
207
207
|
function Xt({ notifications: e, messages: t, handleToggleNotifications: i, handleToggleSearch: n, notificationsActive: r }) {
|
|
208
|
-
return t ? c`<calcite-action class="action" scale=l .text=${t.label} icon=bell .indicator=${!!e?.length} id=${
|
|
208
|
+
return t ? c`<calcite-action class="action" scale=l .text=${t.label} icon=bell .indicator=${!!e?.length} id=${Ce} @click=${() => i(!r)} @focusin=${() => n(!1, !0)}></calcite-action>` : null;
|
|
209
209
|
}
|
|
210
|
-
function
|
|
210
|
+
function J({ icon: e, title: t, description: i }) {
|
|
211
211
|
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>${_t`<path d=${kt[e] ?? L} 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>`;
|
|
212
212
|
}
|
|
213
213
|
function Yt({ notifications: e, deleteNotifications: t, messages: i, navigate: n, portal: r, notificationsActive: o, handleToggleNotifications: s, notificationDeleteProgress: a }) {
|
|
214
|
-
return i ? c`<calcite-popover .referenceElement=${
|
|
215
|
-
const h =
|
|
214
|
+
return i ? c`<calcite-popover .referenceElement=${Ce} @calcitePopoverClose=${() => s(!1)} .label=${i.label} auto-close .open=${o} pointer-disabled flip-disabled trigger-disabled placement=bottom-end scale=l .heading=${i.label}>${e?.length > 0 ? c`<div class="notifications notifications--full">${typeof a == "number" && c`<calcite-scrim><calcite-loader type=determinate-value .label=${i.deleting} .value=${a}></calcite-loader></calcite-scrim>` || ""}<calcite-list .label=${i.label} interaction-mode=static class="notifications__list" scale=l>${z(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) => {
|
|
215
|
+
const h = u.target, b = h.href;
|
|
216
216
|
if (h.nodeName === "CALCITE-LINK" && b) {
|
|
217
|
-
const p = `${
|
|
218
|
-
n({ event:
|
|
217
|
+
const p = `${re({ portal: r, usePortalHostname: !!r.user })}/home/`;
|
|
218
|
+
n({ event: u, href: b, relativePath: b.replace(p, "") });
|
|
219
219
|
}
|
|
220
220
|
}}></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) => {
|
|
221
|
-
const
|
|
222
|
-
await t(e?.map(({ id: h }) => h)),
|
|
223
|
-
}}>${i.dismissAllLabel}</calcite-button>` : c`<div class="notifications">${
|
|
221
|
+
const u = l.currentTarget?.parentElement;
|
|
222
|
+
await t(e?.map(({ id: h }) => h)), u.open = !1;
|
|
223
|
+
}}>${i.dismissAllLabel}</calcite-button>` : c`<div class="notifications">${J({ title: i.noNotifications, description: i.noNotificationsDescription, icon: "check" })}</div>`}</calcite-popover>` : null;
|
|
224
224
|
}
|
|
225
225
|
function Zt(e) {
|
|
226
226
|
return e.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&");
|
|
@@ -285,7 +285,7 @@ async function ci(e) {
|
|
|
285
285
|
if (!n)
|
|
286
286
|
return t;
|
|
287
287
|
const r = n.id;
|
|
288
|
-
return (await
|
|
288
|
+
return (await Se(e, r)).result;
|
|
289
289
|
}
|
|
290
290
|
async function li(e, t, i) {
|
|
291
291
|
if (!t || !e?.length)
|
|
@@ -306,7 +306,7 @@ async function ui(e) {
|
|
|
306
306
|
sortOrder: "asc",
|
|
307
307
|
q: 'owner:"esri" AND title:"BlockedApps Config" AND type: "Application Configuration"'
|
|
308
308
|
}, { result: n } = await G(t, { query: i }), r = n?.results?.[0]?.id;
|
|
309
|
-
return r ? (await
|
|
309
|
+
return r ? (await Se(e, r))?.result?.blockedApps || [] : [];
|
|
310
310
|
}
|
|
311
311
|
function di(e, t) {
|
|
312
312
|
const i = e?.toLowerCase() || "", n = `${t.title || ""} ${t.label || ""}`;
|
|
@@ -332,10 +332,10 @@ function hi(e, t) {
|
|
|
332
332
|
image: "arcgis-online.png",
|
|
333
333
|
label: "ArcGIS Online",
|
|
334
334
|
title: "ArcGIS Online",
|
|
335
|
-
url: `${
|
|
335
|
+
url: `${Ae({ portal: e })}/${i?.url ? i.url : xe(e.user) ? "organization.html" : "index.html"}`
|
|
336
336
|
};
|
|
337
337
|
}
|
|
338
|
-
function
|
|
338
|
+
function be(e) {
|
|
339
339
|
const i = [
|
|
340
340
|
"api-for-python",
|
|
341
341
|
"appstudio",
|
|
@@ -549,13 +549,13 @@ function ki(e) {
|
|
|
549
549
|
};
|
|
550
550
|
return e.isPortal && (t = { ...t, arcgisonline: 1, arcgisUrban: 1, arcgisinstantapps: 1 }), t;
|
|
551
551
|
}
|
|
552
|
-
function
|
|
552
|
+
function te(e) {
|
|
553
553
|
return e.sourceJSON?.subscriptionInfo?.options?.includes("Developer");
|
|
554
554
|
}
|
|
555
555
|
function W(e) {
|
|
556
|
-
return
|
|
556
|
+
return ee(`assets/portal-navigation/apps/${e || ""}`);
|
|
557
557
|
}
|
|
558
|
-
function
|
|
558
|
+
function Me(e, t, i) {
|
|
559
559
|
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}`;
|
|
560
560
|
}
|
|
561
561
|
function D(e, t, i) {
|
|
@@ -565,7 +565,7 @@ function D(e, t, i) {
|
|
|
565
565
|
}
|
|
566
566
|
return delete e.isLicensed, delete e.privileges, e.itemId = t, e;
|
|
567
567
|
}
|
|
568
|
-
function
|
|
568
|
+
function Le() {
|
|
569
569
|
return `${W()}svg-app-circle.svg`;
|
|
570
570
|
}
|
|
571
571
|
function Ai(e, t, i) {
|
|
@@ -575,16 +575,16 @@ function Ai(e, t, i) {
|
|
|
575
575
|
itemId: e.itemId,
|
|
576
576
|
canAccess: !0,
|
|
577
577
|
webMappingApp: !0,
|
|
578
|
-
image: n ?
|
|
578
|
+
image: n ? Me(e, t, i) : void 0,
|
|
579
579
|
label: e.title || e.label,
|
|
580
580
|
url: e.url,
|
|
581
|
-
placeHolderIcon: e.placeHolderIcon ||
|
|
581
|
+
placeHolderIcon: e.placeHolderIcon || Le()
|
|
582
582
|
};
|
|
583
583
|
}
|
|
584
584
|
function xi(e, t, i) {
|
|
585
|
-
return e.appSwitcher?.image || e.icon ? e.image =
|
|
585
|
+
return e.appSwitcher?.image || e.icon ? e.image = Me(e, t, i) : e.placeHolderIcon = Le(), e.abbr = e.appSwitcher?.abbr || e.abbreviation, delete e.abbreviation, delete e.appSwitcher, delete e.approvedApp, delete e.webMappingApp, e;
|
|
586
586
|
}
|
|
587
|
-
function
|
|
587
|
+
function ve(e, t) {
|
|
588
588
|
e.forEach((i) => {
|
|
589
589
|
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"));
|
|
590
590
|
});
|
|
@@ -599,56 +599,53 @@ async function Si({
|
|
|
599
599
|
orgCapabilities: s,
|
|
600
600
|
trackViewerEnabled: a,
|
|
601
601
|
notebookServerEnabled: l,
|
|
602
|
-
willQueryForItems:
|
|
602
|
+
willQueryForItems: u,
|
|
603
603
|
approvedApps: h
|
|
604
604
|
}) {
|
|
605
605
|
const b = {}, p = {}, y = $i(i, l, a, n), x = ki(i), k = [], P = e.length;
|
|
606
606
|
for (let m = 0; m < P; m++) {
|
|
607
|
-
const
|
|
607
|
+
const d = e[m], _ = d.itemId || d.title;
|
|
608
608
|
let N = !0;
|
|
609
|
-
const g = !
|
|
610
|
-
|
|
611
|
-
return V && u.serverFunction === "Velocity" && (u.url = S.url), V;
|
|
612
|
-
}), v = r?.some(
|
|
613
|
-
(S) => u.itemId && u.itemId === S.itemid || u.title && u.title === S.title
|
|
609
|
+
const g = !d.serverFunction || t?.some((S) => (S.serverFunction?.split(",") || []).includes(d.serverFunction)), v = r?.some(
|
|
610
|
+
(S) => d.itemId && d.itemId === S.itemid || d.title && d.title === S.title
|
|
614
611
|
);
|
|
615
|
-
if (b[_] = 1, p[_] =
|
|
612
|
+
if (b[_] = 1, p[_] = d, v || te(i) && !d.showInLocationPlatform || i.sourceJSON?.portalDeploymentType === "ArcGISEnterpriseOnKubernetes" && d.supportsKubernetes === !1)
|
|
616
613
|
continue;
|
|
617
|
-
const A =
|
|
614
|
+
const A = d.title;
|
|
618
615
|
if (y[A] && !y[A]?.hasAccess())
|
|
619
616
|
continue;
|
|
620
617
|
const E = i.sourceJSON?.subscriptionInfo;
|
|
621
|
-
if (
|
|
622
|
-
E?.type ===
|
|
618
|
+
if (d.subscriptionType) {
|
|
619
|
+
E?.type === d.subscriptionType && (p[_].canAccess = !0, k.push(D(d, _, i)));
|
|
623
620
|
continue;
|
|
624
621
|
}
|
|
625
|
-
if (
|
|
626
|
-
s?.length && s.some((M) =>
|
|
622
|
+
if (d.orgCapabilities) {
|
|
623
|
+
s?.length && s.some((M) => d.orgCapabilities?.includes(M.id)) && (p[_].canAccess = !0, k.push(D(d, _, i)));
|
|
627
624
|
continue;
|
|
628
625
|
}
|
|
629
|
-
if (!
|
|
630
|
-
p[_].canAccess = !0, k.push(D(
|
|
626
|
+
if (!d.privileges?.length && !d.isLicensed && g && (d.label !== "ArcGIS Location Platform" || te(i))) {
|
|
627
|
+
p[_].canAccess = !0, k.push(D(d, _, i));
|
|
631
628
|
continue;
|
|
632
629
|
}
|
|
633
|
-
if (i.user?.sourceJSON?.userLicenseTypeId?.toLowerCase() === "storytellerut" &&
|
|
634
|
-
p[_].canAccess = !0, k.push(D(
|
|
630
|
+
if (i.user?.sourceJSON?.userLicenseTypeId?.toLowerCase() === "storytellerut" && d.label?.toLowerCase() === "storymaps") {
|
|
631
|
+
p[_].canAccess = !0, k.push(D(d, _, i));
|
|
635
632
|
continue;
|
|
636
633
|
}
|
|
637
|
-
if (
|
|
638
|
-
for (let S = 0; S <
|
|
639
|
-
if (!i.user.privileges.includes(
|
|
634
|
+
if (d.privileges?.length && i.user?.privileges) {
|
|
635
|
+
for (let S = 0; S < d.privileges.length; S++)
|
|
636
|
+
if (!i.user.privileges.includes(d.privileges[S])) {
|
|
640
637
|
N = !1;
|
|
641
638
|
break;
|
|
642
639
|
}
|
|
643
|
-
if (!
|
|
644
|
-
p[_].canAccess = !0, k.push(D(
|
|
640
|
+
if (!d.isLicensed && N && g) {
|
|
641
|
+
p[_].canAccess = !0, k.push(D(d, _, i));
|
|
645
642
|
continue;
|
|
646
643
|
}
|
|
647
644
|
}
|
|
648
|
-
if (
|
|
645
|
+
if (d.isLicensed && N && g) {
|
|
649
646
|
for (let S = 0; S < o.length; S++)
|
|
650
647
|
if (_ === o[S].itemId || _ === o[S].title) {
|
|
651
|
-
p[_].canAccess = !0, k.push(D(
|
|
648
|
+
p[_].canAccess = !0, k.push(D(d, _, i));
|
|
652
649
|
break;
|
|
653
650
|
}
|
|
654
651
|
}
|
|
@@ -656,32 +653,32 @@ async function Si({
|
|
|
656
653
|
const w = await Ot(i);
|
|
657
654
|
return o.forEach((m) => {
|
|
658
655
|
if (m.type === "Web Mapping Application" && !x[m.clientId] && !b[m.itemId] && m.url && m.title && !b[m.title] && !m.typeKeywords.includes("hideFromAppSwitcher")) {
|
|
659
|
-
const
|
|
660
|
-
p[m.itemId] =
|
|
656
|
+
const d = Ai(m, i, w);
|
|
657
|
+
p[m.itemId] = d, k.push(d);
|
|
661
658
|
}
|
|
662
659
|
}), {
|
|
663
660
|
apps: [
|
|
664
661
|
...h.map((m) => {
|
|
665
|
-
const
|
|
662
|
+
const d = {
|
|
666
663
|
...m.appProperties,
|
|
667
664
|
itemId: m.itemId,
|
|
668
665
|
webMappingApp: !0,
|
|
669
666
|
approvedApp: !0,
|
|
670
|
-
canAccess: !
|
|
667
|
+
canAccess: !u
|
|
671
668
|
};
|
|
672
|
-
return p[m.itemId] =
|
|
669
|
+
return p[m.itemId] = d, xi(d, i, w);
|
|
673
670
|
}),
|
|
674
671
|
...k
|
|
675
672
|
],
|
|
676
673
|
appDictionary: p
|
|
677
674
|
};
|
|
678
675
|
}
|
|
679
|
-
function
|
|
676
|
+
function Z(e, t) {
|
|
680
677
|
return e.filter((i) => !t?.some(
|
|
681
678
|
(r) => i.itemId && i.itemId === r.itemid || i.title && i.title === r.title
|
|
682
679
|
));
|
|
683
680
|
}
|
|
684
|
-
function
|
|
681
|
+
function _e({
|
|
685
682
|
apps: e,
|
|
686
683
|
app: t,
|
|
687
684
|
appDictionary: i,
|
|
@@ -689,7 +686,7 @@ function we({
|
|
|
689
686
|
portal: r
|
|
690
687
|
}) {
|
|
691
688
|
let s = Object.keys(i).map((a) => i[a]).filter((a) => a.itemId === t.uid || a.title === t.uid).shift();
|
|
692
|
-
return s && !i[t.uid] && (t.uid = s.itemId || s.title || ""), s?.hasBeenPopulated || (s ? ((t.hasChanged || s.hasChanged || !s.canAccess && !s.ignoreNoAccess) &&
|
|
689
|
+
return s && !i[t.uid] && (t.uid = s.itemId || s.title || ""), s?.hasBeenPopulated || (s ? ((t.hasChanged || s.hasChanged || !s.canAccess && !s.ignoreNoAccess) && xe(r.user) && (i[t.uid].hasChanged = !0, i[t.uid].ignoreNoAccess = t.ignoreNoAccess), t.isNew && (i[t.uid].isNew = !0), delete n[t.uid]) : (s = t, s.canAccess = !1, s.itemId = t.uid, i[t.uid] = s), i[t.uid].hasBeenPopulated = !0, e.push(s)), e;
|
|
693
690
|
}
|
|
694
691
|
async function Ii({
|
|
695
692
|
portal: e,
|
|
@@ -698,7 +695,7 @@ async function Ii({
|
|
|
698
695
|
}) {
|
|
699
696
|
if (!e?.id || !e.user)
|
|
700
697
|
return { apps: [], hiddenApps: {} };
|
|
701
|
-
const n = pi(), [r, o, s, a, l,
|
|
698
|
+
const n = pi(), [r, o, s, a, l, u, h] = await Promise.all([
|
|
702
699
|
ci(e),
|
|
703
700
|
Ct(e),
|
|
704
701
|
Mt(e),
|
|
@@ -726,7 +723,7 @@ async function Ii({
|
|
|
726
723
|
clientId: g.id
|
|
727
724
|
});
|
|
728
725
|
});
|
|
729
|
-
const P = mi(
|
|
726
|
+
const P = mi(u, h), { apps: w, appDictionary: f } = await Si({
|
|
730
727
|
userApps: y,
|
|
731
728
|
servers: b,
|
|
732
729
|
portal: e,
|
|
@@ -739,10 +736,10 @@ async function Ii({
|
|
|
739
736
|
willQueryForItems: n,
|
|
740
737
|
approvedApps: x
|
|
741
738
|
});
|
|
742
|
-
p?.appLauncher && (p?.appLauncher.primary &&
|
|
743
|
-
let m = [],
|
|
739
|
+
p?.appLauncher && (p?.appLauncher.primary && ve(p?.appLauncher.primary, e), p?.appLauncher.secondary && ve(p?.appLauncher.secondary, e));
|
|
740
|
+
let m = [], d = [];
|
|
744
741
|
if (!p?.appLauncher?.primary || !p?.appLauncher.secondary)
|
|
745
|
-
m = w.slice().sort((g, v) => (g.label || "") < (v.label || "") ? -1 : 1), m =
|
|
742
|
+
m = w.slice().sort((g, v) => (g.label || "") < (v.label || "") ? -1 : 1), m = Z(m, P), d = [];
|
|
746
743
|
else {
|
|
747
744
|
const { result: g } = await li(x, n, e);
|
|
748
745
|
g?.results?.length && g.results.forEach(($) => {
|
|
@@ -753,20 +750,20 @@ async function Ii({
|
|
|
753
750
|
p?.appLauncher?.primary?.forEach(($) => {
|
|
754
751
|
$.label === "Map Viewer" && ($.uid = "Map Viewer");
|
|
755
752
|
}), m = p?.appLauncher.primary.reduce(
|
|
756
|
-
($, A) =>
|
|
753
|
+
($, A) => _e({ apps: $, app: A, appDictionary: f, newAppDictionary: v, portal: e }),
|
|
757
754
|
[]
|
|
758
|
-
) || [],
|
|
759
|
-
($, A) =>
|
|
755
|
+
) || [], d = p?.appLauncher.secondary.reduce(
|
|
756
|
+
($, A) => _e({ apps: $, app: A, appDictionary: f, newAppDictionary: v, portal: e }),
|
|
760
757
|
[]
|
|
761
|
-
) || [], m =
|
|
758
|
+
) || [], m = Z(m, P), d = Z(d, P), te(e) && (m = m.filter(($) => $.canAccess), d = d.filter(($) => $.canAccess));
|
|
762
759
|
for (const $ of Object.keys(v))
|
|
763
760
|
v[$].canAccess && (v[$].isNew = !0, f[$] = v[$], m.push(v[$]));
|
|
764
761
|
}
|
|
765
|
-
const _ = [...m, ...
|
|
762
|
+
const _ = [...m, ...d], N = d.reduce((g, v) => (v.itemId && (g[v.itemId] = !0), g), {});
|
|
766
763
|
return {
|
|
767
764
|
apps: _,
|
|
768
765
|
hiddenApps: N,
|
|
769
|
-
signInSettings:
|
|
766
|
+
signInSettings: u,
|
|
770
767
|
licenses: k,
|
|
771
768
|
userProperties: p
|
|
772
769
|
};
|
|
@@ -792,32 +789,32 @@ async function Ni({
|
|
|
792
789
|
), o = { ...i || {}, appLauncher: r };
|
|
793
790
|
return await Tt(o, n);
|
|
794
791
|
}
|
|
795
|
-
function
|
|
792
|
+
function Oe({ app: e }) {
|
|
796
793
|
if (!e)
|
|
797
794
|
return null;
|
|
798
795
|
if (!e.canAccess)
|
|
799
796
|
return c`<span class="list-item__logo list-item__logo-empty"></span>`;
|
|
800
797
|
const t = !e.image && e.abbr;
|
|
801
|
-
return c`${t && c`<span class="list-item__logo">${e.placeHolderIcon && c`<img src=${
|
|
798
|
+
return c`${t && c`<span class="list-item__logo">${e.placeHolderIcon && c`<img src=${be(e.placeHolderIcon) ?? L} class="list-item__logo-bg" alt>` || ""}<span style=${ke({ fontSize: e.fontSize || "20px" })} class="list-item__abbr">${e.abbr}</span></span>` || ""}${e.image && c`<img src=${be(e.image) ?? L} class="list-item__logo" alt>` || ""}${e.isNew && c`<span class=${H({ "list-item__indicator": !0 })}></span>` || ""}`;
|
|
802
799
|
}
|
|
803
800
|
function Ti({ app: e, hiddenApps: t, messages: i, toggleAppVisibility: n }) {
|
|
804
801
|
if (!e || !i)
|
|
805
802
|
return null;
|
|
806
803
|
const r = Pi(e, t), { title: o, itemId: s, label: a } = e;
|
|
807
|
-
return c`<calcite-list-item .label=${o || a} class=${
|
|
804
|
+
return c`<calcite-list-item .label=${o || a} class=${H(r ? "app--hidden" : "")}><span slot=content-start>${Oe({ app: e })}</span><calcite-action .text=${r ? i.show : i.hide} .icon=${r ? "view-hide" : "view-visible"} slot=actions-end @click=${() => s && n(s, !r)}></calcite-action></calcite-list-item>`;
|
|
808
805
|
}
|
|
809
806
|
function Ci({ app: e, messages: t }) {
|
|
810
807
|
if (!e || !t)
|
|
811
808
|
return null;
|
|
812
809
|
const { title: i, itemId: n, label: r, url: o, isNew: s } = e, a = t?.descriptions?.[i] || t?.descriptions?.[r];
|
|
813
|
-
return c`<li class="list-item"><a class="list-item__link" href=${o ?? L} target=_blank id=${n ?? L} aria-describedby=${`${n}--tooltip`}>${c`<span class="list-item__container">${
|
|
810
|
+
return c`<li class="list-item"><a class="list-item__link" href=${o ?? L} target=_blank id=${n ?? L} aria-describedby=${`${n}--tooltip`}>${c`<span class="list-item__container">${Oe({ app: e })}<span class="list-item__title">${i || r}</span>${s && c`<calcite-chip scale=s class="list-item__chip" icon=asterisk-small .label=${t.new}>${t.new}</calcite-chip>` || ""}</span>`}</a>${a && c`<calcite-tooltip .referenceElement=${n} placement=trailing .id=${`${n}--tooltip`} role=tooltip>${a}</calcite-tooltip>` || ""}</li>`;
|
|
814
811
|
}
|
|
815
|
-
function Mi({ apps: e, appsLoading: t, appsSearchTerm: i, hiddenApps: n, messages: r, handleAppsSearch: o, handleAppReorder: s, handleAppSave: a, handleAppHide: l, handleAppCancel:
|
|
812
|
+
function Mi({ apps: e, appsLoading: t, appsSearchTerm: i, hiddenApps: n, messages: r, handleAppsSearch: o, handleAppReorder: s, handleAppSave: a, handleAppHide: l, handleAppCancel: u, handleAppEdit: h, editingApplications: b, portal: p }) {
|
|
816
813
|
if (!e || !r)
|
|
817
814
|
return null;
|
|
818
815
|
const y = i?.length > 0, x = (e || []).filter((w) => w.itemId && (!n?.[w.itemId] || y) && di(i, w)), k = y ? r.noAppResults.replace("{term}", i) : r.noAppsAvailable, P = y ? C(p) ? r.noAppsDescriptionPublic : r.noAppResultsDescriptionOrg : r.noAppsAvailable;
|
|
819
816
|
return b ? c`<div class="list__header"><calcite-button appearance=outline width=half @click=${() => {
|
|
820
|
-
|
|
817
|
+
u();
|
|
821
818
|
}}>${r.cancel}</calcite-button><calcite-button width=half @click=${() => {
|
|
822
819
|
a();
|
|
823
820
|
}}>${r.applyChanges}</calcite-button></div><calcite-list .label=${r.allMyApplications} drag-enabled @calciteListDragEnd=${(w) => {
|
|
@@ -827,23 +824,23 @@ function Mi({ apps: e, appsLoading: t, appsSearchTerm: i, hiddenApps: n, message
|
|
|
827
824
|
l({ app: f, hidden: m });
|
|
828
825
|
} }))}</calcite-list>` : c`<div class="list__header"><calcite-input type=search icon .placeholder=${r.searchMyApps} scale=m class="list__search" @calciteInputInput=${(w) => {
|
|
829
826
|
o(w.currentTarget.value);
|
|
830
|
-
}}></calcite-input><calcite-button appearance=transparent kind=neutral icon-start=reorder-cards .label=${r.reorder} @click=${() => h()} id=customize-apps></calcite-button><calcite-tooltip reference-element=customize-apps><span>${r.customizeApps}</span></calcite-tooltip></div>${x?.length > 0 ? c`<ul class="list">${z(x, (w) => w.itemId, (w) => Ci({ app: w, messages: r }))}</ul>` :
|
|
827
|
+
}}></calcite-input><calcite-button appearance=transparent kind=neutral icon-start=reorder-cards .label=${r.reorder} @click=${() => h()} id=customize-apps></calcite-button><calcite-tooltip reference-element=customize-apps><span>${r.customizeApps}</span></calcite-tooltip></div>${x?.length > 0 ? c`<ul class="list">${z(x, (w) => w.itemId, (w) => Ci({ app: w, messages: r }))}</ul>` : J({ title: k, description: P, icon: i ? "search" : "apps" })}`;
|
|
831
828
|
}
|
|
832
|
-
const
|
|
829
|
+
const we = "portalAppClientId", ce = {
|
|
833
830
|
GeoanalyticsEngine: "geoanalyticsengine",
|
|
834
831
|
GeoanalyticsFabric: "geoanalyticsfabric",
|
|
835
832
|
IndoorsOnline: "indoorsonline"
|
|
836
833
|
};
|
|
837
|
-
function
|
|
838
|
-
return
|
|
834
|
+
function le(e) {
|
|
835
|
+
return ce.GeoanalyticsEngine === e;
|
|
839
836
|
}
|
|
840
|
-
function
|
|
841
|
-
return
|
|
837
|
+
function ue(e) {
|
|
838
|
+
return ce.GeoanalyticsFabric === e;
|
|
842
839
|
}
|
|
843
|
-
function
|
|
844
|
-
return
|
|
840
|
+
function Ee(e) {
|
|
841
|
+
return ce.IndoorsOnline === e;
|
|
845
842
|
}
|
|
846
|
-
function
|
|
843
|
+
function de(e) {
|
|
847
844
|
return ["Location Platform", "GeoAnalytics Fabric", "GeoAnalytics Engine", "Online", "Enterprise"].includes(e);
|
|
848
845
|
}
|
|
849
846
|
function Li({
|
|
@@ -875,16 +872,16 @@ function Ei(e, t) {
|
|
|
875
872
|
const i = new URL(e), n = t || window.location.pathname;
|
|
876
873
|
return i.pathname === n;
|
|
877
874
|
}
|
|
878
|
-
function
|
|
875
|
+
function je({
|
|
879
876
|
portal: e,
|
|
880
877
|
clientId: t,
|
|
881
878
|
signInSettings: i
|
|
882
879
|
}) {
|
|
883
|
-
const n = e.user, r =
|
|
880
|
+
const n = e.user, r = Ee(t), o = !!i?.blockedApps?.includes("arcgisnotebooks"), {
|
|
884
881
|
gallery: s = "all",
|
|
885
882
|
groups: a = "all",
|
|
886
883
|
map: l = "all",
|
|
887
|
-
notebook:
|
|
884
|
+
notebook: u = "notebookCreators",
|
|
888
885
|
scene: h = "all"
|
|
889
886
|
} = e.portalProperties?.topNav || {};
|
|
890
887
|
let b = ["home"];
|
|
@@ -906,15 +903,15 @@ function De({
|
|
|
906
903
|
return !e.portalProperties?.topNav && C(e) ? b = ["ArcGIS", "overview", "pricing", "map", "scene", "groups", "myContent"] : b = [
|
|
907
904
|
...b,
|
|
908
905
|
...(s === "all" || s === "members" && p) && !r ? ["gallery"] : [],
|
|
909
|
-
...(l === "all" || l === "members" && p || l === "mapCreators" &&
|
|
910
|
-
...(h === "all" || h === "members" && p || h === "sceneCreators" &&
|
|
911
|
-
...!o && (!e.isPortal || e.sourceJSON.supportsHostedNotebooks) && (
|
|
906
|
+
...(l === "all" || l === "members" && p || l === "mapCreators" && he(n)) && !r ? ["map"] : [],
|
|
907
|
+
...(h === "all" || h === "members" && p || h === "sceneCreators" && he(n)) && !r ? ["scene"] : [],
|
|
908
|
+
...!o && (!e.isPortal || e.sourceJSON.supportsHostedNotebooks) && (u === "members" && p || u === "notebookCreators" && At(n)) && !r ? ["notebook"] : [],
|
|
912
909
|
...(a === "all" || a === "members" && p) && !r ? ["groups"] : [],
|
|
913
910
|
...p && !r ? ["myContent", "organization"] : []
|
|
914
911
|
], b;
|
|
915
912
|
}
|
|
916
913
|
function O(e) {
|
|
917
|
-
return `${
|
|
914
|
+
return `${Ae({ portal: e })}/`;
|
|
918
915
|
}
|
|
919
916
|
function ji({
|
|
920
917
|
keys: e,
|
|
@@ -925,12 +922,12 @@ function ji({
|
|
|
925
922
|
return e.forEach((r) => {
|
|
926
923
|
const o = t[r];
|
|
927
924
|
if (o && (!("show" in o) || o.show)) {
|
|
928
|
-
const { href: s, newTab: a, icon: l, relativePath:
|
|
925
|
+
const { href: s, newTab: a, icon: l, relativePath: u } = o;
|
|
929
926
|
n.push({
|
|
930
927
|
label: i[r],
|
|
931
928
|
href: s,
|
|
932
929
|
newTab: a,
|
|
933
|
-
relativePath:
|
|
930
|
+
relativePath: u,
|
|
934
931
|
icon: l
|
|
935
932
|
});
|
|
936
933
|
}
|
|
@@ -947,12 +944,12 @@ function Di({
|
|
|
947
944
|
pricing: { label: e.pricing, href: `${i}../features/plans/pricing.html`, icon: "credit-card" },
|
|
948
945
|
map: { label: e.map, href: `${i}apps/mapviewer/index.html`, icon: "map" },
|
|
949
946
|
scene: { label: e.scene, href: `${i}webscene/viewer.html`, icon: "globe" },
|
|
950
|
-
help: { label: e.help, href:
|
|
947
|
+
help: { label: e.help, href: se(t), newTab: !0, icon: "headset" },
|
|
951
948
|
home: { label: e.home, href: `${i}index.html`, relativePath: "index.html", icon: "home" },
|
|
952
949
|
gallery: { label: e.gallery, href: `${i}gallery.html`, relativePath: "gallery.html", icon: "gallery" },
|
|
953
950
|
groups: { label: e.groups, href: `${i}groups.html`, relativePath: "groups.html", icon: "group" }
|
|
954
951
|
};
|
|
955
|
-
return (Oi(t) ? ["overview", "pricing", "map", "scene", "help"] :
|
|
952
|
+
return (Oi(t) ? ["overview", "pricing", "map", "scene", "help"] : je({ portal: t })).map((o) => n[o]);
|
|
956
953
|
}
|
|
957
954
|
function zi({
|
|
958
955
|
messages: e,
|
|
@@ -961,8 +958,8 @@ function zi({
|
|
|
961
958
|
signInSettings: n,
|
|
962
959
|
navLinkDictionary: r
|
|
963
960
|
}) {
|
|
964
|
-
const o =
|
|
965
|
-
return o ||
|
|
961
|
+
const o = le(i), s = je({ portal: t, clientId: i, signInSettings: n }), a = `${O(t)}geoanalytics${o ? "engine" : "fabric"}.html`;
|
|
962
|
+
return o || ue(i) ? [
|
|
966
963
|
{
|
|
967
964
|
// TODO: active calculations in the component need to account for hash for these options
|
|
968
965
|
href: `${a}#subscription`,
|
|
@@ -1013,7 +1010,7 @@ function Gi({
|
|
|
1013
1010
|
icon: "map"
|
|
1014
1011
|
},
|
|
1015
1012
|
help: {
|
|
1016
|
-
href:
|
|
1013
|
+
href: se(e),
|
|
1017
1014
|
newTab: !0
|
|
1018
1015
|
},
|
|
1019
1016
|
gallery: {
|
|
@@ -1055,22 +1052,22 @@ function Gi({
|
|
|
1055
1052
|
function Ui({ portal: e, item: t, messages: i, navigate: n, locale: r }) {
|
|
1056
1053
|
if (!t || !i || !t.modified)
|
|
1057
1054
|
return null;
|
|
1058
|
-
const o = t.modified, s = { lessThanOneMinute: i.lessThanOneMinute }, a = Pe(
|
|
1059
|
-
return
|
|
1060
|
-
n({ event: b, href: h, relativePath:
|
|
1061
|
-
}}>${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">${
|
|
1055
|
+
const o = t.modified, s = { lessThanOneMinute: i.lessThanOneMinute }, a = Ie(Pe(o)), l = a?.[1] === "year" || a?.[1] === "month" ? Vt({ locale: r, time: o }, a?.[1] === "year") : Ne({ locale: r, time: o, t9n: s }), u = `item.html?id=${t.id}`, h = `${O(e)}${u}}`;
|
|
1056
|
+
return oe(t.id, c`<li class="list-item"><a class="list-item__link" href=${h ?? L} @click=${(b) => {
|
|
1057
|
+
n({ event: b, href: h, relativePath: u });
|
|
1058
|
+
}}>${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">${K(i.lastUpdated, { date: l })}</span></span></span>`}</a></li>`);
|
|
1062
1059
|
}
|
|
1063
|
-
function Bi({ locale: e, navigate: t, portal: i, open: n, apps: r, appsLoading: o, hiddenApps: s, appsSearchTerm: a, handlePlatformClose: l, handleAppsSearch:
|
|
1064
|
-
if (!
|
|
1060
|
+
function Bi({ locale: e, navigate: t, portal: i, open: n, apps: r, appsLoading: o, hiddenApps: s, appsSearchTerm: a, handlePlatformClose: l, handleAppsSearch: u, handleAppReorder: h, handleAppSave: b, handleAppHide: p, handleAppCancel: y, handleAppEdit: x, handleItemSearch: k, editingApplications: P, recentContent: w, recentContentLoading: f, recentContentSearchTerm: m, product: d, productInfo: _, links: N, messages: g }) {
|
|
1061
|
+
if (!d || !i || !g)
|
|
1065
1062
|
return null;
|
|
1066
1063
|
const { name: v, icon: $ } = _ || {};
|
|
1067
1064
|
return c`<calcite-sheet class="platform" .label=${g.label} position=inline-start display-mode=overlay id=example-sheet .open=${n} @calciteSheetClose=${l}><calcite-panel class="platform__panel"><div slot=header-content class="platform__header"><img src=${$ ?? L} 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">${N.filter(({ icon: A }) => A).map(({ label: A, href: E, icon: R, relativePath: S }) => c`<calcite-tile .icon=${R} .description=${A} .href=${E} alignment=center scale=s @keydown=${(M) => {
|
|
1068
1065
|
(M.key === "Enter" || M.key === " ") && t({ event: M, href: E, relativePath: S });
|
|
1069
1066
|
}} @click=${(M) => {
|
|
1070
1067
|
t({ event: M, href: E, relativePath: S });
|
|
1071
|
-
}}></calcite-tile>`)}</div>${i?.user && c`<calcite-tabs layout=center class="platform__tabs"><calcite-tab-nav slot=title-group>${!C(i) && c`<calcite-tab-title selected>${g.myApps}</calcite-tab-title>` || ""}<calcite-tab-title>${g.recentContent}</calcite-tab-title></calcite-tab-nav>${!C(i) && c`<calcite-tab selected class="platform__tab">${o && c`<calcite-scrim loading></calcite-scrim>` || ""}${Mi({ apps: r, appsLoading: o, appsSearchTerm: a, hiddenApps: s, messages: g, handleAppsSearch:
|
|
1068
|
+
}}></calcite-tile>`)}</div>${i?.user && c`<calcite-tabs layout=center class="platform__tabs"><calcite-tab-nav slot=title-group>${!C(i) && c`<calcite-tab-title selected>${g.myApps}</calcite-tab-title>` || ""}<calcite-tab-title>${g.recentContent}</calcite-tab-title></calcite-tab-nav>${!C(i) && c`<calcite-tab selected class="platform__tab">${o && c`<calcite-scrim loading></calcite-scrim>` || ""}${Mi({ apps: r, appsLoading: o, appsSearchTerm: a, hiddenApps: s, messages: g, handleAppsSearch: u, handleAppReorder: h, handleAppSave: b, handleAppHide: p, handleAppCancel: y, handleAppEdit: x, editingApplications: P, portal: i })}</calcite-tab>` || ""}<calcite-tab class="platform__tab"><div class="list__header"><calcite-input type=search icon .placeholder=${g.searchRecentContent} scale=m class="list__search" @calciteInputInput=${(A) => k(A.target.value)}></calcite-input></div>${f && !o && c`<calcite-scrim loading></calcite-scrim>` || ""}<div class="list__container">${w?.length > 0 || f ? c`<ul class="list">${z(w, (A) => A.id, (A) => Ui({ portal: i, messages: g, navigate: t, item: A, locale: e }))}</ul>` : m?.length ? J({ title: K(g.noAppResults, { term: m }), description: g.recentContentNoResultsDescription, icon: "search" }) : J({ title: g.noContent, description: g.noContentDescription, icon: "clock" })}</div></calcite-tab></calcite-tabs>` || ""}</div></calcite-panel></calcite-sheet>`;
|
|
1072
1069
|
}
|
|
1073
|
-
const
|
|
1070
|
+
const ie = [
|
|
1074
1071
|
"new",
|
|
1075
1072
|
"open",
|
|
1076
1073
|
"rename",
|
|
@@ -1084,13 +1081,13 @@ const ne = [
|
|
|
1084
1081
|
async function Fi(e) {
|
|
1085
1082
|
return await Promise.resolve({ status: "success" });
|
|
1086
1083
|
}
|
|
1087
|
-
function
|
|
1088
|
-
return
|
|
1084
|
+
function ne(e) {
|
|
1085
|
+
return ie.includes(e.id);
|
|
1089
1086
|
}
|
|
1090
1087
|
function Wi(e) {
|
|
1091
1088
|
return (e || [])?.toSorted((t, i) => {
|
|
1092
|
-
const n =
|
|
1093
|
-
return n && !r ? -1 : r && !n ? 1 : r && n ?
|
|
1089
|
+
const n = ne(t), r = ne(i);
|
|
1090
|
+
return n && !r ? -1 : r && !n ? 1 : r && n ? ie.indexOf(t.id) - ie.indexOf(i.id) : -1;
|
|
1094
1091
|
});
|
|
1095
1092
|
}
|
|
1096
1093
|
function Ri(e, t) {
|
|
@@ -1115,12 +1112,12 @@ function Ri(e, t) {
|
|
|
1115
1112
|
details: { text: t.itemDetails, group: "details", external: !0 }
|
|
1116
1113
|
}, r = Wi(e), o = [];
|
|
1117
1114
|
return r.forEach((s) => {
|
|
1118
|
-
if (!
|
|
1115
|
+
if (!ne(s)) {
|
|
1119
1116
|
o.push(s);
|
|
1120
1117
|
return;
|
|
1121
1118
|
}
|
|
1122
|
-
const { text: l, external:
|
|
1123
|
-
i[h].push({ text: l, external:
|
|
1119
|
+
const { text: l, external: u, group: h } = n[s.id];
|
|
1120
|
+
i[h].push({ text: l, external: u, ...s });
|
|
1124
1121
|
}), o.forEach((s) => {
|
|
1125
1122
|
const a = s.group || "custom";
|
|
1126
1123
|
i[a].push(s);
|
|
@@ -1129,31 +1126,31 @@ function Ri(e, t) {
|
|
|
1129
1126
|
function Vi({ navigate: e, portal: t, menuItem: i, messages: n, portalItem: r, openProjectTitleEdit: o, projectMenuClick: s }) {
|
|
1130
1127
|
if (!t || !n || !i || i.id === "details" && !r)
|
|
1131
1128
|
return null;
|
|
1132
|
-
const { external: a, id: l, text:
|
|
1133
|
-
return
|
|
1129
|
+
const { external: a, id: l, text: u } = i, h = `${O(t)}item.html?id=${r?.id}`;
|
|
1130
|
+
return oe(`${l}${u}`, c`<calcite-dropdown-item .iconEnd=${a ? "launch" : void 0} .href=${l === "details" ? h : i.href} .target=${a ? "_blank" : void 0} @calciteDropdownItemSelect=${(b) => {
|
|
1134
1131
|
if (l === "rename") {
|
|
1135
1132
|
o?.();
|
|
1136
1133
|
return;
|
|
1137
1134
|
}
|
|
1138
1135
|
l === "details" && e({ event: b, href: h }), s?.({ type: l });
|
|
1139
|
-
}}>${
|
|
1136
|
+
}}>${u}${l === "save" && c`<calcite-icon icon=bullet-point-large class="project__indicator" scale=s></calcite-icon>` || ""}</calcite-dropdown-item>`);
|
|
1140
1137
|
}
|
|
1141
|
-
function Hi({ navigate: e, portal: t, projectTitle: i, editedProjectTitle: n, handleProjectTitleSave: r, handleProjectTitleEdit: o, handleProjectTitleCancel: s, openProjectTitleEdit: a, portalItem: l, projectTitleEditing:
|
|
1138
|
+
function Hi({ navigate: e, portal: t, projectTitle: i, editedProjectTitle: n, handleProjectTitleSave: r, handleProjectTitleEdit: o, handleProjectTitleCancel: s, openProjectTitleEdit: a, portalItem: l, projectTitleEditing: u, projectTitleSaving: h, projectTitleErrorMessage: b, projectMenuIcon: p, projectMenuSaveIndicator: y, projectMenuClick: x, projectMenuOptions: k, projectTitleInputRef: P, projectButtonRef: w, messages: f }) {
|
|
1142
1139
|
if (!t || !f || !k?.length && !i)
|
|
1143
1140
|
return null;
|
|
1144
1141
|
if (!k?.length)
|
|
1145
1142
|
return c`<div class="project__title">${p && c`<calcite-icon .icon=${p} 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>`;
|
|
1146
|
-
const m = Ri(k, f),
|
|
1147
|
-
return
|
|
1143
|
+
const m = Ri(k, f), d = !!b;
|
|
1144
|
+
return u ? c`<form class="rename" @submit=${async (_) => {
|
|
1148
1145
|
_.preventDefault(), await r?.(n);
|
|
1149
1146
|
}} @keydown=${(_) => {
|
|
1150
1147
|
_.key === "Escape" && s?.();
|
|
1151
|
-
}}><calcite-input id=project-title-input type=text scale=l class="rename__input" .label=${f.title} .value=${n} .status=${
|
|
1148
|
+
}}><calcite-input id=project-title-input type=text scale=l class="rename__input" .label=${f.title} .value=${n} .status=${d ? "invalid" : "idle"} @calciteInputInput=${(_) => o?.(_.target.value)} ${F(P)}></calcite-input>${d && c`<calcite-popover open .label=${f.error} .referenceElement=${P?.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=${h} icon=check scale=l .text=${f?.saveRename} active class="rename__action" type=submit .loading=${h}></calcite-action><calcite-action .disabled=${h} icon=x scale=l .text=${f?.cancelRename} class="rename__action" @click=${() => s?.()}></calcite-action></form>` : c`<calcite-dropdown width=m class="fade-in project__dropdown"><button slot=trigger class="project" ${F(w)}>${p && c`<calcite-icon scale=s .icon=${p} 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>${z(Object.entries(m).filter(([_, N]) => N.length), ([_, N]) => _, ([_, N]) => c`<calcite-dropdown-group selection-mode=none>${N.map((g) => Vi({ menuItem: g, navigate: e, portal: t, messages: f, portalItem: l, openProjectTitleEdit: a, projectMenuClick: x }))}</calcite-dropdown-group>`)}</calcite-dropdown>`;
|
|
1152
1149
|
}
|
|
1153
1150
|
function qi(e) {
|
|
1154
1151
|
return ["Location Platform", "Online", "Enterprise"].includes(e);
|
|
1155
1152
|
}
|
|
1156
|
-
function
|
|
1153
|
+
function De({
|
|
1157
1154
|
portal: e,
|
|
1158
1155
|
searchType: t,
|
|
1159
1156
|
searchTerm: i
|
|
@@ -1164,20 +1161,20 @@ function ze({
|
|
|
1164
1161
|
function Ji({ portal: e, item: t, messages: i, navigate: n }) {
|
|
1165
1162
|
if (!t || !i)
|
|
1166
1163
|
return null;
|
|
1167
|
-
const r =
|
|
1164
|
+
const r = K(i.by, {
|
|
1168
1165
|
itemType: Lt(t),
|
|
1169
1166
|
owner: t.owner
|
|
1170
1167
|
}), o = `item.html?id=${t.id}`, s = `${O(e)}${o}`;
|
|
1171
|
-
return
|
|
1168
|
+
return oe(t.id, c`<li class="list-item"><a class="list-item__link" href=${s ?? L} @click=${(a) => n({ event: a, href: s, relativePath: o })}>${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">${r}</span></span></span>`}</a></li>`);
|
|
1172
1169
|
}
|
|
1173
1170
|
function Ki({ portal: e, suggestions: t, messages: i, navigate: n, searchType: r, searchTerm: o }) {
|
|
1174
1171
|
if (!i || !e || !o)
|
|
1175
1172
|
return null;
|
|
1176
1173
|
if (!t)
|
|
1177
1174
|
return c`<div><calcite-loader scale=l .label=${i.loadingResults}></calcite-loader></div>`;
|
|
1178
|
-
const s =
|
|
1179
|
-
return c`<ul class="list">${t.map((
|
|
1180
|
-
n({ href: l, event:
|
|
1175
|
+
const s = De({ portal: e, searchType: r, searchTerm: o }), a = `/${s}`, l = `${O(e)}${s}`;
|
|
1176
|
+
return c`<ul class="list">${t.map((u) => Ji({ messages: i, portal: e, item: u, navigate: n }))}</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) => {
|
|
1177
|
+
n({ href: l, event: u, relativePath: a });
|
|
1181
1178
|
}}>${i.viewAll}</calcite-button></div>`;
|
|
1182
1179
|
}
|
|
1183
1180
|
function Qi({ portal: e, messages: t, searchType: i, handleSearchTypeChange: n }) {
|
|
@@ -1186,32 +1183,32 @@ function Qi({ portal: e, messages: t, searchType: i, handleSearchTypeChange: n }
|
|
|
1186
1183
|
const r = i === "keyword", o = t.searchType;
|
|
1187
1184
|
return c`<calcite-chip .label=${o.label} .icon=${r ? "text" : "effects"} id=search-type-toggle appearance=solid kind=neutral><span>${r ? o.keywordTitle : o.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=${() => n("keyword")} icon-start=text value=keyword .label=${o.keywordTitle} .description=${o.keywordDescription}></calcite-list-item><calcite-list-item @calciteListItemSelect=${() => n("vector")} icon-start=effects value=semantic .label=${o.semanticTitle} .description=${o.semanticDescription}></calcite-list-item></calcite-list></div></calcite-popover>`;
|
|
1188
1185
|
}
|
|
1189
|
-
function Xi({ currentPathname: e, navigate: t, product: i, portal: n, messages: r, searchActive: o, searchType: s, searchTerm: a, suggestions: l, searchInputRef:
|
|
1186
|
+
function Xi({ currentPathname: e, navigate: t, product: i, portal: n, messages: r, searchActive: o, searchType: s, searchTerm: a, suggestions: l, searchInputRef: u, searchActionRef: h, searchPopoverRef: b, handleSearch: p, handleToggleSearch: y, handleSearchTypeChange: x }) {
|
|
1190
1187
|
if (!qi(i) || !r || !n || e?.includes("search.html"))
|
|
1191
1188
|
return null;
|
|
1192
|
-
const k =
|
|
1189
|
+
const k = De({ portal: n, searchType: s, searchTerm: a }), P = `/${k}`, w = `${O(n)}${k}`;
|
|
1193
1190
|
return o ? c`<div class="search" id=search-reference-element><calcite-input type=search scale=l icon=search class="search__input" .ariaLabel=${r.label} .placeholder=${s === "vector" ? r.searchType.semanticPlaceholder : r.searchType.keywordPlaceholder} @calciteInputInput=${(f) => p(f.target.value)} @keydown=${(f) => {
|
|
1194
1191
|
f.key === "Enter" && (t({ href: w, event: f, relativePath: P }), f.defaultPrevented || (window.location.href = w)), f.key === "Escape" && y(!1);
|
|
1195
|
-
}} ${F(
|
|
1192
|
+
}} ${F(u)}></calcite-input><calcite-action icon=x scale=l .text=${r?.close} active class="search__action" @click=${() => y(!1)}></calcite-action><calcite-popover .label=${r.suggestions} reference-element=search-reference-element .open=${o && !!a} pointer-disabled placement=bottom-start trigger-disabled .focusTrapOptions=${{ initialFocus: !1 }} ${F(b)}><div class="suggestions__header"><h3 class="suggestions__title">${r.topResults}</h3>${Qi({ portal: n, messages: r, searchType: s, handleSearchTypeChange: x })}</div><div class="suggestions__results">${Ki({ portal: n, suggestions: l, navigate: t, messages: r, searchType: s, searchTerm: a })}</div></calcite-popover></div>` : c`<calcite-action icon=search scale=l text=search class="search__action fade-in" @click=${() => y(!0)} ${F(h)}></calcite-action>`;
|
|
1196
1193
|
}
|
|
1197
1194
|
function Yi({ signIn: e, messages: t }) {
|
|
1198
1195
|
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>`;
|
|
1199
1196
|
}
|
|
1200
1197
|
function Zi({ navigate: e, portal: t, product: i, links: n, messages: r, currentPathname: o, searchActive: s }) {
|
|
1201
|
-
return !i || !t || !r || !
|
|
1198
|
+
return !i || !t || !r || !de(i) || !n || s ? null : c`<calcite-menu slot=content-start .label=${r.label} class="site-nav fade-in">${z(n, ({ href: a }) => a, ({ label: a, href: l, relativePath: u }) => c`<calcite-menu-item .text=${a} text-enabled .label=${a} .href=${l} .active=${Ei(l, o)} @click=${(h) => e({ event: h, href: l, relativePath: u })}></calcite-menu-item>`)}</calcite-menu>`;
|
|
1202
1199
|
}
|
|
1203
1200
|
function en({ userLinks: e, messages: t, navigate: i, openAccountSwitcher: n, portal: r, signOut: o, textDisabled: s }) {
|
|
1204
1201
|
const a = r?.user;
|
|
1205
|
-
return !a || !e || !t || e?.account?.options.length < 1 && e?.resources?.options.length < 1 ? null : c`<div class="user fade-in"><calcite-dropdown .width=${s ? "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=${a} .portal=${r} scale=l class="user__button__avatar"></arcgis-portal-user-avatar>${!s && c`<span class="user__button__text"><h2 class="user__button__full user__full">${a.fullName}</h2><p class="user__button__username user__username">${a.username}</p></span>` || ""}</span></calcite-button>${s && c`<div class="user__top"><arcgis-portal-user-avatar .user=${a} .portal=${r} scale=l class="user__avatar"></arcgis-portal-user-avatar><div class="user__top__text"><h2 class="user__top__full user__full">${a.fullName}</h2><p class="user__top__username user__username">${a.username}</p></div></div>` || ""}${Object.values(e).filter((l) => l.options.length).map(({ title: l, options:
|
|
1202
|
+
return !a || !e || !t || e?.account?.options.length < 1 && e?.resources?.options.length < 1 ? null : c`<div class="user fade-in"><calcite-dropdown .width=${s ? "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=${a} .portal=${r} scale=l class="user__button__avatar"></arcgis-portal-user-avatar>${!s && c`<span class="user__button__text"><h2 class="user__button__full user__full">${a.fullName}</h2><p class="user__button__username user__username">${a.username}</p></span>` || ""}</span></calcite-button>${s && c`<div class="user__top"><arcgis-portal-user-avatar .user=${a} .portal=${r} scale=l class="user__avatar"></arcgis-portal-user-avatar><div class="user__top__text"><h2 class="user__top__full user__full">${a.fullName}</h2><p class="user__top__username user__username">${a.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: h, label: b, href: p, relativePath: y }) => c`<calcite-dropdown-item .iconStart=${h} .href=${p} @keydown=${(x) => {
|
|
1206
1203
|
(x.key === "Enter" || x.key === " ") && i({ event: x, href: p, relativePath: y });
|
|
1207
1204
|
}} @click=${(x) => {
|
|
1208
1205
|
i({ event: x, href: p, relativePath: y });
|
|
1209
1206
|
}}>${b}</calcite-dropdown-item>`)}</calcite-dropdown-group>`)}<calcite-dropdown-group selection-mode=none>${n && c`<calcite-dropdown-item icon-start=users @calciteDropdownItemSelect=${(l) => {
|
|
1210
|
-
const
|
|
1211
|
-
|
|
1207
|
+
const u = Dt(l.target, "calcite-dropdown");
|
|
1208
|
+
u && (u.open = !1), n();
|
|
1212
1209
|
}}>${t.switchAccounts}</calcite-dropdown-item>` || ""}<calcite-dropdown-item icon-start=sign-out @calciteDropdownItemSelect=${() => o()}>${t.signOut}</calcite-dropdown-item></calcite-dropdown-group></calcite-dropdown></div>`;
|
|
1213
1210
|
}
|
|
1214
|
-
const
|
|
1211
|
+
const ze = {
|
|
1215
1212
|
community: "https://community.esri.com/plugins/common/feature/oauth2sso_v2/sso_login_redirect?referer=https%3A%2F%2Fcommunity.esri.com%2F",
|
|
1216
1213
|
myEsri: "https://my.esri.com"
|
|
1217
1214
|
};
|
|
@@ -1255,17 +1252,17 @@ function rn({
|
|
|
1255
1252
|
"arcgisBlog",
|
|
1256
1253
|
"help"
|
|
1257
1254
|
];
|
|
1258
|
-
return (
|
|
1255
|
+
return (le(i) || ue(i)) && (n = ["mySettings", "arcgisBlog", "help"]), Ee(i) && (n = []), on(n, t, e);
|
|
1259
1256
|
}
|
|
1260
1257
|
function on(e, t, i) {
|
|
1261
1258
|
const n = [];
|
|
1262
1259
|
return e.forEach((r) => {
|
|
1263
1260
|
const o = i[r];
|
|
1264
1261
|
if (o && (!("show" in o) || o.show)) {
|
|
1265
|
-
const { href: s, newTab: a, icon: l, group:
|
|
1262
|
+
const { href: s, newTab: a, icon: l, group: u, relativePath: h } = o;
|
|
1266
1263
|
n.push({
|
|
1267
1264
|
label: t[r],
|
|
1268
|
-
group:
|
|
1265
|
+
group: u,
|
|
1269
1266
|
href: s,
|
|
1270
1267
|
newTab: a,
|
|
1271
1268
|
relativePath: h,
|
|
@@ -1292,14 +1289,14 @@ function sn(e) {
|
|
|
1292
1289
|
help: {
|
|
1293
1290
|
group: "resources",
|
|
1294
1291
|
icon: "question",
|
|
1295
|
-
href:
|
|
1292
|
+
href: se(e),
|
|
1296
1293
|
newTab: !0
|
|
1297
1294
|
},
|
|
1298
1295
|
communityForums: {
|
|
1299
1296
|
show: i,
|
|
1300
1297
|
group: "resources",
|
|
1301
1298
|
icon: "speech-bubbles",
|
|
1302
|
-
href:
|
|
1299
|
+
href: ze.community,
|
|
1303
1300
|
newTab: !0
|
|
1304
1301
|
},
|
|
1305
1302
|
myEsri: {
|
|
@@ -1335,16 +1332,16 @@ function an(e) {
|
|
|
1335
1332
|
return !e.isPortal && e?.user?.sourceJSON?.userType === "both";
|
|
1336
1333
|
}
|
|
1337
1334
|
function cn(e) {
|
|
1338
|
-
return
|
|
1335
|
+
return Ge(
|
|
1339
1336
|
e,
|
|
1340
1337
|
`${window.location.protocol}//www.esri.com/training/arcgis-online-training`
|
|
1341
1338
|
);
|
|
1342
1339
|
}
|
|
1343
1340
|
function ln(e) {
|
|
1344
|
-
return
|
|
1341
|
+
return Ge(e, ze.myEsri);
|
|
1345
1342
|
}
|
|
1346
|
-
function
|
|
1347
|
-
const i =
|
|
1343
|
+
function Ge(e, t) {
|
|
1344
|
+
const i = ae(e), n = un(e), r = `https://accounts${n ? n === "dev" ? "-dev" : "-stg" : ""}.esri.com/`, o = `&authBaseUrl=${q(i.replace("/sharing/rest/", ""), e)}`, s = `${r}LoginHandler/switchuser?`, a = `username=${e?.user?.username ?? ""}&redirect_uri=${t}${o}`;
|
|
1348
1345
|
return `${s}${a}`;
|
|
1349
1346
|
}
|
|
1350
1347
|
function un(e) {
|
|
@@ -1580,14 +1577,14 @@ function hn({
|
|
|
1580
1577
|
portal: t,
|
|
1581
1578
|
clientId: i
|
|
1582
1579
|
}) {
|
|
1583
|
-
return e !== "Online" ? e : t?.sourceJSON?.subscriptionInfo?.options?.includes("Developer") ? "Location Platform" :
|
|
1580
|
+
return e !== "Online" ? e : t?.sourceJSON?.subscriptionInfo?.options?.includes("Developer") ? "Location Platform" : ue(i) ? "GeoAnalytics Fabric" : le(i) ? "GeoAnalytics Engine" : t?.isPortal ? "Enterprise" : "Online";
|
|
1584
1581
|
}
|
|
1585
|
-
function
|
|
1582
|
+
function ye(e) {
|
|
1586
1583
|
const t = hn(e), { name: i, fileName: n, icon: r } = pn(t);
|
|
1587
1584
|
return {
|
|
1588
1585
|
name: i,
|
|
1589
|
-
glyph:
|
|
1590
|
-
icon:
|
|
1586
|
+
glyph: ee(`assets/portal-navigation/product-logos/${n}-glyph-32.svg`),
|
|
1587
|
+
icon: ee(`assets/portal-navigation/apps/${r}.avif`)
|
|
1591
1588
|
};
|
|
1592
1589
|
}
|
|
1593
1590
|
function mn() {
|
|
@@ -1597,20 +1594,20 @@ function mn() {
|
|
|
1597
1594
|
)}` : window.location.href = `./signin.html?locale=${e}&useLandingPage=true`;
|
|
1598
1595
|
}
|
|
1599
1596
|
function fn({ portal: e, clientId: t }) {
|
|
1600
|
-
const i =
|
|
1597
|
+
const i = re({ portal: e });
|
|
1601
1598
|
if (e?.isPortal) {
|
|
1602
|
-
const n = e.access === "private" ?
|
|
1599
|
+
const n = e.access === "private" ? q("signin.html", e) : e.allSSL || window.location.protocol === "https:" ? q("./index.html", e) : `${i}/index.html`;
|
|
1603
1600
|
bn(e, n);
|
|
1604
1601
|
} else
|
|
1605
1602
|
window.location.href = `${i}/pages/Account/manage_accounts.html#client_id=${t}&signout=true`;
|
|
1606
1603
|
}
|
|
1607
1604
|
function gn() {
|
|
1608
|
-
ii(
|
|
1605
|
+
ii(we), ni(we);
|
|
1609
1606
|
}
|
|
1610
1607
|
function bn(e, t = window.location.href) {
|
|
1611
1608
|
const i = window.location.href.startsWith("http://"), n = jt(e);
|
|
1612
1609
|
Gt.destroyCredentials(), gn();
|
|
1613
|
-
const r = new URL(
|
|
1610
|
+
const r = new URL(q(`${ae(e)}oauth2/signout`, e)), { searchParams: o } = r;
|
|
1614
1611
|
o.append("client_id", "arcgisonline"), o.append("redirect_uri", t), n && i && (e.isPortal || e.user?.sourceJSON.provider === "enterprise") && o.append("token", n), window.location.href = r.href;
|
|
1615
1612
|
}
|
|
1616
1613
|
function j(e, t) {
|
|
@@ -1629,10 +1626,10 @@ function vn({
|
|
|
1629
1626
|
}) {
|
|
1630
1627
|
if (!t || !e)
|
|
1631
1628
|
return;
|
|
1632
|
-
const s = e.user, l =
|
|
1629
|
+
const s = e.user, l = de(t) && n?.length ? 24 + n.reduce((b, p) => b + 16 + j(p.label) + 16, 0) : 0, u = 40 + j(i) + 32 + 16 + 16 + 12, h = s ? Math.max(j(s?.username, "s"), j(s?.fullName)) : j(r?.signIn);
|
|
1633
1630
|
return {
|
|
1634
1631
|
actions: 192,
|
|
1635
|
-
project: i ? Math.min(
|
|
1632
|
+
project: i ? Math.min(u, 400) : 0,
|
|
1636
1633
|
product: 64 + Math.max(j(o?.name), j(e.name, "s")) + 16,
|
|
1637
1634
|
nav: l,
|
|
1638
1635
|
user: 64 + h + 16
|
|
@@ -1642,15 +1639,15 @@ function _n({
|
|
|
1642
1639
|
measurements: e,
|
|
1643
1640
|
screenWidth: t
|
|
1644
1641
|
}) {
|
|
1645
|
-
const { actions: i, nav: n, product: r, project: o, user: s } = e, a = 64, l = t - i - a > n,
|
|
1642
|
+
const { actions: i, nav: n, product: r, project: o, user: s } = e, a = 64, l = t - i - a > n, u = t - i - (l ? n : 0) - o - a > Math.min(r, 400), h = t - n - o - i - r < Math.min(s, 320);
|
|
1646
1643
|
return {
|
|
1647
1644
|
nav: l,
|
|
1648
|
-
product:
|
|
1645
|
+
product: u,
|
|
1649
1646
|
user: h ? "avatar" : "full"
|
|
1650
1647
|
};
|
|
1651
1648
|
}
|
|
1652
|
-
const
|
|
1653
|
-
async function
|
|
1649
|
+
const Ue = ' -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"';
|
|
1650
|
+
async function $e({
|
|
1654
1651
|
portal: e,
|
|
1655
1652
|
searchTerm: t
|
|
1656
1653
|
}) {
|
|
@@ -1659,7 +1656,7 @@ async function ke({
|
|
|
1659
1656
|
try {
|
|
1660
1657
|
return (await e.queryItems({
|
|
1661
1658
|
...t ? { query: t } : {},
|
|
1662
|
-
filter: `owner:${e.user.username}${
|
|
1659
|
+
filter: `owner:${e.user.username}${Ue}`,
|
|
1663
1660
|
num: 20,
|
|
1664
1661
|
sortField: "modified",
|
|
1665
1662
|
sortOrder: "desc"
|
|
@@ -1674,7 +1671,7 @@ async function wn({
|
|
|
1674
1671
|
}) {
|
|
1675
1672
|
if (!e)
|
|
1676
1673
|
return [];
|
|
1677
|
-
const i = Bt((t || "").substring(0, 409)), n = `${e?.id ? `accountid:"${e.id}"` : ""}${
|
|
1674
|
+
const i = Bt((t || "").substring(0, 409)), n = `${e?.id ? `accountid:"${e.id}"` : ""}${Ue}`, r = `${ae(e)}search/suggest`;
|
|
1678
1675
|
return (await G(r, { query: {
|
|
1679
1676
|
suggest: i,
|
|
1680
1677
|
filters: n,
|
|
@@ -1682,7 +1679,7 @@ async function wn({
|
|
|
1682
1679
|
f: "json"
|
|
1683
1680
|
} }))?.result?.results || [];
|
|
1684
1681
|
}
|
|
1685
|
-
const yn = wt`: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-scrim-background: var(--calcite-color-transparent-scrim);--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}`;
|
|
1682
|
+
const yn = wt`: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}`;
|
|
1686
1683
|
function $n({ messages: e, portal: t, showNav: i, openPlatformMenu: n, handleToggleSearch: r }) {
|
|
1687
1684
|
return !e || i && !t?.user ? null : c`<calcite-action .label=${e.applicationMenu} text="app switcher" icon=app-launcher scale=l class="action" @click=${n} @focusin=${() => r(!1, !0)}></calcite-action>`;
|
|
1688
1685
|
}
|
|
@@ -1690,7 +1687,7 @@ class kn extends bt {
|
|
|
1690
1687
|
constructor() {
|
|
1691
1688
|
super(...arguments), this.messages = vt({ blocking: !0 }), this.refreshNotifications = async () => {
|
|
1692
1689
|
const { portal: t, messages: i } = this;
|
|
1693
|
-
this.notifications = await
|
|
1690
|
+
this.notifications = await ge({ portal: t, locale: i._t9nLocale, t9n: i.notifications });
|
|
1694
1691
|
}, this.deleteNotifications = async (t) => {
|
|
1695
1692
|
const { portal: i } = this;
|
|
1696
1693
|
if (t?.length < 20)
|
|
@@ -1698,7 +1695,7 @@ class kn extends bt {
|
|
|
1698
1695
|
else {
|
|
1699
1696
|
let n = 0;
|
|
1700
1697
|
for await (const r of t)
|
|
1701
|
-
await
|
|
1698
|
+
await Te({ id: r, portal: i }), this.notificationDeleteProgress = Math.ceil(n++ / t.length * 100);
|
|
1702
1699
|
}
|
|
1703
1700
|
this.notificationDeleteProgress = void 0, this.refreshNotifications();
|
|
1704
1701
|
}, this.navigate = (t) => {
|
|
@@ -1753,9 +1750,9 @@ class kn extends bt {
|
|
|
1753
1750
|
n.splice(t, 1), n.splice(i, 0, r), this.sortedApps = n;
|
|
1754
1751
|
}, this.handleItemSearch = (t) => {
|
|
1755
1752
|
this.recentContentLoading = !0, this.recentContentSearchTerm = t, this.debouncedItemSearch(t);
|
|
1756
|
-
}, this.debouncedItemSearch =
|
|
1757
|
-
this.recentContent = await
|
|
1758
|
-
}, 1e3), this.debouncedSuggest =
|
|
1753
|
+
}, this.debouncedItemSearch = me(async (t) => {
|
|
1754
|
+
this.recentContent = await $e({ portal: this.portal, searchTerm: t }), this.recentContentLoading = !1;
|
|
1755
|
+
}, 1e3), this.debouncedSuggest = me(async (t) => {
|
|
1759
1756
|
this.suggestions = await wn({ portal: this.portal, searchTerm: t });
|
|
1760
1757
|
}, 1e3), this.handleSearch = (t) => {
|
|
1761
1758
|
this.searchTerm = t, this.suggestions = void 0, this.debouncedSuggest(t);
|
|
@@ -1777,7 +1774,7 @@ class kn extends bt {
|
|
|
1777
1774
|
});
|
|
1778
1775
|
}, this.handleSearchTypeChange = (t) => {
|
|
1779
1776
|
this.searchType = t;
|
|
1780
|
-
}, this.searchInput = B(), this.searchAction = B(), this.searchPopover = B(), this.projectTitleInputRef = B(), this.projectButtonRef = B(), 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 =
|
|
1777
|
+
}, this.searchInput = B(), this.searchAction = B(), this.searchPopover = B(), this.projectTitleInputRef = B(), this.projectButtonRef = B(), 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 = V(), this.arcgisNavigationProjectMenuClick = V(), this.arcgisNavigationSignIn = V(), this.arcgisNavigationSignOut = V();
|
|
1781
1778
|
}
|
|
1782
1779
|
static {
|
|
1783
1780
|
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 };
|
|
@@ -1788,13 +1785,13 @@ class kn extends bt {
|
|
|
1788
1785
|
#e;
|
|
1789
1786
|
async loaded() {
|
|
1790
1787
|
const { portal: t, messages: i, clientId: n, product: r } = this;
|
|
1791
|
-
this.calculateMeasurements(), this.productInfo =
|
|
1792
|
-
const { apps: o, hiddenApps: s, signInSettings: a, licenses: l, userProperties:
|
|
1788
|
+
this.calculateMeasurements(), this.productInfo = ye({ product: r, clientId: n, portal: t }), this.userLinks = nn({ portal: t, messages: i.user, clientId: n }), this.notifications = await ge({ portal: t, locale: i._t9nLocale, t9n: i.notifications }), this.recentContent = await $e({ portal: t }), this.recentContentLoading = !1;
|
|
1789
|
+
const { apps: o, hiddenApps: s, signInSettings: a, licenses: l, userProperties: u } = await Ii({
|
|
1793
1790
|
portal: t,
|
|
1794
1791
|
trackViewerEnabled: !this.disableTrackViewer,
|
|
1795
1792
|
notebookServerEnabled: !this.disableNotebookServer
|
|
1796
1793
|
}), h = await Nt(t);
|
|
1797
|
-
this.infoBanner = h?.informationalBanner, this.userProperties =
|
|
1794
|
+
this.infoBanner = h?.informationalBanner, this.userProperties = u, this.apps = o, this.hiddenApps = s, this.sortedApps = o, this.previousAppState = { apps: o, hiddenApps: s }, this.appsLoading = !1, this.links = Li({
|
|
1798
1795
|
portal: t,
|
|
1799
1796
|
messages: i.links,
|
|
1800
1797
|
licenses: l,
|
|
@@ -1813,7 +1810,7 @@ class kn extends bt {
|
|
|
1813
1810
|
this.el && this.#e && (this.#e.observe(this.el), this.screenWidth = window.innerWidth);
|
|
1814
1811
|
}
|
|
1815
1812
|
willUpdate(t) {
|
|
1816
|
-
(t.has("product") || t.has("clientId")) && this.hasUpdated && (this.productInfo =
|
|
1813
|
+
(t.has("product") || t.has("clientId")) && this.hasUpdated && (this.productInfo = ye({ product: this.product, clientId: this.clientId, portal: this.portal }));
|
|
1817
1814
|
}
|
|
1818
1815
|
disconnectedCallback() {
|
|
1819
1816
|
this.#e?.disconnect(), this.#e = void 0, document.documentElement.style.overflow = this.initialDocumentOverflowStyle, super.disconnectedCallback();
|
|
@@ -1840,8 +1837,8 @@ class kn extends bt {
|
|
|
1840
1837
|
}
|
|
1841
1838
|
}
|
|
1842
1839
|
render() {
|
|
1843
|
-
const { accountSwitcherOpen: t, apps: i, appsLoading: n, appsSearchTerm: r, currentPathname: o, handleAppCancel: s, handleAppHide: a, handleAppReorder: l, handleAppSave:
|
|
1844
|
-
return c`<calcite-scrim class=${
|
|
1840
|
+
const { accountSwitcherOpen: t, apps: i, appsLoading: n, appsSearchTerm: r, currentPathname: o, handleAppCancel: s, handleAppHide: a, handleAppReorder: l, handleAppSave: u, handleItemSearch: h, handlePlatformClose: b, handleSearch: p, handleToggleSearch: y, handleSearchTypeChange: x, hiddenApps: k, infoBanner: P, links: w, messages: f, navigate: m, notifications: d, notificationsActive: _, notificationDeleteProgress: N, openAccountSwitcher: g, portal: v, portalItem: $, product: A, productInfo: E, productHref: R, projectTitle: S, editedProjectTitle: M, handleProjectTitleSave: Be, handleProjectTitleEdit: Fe, handleProjectTitleCancel: We, handleToggleNotifications: pe, openProjectTitleEdit: Re, openPlatformMenu: Ve, platformMenuOpen: He, projectTitleEditing: Q, projectTitleSaving: qe, projectTitleErrorMessage: Je, projectMenuIcon: Ke, projectMenuSaveIndicator: Qe, projectMenuClick: Xe, projectMenuOptions: Ye, projectTitleInputRef: Ze, projectButtonRef: et, recentContent: tt, recentContentSearchTerm: it, recentContentLoading: nt, userLinks: rt, searchActive: U, searchTerm: ot, searchType: st, searchInput: at, searchAction: ct, searchPopover: lt, showNav: X, showProduct: ut, showUser: dt, suggestions: pt } = this, ht = v?.user, mt = de(A) && !w?.length || !this.measurements;
|
|
1841
|
+
return c`<calcite-scrim class=${H({ scrim: !0, "scrim--active": U })}></calcite-scrim><div class="wrapper" style=${ke({ "--arcgis-portal-navigation-max-width": this.maxWidth ? `${this.maxWidth}px` : "100%" })}><arcgis-portal-info-banner .config=${P}></arcgis-portal-info-banner>${v?.isPortal && $?.loaded && c`<arcgis-portal-classification-banner .portalItem=${$}></arcgis-portal-classification-banner>` || ""}<header class=${H({ navigation: !0, "navigation--loading": mt })}>${$n({ messages: f?.platform, portal: v, showNav: X, openPlatformMenu: Ve, handleToggleSearch: y })}${ut && Ft({ navigate: m, portal: v, product: A, productInfo: E, productHref: R, messages: f?.logo, showNav: X, searchActive: U, projectTitleEditing: Q }) || ""}${Hi({ navigate: m, portal: v, portalItem: $, messages: f?.project, projectTitle: S, editedProjectTitle: M, handleProjectTitleSave: Be, handleProjectTitleEdit: Fe, openProjectTitleEdit: Re, projectTitleErrorMessage: Je, handleProjectTitleCancel: We, projectTitleEditing: Q, projectTitleSaving: qe, projectMenuIcon: Ke, projectMenuSaveIndicator: Qe, projectMenuClick: Xe, projectMenuOptions: Ye, projectTitleInputRef: Ze, projectButtonRef: et })}${X && Zi({ searchActive: U, navigate: m, portal: v, product: A, messages: f?.links, links: w, currentPathname: o }) || ""}<div slot=content-end class="content-end fade-in" .hidden=${Q || U}><slot name=content-end></slot></div>${Xi({ currentPathname: o, navigate: m, portal: v, product: A, messages: f?.search, searchActive: U, searchType: st, searchTerm: ot, suggestions: pt, handleSearch: p, handleToggleSearch: y, handleSearchTypeChange: x, searchInputRef: at, searchActionRef: ct, searchPopoverRef: lt })}${ht ? c`<div class="border-start fade-in">${Xt({ notifications: d, notificationsActive: _, messages: f?.notifications, handleToggleNotifications: pe, handleToggleSearch: y })}${Yt({ notificationsActive: _, notifications: d, navigate: m, portal: v, deleteNotifications: this.deleteNotifications, handleToggleNotifications: pe, messages: f?.notifications, notificationDeleteProgress: N })}</div>${en({ portal: v, userLinks: rt, openAccountSwitcher: v?.isPortal ? void 0 : g, signOut: this.signOut, messages: f?.user, textDisabled: dt === "avatar", navigate: m })}` : Yi({ messages: f.user, signIn: this.signIn })}</header>${Bi({ locale: f._t9nLocale, navigate: m, portal: v, product: A, productInfo: E, messages: f?.platform, apps: i, appsLoading: n, hiddenApps: k, appsSearchTerm: r, editingApplications: this.editingApplications, open: He, links: w, recentContent: tt, recentContentSearchTerm: it, recentContentLoading: nt, handlePlatformClose: b, handleAppReorder: l, handleAppEdit: () => this.editingApplications = !0, handleAppsSearch: (ft) => this.appsSearchTerm = ft, handleAppSave: u, handleAppCancel: s, handleAppHide: a, handleItemSearch: h })}${t && c`<arcgis-portal-account-switcher .portal=${v} @arcgisClose=${() => {
|
|
1845
1842
|
this.accountSwitcherOpen = !1;
|
|
1846
1843
|
}}></arcgis-portal-account-switcher>` || ""}</div>`;
|
|
1847
1844
|
}
|