@arcgis/portal-components 5.2.0-next.60 → 5.2.0-next.62

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.
Files changed (85) hide show
  1. package/dist/cdn/2YI5PHJ6.js +2 -0
  2. package/dist/cdn/{25BWGJFT.js → 332KSPIN.js} +1 -1
  3. package/dist/cdn/5KADGOPQ.js +2 -0
  4. package/dist/cdn/6RLJVPF6.js +2 -0
  5. package/dist/cdn/CG4WYBHN.js +2 -0
  6. package/dist/cdn/{NMAP3FYP.js → DML7662F.js} +1 -1
  7. package/dist/cdn/{UL2NWFFH.js → EEELQMTE.js} +1 -1
  8. package/dist/cdn/{IXATTQKO.js → G2KWSRCG.js} +1 -1
  9. package/dist/cdn/JZTBGLFH.js +2 -0
  10. package/dist/cdn/{R2CAXYXG.js → KZVNGOD4.js} +99 -83
  11. package/dist/cdn/{5DE3XVTY.js → L2BME3WC.js} +1 -1
  12. package/dist/cdn/{UDTQ7U6L.js → LUT4IGPP.js} +1 -1
  13. package/dist/cdn/{IZOGASBD.js → PGCNY5GO.js} +1 -1
  14. package/dist/cdn/QCJQXOSH.js +2 -0
  15. package/dist/cdn/SOJU4OFZ.js +2 -0
  16. package/dist/cdn/{6LMJGR6F.js → WEJQVIN4.js} +1 -1
  17. package/dist/cdn/XW42SAEJ.js +2 -0
  18. package/dist/cdn/{THRK2DGY.js → ZK2VXTNX.js} +1 -1
  19. package/dist/cdn/{5VMPZXL3.js → ZXIRKL4X.js} +1 -1
  20. package/dist/cdn/assets/portal-ai-assistant/t9n/messages.en.json +1 -1
  21. package/dist/cdn/assets/portal-navigation/apps/notebook.avif +0 -0
  22. package/dist/cdn/assets/portal-navigation/t9n/messages.en.json +1 -1
  23. package/dist/cdn/index.js +1 -1
  24. package/dist/cdn/main.css +1 -1
  25. package/dist/chunks/portal-browser.js +0 -3
  26. package/dist/components/arcgis-portal-account-switcher/customElement.d.ts +3 -2
  27. package/dist/components/arcgis-portal-account-switcher/customElement.js +98 -92
  28. package/dist/components/arcgis-portal-ai-assistant/agents/types.d.ts +52 -16
  29. package/dist/components/arcgis-portal-ai-assistant/customElement.d.ts +28 -2
  30. package/dist/components/arcgis-portal-ai-assistant/customElement.js +1206 -673
  31. package/dist/components/arcgis-portal-browser/customElement.js +2 -5
  32. package/dist/components/arcgis-portal-browser/utils/store.d.ts +7 -3
  33. package/dist/components/arcgis-portal-classification-config/customElement.js +6 -6
  34. package/dist/components/arcgis-portal-group-browser/customElement.d.ts +174 -0
  35. package/dist/components/arcgis-portal-group-browser/customElement.js +66 -68
  36. package/dist/components/arcgis-portal-group-browser/types.d.ts +3 -3
  37. package/dist/components/arcgis-portal-navigation/customElement.d.ts +7 -0
  38. package/dist/components/arcgis-portal-navigation/customElement.js +422 -417
  39. package/dist/components/arcgis-portal-navigation/index.js +0 -2
  40. package/dist/components/portal-browser/components/portal-browser-filter/customElement.js +14 -0
  41. package/dist/components/{arcgis-portal-browser-filter → portal-browser/components/portal-browser-filter}/index.js +0 -1
  42. package/dist/components/portal-browser/components/portal-browser-filter-date/customElement.js +59 -0
  43. package/dist/components/{arcgis-portal-browser-filter-date → portal-browser/components/portal-browser-filter-date}/index.js +1 -2
  44. package/dist/components/portal-browser/components/portal-browser-filter-date/portal-browser-filter-date.d.ts +122 -0
  45. package/dist/components/portal-browser/components/portal-browser-filters/customElement.js +11 -0
  46. package/dist/components/portal-group-browser-filters/customElement.js +113 -86
  47. package/dist/components/portal-group-browser-filters/index.js +0 -3
  48. package/dist/docs/api.json +1 -1
  49. package/dist/docs/docs.json +1 -1
  50. package/dist/docs/vscode.css-custom-data.json +1 -1
  51. package/dist/docs/vscode.html-custom-data.json +1 -1
  52. package/dist/docs/web-types.json +1 -1
  53. package/dist/index.d.ts +0 -24
  54. package/dist/loader.js +3 -6
  55. package/dist/types/lumina.d.ts +3 -19
  56. package/dist/types/preact.d.ts +3 -22
  57. package/dist/types/react.d.ts +3 -25
  58. package/dist/types/stencil.d.ts +3 -19
  59. package/package.json +4 -4
  60. package/dist/cdn/2YEGKG66.js +0 -2
  61. package/dist/cdn/3527GI5O.js +0 -2
  62. package/dist/cdn/3Y33UPZ6.js +0 -2
  63. package/dist/cdn/744FUP4K.js +0 -2
  64. package/dist/cdn/FGJNEKPQ.js +0 -2
  65. package/dist/cdn/HEA66RTI.js +0 -2
  66. package/dist/cdn/IQFYKVRG.js +0 -2
  67. package/dist/cdn/JPHGWARN.js +0 -2
  68. package/dist/cdn/JUNNQTQU.js +0 -2
  69. package/dist/cdn/MNU537SB.js +0 -2
  70. package/dist/cdn/XMUR4HRH.js +0 -2
  71. package/dist/cdn/XX4U6IRN.js +0 -2
  72. package/dist/cdn/Y3RUZTB3.js +0 -2
  73. package/dist/cdn/YIU7GBUN.js +0 -2
  74. package/dist/cdn/ZOEF7HBV.js +0 -2
  75. package/dist/components/arcgis-portal-browser-filter/customElement.d.ts +0 -226
  76. package/dist/components/arcgis-portal-browser-filter/customElement.js +0 -32
  77. package/dist/components/arcgis-portal-browser-filter/index.d.ts +0 -1
  78. package/dist/components/arcgis-portal-browser-filter-date/customElement.d.ts +0 -233
  79. package/dist/components/arcgis-portal-browser-filter-date/customElement.js +0 -118
  80. package/dist/components/arcgis-portal-browser-filter-date/index.d.ts +0 -1
  81. package/dist/components/arcgis-portal-browser-filters/customElement.d.ts +0 -7
  82. package/dist/components/arcgis-portal-browser-filters/customElement.js +0 -29
  83. package/dist/components/arcgis-portal-browser-filters/index.d.ts +0 -1
  84. /package/dist/cdn/{F3PB42AG.js → 4E65YWCP.js} +0 -0
  85. /package/dist/components/{arcgis-portal-browser-filters → portal-browser/components/portal-browser-filters}/index.js +0 -0
@@ -1,38 +1,39 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import { g as te, c as ft } from "../../chunks/runtime.js";
3
- import { safeStyleMap as Ae, safeClassMap as oe, LitElement as gt, createEvent as H } from "@arcgis/lumina";
4
- import { u as bt } from "../../chunks/useT9n.js";
5
- import { html as l, svg as vt, nothing as L, css as wt } from "lit";
6
- import { formatDate as yt, substitute as K, getLocale as _t } from "@arcgis/core/intl.js";
7
- import { g as Q, b as ke } from "../../chunks/url.js";
8
- import { a as U } from "../../chunks/requests.js";
9
- import { repeat as G } from "lit/directives/repeat.js";
10
- import { m as $t } from "../../chunks/icons.js";
11
- import { i as M, c as me, a as At } from "../../chunks/user2.js";
2
+ import { g as ee, c as gt } from "../../chunks/runtime.js";
3
+ import { safeStyleMap as Ae, safeClassMap as re, LitElement as bt, createEvent as H } from "@arcgis/lumina";
4
+ import { u as vt } from "../../chunks/useT9n.js";
5
+ import { nothing as L, html as c, svg as _t, css as wt } from "lit";
6
+ import { formatDate as yt, substitute as K, getLocale as $t } from "@arcgis/core/intl.js";
7
+ import { g as oe, b as xe } from "../../chunks/url.js";
8
+ import { a as G } from "../../chunks/requests.js";
9
+ import { repeat as z } from "lit/directives/repeat.js";
10
+ import { m as kt } from "../../chunks/icons.js";
11
+ import { i as C, c as me, a as At } from "../../chunks/user2.js";
12
12
  import "@arcgis/core/portal/Portal.js";
13
- import { c as kt, d as St, e as It, f as xt, h as Pt } from "../../chunks/portal2.js";
14
- import { c as Tt, d as Nt, e as Ct } from "../../chunks/user.js";
15
- import { i as Se, a as Mt } from "../../chunks/utils.js";
16
- import { g as Lt } from "../../chunks/request.js";
13
+ import { c as xt, d as St, e as It, f as Pt, h as Nt } from "../../chunks/portal2.js";
14
+ import { c as Tt, d as Ct, e as Mt } from "../../chunks/user.js";
15
+ import { i as Se, a as Lt } from "../../chunks/utils.js";
16
+ import { g as Ot } from "../../chunks/request.js";
17
17
  import { g as Ie } from "../../chunks/item2.js";
18
18
  import { keyed as se } from "lit/directives/keyed.js";
19
- import { e as ae, n as Ot, g as ce, f as q, a as Et } from "../../chunks/portal.js";
20
- import { ref as z, createRef as F } from "lit/directives/ref.js";
21
- import { c as jt, g as Dt } from "../../chunks/dom.js";
19
+ import { e as ae, n as Et, g as ce, f as q, a as jt } from "../../chunks/portal.js";
20
+ import { ref as F, createRef as B } from "lit/directives/ref.js";
21
+ import { c as Dt, g as zt } from "../../chunks/dom.js";
22
22
  import { debounce as fe } 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 Ft({ navigate: e, portal: t, product: i, productInfo: n, productHref: r, messages: o, searchActive: s, showNav: a, projectTitleEditing: c }) {
27
- const d = s && i === "Online" && !a || i !== "Online" && c && window.innerWidth < 960;
28
- if (!i || !t || !o || d)
29
- return null;
30
- const { name: h, glyph: g } = n || {};
31
- return l`<calcite-navigation-logo class="logo fade-in" .heading=${h} .description=${t.name || ""} .href=${r} @click=${r ? (p) => {
32
- e({ event: p, href: r });
33
- } : void 0} .thumbnail=${g}></calcite-navigation-logo>`;
26
+ function ge({ portal: e, productInfo: t }) {
27
+ const { name: i, glyph: n } = t || {};
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
+ }
30
+ function Ft({ navigate: e, portal: t, product: i, productInfo: n, productHref: r, messages: o, searchActive: s, showNav: a, projectTitleEditing: l }) {
31
+ const d = s && i === "Online" && !a || i !== "Online" && l && window.innerWidth < 960;
32
+ return !i || !t || !o || d ? null : r ? c`<a href=${r ?? L} @click=${(h) => {
33
+ e({ event: h, href: r });
34
+ }} class="logo fade-in logo--link">${ge({ portal: t, productInfo: n })}</a>` : c`<div class="logo fade-in">${ge({ portal: t, productInfo: n })}</div>`;
34
35
  }
35
- const Z = {}, N = {
36
+ const Y = {}, T = {
36
37
  Month: 2628e3,
37
38
  Week: 604800,
38
39
  Day: 86400,
@@ -40,73 +41,73 @@ const Z = {}, N = {
40
41
  Minute: 60,
41
42
  Second: 1
42
43
  };
43
- function xe(e) {
44
+ function Pe(e) {
44
45
  if (!e)
45
46
  return null;
46
- const t = Math.floor(e / 1e3), i = Math.abs(t), n = N.Day * 365;
47
+ const t = Math.floor(e / 1e3), i = Math.abs(t), n = T.Day * 365;
47
48
  switch (!0) {
48
- case i < N.Minute:
49
- return [Math.floor(t / N.Second), "second"];
50
- case i < N.Hour:
51
- return [Math.floor(t / N.Minute), "minute"];
52
- case i < N.Day:
53
- return [Math.floor(t / N.Hour), "hour"];
54
- case i < N.Week:
55
- return [Math.floor(t / N.Day), "day"];
56
- case i < N.Month:
57
- return [Math.floor(t / N.Week), "week"];
49
+ case i < T.Minute:
50
+ return [Math.floor(t / T.Second), "second"];
51
+ case i < T.Hour:
52
+ return [Math.floor(t / T.Minute), "minute"];
53
+ case i < T.Day:
54
+ return [Math.floor(t / T.Hour), "hour"];
55
+ case i < T.Week:
56
+ return [Math.floor(t / T.Day), "day"];
57
+ case i < T.Month:
58
+ return [Math.floor(t / T.Week), "week"];
58
59
  case i < n:
59
- return [Math.floor(t / N.Month), "month"];
60
+ return [Math.floor(t / T.Month), "month"];
60
61
  default:
61
62
  return [Math.floor(t / n), "year"];
62
63
  }
63
64
  }
64
- function Pe(e) {
65
+ function Ne(e) {
65
66
  return (typeof e == "number" ? e : e.getTime?.()) - (/* @__PURE__ */ new Date()).getTime();
66
67
  }
67
68
  function Te({ locale: e, time: t, t9n: i }) {
68
69
  if (!e || !t)
69
70
  return "";
70
- const n = Pe(t);
71
- Z[e] ??= new Intl.RelativeTimeFormat(e, { style: "long" });
72
- const r = xe(n);
73
- return r ? r[1] === "second" ? i?.lessThanOneMinute || `< ${Z[e].format(r[0] > 0 ? 1 : -1, "minutes")}` : Z[e].format(r[0], r[1]) : "";
71
+ const n = Ne(t);
72
+ Y[e] ??= new Intl.RelativeTimeFormat(e, { style: "long" });
73
+ const r = Pe(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]) : "";
74
75
  }
75
- const zt = {
76
+ const Wt = {
76
77
  month: "long",
77
78
  day: "numeric",
78
79
  year: "numeric"
79
- }, Wt = {
80
+ }, Rt = {
80
81
  month: "long",
81
82
  day: "numeric"
82
83
  };
83
- function Rt({ locale: e, time: t }, i) {
84
+ function Vt({ locale: e, time: t }, i) {
84
85
  if (!e || !t)
85
86
  return "";
86
87
  const n = new Date(t);
87
- return yt(n, i ? zt : Wt);
88
+ return yt(n, i ? Wt : Rt);
88
89
  }
89
- async function Vt({ portal: e }) {
90
+ async function Ht({ portal: e }) {
90
91
  if (!e?.user)
91
92
  return { result: [] };
92
- const t = `${e.restUrl}/community/users/${e.user.id}/notifications`, { result: i, error: n } = await U(t);
93
+ const t = `${e.restUrl}/community/users/${e.user.id}/notifications`, { result: i, error: n } = await G(t);
93
94
  return n ? { error: n } : { result: i?.notifications };
94
95
  }
95
- async function Ht(e, t) {
96
+ async function qt(e, t) {
96
97
  if (!e?.user)
97
98
  return { success: !0 };
98
- const i = t.map((o) => ({ portal: e, id: o })).map(Ne);
99
+ const i = t.map((o) => ({ portal: e, id: o })).map(Ce);
99
100
  return { success: !((await Promise.allSettled(i))?.filter((o) => o.status === "rejected" || !o.value?.success)).length };
100
101
  }
101
- async function Ne({
102
+ async function Ce({
102
103
  portal: e,
103
104
  id: t
104
105
  }) {
105
- const i = `${e.restUrl}/community/users/${e.user?.id}/notifications/${t}/delete`, { result: n } = await U(i, { method: "post" });
106
+ const i = `${e.restUrl}/community/users/${e.user?.id}/notifications/${t}/delete`, { result: n } = await G(i, { method: "post" });
106
107
  return n?.success ? { success: !0, id: t } : { success: !1, id: t };
107
108
  }
108
- const Ce = "notifications-menu";
109
- function qt(e) {
109
+ const Me = "notifications-menu";
110
+ function Jt(e) {
110
111
  try {
111
112
  const t = decodeURIComponent(e);
112
113
  return t !== e ? t : e;
@@ -114,7 +115,7 @@ function qt(e) {
114
115
  return e;
115
116
  }
116
117
  }
117
- function Jt(e) {
118
+ function Kt(e) {
118
119
  switch (e) {
119
120
  case "group_join_admin":
120
121
  return "users";
@@ -169,7 +170,7 @@ function Jt(e) {
169
170
  return "bell";
170
171
  }
171
172
  }
172
- function Kt({
173
+ function Qt({
173
174
  notification: e,
174
175
  portal: t,
175
176
  locale: i,
@@ -180,12 +181,12 @@ function Kt({
180
181
  date: Te({ locale: i, time: e.received, t9n: n }),
181
182
  id: e.id,
182
183
  text: "",
183
- icon: Jt(e.type)
184
+ icon: Kt(e.type)
184
185
  };
185
- if (e.type === "webapp_not_copied" && t.isPortal && (e.type = "webapp_not_copied_portal"), e.data?.taskTitle && (e.data.taskTitle = qt(e.data.taskTitle)), e.type === "message_received")
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")
186
187
  r.text = e.data.message || "";
187
188
  else if (n.types[e.type]) {
188
- const o = Q({ portal: t, usePortalHostname: !!t.user });
189
+ const o = oe({ portal: t, usePortalHostname: !!t.user });
189
190
  e.data.baseUrl = `${o}/home/`, r.text = K(n.types[e.type], e.data);
190
191
  }
191
192
  if (r.text)
@@ -193,64 +194,64 @@ function Kt({
193
194
  }
194
195
  return null;
195
196
  }
196
- async function ge({
197
+ async function be({
197
198
  portal: e,
198
199
  locale: t,
199
200
  t9n: i
200
201
  }) {
201
202
  if (!i)
202
203
  return [];
203
- const { result: n, error: r } = await Vt({ portal: e });
204
- return r && console.error(r), n?.length ? n.map((s) => Kt({ notification: s, portal: e, t9n: i, locale: t })).filter((s) => s) : [];
204
+ const { result: n, error: r } = await Ht({ portal: e });
205
+ return r && console.error(r), n?.length ? n.map((s) => Qt({ notification: s, portal: e, t9n: i, locale: t })).filter((s) => s) : [];
205
206
  }
206
- function Qt({ notifications: e, messages: t, handleToggleNotifications: i, handleToggleSearch: n, notificationsActive: r }) {
207
- return t ? l`<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;
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=${Me} @click=${() => i(!r)} @focusin=${() => n(!1, !0)}></calcite-action>` : null;
208
209
  }
209
210
  function J({ icon: e, title: t, description: i }) {
210
- return !t && !i ? null : l`<div class="empty">${e && l`<svg xmlns=http://www.w3.org/2000/svg width=64 height=64 viewBox="0 0 64 64" fill=none>${vt`<path d=${$t[e] ?? L} fill=var(--calcite-color-border-input) />`}</svg>` || ""}${t && l`<h3 class="notifications__empty__header">${t}</h3>` || ""}${i && l`<p class="notifications__empty__text">${i}</p>` || ""}</div>`;
211
- }
212
- function Xt({ notifications: e, deleteNotifications: t, messages: i, navigate: n, portal: r, notificationsActive: o, handleToggleNotifications: s, notificationDeleteProgress: a }) {
213
- return i ? l`<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 ? l`<div class="notifications notifications--full">${typeof a == "number" && l`<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>${G(e, (c) => c.id, (c) => l`<calcite-list-item closable @calciteListItemClose=${async () => await t([c.id])} .messageOverrides=${{ close: i.dismissLabel }} .iconStart=${c.icon}><div slot=content class="notification"><div class="notification__message" .innerHTML=${c.text ?? ""} @click=${(d) => {
214
- const h = d.target, g = h.href;
215
- if (h.nodeName === "CALCITE-LINK" && g) {
216
- const p = `${Q({ portal: r, usePortalHostname: !!r.user })}/home/`;
217
- n({ event: d, href: g, relativePath: g.replace(p, "") });
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
+ }
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=${Me} @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=${(d) => {
215
+ const h = d.target, b = h.href;
216
+ if (h.nodeName === "CALCITE-LINK" && b) {
217
+ const p = `${oe({ portal: r, usePortalHostname: !!r.user })}/home/`;
218
+ n({ event: d, href: b, relativePath: b.replace(p, "") });
218
219
  }
219
- }}></div><div class="notification__date">${c.date}</div></div></calcite-list-item>`)}</calcite-list></div><calcite-button class="notifications__dismiss" scale=l appearance=transparent @click=${async (c) => {
220
- const d = c.currentTarget?.parentElement;
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 d = l.currentTarget?.parentElement;
221
222
  await t(e?.map(({ id: h }) => h)), d.open = !1;
222
- }}>${i.dismissAllLabel}</calcite-button>` : l`<div class="notifications">${J({ title: i.noNotifications, description: i.noNotificationsDescription, icon: "check" })}</div>`}</calcite-popover>` : null;
223
+ }}>${i.dismissAllLabel}</calcite-button>` : c`<div class="notifications">${J({ title: i.noNotifications, description: i.noNotificationsDescription, icon: "check" })}</div>`}</calcite-popover>` : null;
223
224
  }
224
- function Yt(e) {
225
+ function Zt(e) {
225
226
  return e.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&");
226
227
  }
227
- function Zt(e, t, i, n) {
228
- oi(e, JSON.stringify(t), i);
229
- }
230
- function ei(e) {
231
- return ni(e, !0);
228
+ function ei(e, t, i, n) {
229
+ si(e, JSON.stringify(t), i);
232
230
  }
233
231
  function ti(e) {
232
+ return ri(e, !0);
233
+ }
234
+ function ii(e) {
234
235
  try {
235
236
  window.localStorage.removeItem(e);
236
237
  } catch {
237
238
  }
238
239
  }
239
- function ii(e) {
240
+ function ni(e) {
240
241
  try {
241
242
  window.sessionStorage.removeItem(e);
242
243
  } catch {
243
244
  }
244
245
  }
245
- function ni(e, t) {
246
- const i = ri(e);
246
+ function ri(e, t) {
247
+ const i = oi(e);
247
248
  return i && t ? JSON.parse(i) : i;
248
249
  }
249
- function ri(e) {
250
- const t = document.cookie, i = new RegExp(`(?:^|; )${Yt(e)}=([^;]*)`, "u"), n = t.match(i);
250
+ function oi(e) {
251
+ const t = document.cookie, i = new RegExp(`(?:^|; )${Zt(e)}=([^;]*)`, "u"), n = t.match(i);
251
252
  return n ? decodeURIComponent(n[1]) : "";
252
253
  }
253
- function oi(e, t, i) {
254
+ function si(e, t, i) {
254
255
  i = i || {};
255
256
  let n = i?.expires;
256
257
  if (typeof n == "number") {
@@ -266,9 +267,9 @@ function oi(e, t, i) {
266
267
  }
267
268
  document.cookie = r;
268
269
  }
269
- async function si(e) {
270
+ async function ai(e) {
270
271
  const i = `owner:"${e.isPortal ? "esri" : "esri_config"}" AND title:"AppSwitcher Config" AND type:"Application Configuration"`, n = `${e.restUrl}/search`;
271
- return await U(n, { query: {
272
+ return await G(n, { query: {
272
273
  num: 1,
273
274
  start: 0,
274
275
  sortField: "title",
@@ -276,46 +277,46 @@ async function si(e) {
276
277
  q: i
277
278
  } });
278
279
  }
279
- async function ai(e) {
280
+ async function ci(e) {
280
281
  const t = { appSwitcher: { apps: [] } };
281
282
  if (!e?.id || !e.user)
282
283
  return t;
283
- const { result: i } = await si(e), n = i?.results?.[0];
284
+ const { result: i } = await ai(e), n = i?.results?.[0];
284
285
  if (!n)
285
286
  return t;
286
287
  const r = n.id;
287
288
  return (await Ie(e, r)).result;
288
289
  }
289
- async function ci(e, t, i) {
290
+ async function li(e, t, i) {
290
291
  if (!t || !e?.length)
291
292
  return { result: null };
292
293
  const n = `${i.restUrl}/search`;
293
- return await U(n, {
294
+ return await G(n, {
294
295
  query: {
295
296
  num: 100,
296
297
  q: `id:(${e.map((r) => `"${r.itemId}"`).join(" OR ")})`
297
298
  }
298
299
  });
299
300
  }
300
- async function li(e) {
301
+ async function ui(e) {
301
302
  const t = `${e.restUrl}/search`, i = {
302
303
  num: 10,
303
304
  start: 0,
304
305
  sortField: "title",
305
306
  sortOrder: "asc",
306
307
  q: 'owner:"esri" AND title:"BlockedApps Config" AND type: "Application Configuration"'
307
- }, { result: n } = await U(t, { query: i }), r = n?.results?.[0]?.id;
308
+ }, { result: n } = await G(t, { query: i }), r = n?.results?.[0]?.id;
308
309
  return r ? (await Ie(e, r))?.result?.blockedApps || [] : [];
309
310
  }
310
- function ui(e, t) {
311
+ function di(e, t) {
311
312
  const i = e?.toLowerCase() || "", n = `${t.title || ""} ${t.label || ""}`;
312
313
  return !i || n.toLowerCase().includes(i);
313
314
  }
314
- function di() {
315
- if (ei("APSW-query")?.expires > (/* @__PURE__ */ new Date()).setHours((/* @__PURE__ */ new Date()).getHours()))
315
+ function pi() {
316
+ if (ti("APSW-query")?.expires > (/* @__PURE__ */ new Date()).setHours((/* @__PURE__ */ new Date()).getHours()))
316
317
  return !0;
317
318
  const t = { expires: (/* @__PURE__ */ new Date()).setHours((/* @__PURE__ */ new Date()).getHours() + 5) };
318
- return Zt(
319
+ return ei(
319
320
  "APSW-query",
320
321
  t,
321
322
  {
@@ -325,16 +326,16 @@ function di() {
325
326
  }
326
327
  ), !1;
327
328
  }
328
- function pi(e, t) {
329
+ function hi(e, t) {
329
330
  const { landingPage: i } = t || {};
330
331
  return {
331
332
  image: "arcgis-online.png",
332
333
  label: "ArcGIS Online",
333
334
  title: "ArcGIS Online",
334
- url: `${ke({ portal: e })}/${i?.url ? i.url : Se(e.user) ? "organization.html" : "index.html"}`
335
+ url: `${xe({ portal: e })}/${i?.url ? i.url : Se(e.user) ? "organization.html" : "index.html"}`
335
336
  };
336
337
  }
337
- function be(e) {
338
+ function ve(e) {
338
339
  const i = [
339
340
  "api-for-python",
340
341
  "appstudio",
@@ -420,7 +421,7 @@ function be(e) {
420
421
  ].find((n) => e?.includes(n) && W(`${n}.png`) === e);
421
422
  return i ? W(`${i}.avif`) : e;
422
423
  }
423
- function hi(e, t) {
424
+ function mi(e, t) {
424
425
  const i = e?.blockedApps || [], n = [];
425
426
  return !i.length && !e.blockBetaApps || !t?.length ? [] : (e.blockBetaApps && t.forEach((r) => {
426
427
  r.isBeta && !i.includes(r.clientid) && i.push(r.clientid);
@@ -429,29 +430,29 @@ function hi(e, t) {
429
430
  o && n.push(o);
430
431
  }), n);
431
432
  }
432
- function P(e, t) {
433
+ function I(e, t) {
433
434
  return t && t[e.toLowerCase()]?.valid || !1;
434
435
  }
435
- function mi(e, t) {
436
- return e?.portalProperties && !e.portalProperties?.openData?.enabled ? !1 : P("HubforArcGIS", t);
437
- }
438
436
  function fi(e, t) {
437
+ return e?.portalProperties && !e.portalProperties?.openData?.enabled ? !1 : I("HubforArcGIS", t);
438
+ }
439
+ function gi(e, t) {
439
440
  if (!e)
440
441
  return !1;
441
442
  const i = [
442
443
  "portal:publisher:publishFeeds",
443
444
  "portal:publisher:publishRealTimeAnalytics",
444
445
  "portal:publisher:publishBigDataAnalytics"
445
- ], r = (e?.privileges || []).some((s) => i.includes(s)), o = P("velocity", t);
446
+ ], r = (e?.privileges || []).some((s) => i.includes(s)), o = I("velocity", t);
446
447
  return r && o;
447
448
  }
448
- function gi(e) {
449
- return P("HubforArcGIS", e);
449
+ function bi(e) {
450
+ return I("HubforArcGIS", e);
450
451
  }
451
- function bi(e, t) {
452
- return !(e.isPortal && e.portalProperties?.newMapViewerEnabled === !1) && P("arcgisWebApps", t);
452
+ function vi(e, t) {
453
+ return !(e.isPortal && e.portalProperties?.newMapViewerEnabled === !1) && I("arcgisWebApps", t);
453
454
  }
454
- function vi(e) {
455
+ function _i(e) {
455
456
  return !!e.helperServices?.rasterAnalytics && !!e.helperServices.orthoMapping;
456
457
  }
457
458
  function wi(e, t, i) {
@@ -461,70 +462,70 @@ function wi(e, t, i) {
461
462
  function yi(e, t) {
462
463
  return !!e.helperServices?.locationTracking && t;
463
464
  }
464
- function _i(e, t, i, n) {
465
+ function $i(e, t, i, n) {
465
466
  const r = e?.user;
466
467
  return {
467
468
  "Open Data": {
468
- hasAccess: () => mi(e, n)
469
+ hasAccess: () => fi(e, n)
469
470
  },
470
471
  AppStudio: {
471
- hasAccess: () => P("arcgisWebApps", n)
472
+ hasAccess: () => I("arcgisWebApps", n)
472
473
  },
473
474
  "ArcGIS Velocity": {
474
- hasAccess: () => e.isPortal || fi(r, n)
475
+ hasAccess: () => e.isPortal || gi(r, n)
475
476
  },
476
477
  "ArcGIS Hub": {
477
- hasAccess: () => P("HubforArcGIS", n)
478
+ hasAccess: () => I("HubforArcGIS", n)
478
479
  },
479
480
  "ArcGIS Enterprise Sites": {
480
- hasAccess: () => gi(n)
481
+ hasAccess: () => bi(n)
481
482
  },
482
483
  "ArcGIS QuickCapture Web Designer": {
483
- hasAccess: () => P("arcgisWebApps", n)
484
+ hasAccess: () => I("arcgisWebApps", n)
484
485
  },
485
486
  "ArcGIS Dashboards": {
486
- hasAccess: () => P("dashboards", n)
487
+ hasAccess: () => I("dashboards", n)
487
488
  },
488
489
  "Map Viewer": {
489
- hasAccess: () => bi(e, n)
490
+ hasAccess: () => vi(e, n)
490
491
  },
491
492
  "Map Viewer Classic": {
492
- hasAccess: () => P("arcgisWebApps", n)
493
+ hasAccess: () => I("arcgisWebApps", n)
493
494
  },
494
495
  "Operations Dashboard for ArcGIS": {
495
- hasAccess: () => P("opsdashboard", n)
496
+ hasAccess: () => I("opsdashboard", n)
496
497
  },
497
498
  "ArcGIS Dashboards Classic": {
498
- hasAccess: () => P("opsdashboard", n)
499
+ hasAccess: () => I("opsdashboard", n)
499
500
  },
500
501
  "Ortho Maker": {
501
- hasAccess: () => vi(e)
502
+ hasAccess: () => _i(e)
502
503
  },
503
504
  Notebook: {
504
505
  hasAccess: () => wi(e, r, t)
505
506
  },
506
507
  "Scene Viewer": {
507
- hasAccess: () => P("arcgisWebApps", n)
508
+ hasAccess: () => I("arcgisWebApps", n)
508
509
  },
509
510
  "Story Maps": {
510
- hasAccess: () => P("arcgisWebApps", n)
511
+ hasAccess: () => I("arcgisWebApps", n)
511
512
  },
512
513
  Survey123: {
513
- hasAccess: () => P("survey123", n)
514
+ hasAccess: () => I("survey123", n)
514
515
  },
515
516
  "Track Viewer": {
516
517
  hasAccess: () => yi(e, i)
517
518
  },
518
519
  "Instant Apps": {
519
520
  // For Portal
520
- hasAccess: () => P("arcgisWebApps", n)
521
+ hasAccess: () => I("arcgisWebApps", n)
521
522
  },
522
523
  "ArcGIS Maps for Adobe Creative Cloud": {
523
- hasAccess: () => P("arcgisWebApps", n) && !e.isPortal
524
+ hasAccess: () => I("arcgisWebApps", n) && !e.isPortal
524
525
  }
525
526
  };
526
527
  }
527
- function $i(e) {
528
+ function ki(e) {
528
529
  let t = {
529
530
  opsdashboard: 1,
530
531
  arcgisWebApps: 1,
@@ -548,13 +549,13 @@ function $i(e) {
548
549
  };
549
550
  return e.isPortal && (t = { ...t, arcgisonline: 1, arcgisUrban: 1, arcgisinstantapps: 1 }), t;
550
551
  }
551
- function ie(e) {
552
+ function te(e) {
552
553
  return e.sourceJSON?.subscriptionInfo?.options?.includes("Developer");
553
554
  }
554
555
  function W(e) {
555
- return te(`assets/portal-navigation/apps/${e || ""}`);
556
+ return ee(`assets/portal-navigation/apps/${e || ""}`);
556
557
  }
557
- function Me(e, t, i) {
558
+ function Le(e, t, i) {
558
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}`;
559
560
  }
560
561
  function D(e, t, i) {
@@ -564,7 +565,7 @@ function D(e, t, i) {
564
565
  }
565
566
  return delete e.isLicensed, delete e.privileges, e.itemId = t, e;
566
567
  }
567
- function Le() {
568
+ function Oe() {
568
569
  return `${W()}svg-app-circle.svg`;
569
570
  }
570
571
  function Ai(e, t, i) {
@@ -574,16 +575,16 @@ function Ai(e, t, i) {
574
575
  itemId: e.itemId,
575
576
  canAccess: !0,
576
577
  webMappingApp: !0,
577
- image: n ? Me(e, t, i) : void 0,
578
+ image: n ? Le(e, t, i) : void 0,
578
579
  label: e.title || e.label,
579
580
  url: e.url,
580
- placeHolderIcon: e.placeHolderIcon || Le()
581
+ placeHolderIcon: e.placeHolderIcon || Oe()
581
582
  };
582
583
  }
583
- function ki(e, t, i) {
584
- 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;
584
+ function xi(e, t, i) {
585
+ return e.appSwitcher?.image || e.icon ? e.image = Le(e, t, i) : e.placeHolderIcon = Oe(), e.abbr = e.appSwitcher?.abbr || e.abbreviation, delete e.abbreviation, delete e.appSwitcher, delete e.approvedApp, delete e.webMappingApp, e;
585
586
  }
586
- function ve(e, t) {
587
+ function _e(e, t) {
587
588
  e.forEach((i) => {
588
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"));
589
590
  });
@@ -597,65 +598,65 @@ async function Si({
597
598
  provisionedListings: o,
598
599
  orgCapabilities: s,
599
600
  trackViewerEnabled: a,
600
- notebookServerEnabled: c,
601
+ notebookServerEnabled: l,
601
602
  willQueryForItems: d,
602
603
  approvedApps: h
603
604
  }) {
604
- const g = {}, p = {}, _ = _i(i, c, a, n), S = $i(i), k = [], I = e.length;
605
- for (let m = 0; m < I; m++) {
606
- const u = e[m], w = u.itemId || u.title;
607
- let T = !0;
608
- const f = !u.serverFunction || t?.some((x) => {
609
- const V = (x.serverFunction?.split(",") || []).includes(u.serverFunction);
610
- return V && u.serverFunction === "Velocity" && (u.url = x.url), V;
611
- }), b = r?.some(
612
- (x) => u.itemId && u.itemId === x.itemid || u.title && u.title === x.title
605
+ const b = {}, p = {}, y = $i(i, l, a, n), x = ki(i), k = [], P = e.length;
606
+ for (let m = 0; m < P; m++) {
607
+ const u = e[m], _ = u.itemId || u.title;
608
+ let N = !0;
609
+ const g = !u.serverFunction || t?.some((S) => {
610
+ const V = (S.serverFunction?.split(",") || []).includes(u.serverFunction);
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
613
614
  );
614
- if (g[w] = 1, p[w] = u, b || ie(i) && !u.showInLocationPlatform || i.sourceJSON?.portalDeploymentType === "ArcGISEnterpriseOnKubernetes" && u.supportsKubernetes === !1)
615
+ if (b[_] = 1, p[_] = u, v || te(i) && !u.showInLocationPlatform || i.sourceJSON?.portalDeploymentType === "ArcGISEnterpriseOnKubernetes" && u.supportsKubernetes === !1)
615
616
  continue;
616
617
  const A = u.title;
617
- if (_[A] && !_[A]?.hasAccess())
618
+ if (y[A] && !y[A]?.hasAccess())
618
619
  continue;
619
- const O = i.sourceJSON?.subscriptionInfo;
620
+ const E = i.sourceJSON?.subscriptionInfo;
620
621
  if (u.subscriptionType) {
621
- O?.type === u.subscriptionType && (p[w].canAccess = !0, k.push(D(u, w, i)));
622
+ E?.type === u.subscriptionType && (p[_].canAccess = !0, k.push(D(u, _, i)));
622
623
  continue;
623
624
  }
624
625
  if (u.orgCapabilities) {
625
- s?.length && s.some((C) => u.orgCapabilities?.includes(C.id)) && (p[w].canAccess = !0, k.push(D(u, w, i)));
626
+ s?.length && s.some((M) => u.orgCapabilities?.includes(M.id)) && (p[_].canAccess = !0, k.push(D(u, _, i)));
626
627
  continue;
627
628
  }
628
- if (!u.privileges?.length && !u.isLicensed && f && (u.label !== "ArcGIS Location Platform" || ie(i))) {
629
- p[w].canAccess = !0, k.push(D(u, w, i));
629
+ if (!u.privileges?.length && !u.isLicensed && g && (u.label !== "ArcGIS Location Platform" || te(i))) {
630
+ p[_].canAccess = !0, k.push(D(u, _, i));
630
631
  continue;
631
632
  }
632
633
  if (i.user?.sourceJSON?.userLicenseTypeId?.toLowerCase() === "storytellerut" && u.label?.toLowerCase() === "storymaps") {
633
- p[w].canAccess = !0, k.push(D(u, w, i));
634
+ p[_].canAccess = !0, k.push(D(u, _, i));
634
635
  continue;
635
636
  }
636
637
  if (u.privileges?.length && i.user?.privileges) {
637
- for (let x = 0; x < u.privileges.length; x++)
638
- if (!i.user.privileges.includes(u.privileges[x])) {
639
- T = !1;
638
+ for (let S = 0; S < u.privileges.length; S++)
639
+ if (!i.user.privileges.includes(u.privileges[S])) {
640
+ N = !1;
640
641
  break;
641
642
  }
642
- if (!u.isLicensed && T && f) {
643
- p[w].canAccess = !0, k.push(D(u, w, i));
643
+ if (!u.isLicensed && N && g) {
644
+ p[_].canAccess = !0, k.push(D(u, _, i));
644
645
  continue;
645
646
  }
646
647
  }
647
- if (u.isLicensed && T && f) {
648
- for (let x = 0; x < o.length; x++)
649
- if (w === o[x].itemId || w === o[x].title) {
650
- p[w].canAccess = !0, k.push(D(u, w, i));
648
+ if (u.isLicensed && N && g) {
649
+ for (let S = 0; S < o.length; S++)
650
+ if (_ === o[S].itemId || _ === o[S].title) {
651
+ p[_].canAccess = !0, k.push(D(u, _, i));
651
652
  break;
652
653
  }
653
654
  }
654
655
  }
655
- const y = await Lt(i);
656
+ const w = await Ot(i);
656
657
  return o.forEach((m) => {
657
- if (m.type === "Web Mapping Application" && !S[m.clientId] && !g[m.itemId] && m.url && m.title && !g[m.title] && !m.typeKeywords.includes("hideFromAppSwitcher")) {
658
- const u = Ai(m, i, y);
658
+ 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 u = Ai(m, i, w);
659
660
  p[m.itemId] = u, k.push(u);
660
661
  }
661
662
  }), {
@@ -668,14 +669,14 @@ async function Si({
668
669
  approvedApp: !0,
669
670
  canAccess: !d
670
671
  };
671
- return p[m.itemId] = u, ki(u, i, y);
672
+ return p[m.itemId] = u, xi(u, i, w);
672
673
  }),
673
674
  ...k
674
675
  ],
675
676
  appDictionary: p
676
677
  };
677
678
  }
678
- function ee(e, t) {
679
+ function Z(e, t) {
679
680
  return e.filter((i) => !t?.some(
680
681
  (r) => i.itemId && i.itemId === r.itemid || i.title && i.title === r.title
681
682
  ));
@@ -697,83 +698,83 @@ async function Ii({
697
698
  }) {
698
699
  if (!e?.id || !e.user)
699
700
  return { apps: [], hiddenApps: {} };
700
- const n = di(), [r, o, s, a, c, d, h] = await Promise.all([
701
- ai(e),
702
- Nt(e),
701
+ const n = pi(), [r, o, s, a, l, d, h] = await Promise.all([
702
+ ci(e),
703
703
  Ct(e),
704
- kt(e),
704
+ Mt(e),
705
+ xt(e),
705
706
  St(e),
706
707
  It(e),
707
- li(e)
708
- ]), g = e.isPortal ? await xt(e) : null, p = s?.result?.properties;
709
- let _ = r?.appSwitcher?.apps || [];
710
- e.isPortal || (_ = _.filter(
711
- (f) => f.title !== "Map Viewer Classic" || e.sourceJSON.created < /* @__PURE__ */ new Date("February 26 2025")
712
- ), _.unshift(pi(e, p)));
713
- const S = a?.result?.approvedApps?.filter((f) => !f.hideForNonPrivilegedMember) || [], k = {};
714
- o?.forEach((f) => {
715
- const b = f.clientId?.toLowerCase();
716
- b && (k[b] = {
708
+ ui(e)
709
+ ]), b = e.isPortal ? await Pt(e) : null, p = s?.result?.properties;
710
+ let y = r?.appSwitcher?.apps || [];
711
+ e.isPortal || (y = y.filter(
712
+ (g) => g.title !== "Map Viewer Classic" || e.sourceJSON.created < /* @__PURE__ */ new Date("February 26 2025")
713
+ ), y.unshift(hi(e, p)));
714
+ const x = a?.result?.approvedApps?.filter((g) => !g.hideForNonPrivilegedMember) || [], k = {};
715
+ o?.forEach((g) => {
716
+ const v = g.clientId?.toLowerCase();
717
+ v && (k[v] = {
717
718
  valid: !0,
718
- itemId: f.itemId,
719
- clientId: f.clientId
719
+ itemId: g.itemId,
720
+ clientId: g.clientId
720
721
  });
721
- }), c?.forEach((f) => {
722
- const b = f.id?.toLowerCase();
723
- b && (k[b] = {
722
+ }), l?.forEach((g) => {
723
+ const v = g.id?.toLowerCase();
724
+ v && (k[v] = {
724
725
  valid: !0,
725
- clientId: f.id
726
+ clientId: g.id
726
727
  });
727
728
  });
728
- const I = hi(d, h), { apps: y, appDictionary: v } = await Si({
729
- userApps: _,
730
- servers: g,
729
+ const P = mi(d, h), { apps: w, appDictionary: f } = await Si({
730
+ userApps: y,
731
+ servers: b,
731
732
  portal: e,
732
- blockedApps: I,
733
+ blockedApps: P,
733
734
  provisionedListings: o,
734
- orgCapabilities: c,
735
+ orgCapabilities: l,
735
736
  licenses: k,
736
737
  trackViewerEnabled: t,
737
738
  notebookServerEnabled: i,
738
739
  willQueryForItems: n,
739
- approvedApps: S
740
+ approvedApps: x
740
741
  });
741
- p?.appLauncher && (p?.appLauncher.primary && ve(p?.appLauncher.primary, e), p?.appLauncher.secondary && ve(p?.appLauncher.secondary, e));
742
+ p?.appLauncher && (p?.appLauncher.primary && _e(p?.appLauncher.primary, e), p?.appLauncher.secondary && _e(p?.appLauncher.secondary, e));
742
743
  let m = [], u = [];
743
744
  if (!p?.appLauncher?.primary || !p?.appLauncher.secondary)
744
- m = y.slice().sort((f, b) => (f.label || "") < (b.label || "") ? -1 : 1), m = ee(m, I), u = [];
745
+ m = w.slice().sort((g, v) => (g.label || "") < (v.label || "") ? -1 : 1), m = Z(m, P), u = [];
745
746
  else {
746
- const { result: f } = await ci(S, n, e);
747
- f?.results?.length && f.results.forEach(($) => {
748
- const A = v[$.id];
747
+ const { result: g } = await li(x, n, e);
748
+ g?.results?.length && g.results.forEach(($) => {
749
+ const A = f[$.id];
749
750
  A.canAccess = !0, A.hasChanged = A.url !== $.url ? !!$.url : !1;
750
751
  });
751
- const b = { ...v };
752
+ const v = { ...f };
752
753
  p?.appLauncher?.primary?.forEach(($) => {
753
754
  $.label === "Map Viewer" && ($.uid = "Map Viewer");
754
755
  }), m = p?.appLauncher.primary.reduce(
755
- ($, A) => we({ apps: $, app: A, appDictionary: v, newAppDictionary: b, portal: e }),
756
+ ($, A) => we({ apps: $, app: A, appDictionary: f, newAppDictionary: v, portal: e }),
756
757
  []
757
758
  ) || [], u = p?.appLauncher.secondary.reduce(
758
- ($, A) => we({ apps: $, app: A, appDictionary: v, newAppDictionary: b, portal: e }),
759
+ ($, A) => we({ apps: $, app: A, appDictionary: f, newAppDictionary: v, portal: e }),
759
760
  []
760
- ) || [], m = ee(m, I), u = ee(u, I), ie(e) && (m = m.filter(($) => $.canAccess), u = u.filter(($) => $.canAccess));
761
- for (const $ of Object.keys(b))
762
- b[$].canAccess && (b[$].isNew = !0, v[$] = b[$], m.push(b[$]));
761
+ ) || [], m = Z(m, P), u = Z(u, P), te(e) && (m = m.filter(($) => $.canAccess), u = u.filter(($) => $.canAccess));
762
+ for (const $ of Object.keys(v))
763
+ v[$].canAccess && (v[$].isNew = !0, f[$] = v[$], m.push(v[$]));
763
764
  }
764
- const w = [...m, ...u], T = u.reduce((f, b) => (b.itemId && (f[b.itemId] = !0), f), {});
765
+ const _ = [...m, ...u], N = u.reduce((g, v) => (v.itemId && (g[v.itemId] = !0), g), {});
765
766
  return {
766
- apps: w,
767
- hiddenApps: T,
767
+ apps: _,
768
+ hiddenApps: N,
768
769
  signInSettings: d,
769
770
  licenses: k,
770
771
  userProperties: p
771
772
  };
772
773
  }
773
- function xi(e, t) {
774
+ function Pi(e, t) {
774
775
  return !e?.itemId || !t ? !1 : t[e.itemId];
775
776
  }
776
- async function Pi({
777
+ async function Ni({
777
778
  apps: e,
778
779
  hiddenApps: t,
779
780
  userProperties: i,
@@ -781,8 +782,8 @@ async function Pi({
781
782
  }) {
782
783
  const r = e.reduce(
783
784
  (s, a) => {
784
- const c = t[a.itemId];
785
- return s[c ? "secondary" : "primary"].push({
785
+ const l = t[a.itemId];
786
+ return s[l ? "secondary" : "primary"].push({
786
787
  label: a.label,
787
788
  uid: a.itemId || a.title
788
789
  }), s;
@@ -791,42 +792,42 @@ async function Pi({
791
792
  ), o = { ...i || {}, appLauncher: r };
792
793
  return await Tt(o, n);
793
794
  }
794
- function Oe({ app: e }) {
795
+ function Ee({ app: e }) {
795
796
  if (!e)
796
797
  return null;
797
798
  if (!e.canAccess)
798
- return l`<span class="list-item__logo list-item__logo-empty"></span>`;
799
+ return c`<span class="list-item__logo list-item__logo-empty"></span>`;
799
800
  const t = !e.image && e.abbr;
800
- return l`${t && l`<span class="list-item__logo">${e.placeHolderIcon && l`<img src=${be(e.placeHolderIcon) ?? L} class="list-item__logo-bg" alt>` || ""}<span style=${Ae({ fontSize: e.fontSize || "20px" })} class="list-item__abbr">${e.abbr}</span></span>` || ""}${e.image && l`<img src=${be(e.image) ?? L} class="list-item__logo" alt>` || ""}${e.isNew && l`<span class=${oe({ "list-item__indicator": !0 })}></span>` || ""}`;
801
+ return c`${t && c`<span class="list-item__logo">${e.placeHolderIcon && c`<img src=${ve(e.placeHolderIcon) ?? L} class="list-item__logo-bg" alt>` || ""}<span style=${Ae({ fontSize: e.fontSize || "20px" })} class="list-item__abbr">${e.abbr}</span></span>` || ""}${e.image && c`<img src=${ve(e.image) ?? L} class="list-item__logo" alt>` || ""}${e.isNew && c`<span class=${re({ "list-item__indicator": !0 })}></span>` || ""}`;
801
802
  }
802
803
  function Ti({ app: e, hiddenApps: t, messages: i, toggleAppVisibility: n }) {
803
804
  if (!e || !i)
804
805
  return null;
805
- const r = xi(e, t), { title: o, itemId: s, label: a } = e;
806
- return l`<calcite-list-item .label=${o || a} class=${oe(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>`;
806
+ const r = Pi(e, t), { title: o, itemId: s, label: a } = e;
807
+ return c`<calcite-list-item .label=${o || a} class=${re(r ? "app--hidden" : "")}><span slot=content-start>${Ee({ 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>`;
807
808
  }
808
- function Ni({ app: e, messages: t }) {
809
+ function Ci({ app: e, messages: t }) {
809
810
  if (!e || !t)
810
811
  return null;
811
812
  const { title: i, itemId: n, label: r, url: o, isNew: s } = e, a = t?.descriptions?.[i] || t?.descriptions?.[r];
812
- return l`<li class="list-item" id=${n ?? L}><a class="list-item__link" href=${o ?? L}>${l`<span class="list-item__container">${Oe({ app: e })}<span class="list-item__title">${i || r}</span>${s && l`<calcite-chip scale=s class="list-item__chip" icon=asterisk-small .label=${t.new}>${t.new}</calcite-chip>` || ""}</span>`}</a>${a && l`<calcite-tooltip .referenceElement=${n} placement=trailing>${a}</calcite-tooltip>` || ""}</li>`;
813
+ return c`<li class="list-item" id=${n ?? L}><a class="list-item__link" href=${o ?? L} target=_blank>${c`<span class="list-item__container">${Ee({ 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>${a}</calcite-tooltip>` || ""}</li>`;
813
814
  }
814
- function Ci({ apps: e, appsLoading: t, appsSearchTerm: i, hiddenApps: n, messages: r, handleAppsSearch: o, handleAppReorder: s, handleAppSave: a, handleAppHide: c, handleAppCancel: d, handleAppEdit: h, editingApplications: g, portal: p }) {
815
+ function Mi({ apps: e, appsLoading: t, appsSearchTerm: i, hiddenApps: n, messages: r, handleAppsSearch: o, handleAppReorder: s, handleAppSave: a, handleAppHide: l, handleAppCancel: d, handleAppEdit: h, editingApplications: b, portal: p }) {
815
816
  if (!e || !r)
816
817
  return null;
817
- const _ = i?.length > 0, S = (e || []).filter((y) => y.itemId && (!n?.[y.itemId] || _) && ui(i, y)), k = _ ? r.noAppResults.replace("${term}", i) : r.noAppsAvailable, I = _ ? M(p) ? r.noAppsDescriptionPublic : r.noAppResultsDescriptionOrg : r.noAppsAvailable;
818
- return g ? l`<div class="list__header"><calcite-button appearance=outline width=half @click=${() => {
818
+ 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
+ return b ? c`<div class="list__header"><calcite-button appearance=outline width=half @click=${() => {
819
820
  d();
820
821
  }}>${r.cancel}</calcite-button><calcite-button width=half @click=${() => {
821
822
  a();
822
- }}>${r.applyChanges}</calcite-button></div><calcite-list .label=${r.allMyApplications} drag-enabled @calciteListDragEnd=${(y) => {
823
- const { newIndex: v, oldIndex: m } = y.detail;
824
- s({ newIndex: v, oldIndex: m });
825
- }} .loading=${t}>${G(e, (y) => y.itemId, (y) => Ti({ app: y, hiddenApps: n, messages: r, toggleAppVisibility: (v, m) => {
826
- c({ app: v, hidden: m });
827
- } }))}</calcite-list>` : l`<div class="list__header"><calcite-input type=search icon .placeholder=${r.searchMyApps} scale=m class="list__search" @calciteInputInput=${(y) => {
828
- o(y.currentTarget.value);
829
- }}></calcite-input><calcite-button appearance=transparent kind=neutral icon-start=reorder-cards .label=${r.reorder} @click=${() => h()}></calcite-button></div>${S?.length > 0 ? l`<ul class="list">${G(S, (y) => y.itemId, (y) => Ni({ app: y, messages: r }))}</ul>` : J({ title: k, description: I, icon: i ? "search" : "apps" })}`;
823
+ }}>${r.applyChanges}</calcite-button></div><calcite-list .label=${r.allMyApplications} drag-enabled @calciteListDragEnd=${(w) => {
824
+ const { newIndex: f, oldIndex: m } = w.detail;
825
+ s({ newIndex: f, oldIndex: m });
826
+ }} .loading=${t}>${z(e, (w) => w.itemId, (w) => Ti({ app: w, hiddenApps: n, messages: r, toggleAppVisibility: (f, m) => {
827
+ l({ app: f, hidden: m });
828
+ } }))}</calcite-list>` : c`<div class="list__header"><calcite-input type=search icon .placeholder=${r.searchMyApps} scale=m class="list__search" @calciteInputInput=${(w) => {
829
+ 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>` : J({ title: k, description: P, icon: i ? "search" : "apps" })}`;
830
831
  }
831
832
  const ye = "portalAppClientId", le = {
832
833
  GeoanalyticsEngine: "geoanalyticsengine",
@@ -839,13 +840,13 @@ function ue(e) {
839
840
  function de(e) {
840
841
  return le.GeoanalyticsFabric === e;
841
842
  }
842
- function Ee(e) {
843
+ function je(e) {
843
844
  return le.IndoorsOnline === e;
844
845
  }
845
846
  function pe(e) {
846
847
  return ["Location Platform", "GeoAnalytics Fabric", "GeoAnalytics Engine", "Online", "Enterprise"].includes(e);
847
848
  }
848
- function Mi({
849
+ function Li({
849
850
  portal: e,
850
851
  messages: t,
851
852
  licenses: i,
@@ -854,68 +855,68 @@ function Mi({
854
855
  }) {
855
856
  if (!t || !e)
856
857
  return [];
857
- const o = e.sourceJSON?.subscriptionInfo, s = ji({ messages: t, portal: e });
858
+ const o = e.sourceJSON?.subscriptionInfo, s = Di({ messages: t, portal: e });
858
859
  if (!e.user)
859
860
  return s;
860
- if (!e || !s || e?.user && !i && !M(e))
861
+ if (!e || !s || e?.user && !i && !C(e))
861
862
  return [];
862
863
  const a = Gi({
863
864
  portal: e,
864
865
  licenses: i,
865
866
  subscriptionInfo: o
866
867
  });
867
- return Di({ messages: t, portal: e, clientId: n, signInSettings: r, navLinkDictionary: a });
868
+ return zi({ messages: t, portal: e, clientId: n, signInSettings: r, navLinkDictionary: a });
868
869
  }
869
- function Li(e) {
870
+ function Oi(e) {
870
871
  const { id: t, access: i, isPortal: n } = e;
871
872
  return !t && !i && !n;
872
873
  }
873
- function Oi(e, t) {
874
+ function Ei(e, t) {
874
875
  const i = new URL(e), n = t || window.location.pathname;
875
876
  return i.pathname === n;
876
877
  }
877
- function je({
878
+ function De({
878
879
  portal: e,
879
880
  clientId: t,
880
881
  signInSettings: i
881
882
  }) {
882
- const n = e.user, r = Ee(t), o = !!i?.blockedApps?.includes("arcgisnotebooks"), {
883
+ const n = e.user, r = je(t), o = !!i?.blockedApps?.includes("arcgisnotebooks"), {
883
884
  gallery: s = "all",
884
885
  groups: a = "all",
885
- map: c = "all",
886
+ map: l = "all",
886
887
  notebook: d = "notebookCreators",
887
888
  scene: h = "all"
888
889
  } = e.portalProperties?.topNav || {};
889
- let g = ["home"];
890
+ let b = ["home"];
890
891
  if (!n) {
891
892
  if (!e.portalProperties?.topNav) {
892
- const _ = ["gallery", "map", "scene", "groups"], S = e.isPortal ? ["help"] : [];
893
- return [...g, ..._, ...S];
893
+ const y = ["gallery", "map", "scene", "groups"], x = e.isPortal ? ["help"] : [];
894
+ return [...b, ...y, ...x];
894
895
  }
895
896
  return [
896
- ...g,
897
+ ...b,
897
898
  ...s === "all" ? ["gallery"] : [],
898
- ...c === "all" ? ["map"] : [],
899
+ ...l === "all" ? ["map"] : [],
899
900
  ...h === "all" ? ["scene"] : [],
900
901
  ...a === "all" ? ["groups"] : [],
901
902
  ...e.isPortal ? ["help"] : []
902
903
  ];
903
904
  }
904
905
  const p = n.orgId === e.id;
905
- return !e.portalProperties?.topNav && M(e) ? g = ["ArcGIS", "overview", "pricing", "map", "scene", "groups", "myContent"] : g = [
906
- ...g,
906
+ return !e.portalProperties?.topNav && C(e) ? b = ["ArcGIS", "overview", "pricing", "map", "scene", "groups", "myContent"] : b = [
907
+ ...b,
907
908
  ...(s === "all" || s === "members" && p) && !r ? ["gallery"] : [],
908
- ...(c === "all" || c === "members" && p || c === "mapCreators" && me(n)) && !r ? ["map"] : [],
909
+ ...(l === "all" || l === "members" && p || l === "mapCreators" && me(n)) && !r ? ["map"] : [],
909
910
  ...(h === "all" || h === "members" && p || h === "sceneCreators" && me(n)) && !r ? ["scene"] : [],
910
911
  ...!o && (!e.isPortal || e.sourceJSON.supportsHostedNotebooks) && (d === "members" && p || d === "notebookCreators" && At(n)) && !r ? ["notebook"] : [],
911
912
  ...(a === "all" || a === "members" && p) && !r ? ["groups"] : [],
912
913
  ...p && !r ? ["myContent", "organization"] : []
913
- ], g;
914
+ ], b;
914
915
  }
915
- function E(e) {
916
- return `${ke({ portal: e })}/`;
916
+ function O(e) {
917
+ return `${xe({ portal: e })}/`;
917
918
  }
918
- function Ei({
919
+ function ji({
919
920
  keys: e,
920
921
  navLinkDictionary: t,
921
922
  messages: i
@@ -924,24 +925,24 @@ function Ei({
924
925
  return e.forEach((r) => {
925
926
  const o = t[r];
926
927
  if (o && (!("show" in o) || o.show)) {
927
- const { href: s, newTab: a, icon: c, relativePath: d } = o;
928
+ const { href: s, newTab: a, icon: l, relativePath: d } = o;
928
929
  n.push({
929
930
  label: i[r],
930
931
  href: s,
931
932
  newTab: a,
932
933
  relativePath: d,
933
- icon: c
934
+ icon: l
934
935
  });
935
936
  }
936
937
  }), n;
937
938
  }
938
- function ji({
939
+ function Di({
939
940
  messages: e,
940
941
  portal: t
941
942
  }) {
942
943
  if (!e || !t)
943
944
  return [];
944
- const i = E(t), n = {
945
+ const i = O(t), n = {
945
946
  overview: { label: e.overview, href: `${i}../features/features.html`, icon: "information" },
946
947
  pricing: { label: e.pricing, href: `${i}../features/plans/pricing.html`, icon: "credit-card" },
947
948
  map: { label: e.map, href: `${i}apps/mapviewer/index.html`, icon: "map" },
@@ -951,16 +952,16 @@ function ji({
951
952
  gallery: { label: e.gallery, href: `${i}gallery.html`, relativePath: "gallery.html", icon: "gallery" },
952
953
  groups: { label: e.groups, href: `${i}groups.html`, relativePath: "groups.html", icon: "group" }
953
954
  };
954
- return (Li(t) ? ["overview", "pricing", "map", "scene", "help"] : je({ portal: t })).map((o) => n[o]);
955
+ return (Oi(t) ? ["overview", "pricing", "map", "scene", "help"] : De({ portal: t })).map((o) => n[o]);
955
956
  }
956
- function Di({
957
+ function zi({
957
958
  messages: e,
958
959
  portal: t,
959
960
  clientId: i,
960
961
  signInSettings: n,
961
962
  navLinkDictionary: r
962
963
  }) {
963
- const o = ue(i), s = je({ portal: t, clientId: i, signInSettings: n }), a = `${E(t)}geoanalytics${o ? "engine" : "fabric"}.html`;
964
+ const o = ue(i), s = De({ portal: t, clientId: i, signInSettings: n }), a = `${O(t)}geoanalytics${o ? "engine" : "fabric"}.html`;
964
965
  return o || de(i) ? [
965
966
  {
966
967
  // TODO: active calculations in the component need to account for hash for these options
@@ -981,20 +982,20 @@ function Di({
981
982
  href: `${a}#account`,
982
983
  label: e.account
983
984
  }
984
- ] : Ei({ keys: s, messages: e, navLinkDictionary: r });
985
+ ] : ji({ keys: s, messages: e, navLinkDictionary: r });
985
986
  }
986
987
  function Gi({
987
988
  portal: e,
988
989
  licenses: t,
989
990
  subscriptionInfo: i
990
991
  }) {
991
- const n = e.user, r = E(e), o = i?.options?.includes("Developer"), s = P("arcgiswebapps", t) || o && P("locationplatformwebapps", t) || M(e);
992
+ const n = e.user, r = O(e), o = i?.options?.includes("Developer"), s = I("arcgiswebapps", t) || o && I("locationplatformwebapps", t) || C(e);
992
993
  return {
993
994
  pricing: { href: `${r}../features/plans/pricing.html` },
994
995
  overview: { href: `${r}../features/features.html` },
995
996
  ArcGIS: {
996
- href: `${r}${M(e) ? "index.html" : "../features/features.html"}`,
997
- show: M(e) || !n
997
+ href: `${r}${C(e) ? "index.html" : "../features/features.html"}`,
998
+ show: C(e) || !n
998
999
  },
999
1000
  groups: {
1000
1001
  href: `${r}groups.html`,
@@ -1008,7 +1009,7 @@ function Gi({
1008
1009
  },
1009
1010
  map: {
1010
1011
  show: s,
1011
- href: `${r}/apps/mapviewer/index.html`,
1012
+ href: `${r}apps/mapviewer/index.html`,
1012
1013
  icon: "map"
1013
1014
  },
1014
1015
  help: {
@@ -1022,7 +1023,7 @@ function Gi({
1022
1023
  icon: "gallery"
1023
1024
  },
1024
1025
  home: {
1025
- show: !M(e) && !o,
1026
+ show: !C(e) && !o,
1026
1027
  href: `${r}index.html`,
1027
1028
  relativePath: "index.html",
1028
1029
  icon: "home"
@@ -1033,19 +1034,19 @@ function Gi({
1033
1034
  icon: "globe"
1034
1035
  },
1035
1036
  notebook: {
1036
- show: Ot(e),
1037
+ show: Et(e),
1037
1038
  href: `${r}notebook/notebookhome.html`,
1038
1039
  relativePath: "notebook/notebookhome.html",
1039
1040
  icon: "notebook"
1040
1041
  },
1041
1042
  organization: {
1042
- show: !M(e),
1043
+ show: !C(e),
1043
1044
  href: `${r}organization.html`,
1044
1045
  relativePath: "organization.html",
1045
1046
  icon: "organization"
1046
1047
  },
1047
1048
  features: {
1048
- show: M(e) && !e.isPortal,
1049
+ show: C(e) && !e.isPortal,
1049
1050
  href: `${r}../features/features.html`,
1050
1051
  icon: "information"
1051
1052
  }
@@ -1054,22 +1055,22 @@ function Gi({
1054
1055
  function Ui({ portal: e, item: t, messages: i, navigate: n, locale: r }) {
1055
1056
  if (!t || !i || !t.modified)
1056
1057
  return null;
1057
- const o = t.modified, s = { lessThanOneMinute: i.lessThanOneMinute }, a = xe(Pe(o)), c = a?.[1] === "year" || a?.[1] === "month" ? Rt({ locale: r, time: o }, a?.[1] === "year") : Te({ locale: r, time: o, t9n: s }), d = `item.html?id=${t.id}`, h = `${E(e)}${d}}`;
1058
- return se(t.id, l`<li class="list-item"><a class="list-item__link" href=${h ?? L} @click=${(g) => {
1059
- n({ event: g, href: h, relativePath: d });
1060
- }}>${l`<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: c })}</span></span></span>`}</a></li>`);
1058
+ const o = t.modified, s = { lessThanOneMinute: i.lessThanOneMinute }, a = Pe(Ne(o)), l = a?.[1] === "year" || a?.[1] === "month" ? Vt({ locale: r, time: o }, a?.[1] === "year") : Te({ locale: r, time: o, t9n: s }), d = `item.html?id=${t.id}`, h = `${O(e)}${d}}`;
1059
+ return se(t.id, c`<li class="list-item"><a class="list-item__link" href=${h ?? L} @click=${(b) => {
1060
+ n({ event: b, href: h, relativePath: d });
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">${K(i.lastUpdated, { date: l })}</span></span></span>`}</a></li>`);
1061
1062
  }
1062
- function Bi({ locale: e, navigate: t, portal: i, open: n, apps: r, appsLoading: o, hiddenApps: s, appsSearchTerm: a, handlePlatformClose: c, handleAppsSearch: d, handleAppReorder: h, handleAppSave: g, handleAppHide: p, handleAppCancel: _, handleAppEdit: S, handleItemSearch: k, editingApplications: I, recentContent: y, recentContentLoading: v, recentContentSearchTerm: m, product: u, productInfo: w, links: T, messages: f }) {
1063
- if (!u || !i || !f)
1063
+ function Bi({ locale: e, navigate: t, portal: i, open: n, apps: r, appsLoading: o, hiddenApps: s, appsSearchTerm: a, handlePlatformClose: l, handleAppsSearch: d, handleAppReorder: h, handleAppSave: b, handleAppHide: p, handleAppCancel: y, handleAppEdit: x, handleItemSearch: k, editingApplications: P, recentContent: w, recentContentLoading: f, recentContentSearchTerm: m, product: u, productInfo: _, links: N, messages: g }) {
1064
+ if (!u || !i || !g)
1064
1065
  return null;
1065
- const { name: b, icon: $ } = w || {};
1066
- return l`<calcite-sheet class="platform" .label=${f.label} position=inline-start display-mode=overlay id=example-sheet .open=${n} @calciteSheetClose=${c}><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">${b}</h2><p class="platform__subtitle">${i.name}</p></div><calcite-action icon=x text="Close menu" scale=l @click=${c}></calcite-action></div><div class="platform__container"><div class="platform__tiles">${T.filter(({ icon: A }) => A).map(({ label: A, href: O, icon: R, relativePath: x }) => l`<calcite-tile .icon=${R} .description=${A} .href=${O} alignment=center scale=s @keydown=${(C) => {
1067
- (C.key === "Enter" || C.key === " ") && t({ event: C, href: O, relativePath: x });
1068
- }} @click=${(C) => {
1069
- t({ event: C, href: O, relativePath: x });
1070
- }}></calcite-tile>`)}</div>${i?.user && !M(i) && l`<calcite-tabs layout=center class="platform__tabs"><calcite-tab-nav slot=title-group><calcite-tab-title selected>${f.myApps}</calcite-tab-title><calcite-tab-title>${f.recentContent}</calcite-tab-title></calcite-tab-nav><calcite-tab selected class="platform__tab">${o && l`<calcite-scrim loading></calcite-scrim>` || ""}${Ci({ apps: r, appsLoading: o, appsSearchTerm: a, hiddenApps: s, messages: f, handleAppsSearch: d, handleAppReorder: h, handleAppSave: g, handleAppHide: p, handleAppCancel: _, handleAppEdit: S, editingApplications: I, portal: i })}</calcite-tab><calcite-tab class="platform__tab"><div class="list__header"><calcite-input type=search icon .placeholder=${f.searchRecentContent} scale=m class="list__search" @calciteInputInput=${(A) => k(A.target.value)}></calcite-input></div>${v && !o && l`<calcite-scrim loading></calcite-scrim>` || ""}<div class="list__container">${y?.length > 0 || v ? l`<ul class="list">${G(y, (A) => A.id, (A) => Ui({ portal: i, messages: f, navigate: t, item: A, locale: e }))}</ul>` : m?.length ? J({ title: K(f.noAppResults, { term: m }), description: f.recentContentNoResultsDescription, icon: "search" }) : J({ title: f.noContent, description: f.noContentDescription, icon: "clock" })}</div></calcite-tab></calcite-tabs>` || ""}</div></calcite-panel></calcite-sheet>`;
1071
- }
1072
- const ne = [
1066
+ const { name: v, icon: $ } = _ || {};
1067
+ 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
+ (M.key === "Enter" || M.key === " ") && t({ event: M, href: E, relativePath: S });
1069
+ }} @click=${(M) => {
1070
+ 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: d, 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
+ }
1073
+ const ie = [
1073
1074
  "new",
1074
1075
  "open",
1075
1076
  "rename",
@@ -1083,16 +1084,16 @@ const ne = [
1083
1084
  async function Fi(e) {
1084
1085
  return await Promise.resolve({ status: "success" });
1085
1086
  }
1086
- function re(e) {
1087
- return ne.includes(e.id);
1087
+ function ne(e) {
1088
+ return ie.includes(e.id);
1088
1089
  }
1089
- function zi(e) {
1090
+ function Wi(e) {
1090
1091
  return (e || [])?.toSorted((t, i) => {
1091
- const n = re(t), r = re(i);
1092
- return n && !r ? -1 : r && !n ? 1 : r && n ? ne.indexOf(t.id) - ne.indexOf(i.id) : -1;
1092
+ const n = ne(t), r = ne(i);
1093
+ return n && !r ? -1 : r && !n ? 1 : r && n ? ie.indexOf(t.id) - ie.indexOf(i.id) : -1;
1093
1094
  });
1094
1095
  }
1095
- function Wi(e, t) {
1096
+ function Ri(e, t) {
1096
1097
  const i = {
1097
1098
  new: [],
1098
1099
  save: [],
@@ -1112,45 +1113,47 @@ function Wi(e, t) {
1112
1113
  copyLink: { text: t.copyLink, group: "share" },
1113
1114
  embed: { text: t.embed, group: "share" },
1114
1115
  details: { text: t.itemDetails, group: "details", external: !0 }
1115
- }, r = zi(e), o = [];
1116
+ }, r = Wi(e), o = [];
1116
1117
  return r.forEach((s) => {
1117
- if (!re(s)) {
1118
+ if (!ne(s)) {
1118
1119
  o.push(s);
1119
1120
  return;
1120
1121
  }
1121
- const { text: c, external: d, group: h } = n[s.id];
1122
- i[h].push({ text: c, external: d, ...s });
1122
+ const { text: l, external: d, group: h } = n[s.id];
1123
+ i[h].push({ text: l, external: d, ...s });
1123
1124
  }), o.forEach((s) => {
1124
1125
  const a = s.group || "custom";
1125
1126
  i[a].push(s);
1126
1127
  }), i;
1127
1128
  }
1128
- function Ri({ navigate: e, portal: t, menuItem: i, messages: n, portalItem: r, openProjectTitleEdit: o, projectMenuClick: s }) {
1129
+ function Vi({ navigate: e, portal: t, menuItem: i, messages: n, portalItem: r, openProjectTitleEdit: o, projectMenuClick: s }) {
1129
1130
  if (!t || !n || !i || i.id === "details" && !r)
1130
1131
  return null;
1131
- const { external: a, id: c, text: d } = i, h = `${E(t)}item.html?id=${r?.id}`;
1132
- return se(`${c}${d}`, l`<calcite-dropdown-item .iconEnd=${a ? "launch" : void 0} .href=${c === "details" ? h : i.href} .target=${a ? "_blank" : void 0} @calciteDropdownItemSelect=${(g) => {
1133
- if (c === "rename") {
1132
+ const { external: a, id: l, text: d } = i, h = `${O(t)}item.html?id=${r?.id}`;
1133
+ return se(`${l}${d}`, c`<calcite-dropdown-item .iconEnd=${a ? "launch" : void 0} .href=${l === "details" ? h : i.href} .target=${a ? "_blank" : void 0} @calciteDropdownItemSelect=${(b) => {
1134
+ if (l === "rename") {
1134
1135
  o?.();
1135
1136
  return;
1136
1137
  }
1137
- c === "details" && e({ event: g, href: h }), s?.({ type: c });
1138
- }}>${d}${c === "save" && l`<calcite-icon icon=bullet-point-large class="project__indicator" scale=s></calcite-icon>` || ""}</calcite-dropdown-item>`);
1138
+ l === "details" && e({ event: b, href: h }), s?.({ type: l });
1139
+ }}>${d}${l === "save" && c`<calcite-icon icon=bullet-point-large class="project__indicator" scale=s></calcite-icon>` || ""}</calcite-dropdown-item>`);
1139
1140
  }
1140
- function Vi({ navigate: e, portal: t, projectTitle: i, editedProjectTitle: n, handleProjectTitleSave: r, handleProjectTitleEdit: o, handleProjectTitleCancel: s, openProjectTitleEdit: a, portalItem: c, projectTitleEditing: d, projectTitleSaving: h, projectTitleErrorMessage: g, projectMenuIcon: p, projectMenuSaveIndicator: _, projectMenuClick: S, projectMenuOptions: k, projectTitleInputRef: I, projectButtonRef: y, messages: v }) {
1141
- if (!t || !v || !k?.length)
1141
+ function Hi({ navigate: e, portal: t, projectTitle: i, editedProjectTitle: n, handleProjectTitleSave: r, handleProjectTitleEdit: o, handleProjectTitleCancel: s, openProjectTitleEdit: a, portalItem: l, projectTitleEditing: d, projectTitleSaving: h, projectTitleErrorMessage: b, projectMenuIcon: p, projectMenuSaveIndicator: y, projectMenuClick: x, projectMenuOptions: k, projectTitleInputRef: P, projectButtonRef: w, messages: f }) {
1142
+ if (!t || !f || !k?.length && !i)
1142
1143
  return null;
1143
- const m = Wi(k, v), u = !!g;
1144
- return d ? l`<form class="rename" @submit=${async (w) => {
1145
- w.preventDefault(), await r?.(n);
1146
- }} @keydown=${(w) => {
1147
- w.key === "Escape" && s?.();
1148
- }}><calcite-input id=project-title-input type=text scale=l class="rename__input" .label=${v.title} .value=${n} .status=${u ? "invalid" : "idle"} @calciteInputInput=${(w) => o?.(w.target.value)} ${z(I)}></calcite-input>${u && l`<calcite-popover open .label=${v.error} .referenceElement=${I?.value || "project-title-input"} pointer-disabled placement=bottom-start><calcite-notice kind=danger open><div slot=message>${g}</div></calcite-notice></calcite-popover>` || ""}<calcite-action .disabled=${h} icon=check scale=l .text=${v?.saveRename} active class="rename__action" type=submit .loading=${h}></calcite-action><calcite-action .disabled=${h} icon=x scale=l .text=${v?.cancelRename} class="rename__action" @click=${() => s?.()}></calcite-action></form>` : l`<calcite-dropdown width=m class="fade-in"><calcite-button slot=trigger .iconStart=${p} icon-end=chevron-down scale=m class="project" appearance=transparent kind=neutral ${z(y)}><span class="project__text">${i}${_ && l`<calcite-icon scale=s icon=bullet-point-large class="project__indicator"></calcite-icon>` || ""}</span></calcite-button>${G(Object.entries(m).filter(([w, T]) => T.length), ([w, T]) => w, ([w, T]) => l`<calcite-dropdown-group selection-mode=none>${T.map((f) => Ri({ menuItem: f, navigate: e, portal: t, messages: v, portalItem: c, openProjectTitleEdit: a, projectMenuClick: S }))}</calcite-dropdown-group>`)}</calcite-dropdown>`;
1149
- }
1150
- function Hi(e) {
1144
+ if (!k?.length)
1145
+ return c`<div class="project__title">${p && c`<calcite-icon .icon=${p} scale=s></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), u = !!b;
1147
+ return d ? c`<form class="rename" @submit=${async (_) => {
1148
+ _.preventDefault(), await r?.(n);
1149
+ }} @keydown=${(_) => {
1150
+ _.key === "Escape" && s?.();
1151
+ }}><calcite-input id=project-title-input type=text scale=l class="rename__input" .label=${f.title} .value=${n} .status=${u ? "invalid" : "idle"} @calciteInputInput=${(_) => o?.(_.target.value)} ${F(P)}></calcite-input>${u && 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
+ }
1153
+ function qi(e) {
1151
1154
  return ["Location Platform", "Online", "Enterprise"].includes(e);
1152
1155
  }
1153
- function De({
1156
+ function ze({
1154
1157
  portal: e,
1155
1158
  searchType: t,
1156
1159
  searchTerm: i
@@ -1158,53 +1161,53 @@ function De({
1158
1161
  const r = e?.sourceJSON?.vectorSearchEnabled ? `&mode=${t}` : "";
1159
1162
  return `search.html?q=${i}${r}`;
1160
1163
  }
1161
- function qi({ portal: e, item: t, messages: i, navigate: n }) {
1164
+ function Ji({ portal: e, item: t, messages: i, navigate: n }) {
1162
1165
  if (!t || !i)
1163
1166
  return null;
1164
1167
  const r = K(i.by, {
1165
- itemType: Mt(t),
1168
+ itemType: Lt(t),
1166
1169
  owner: t.owner
1167
- }), o = `item.html?id=${t.id}`, s = `${E(e)}${o}`;
1168
- return se(t.id, l`<li class="list-item"><a class="list-item__link" href=${s ?? L} @click=${(a) => n({ event: a, href: s, relativePath: o })}>${l`<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>`);
1170
+ }), o = `item.html?id=${t.id}`, s = `${O(e)}${o}`;
1171
+ return se(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>`);
1169
1172
  }
1170
- function Ji({ portal: e, suggestions: t, messages: i, navigate: n, searchType: r, searchTerm: o }) {
1173
+ function Ki({ portal: e, suggestions: t, messages: i, navigate: n, searchType: r, searchTerm: o }) {
1171
1174
  if (!i || !e || !o)
1172
1175
  return null;
1173
1176
  if (!t)
1174
- return l`<div><calcite-loader scale=l .label=${i.loadingResults}></calcite-loader></div>`;
1175
- const s = De({ portal: e, searchType: r, searchTerm: o }), a = `/${s}`, c = `${E(e)}${s}`;
1176
- return l`<ul class="list">${t.map((d) => qi({ messages: i, portal: e, item: d, 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=${c} @click=${(d) => {
1177
- n({ href: c, event: d, relativePath: a });
1177
+ return c`<div><calcite-loader scale=l .label=${i.loadingResults}></calcite-loader></div>`;
1178
+ const s = ze({ portal: e, searchType: r, searchTerm: o }), a = `/${s}`, l = `${O(e)}${s}`;
1179
+ return c`<ul class="list">${t.map((d) => Ji({ messages: i, portal: e, item: d, 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=${(d) => {
1180
+ n({ href: l, event: d, relativePath: a });
1178
1181
  }}>${i.viewAll}</calcite-button></div>`;
1179
1182
  }
1180
- function Ki({ portal: e, messages: t, searchType: i, handleSearchTypeChange: n }) {
1183
+ function Qi({ portal: e, messages: t, searchType: i, handleSearchTypeChange: n }) {
1181
1184
  if (!t || !e?.sourceJSON?.vectorSearchEnabled)
1182
1185
  return null;
1183
1186
  const r = i === "keyword", o = t.searchType;
1184
- return l`<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>`;
1187
+ 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>`;
1185
1188
  }
1186
- function Qi({ currentPathname: e, navigate: t, product: i, portal: n, messages: r, searchActive: o, searchType: s, searchTerm: a, suggestions: c, searchInputRef: d, searchActionRef: h, searchPopoverRef: g, handleSearch: p, handleToggleSearch: _, handleSearchTypeChange: S }) {
1187
- if (!Hi(i) || !r || !n || e?.includes("search.html"))
1189
+ function Xi({ currentPathname: e, navigate: t, product: i, portal: n, messages: r, searchActive: o, searchType: s, searchTerm: a, suggestions: l, searchInputRef: d, searchActionRef: h, searchPopoverRef: b, handleSearch: p, handleToggleSearch: y, handleSearchTypeChange: x }) {
1190
+ if (!qi(i) || !r || !n || e?.includes("search.html"))
1188
1191
  return null;
1189
- const k = De({ portal: n, searchTerm: a, searchType: s });
1190
- return o ? l`<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=${(I) => p(I.target.value)} @keydown=${(I) => {
1191
- I.key === "Enter" && (t({ href: k, event: I }), I.defaultPrevented || (window.location.href = k)), I.key === "Escape" && _(!1);
1192
- }} ${z(d)}></calcite-input><calcite-action icon=x scale=l .text=${r?.close} active class="search__action" @click=${() => _(!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 }} ${z(g)}><div class="suggestions__header"><h3 class="suggestions__title">${r.topResults}</h3>${Ki({ portal: n, messages: r, searchType: s, handleSearchTypeChange: S })}</div><div class="suggestions__results">${Ji({ portal: n, suggestions: c, navigate: t, messages: r, searchType: s, searchTerm: a })}</div></calcite-popover></div>` : l`<calcite-action icon=search scale=l text=search class="search__action fade-in" @click=${() => _(!0)} ${z(h)}></calcite-action>`;
1192
+ const k = ze({ portal: n, searchType: s, searchTerm: a }), P = `/${k}`, w = `${O(n)}${k}`;
1193
+ 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
+ f.key === "Enter" && (t({ href: w, event: f, relativePath: P }), f.defaultPrevented || (window.location.href = w)), f.key === "Escape" && y(!1);
1195
+ }} ${F(d)}></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>`;
1193
1196
  }
1194
- function Xi({ signIn: e, messages: t }) {
1195
- return l`<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>`;
1197
+ function Yi({ signIn: e, messages: t }) {
1198
+ 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>`;
1196
1199
  }
1197
- function Yi({ navigate: e, portal: t, product: i, links: n, messages: r, currentPathname: o, searchActive: s }) {
1198
- return !i || !t || !r || !pe(i) || !n || s ? null : l`<calcite-menu slot=content-start .label=${r.label} class="site-nav fade-in">${G(n, ({ href: a }) => a, ({ label: a, href: c, relativePath: d }) => l`<calcite-menu-item .text=${a} text-enabled .label=${a} .href=${c} .active=${Oi(c, o)} @click=${(h) => e({ event: h, href: c, relativePath: d })}></calcite-menu-item>`)}</calcite-menu>`;
1200
+ function Zi({ navigate: e, portal: t, product: i, links: n, messages: r, currentPathname: o, searchActive: s }) {
1201
+ return !i || !t || !r || !pe(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: d }) => c`<calcite-menu-item .text=${a} text-enabled .label=${a} .href=${l} .active=${Ei(l, o)} @click=${(h) => e({ event: h, href: l, relativePath: d })}></calcite-menu-item>`)}</calcite-menu>`;
1199
1202
  }
1200
- function Zi({ userLinks: e, messages: t, navigate: i, openAccountSwitcher: n, portal: r, signOut: o, textDisabled: s }) {
1203
+ function en({ userLinks: e, messages: t, navigate: i, openAccountSwitcher: n, portal: r, signOut: o, textDisabled: s }) {
1201
1204
  const a = r?.user;
1202
- return !a || !e || !t || e?.account?.options.length < 1 && e?.resources?.options.length < 1 ? null : l`<div slot=user class="user fade-in"><calcite-dropdown width=m><calcite-navigation-user slot=trigger full-name=${a?.fullName ?? L} .username=${a?.username} .thumbnail=${a.thumbnailUrl || void 0} .userId=${a?.id} .textDisabled=${s}></calcite-navigation-user>${s && l`<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">${a.fullName}</h2><p class="user__top__username">${a.username}</p></div></div>` || ""}${Object.values(e).filter((c) => c.options.length).map(({ title: c, options: d }) => l`<calcite-dropdown-group selection-mode=none .groupTitle=${c}>${d.map(({ icon: h, label: g, href: p, relativePath: _ }) => l`<calcite-dropdown-item .iconStart=${h} .href=${p} @keydown=${(S) => {
1203
- (S.key === "Enter" || S.key === " ") && i({ event: S, href: p, relativePath: _ });
1204
- }} @click=${(S) => {
1205
- i({ event: S, href: p, relativePath: _ });
1206
- }}>${g}</calcite-dropdown-item>`)}</calcite-dropdown-group>`)}<calcite-dropdown-group selection-mode=none>${n && l`<calcite-dropdown-item icon-start=users @calciteDropdownItemSelect=${(c) => {
1207
- const d = jt(c.target, "calcite-dropdown");
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=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: d }) => c`<calcite-dropdown-group selection-mode=none .groupTitle=${l}>${d.map(({ icon: h, label: b, href: p, relativePath: y }) => c`<calcite-dropdown-item .iconStart=${h} .href=${p} @keydown=${(x) => {
1206
+ (x.key === "Enter" || x.key === " ") && i({ event: x, href: p, relativePath: y });
1207
+ }} @click=${(x) => {
1208
+ i({ event: x, href: p, relativePath: y });
1209
+ }}>${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 d = Dt(l.target, "calcite-dropdown");
1208
1211
  d && (d.open = !1), n();
1209
1212
  }}>${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>`;
1210
1213
  }
@@ -1212,7 +1215,7 @@ const Ge = {
1212
1215
  community: "https://community.esri.com/plugins/common/feature/oauth2sso_v2/sso_login_redirect?referer=https%3A%2F%2Fcommunity.esri.com%2F",
1213
1216
  myEsri: "https://my.esri.com"
1214
1217
  };
1215
- function en({
1218
+ function tn({
1216
1219
  messages: e,
1217
1220
  userLinks: t
1218
1221
  }) {
@@ -1224,7 +1227,7 @@ function en({
1224
1227
  i[n.group].options.push(n);
1225
1228
  }), i;
1226
1229
  }
1227
- function tn({
1230
+ function nn({
1228
1231
  portal: e,
1229
1232
  messages: t,
1230
1233
  clientId: i
@@ -1234,10 +1237,10 @@ function tn({
1234
1237
  account: { title: t?.account, options: [] },
1235
1238
  resources: { title: t?.account, options: [] }
1236
1239
  };
1237
- const n = on(e), r = nn({ navLinkDictionary: n, messages: t, clientId: i });
1238
- return en({ userLinks: r, messages: t });
1240
+ const n = sn(e), r = rn({ navLinkDictionary: n, messages: t, clientId: i });
1241
+ return tn({ userLinks: r, messages: t });
1239
1242
  }
1240
- function nn({
1243
+ function rn({
1241
1244
  navLinkDictionary: e,
1242
1245
  messages: t,
1243
1246
  clientId: i
@@ -1252,27 +1255,27 @@ function nn({
1252
1255
  "arcgisBlog",
1253
1256
  "help"
1254
1257
  ];
1255
- return (ue(i) || de(i)) && (n = ["mySettings", "arcgisBlog", "help"]), Ee(i) && (n = []), rn(n, t, e);
1258
+ return (ue(i) || de(i)) && (n = ["mySettings", "arcgisBlog", "help"]), je(i) && (n = []), on(n, t, e);
1256
1259
  }
1257
- function rn(e, t, i) {
1260
+ function on(e, t, i) {
1258
1261
  const n = [];
1259
1262
  return e.forEach((r) => {
1260
1263
  const o = i[r];
1261
1264
  if (o && (!("show" in o) || o.show)) {
1262
- const { href: s, newTab: a, icon: c, group: d, relativePath: h } = o;
1265
+ const { href: s, newTab: a, icon: l, group: d, relativePath: h } = o;
1263
1266
  n.push({
1264
1267
  label: t[r],
1265
1268
  group: d,
1266
1269
  href: s,
1267
1270
  newTab: a,
1268
1271
  relativePath: h,
1269
- icon: c
1272
+ icon: l
1270
1273
  });
1271
1274
  }
1272
1275
  }), n;
1273
1276
  }
1274
- function on(e) {
1275
- const t = E(e), i = sn(e), n = `user.html${window.location.pathname.includes("home/user.html") ? "?nav=1" : ""}`;
1277
+ function sn(e) {
1278
+ const t = O(e), i = an(e), n = `user.html${window.location.pathname.includes("home/user.html") ? "?nav=1" : ""}`;
1276
1279
  return {
1277
1280
  myProfile: {
1278
1281
  href: `${t}${n}`,
@@ -1303,7 +1306,7 @@ function on(e) {
1303
1306
  show: i,
1304
1307
  group: "account",
1305
1308
  icon: "globe",
1306
- href: cn(e),
1309
+ href: ln(e),
1307
1310
  newTab: !0
1308
1311
  },
1309
1312
  arcgisBlog: {
@@ -1317,41 +1320,41 @@ function on(e) {
1317
1320
  show: i,
1318
1321
  group: "resources",
1319
1322
  icon: "education",
1320
- href: an(e),
1323
+ href: cn(e),
1321
1324
  newTab: !0
1322
1325
  },
1323
1326
  trialDownload: {
1324
1327
  group: "resources",
1325
1328
  icon: "download-to",
1326
- show: un(e),
1329
+ show: dn(e),
1327
1330
  href: `${t}/home/user.html${window.location.pathname.includes("home/user.html") ? "?nav=1&tab=licenses" : "?tab=licenses"}#settings`
1328
1331
  }
1329
1332
  };
1330
1333
  }
1331
- function sn(e) {
1334
+ function an(e) {
1332
1335
  return !e.isPortal && e?.user?.sourceJSON?.userType === "both";
1333
1336
  }
1334
- function an(e) {
1337
+ function cn(e) {
1335
1338
  return Ue(
1336
1339
  e,
1337
1340
  `${window.location.protocol}//www.esri.com/training/arcgis-online-training`
1338
1341
  );
1339
1342
  }
1340
- function cn(e) {
1343
+ function ln(e) {
1341
1344
  return Ue(e, Ge.myEsri);
1342
1345
  }
1343
1346
  function Ue(e, t) {
1344
- const i = ce(e), n = ln(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}`;
1347
+ const i = ce(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}`;
1345
1348
  return `${s}${a}`;
1346
1349
  }
1347
- function ln(e) {
1350
+ function un(e) {
1348
1351
  const t = e.portalHostname;
1349
1352
  return t?.includes("dev") ? "dev" : t?.includes("qa") ? "qa" : "";
1350
1353
  }
1351
- function un(e) {
1354
+ function dn(e) {
1352
1355
  return !e?.isPortal && ["Trial", "Trial Press"].includes(e?.sourceJSON.subscriptionInfo?.type);
1353
1356
  }
1354
- function dn(e) {
1357
+ function pn(e) {
1355
1358
  switch (e) {
1356
1359
  case "360 VR":
1357
1360
  return {
@@ -1572,51 +1575,51 @@ function dn(e) {
1572
1575
  };
1573
1576
  }
1574
1577
  }
1575
- function pn({
1578
+ function hn({
1576
1579
  product: e,
1577
1580
  portal: t,
1578
1581
  clientId: i
1579
1582
  }) {
1580
1583
  return e !== "Online" ? e : t?.sourceJSON?.subscriptionInfo?.options?.includes("Developer") ? "Location Platform" : de(i) ? "GeoAnalytics Fabric" : ue(i) ? "GeoAnalytics Engine" : t?.isPortal ? "Enterprise" : "Online";
1581
1584
  }
1582
- function _e(e) {
1583
- const t = pn(e), { name: i, fileName: n, icon: r } = dn(t);
1585
+ function $e(e) {
1586
+ const t = hn(e), { name: i, fileName: n, icon: r } = pn(t);
1584
1587
  return {
1585
1588
  name: i,
1586
- glyph: te(`assets/portal-navigation/product-logos/${n}-glyph-32.svg`),
1587
- icon: te(`assets/portal-navigation/apps/${r}.avif`)
1589
+ glyph: ee(`assets/portal-navigation/product-logos/${n}-glyph-32.svg`),
1590
+ icon: ee(`assets/portal-navigation/apps/${r}.avif`)
1588
1591
  };
1589
1592
  }
1590
- function hn() {
1591
- const e = _t();
1593
+ function mn() {
1594
+ const e = $t();
1592
1595
  ["item.html", "group.html"].some((t) => window.location.href.includes(t)) ? window.location.href = `./signin.html?locale=${e}&useLandingPage=false&returnUrl=${encodeURIComponent(
1593
1596
  window.location.href
1594
1597
  )}` : window.location.href = `./signin.html?locale=${e}&useLandingPage=true`;
1595
1598
  }
1596
- function mn({ portal: e, clientId: t }) {
1597
- const i = Q({ portal: e });
1599
+ function fn({ portal: e, clientId: t }) {
1600
+ const i = oe({ portal: e });
1598
1601
  if (e?.isPortal) {
1599
1602
  const n = e.access === "private" ? q("signin.html", e) : e.allSSL || window.location.protocol === "https:" ? q("./index.html", e) : `${i}/index.html`;
1600
- gn(e, n);
1603
+ bn(e, n);
1601
1604
  } else
1602
1605
  window.location.href = `${i}/pages/Account/manage_accounts.html#client_id=${t}&signout=true`;
1603
1606
  }
1604
- function fn() {
1605
- ti(ye), ii(ye);
1607
+ function gn() {
1608
+ ii(ye), ni(ye);
1606
1609
  }
1607
- function gn(e, t = window.location.href) {
1608
- const i = window.location.href.startsWith("http://"), n = Et(e);
1609
- Gt.destroyCredentials(), fn();
1610
+ function bn(e, t = window.location.href) {
1611
+ const i = window.location.href.startsWith("http://"), n = jt(e);
1612
+ Gt.destroyCredentials(), gn();
1610
1613
  const r = new URL(q(`${ce(e)}oauth2/signout`, e)), { searchParams: o } = r;
1611
1614
  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;
1612
1615
  }
1613
1616
  function j(e, t) {
1614
1617
  if (!e)
1615
1618
  return 0;
1616
- const i = Dt({ text: e, font: `${t === "s" ? ".875rem" : "1rem"} 'Avenir Next'` });
1619
+ const i = zt({ text: e, font: `${t === "s" ? ".875rem" : "1rem"} 'Avenir Next'` });
1617
1620
  return Math.ceil(i);
1618
1621
  }
1619
- function bn({
1622
+ function vn({
1620
1623
  portal: e,
1621
1624
  product: t,
1622
1625
  projectTitle: i,
@@ -1626,28 +1629,28 @@ function bn({
1626
1629
  }) {
1627
1630
  if (!t || !e)
1628
1631
  return;
1629
- const s = e.user, c = pe(t) && n?.length ? 24 + n.reduce((g, p) => g + 16 + j(p.label) + 16, 0) : 0, d = 40 + j(i) + 32 + 16 + 16 + 12, h = s ? Math.max(j(s?.username, "s"), j(s?.fullName)) : j(r?.signIn);
1632
+ const s = e.user, l = pe(t) && n?.length ? 24 + n.reduce((b, p) => b + 16 + j(p.label) + 16, 0) : 0, d = 40 + j(i) + 32 + 16 + 16 + 12, h = s ? Math.max(j(s?.username, "s"), j(s?.fullName)) : j(r?.signIn);
1630
1633
  return {
1631
1634
  actions: 192,
1632
- project: i ? d : 0,
1635
+ project: i ? Math.min(d, 400) : 0,
1633
1636
  product: 64 + Math.max(j(o?.name), j(e.name, "s")) + 16,
1634
- nav: c,
1637
+ nav: l,
1635
1638
  user: 64 + h + 16
1636
1639
  };
1637
1640
  }
1638
- function vn({
1641
+ function _n({
1639
1642
  measurements: e,
1640
1643
  screenWidth: t
1641
1644
  }) {
1642
- const { actions: i, nav: n, product: r, project: o, user: s } = e, a = 64, c = t - i - a > n, d = t - i - (c ? n : 0) - o - a > r, h = t - n - o - i - r < s;
1645
+ const { actions: i, nav: n, product: r, project: o, user: s } = e, a = 64, l = t - i - a > n, d = t - i - (l ? n : 0) - o - a > Math.min(r, 400), h = t - n - o - i - r < Math.min(s, 320);
1643
1646
  return {
1644
- nav: c,
1647
+ nav: l,
1645
1648
  product: d,
1646
1649
  user: h ? "avatar" : "full"
1647
1650
  };
1648
1651
  }
1649
1652
  const Be = ' -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({
1653
+ async function ke({
1651
1654
  portal: e,
1652
1655
  searchTerm: t
1653
1656
  }) {
@@ -1669,33 +1672,33 @@ async function wn({
1669
1672
  portal: e,
1670
1673
  searchTerm: t
1671
1674
  }) {
1672
- if (!e?.user)
1675
+ if (!e)
1673
1676
  return [];
1674
1677
  const i = Bt((t || "").substring(0, 409)), n = `${e?.id ? `accountid:"${e.id}"` : ""}${Be}`, r = `${ce(e)}search/suggest`;
1675
- return (await U(r, { query: {
1678
+ return (await G(r, { query: {
1676
1679
  suggest: i,
1677
1680
  filters: n,
1678
1681
  searchFields: "title",
1679
1682
  f: "json"
1680
1683
  } }))?.result?.results || [];
1681
1684
  }
1682
- const yn = wt`:host{display:block}.scrim{z-index:100}.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}.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__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)}.site-nav{margin-inline-start:1.5rem}.project{border-inline-end:1px solid var(--calcite-color-border-3)}.project__indicator{margin-inline-start:1rem;--calcite-ui-icon-color: var(--calcite-color-status-danger);float:inline-end}.project__text{display:flex;font-size:1rem}.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}.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;--calcite-dropdown-item-text-color: var(--calcite-color-text-3);--calcite-dropdown-group-title-text-color: var(--calcite-color-text-2)}.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__top__full{font-size:1rem;font-weight:medium;color:var(--calcite-colot-text-1);padding:0;margin:0}.user__top__username{font-size:1rem;color:var(--calcite-colot-text-2);padding:0;margin:0}`;
1683
- function _n({ messages: e, portal: t, showNav: i, openPlatformMenu: n, handleToggleSearch: r }) {
1684
- return !e || i && !t?.user ? null : l`<calcite-action .label=${e.applicationMenu} text="app switcher" icon=app-launcher scale=l class="action" @click=${n} @focusin=${() => r(!1, !0)}></calcite-action>`;
1685
+ const yn = wt`:host{display:block;--arcgis-portal-navigation-logo-max-width: 400px;--arcgis-portal-navigation-logo-text-display: flex;--arcgis-portal-navigation-user-max-width: 320px;--arcgis-portal-navigation-user-text-display: block;--arcgis-portal-navigation-project-max-width: 400px}.scrim{z-index:100}.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__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)}.project__title__header{padding:0;margin-block:0;margin-inline-start:1rem;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}.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;min-width:66px;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
+ function $n({ messages: e, portal: t, showNav: i, openPlatformMenu: n, handleToggleSearch: r }) {
1687
+ 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>`;
1685
1688
  }
1686
- class $n extends gt {
1689
+ class kn extends bt {
1687
1690
  constructor() {
1688
- super(...arguments), this.messages = bt({ blocking: !0 }), this.refreshNotifications = async () => {
1691
+ super(...arguments), this.messages = vt({ blocking: !0 }), this.refreshNotifications = async () => {
1689
1692
  const { portal: t, messages: i } = this;
1690
- this.notifications = await ge({ portal: t, locale: i._t9nLocale, t9n: i.notifications });
1693
+ this.notifications = await be({ portal: t, locale: i._t9nLocale, t9n: i.notifications });
1691
1694
  }, this.deleteNotifications = async (t) => {
1692
1695
  const { portal: i } = this;
1693
1696
  if (t?.length < 20)
1694
- await Ht(i, t);
1697
+ await qt(i, t);
1695
1698
  else {
1696
1699
  let n = 0;
1697
1700
  for await (const r of t)
1698
- await Ne({ id: r, portal: i }), this.notificationDeleteProgress = Math.ceil(n++ / t.length * 100);
1701
+ await Ce({ id: r, portal: i }), this.notificationDeleteProgress = Math.ceil(n++ / t.length * 100);
1699
1702
  }
1700
1703
  this.notificationDeleteProgress = void 0, this.refreshNotifications();
1701
1704
  }, this.navigate = (t) => {
@@ -1710,7 +1713,7 @@ class $n extends gt {
1710
1713
  });
1711
1714
  }, this.closeProjectTitleEdit = () => {
1712
1715
  this.projectTitleEditing = !1, this.projectTitleErrorMessage = void 0, requestAnimationFrame(() => {
1713
- this.projectButtonRef?.value?.setFocus();
1716
+ this.projectButtonRef?.value?.focus();
1714
1717
  });
1715
1718
  }, this.handleProjectTitleSave = async (t) => {
1716
1719
  this.projectTitleSaving = !0;
@@ -1726,9 +1729,9 @@ class $n extends gt {
1726
1729
  this.editedProjectTitle = this.projectTitle, this.closeProjectTitleEdit();
1727
1730
  }, this.signOut = () => {
1728
1731
  const { portal: t, clientId: i } = this;
1729
- mn({ portal: t, clientId: i }), this.arcgisNavigationSignOut.emit();
1732
+ fn({ portal: t, clientId: i }), this.arcgisNavigationSignOut.emit();
1730
1733
  }, this.signIn = () => {
1731
- this.arcgisNavigationSignIn.emit(), hn();
1734
+ this.arcgisNavigationSignIn.emit(), mn();
1732
1735
  }, this.openAccountSwitcher = () => {
1733
1736
  this.accountSwitcherOpen = !0;
1734
1737
  }, this.handlePlatformClose = () => {
@@ -1736,7 +1739,7 @@ class $n extends gt {
1736
1739
  }, this.handleAppSave = async () => {
1737
1740
  const { hiddenApps: t, sortedApps: i, userProperties: n, portal: r } = this;
1738
1741
  this.apps = [...i], this.editingApplications = !1, this.appsLoading = !0;
1739
- const { result: o } = await Pi({ apps: i, hiddenApps: t, userProperties: n, portal: r });
1742
+ const { result: o } = await Ni({ apps: i, hiddenApps: t, userProperties: n, portal: r });
1740
1743
  o?.success && (this.previousAppState = {
1741
1744
  apps: i,
1742
1745
  hiddenApps: t
@@ -1751,7 +1754,7 @@ class $n extends gt {
1751
1754
  }, this.handleItemSearch = (t) => {
1752
1755
  this.recentContentLoading = !0, this.recentContentSearchTerm = t, this.debouncedItemSearch(t);
1753
1756
  }, this.debouncedItemSearch = fe(async (t) => {
1754
- this.recentContent = await $e({ portal: this.portal, searchTerm: t }), this.recentContentLoading = !1;
1757
+ this.recentContent = await ke({ portal: this.portal, searchTerm: t }), this.recentContentLoading = !1;
1755
1758
  }, 1e3), this.debouncedSuggest = fe(async (t) => {
1756
1759
  this.suggestions = await wn({ portal: this.portal, searchTerm: t });
1757
1760
  }, 1e3), this.handleSearch = (t) => {
@@ -1774,7 +1777,7 @@ class $n extends gt {
1774
1777
  });
1775
1778
  }, this.handleSearchTypeChange = (t) => {
1776
1779
  this.searchType = t;
1777
- }, this.searchInput = F(), this.searchAction = F(), this.searchPopover = F(), this.projectTitleInputRef = F(), this.projectButtonRef = F(), 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 = H(), this.arcgisNavigationProjectMenuClick = H(), this.arcgisNavigationSignIn = H(), this.arcgisNavigationSignOut = H();
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 = H(), this.arcgisNavigationProjectMenuClick = H(), this.arcgisNavigationSignIn = H(), this.arcgisNavigationSignOut = H();
1778
1781
  }
1779
1782
  static {
1780
1783
  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 };
@@ -1785,16 +1788,16 @@ class $n extends gt {
1785
1788
  #e;
1786
1789
  async loaded() {
1787
1790
  const { portal: t, messages: i, clientId: n, product: r } = this;
1788
- this.calculateMeasurements(), this.productInfo = _e({ product: r, clientId: n, portal: t }), this.userLinks = tn({ 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: c, userProperties: d } = await Ii({
1791
+ this.calculateMeasurements(), this.productInfo = $e({ product: r, clientId: n, portal: t }), this.userLinks = nn({ portal: t, messages: i.user, clientId: n }), this.notifications = await be({ portal: t, locale: i._t9nLocale, t9n: i.notifications }), this.recentContent = await ke({ portal: t }), this.recentContentLoading = !1;
1792
+ const { apps: o, hiddenApps: s, signInSettings: a, licenses: l, userProperties: d } = await Ii({
1790
1793
  portal: t,
1791
1794
  trackViewerEnabled: !this.disableTrackViewer,
1792
1795
  notebookServerEnabled: !this.disableNotebookServer
1793
- }), h = await Pt(t);
1794
- this.infoBanner = h?.informationalBanner, this.userProperties = d, this.apps = o, this.hiddenApps = s, this.sortedApps = o, this.previousAppState = { apps: o, hiddenApps: s }, this.appsLoading = !1, this.links = Mi({
1796
+ }), h = await Nt(t);
1797
+ this.infoBanner = h?.informationalBanner, this.userProperties = d, this.apps = o, this.hiddenApps = s, this.sortedApps = o, this.previousAppState = { apps: o, hiddenApps: s }, this.appsLoading = !1, this.links = Li({
1795
1798
  portal: t,
1796
1799
  messages: i.links,
1797
- licenses: c,
1800
+ licenses: l,
1798
1801
  clientId: n,
1799
1802
  signInSettings: a
1800
1803
  }), this.calculateMeasurements();
@@ -1810,7 +1813,7 @@ class $n extends gt {
1810
1813
  this.el && this.#e && (this.#e.observe(this.el), this.screenWidth = window.innerWidth);
1811
1814
  }
1812
1815
  willUpdate(t) {
1813
- (t.has("product") || t.has("clientId")) && this.hasUpdated && (this.productInfo = _e({ product: this.product, clientId: this.clientId, portal: this.portal }));
1816
+ (t.has("product") || t.has("clientId")) && this.hasUpdated && (this.productInfo = $e({ product: this.product, clientId: this.clientId, portal: this.portal }));
1814
1817
  }
1815
1818
  disconnectedCallback() {
1816
1819
  this.#e?.disconnect(), this.#e = void 0, document.documentElement.style.overflow = this.initialDocumentOverflowStyle, super.disconnectedCallback();
@@ -1818,7 +1821,7 @@ class $n extends gt {
1818
1821
  calculateMeasurements() {
1819
1822
  const { links: t, messages: i, portal: n, product: r, productInfo: o, projectTitle: s } = this;
1820
1823
  if (n) {
1821
- const a = bn({
1824
+ const a = vn({
1822
1825
  portal: n,
1823
1826
  product: r,
1824
1827
  productInfo: o,
@@ -1832,16 +1835,18 @@ class $n extends gt {
1832
1835
  updateBreakpoints() {
1833
1836
  const { measurements: t, maxWidth: i } = this;
1834
1837
  if (t) {
1835
- const n = i ? Math.min(this.screenWidth, i) : this.screenWidth, r = vn({ measurements: t, screenWidth: n });
1838
+ const n = i ? Math.min(this.screenWidth, i) : this.screenWidth, r = _n({ measurements: t, screenWidth: n });
1836
1839
  this.showProduct = r.product, this.showNav = r.nav, this.showUser = r.user;
1837
1840
  }
1838
1841
  }
1839
1842
  render() {
1840
- const { accountSwitcherOpen: t, apps: i, appsLoading: n, appsSearchTerm: r, currentPathname: o, handleAppCancel: s, handleAppHide: a, handleAppReorder: c, handleAppSave: d, handleItemSearch: h, handlePlatformClose: g, handleSearch: p, handleToggleSearch: _, handleSearchTypeChange: S, hiddenApps: k, infoBanner: I, links: y, messages: v, navigate: m, notifications: u, notificationsActive: w, notificationDeleteProgress: T, openAccountSwitcher: f, portal: b, portalItem: $, product: A, productInfo: O, productHref: R, projectTitle: x, editedProjectTitle: C, handleProjectTitleSave: V, handleProjectTitleEdit: Fe, handleProjectTitleCancel: ze, handleToggleNotifications: he, openProjectTitleEdit: We, openPlatformMenu: Re, platformMenuOpen: Ve, projectTitleEditing: X, projectTitleSaving: He, projectTitleErrorMessage: qe, projectMenuIcon: Je, projectMenuSaveIndicator: Ke, projectMenuClick: Qe, projectMenuOptions: Xe, projectTitleInputRef: Ye, projectButtonRef: Ze, recentContent: et, recentContentSearchTerm: tt, recentContentLoading: it, userLinks: nt, searchActive: B, searchTerm: rt, searchType: ot, searchInput: st, searchAction: at, searchPopover: ct, showNav: Y, showProduct: lt, showUser: ut, suggestions: dt } = this, pt = b?.user, ht = pe(A) && !y?.length || !this.measurements;
1841
- return l`${B && l`<calcite-scrim class="scrim"></calcite-scrim>` || ""}<div class="wrapper" style=${Ae({ "--arcgis-portal-navigation-max-width": this.maxWidth ? `${this.maxWidth}px` : "100%" })}><arcgis-portal-info-banner .config=${I}></arcgis-portal-info-banner>${b?.isPortal && $?.loaded && l`<arcgis-portal-classification-banner .portalItem=${$}></arcgis-portal-classification-banner>` || ""}<header class=${oe({ navigation: !0, "navigation--loading": ht })}>${_n({ messages: v?.platform, portal: b, showNav: Y, openPlatformMenu: Re, handleToggleSearch: _ })}${lt && Ft({ navigate: m, portal: b, product: A, productInfo: O, productHref: R, messages: v?.logo, showNav: Y, searchActive: B, projectTitleEditing: X }) || ""}${Vi({ navigate: m, portal: b, portalItem: $, messages: v?.project, projectTitle: x, editedProjectTitle: C, handleProjectTitleSave: V, handleProjectTitleEdit: Fe, openProjectTitleEdit: We, projectTitleErrorMessage: qe, handleProjectTitleCancel: ze, projectTitleEditing: X, projectTitleSaving: He, projectMenuIcon: Je, projectMenuSaveIndicator: Ke, projectMenuClick: Qe, projectMenuOptions: Xe, projectTitleInputRef: Ye, projectButtonRef: Ze })}${Y && Yi({ searchActive: B, navigate: m, portal: b, product: A, messages: v?.links, links: y, currentPathname: o }) || ""}<div slot=content-end class="content-end fade-in" .hidden=${X || B}><slot name=content-end></slot></div>${Qi({ currentPathname: o, navigate: m, portal: b, product: A, messages: v?.search, searchActive: B, searchType: ot, searchTerm: rt, suggestions: dt, handleSearch: p, handleToggleSearch: _, handleSearchTypeChange: S, searchInputRef: st, searchActionRef: at, searchPopoverRef: ct })}${pt ? l`<div class="border-start fade-in">${Qt({ notifications: u, notificationsActive: w, messages: v?.notifications, handleToggleNotifications: he, handleToggleSearch: _ })}${Xt({ notificationsActive: w, notifications: u, navigate: m, portal: b, deleteNotifications: this.deleteNotifications, handleToggleNotifications: he, messages: v?.notifications, notificationDeleteProgress: T })}</div>${Zi({ portal: b, userLinks: nt, openAccountSwitcher: b?.isPortal ? void 0 : f, signOut: this.signOut, messages: v?.user, textDisabled: ut === "avatar", navigate: m })}` : Xi({ messages: v.user, signIn: this.signIn })}</header>${Bi({ locale: v._t9nLocale, navigate: m, portal: b, product: A, productInfo: O, messages: v?.platform, apps: i, appsLoading: n, hiddenApps: k, appsSearchTerm: r, editingApplications: this.editingApplications, open: Ve, links: y, recentContent: et, recentContentSearchTerm: tt, recentContentLoading: it, handlePlatformClose: g, handleAppReorder: c, handleAppEdit: () => this.editingApplications = !0, handleAppsSearch: (mt) => this.appsSearchTerm = mt, handleAppSave: d, handleAppCancel: s, handleAppHide: a, handleItemSearch: h })}${t && l`<arcgis-portal-account-switcher .portal=${b} .baseUrl=${Q({ portal: b })}></arcgis-portal-account-switcher>` || ""}</div>`;
1843
+ const { accountSwitcherOpen: t, apps: i, appsLoading: n, appsSearchTerm: r, currentPathname: o, handleAppCancel: s, handleAppHide: a, handleAppReorder: l, handleAppSave: d, handleItemSearch: h, handlePlatformClose: b, handleSearch: p, handleToggleSearch: y, handleSearchTypeChange: x, hiddenApps: k, infoBanner: P, links: w, messages: f, navigate: m, notifications: u, notificationsActive: _, notificationDeleteProgress: N, openAccountSwitcher: g, portal: v, portalItem: $, product: A, productInfo: E, productHref: R, projectTitle: S, editedProjectTitle: M, handleProjectTitleSave: V, handleProjectTitleEdit: Fe, handleProjectTitleCancel: We, handleToggleNotifications: he, 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 = pe(A) && !w?.length || !this.measurements;
1844
+ return c`${U && c`<calcite-scrim class="scrim"></calcite-scrim>` || ""}<div class="wrapper" style=${Ae({ "--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=${re({ 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: V, 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: u, notificationsActive: _, messages: f?.notifications, handleToggleNotifications: he, handleToggleSearch: y })}${Yt({ notificationsActive: _, notifications: u, navigate: m, portal: v, deleteNotifications: this.deleteNotifications, handleToggleNotifications: he, 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: d, handleAppCancel: s, handleAppHide: a, handleItemSearch: h })}${t && c`<arcgis-portal-account-switcher .portal=${v} @arcgisClose=${() => {
1845
+ this.accountSwitcherOpen = !1;
1846
+ }}></arcgis-portal-account-switcher>` || ""}</div>`;
1842
1847
  }
1843
1848
  }
1844
- ft("arcgis-portal-navigation", $n);
1849
+ gt("arcgis-portal-navigation", kn);
1845
1850
  export {
1846
- $n as ArcGISPortalNavigation
1851
+ kn as ArcGISPortalNavigation
1847
1852
  };