@arcgis/portal-components 5.2.0-next.64 → 5.2.0-next.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/2BUE3JLM.js +2 -0
- package/dist/cdn/{Y7FCEDRU.js → 2OU5PLGU.js} +1 -1
- package/dist/cdn/2WI5FBDF.js +2 -0
- package/dist/cdn/3VHBMKYX.js +2 -0
- package/dist/cdn/64DIXKV3.js +2 -0
- package/dist/cdn/6KVA4AKM.js +2 -0
- package/dist/cdn/6TO2BYXU.js +2 -0
- package/dist/cdn/AR6YIWRX.js +2 -0
- package/dist/cdn/{7YQTBSDS.js → ASLLZOUG.js} +109 -84
- package/dist/cdn/CYCKQHLO.js +2 -0
- package/dist/cdn/{ZV4GLQQG.js → D4VYYWA6.js} +1 -1
- package/dist/cdn/DEOAKHYN.js +2 -0
- package/dist/cdn/FKVT4PNP.js +2 -0
- package/dist/cdn/GC6YLNZF.js +2 -0
- package/dist/cdn/{VD6VGWCQ.js → JMEXULSL.js} +1 -1
- package/dist/cdn/KTBQ26TD.js +2 -0
- package/dist/cdn/LRADZ46B.js +2 -0
- package/dist/cdn/NWT7EITA.js +2 -0
- package/dist/cdn/{EE7XFMJG.js → O5AP2PN5.js} +1 -1
- package/dist/cdn/OUNIRHWU.js +2 -0
- package/dist/cdn/{XW42SAEJ.js → QFI3ZPNB.js} +1 -1
- package/dist/cdn/QMFRNHQJ.js +2 -0
- package/dist/cdn/QNA62UMC.js +2 -0
- package/dist/cdn/{6RLJVPF6.js → QWMWVF47.js} +1 -1
- package/dist/cdn/RWQL7W3X.js +2 -0
- package/dist/cdn/T6Z7IFG2.js +2 -0
- package/dist/cdn/USQ4RJYL.js +2 -0
- package/dist/cdn/{Q7SDLUZ6.js → V257KGGO.js} +1 -1
- package/dist/cdn/XSUV6RLR.js +2 -0
- package/dist/cdn/XTTOOMCY.js +66 -0
- package/dist/cdn/{CG4WYBHN.js → XUIVR4NX.js} +1 -1
- package/dist/cdn/{SOJU4OFZ.js → ZMTS73PF.js} +1 -1
- package/dist/cdn/ZSNLY6QY.js +2 -0
- package/dist/cdn/assets/portal-item-badges/t9n/messages.en.json +1 -0
- package/dist/cdn/assets/portal-item-card/t9n/messages.en.json +1 -0
- package/dist/cdn/assets/portal-item-favorite/t9n/messages.en.json +1 -0
- package/dist/cdn/assets/portal-item-type/icons/applicationtheme16.svg +1 -0
- package/dist/cdn/assets/portal-item-type/icons/applicationtheme32.svg +1 -0
- package/dist/cdn/assets/portal-item-type/icons/layout16.svg +1 -0
- package/dist/cdn/assets/portal-item-type/icons/layout32.svg +1 -0
- package/dist/cdn/index.js +1 -1
- package/dist/cdn/main.css +1 -1
- package/dist/chunks/fieldAddDelete.js +1 -1
- package/dist/chunks/info.js +179 -0
- package/dist/chunks/item.js +8 -8
- package/dist/chunks/items.js +16 -0
- package/dist/chunks/portal-item-badge.js +346 -0
- package/dist/chunks/portal.js +3 -3
- package/dist/chunks/portal2.js +3 -3
- package/dist/chunks/query.js +4 -4
- package/dist/chunks/string.js +2 -2
- package/dist/chunks/users.js +7 -0
- package/dist/chunks/utils.js +75 -636
- package/dist/chunks/utils2.js +653 -0
- package/dist/chunks/verified.js +40 -0
- package/dist/components/arcgis-portal-account-switcher/customElement.js +58 -72
- package/dist/components/arcgis-portal-account-switcher-list/customElement.js +6 -6
- package/dist/components/arcgis-portal-ai-assistant/customElement.d.ts +9 -7
- package/dist/components/arcgis-portal-ai-assistant/customElement.js +944 -775
- package/dist/components/arcgis-portal-field-delete/customElement.js +2 -1
- package/dist/components/arcgis-portal-group-browser/customElement.js +3 -3
- package/dist/components/arcgis-portal-group-browser/types.d.ts +6 -2
- package/dist/components/arcgis-portal-group-browser-preview/customElement.d.ts +9 -9
- package/dist/components/arcgis-portal-group-browser-preview/customElement.js +16 -16
- package/dist/components/arcgis-portal-group-browser-preview-card/customElement.d.ts +18 -18
- package/dist/components/arcgis-portal-group-browser-preview-card/customElement.js +31 -30
- package/dist/components/arcgis-portal-group-card/customElement.d.ts +25 -25
- package/dist/components/arcgis-portal-group-card/customElement.js +7 -7
- package/dist/components/arcgis-portal-item-actions/customElement.d.ts +74 -0
- package/dist/components/arcgis-portal-item-actions/customElement.js +89 -0
- package/dist/components/arcgis-portal-item-actions/index.d.ts +1 -0
- package/dist/components/arcgis-portal-item-actions/index.js +5 -0
- package/dist/components/arcgis-portal-item-badge/customElement.d.ts +260 -0
- package/dist/components/arcgis-portal-item-badge/customElement.js +9 -0
- package/dist/components/arcgis-portal-item-badge/index.d.ts +1 -0
- package/dist/components/arcgis-portal-item-badge/index.js +5 -0
- package/dist/components/arcgis-portal-item-badges/customElement.d.ts +48 -0
- package/dist/components/arcgis-portal-item-badges/customElement.js +35 -0
- package/dist/components/arcgis-portal-item-badges/index.d.ts +1 -0
- package/dist/components/arcgis-portal-item-badges/index.js +2 -0
- package/dist/components/arcgis-portal-item-badges/types.d.ts +1 -0
- package/dist/components/arcgis-portal-item-card/customElement.d.ts +215 -0
- package/dist/components/arcgis-portal-item-card/customElement.js +190 -0
- package/dist/components/arcgis-portal-item-card/index.d.ts +1 -0
- package/dist/components/arcgis-portal-item-card/index.js +10 -0
- package/dist/components/arcgis-portal-item-favorite/customElement.d.ts +36 -0
- package/dist/components/arcgis-portal-item-favorite/customElement.js +66 -0
- package/dist/components/arcgis-portal-item-favorite/index.d.ts +1 -0
- package/dist/components/arcgis-portal-item-favorite/index.js +3 -0
- package/dist/components/arcgis-portal-item-favorite/utils.d.ts +4 -0
- package/dist/components/arcgis-portal-item-type/customElement.js +1 -1
- package/dist/components/arcgis-portal-navigation/customElement.js +40 -40
- package/dist/components/arcgis-portal-navigation/index.js +1 -1
- package/dist/components/arcgis-portal-replacement-item-redirect/customElement.js +42 -214
- package/dist/components/arcgis-portal-user-popup/customElement.js +66 -100
- package/dist/components/portal-group-browser-filters/customElement.js +71 -73
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/index.d.ts +38 -0
- package/dist/loader.js +9 -4
- package/dist/types/item.d.ts +5 -1
- package/dist/types/lumina.d.ts +38 -4
- package/dist/types/preact.d.ts +43 -4
- package/dist/types/react.d.ts +48 -4
- package/dist/types/stencil.d.ts +38 -4
- package/package.json +6 -6
- package/dist/cdn/332KSPIN.js +0 -2
- package/dist/cdn/7PPA7V23.js +0 -2
- package/dist/cdn/DML7662F.js +0 -2
- package/dist/cdn/FF24VDOG.js +0 -65
- package/dist/cdn/G2NXASJO.js +0 -2
- package/dist/cdn/JZTBGLFH.js +0 -2
- package/dist/cdn/PP7GTURX.js +0 -2
- package/dist/cdn/QQ432AB6.js +0 -2
- package/dist/cdn/RKWOBE3M.js +0 -2
- package/dist/cdn/V4IAC7WR.js +0 -2
- package/dist/cdn/WEJQVIN4.js +0 -2
- package/dist/cdn/ZK2VXTNX.js +0 -2
- package/dist/components/portal-browser/components/portal-browser-filter-date/portal-browser-filter-date.d.ts +0 -122
|
@@ -1,208 +1,36 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import { c as
|
|
3
|
-
import { LitElement as
|
|
4
|
-
import {
|
|
5
|
-
import { u as
|
|
6
|
-
import { createRef as b, ref as
|
|
7
|
-
import { unsafeHTML as
|
|
2
|
+
import { c as d } from "../../chunks/runtime.js";
|
|
3
|
+
import { LitElement as u, createEvent as I, nothing as R } from "@arcgis/lumina";
|
|
4
|
+
import { g } from "../../chunks/item.js";
|
|
5
|
+
import { u as f } from "../../chunks/useT9n.js";
|
|
6
|
+
import { createRef as b, ref as $ } from "lit/directives/ref.js";
|
|
7
|
+
import { unsafeHTML as v } from "lit/directives/unsafe-html.js";
|
|
8
8
|
import { css as w, html as c } from "lit";
|
|
9
|
-
import {
|
|
10
|
-
import
|
|
9
|
+
import { i as A, a as T, b as U } from "../../chunks/info.js";
|
|
10
|
+
import { g as y, a as k } from "../../chunks/thumbnail.js";
|
|
11
|
+
import o from "@arcgis/core/portal/PortalItem.js";
|
|
11
12
|
import { g as C } from "../../chunks/url.js";
|
|
12
|
-
import {
|
|
13
|
-
import { f as
|
|
14
|
-
import { g as
|
|
15
|
-
import {
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
"Big Data Analytic",
|
|
19
|
-
"Dashboard",
|
|
20
|
-
"Data Pipeline",
|
|
21
|
-
"Deep Learning Studio Project",
|
|
22
|
-
"Discussion",
|
|
23
|
-
"Document Link",
|
|
24
|
-
"Excalibur Imagery Project",
|
|
25
|
-
"Feature Collection",
|
|
26
|
-
"Feature Service",
|
|
27
|
-
"Feed",
|
|
28
|
-
"Form",
|
|
29
|
-
"GeoBIM Application",
|
|
30
|
-
"GeoBIM Project",
|
|
31
|
-
"Hub Event",
|
|
32
|
-
"Hub Initiative",
|
|
33
|
-
"Hub Initiative Template",
|
|
34
|
-
"Hub Page",
|
|
35
|
-
"Hub Project",
|
|
36
|
-
"Image Service",
|
|
37
|
-
"Knowledge Graph",
|
|
38
|
-
"Knowledge Studio Project",
|
|
39
|
-
"Map Service",
|
|
40
|
-
"Map Showcase",
|
|
41
|
-
"Mission Report",
|
|
42
|
-
"Mission Template",
|
|
43
|
-
"Notebook",
|
|
44
|
-
"OGCFeatureServer",
|
|
45
|
-
"Ortho Mapping Project",
|
|
46
|
-
"Parquet Feature Layer",
|
|
47
|
-
"Real Time Analytic",
|
|
48
|
-
"Route Layer",
|
|
49
|
-
"Scene Service",
|
|
50
|
-
"Solution",
|
|
51
|
-
"StoryMap",
|
|
52
|
-
"StoryMap Theme",
|
|
53
|
-
"Tile Layer",
|
|
54
|
-
"Urban Model",
|
|
55
|
-
"Urban Project",
|
|
56
|
-
"Vector Tile Service",
|
|
57
|
-
"Video Service",
|
|
58
|
-
"Web Experience",
|
|
59
|
-
"Web Experience Template",
|
|
60
|
-
"Web Map",
|
|
61
|
-
"Web Mapping Application",
|
|
62
|
-
"Web Scene",
|
|
63
|
-
"WFS",
|
|
64
|
-
"Workflow"
|
|
65
|
-
], F = [
|
|
66
|
-
"3DInsetMap",
|
|
67
|
-
"3DScene",
|
|
68
|
-
"3DViz",
|
|
69
|
-
"AttachmentViewer",
|
|
70
|
-
"CapacityAnalysis",
|
|
71
|
-
"Cascade",
|
|
72
|
-
"Compare",
|
|
73
|
-
"Compare/Configure",
|
|
74
|
-
"Compare/Multiviewer",
|
|
75
|
-
"Compare/Search",
|
|
76
|
-
"Compare/SideBySideViewer_Configure",
|
|
77
|
-
"Compare/storytelling_compare",
|
|
78
|
-
"Compare/storytelling_sidepanel",
|
|
79
|
-
"Compare/storytelling_tabbed",
|
|
80
|
-
"Compare3d",
|
|
81
|
-
"CompareAnalysis",
|
|
82
|
-
"CompareMaps",
|
|
83
|
-
"CrowdsourceManager",
|
|
84
|
-
"CrowdsourcePolling",
|
|
85
|
-
"CrowdsourceReporter",
|
|
86
|
-
"Directions",
|
|
87
|
-
"Edit",
|
|
88
|
-
"Editor",
|
|
89
|
-
"Elevations",
|
|
90
|
-
"ElevationsProfile",
|
|
91
|
-
"Embed",
|
|
92
|
-
"Filter",
|
|
93
|
-
"FilterGallery",
|
|
94
|
-
"GeoForm",
|
|
95
|
-
"GeoList",
|
|
96
|
-
"GeoTour",
|
|
97
|
-
"HeaderFooter",
|
|
98
|
-
"Identify",
|
|
99
|
-
"ImageInterpretation",
|
|
100
|
-
"ImageMask",
|
|
101
|
-
"ImageVisit",
|
|
102
|
-
"ImageryViewer",
|
|
103
|
-
"ImpactSummary",
|
|
104
|
-
"InformationLookup",
|
|
105
|
-
"InteractiveFilter",
|
|
106
|
-
"InteractiveLegend",
|
|
107
|
-
"LayerShowcase",
|
|
108
|
-
"Legend",
|
|
109
|
-
"LiveMaps",
|
|
110
|
-
"LocalPerspective",
|
|
111
|
-
"MapAndAppGallery",
|
|
112
|
-
"MapCarousel",
|
|
113
|
-
"MapJournal",
|
|
114
|
-
"MapSeries",
|
|
115
|
-
"Shortlist",
|
|
116
|
-
"MapTools",
|
|
117
|
-
"MapTour",
|
|
118
|
-
"Media",
|
|
119
|
-
"MinimalGallery",
|
|
120
|
-
"Minimalist",
|
|
121
|
-
"MobileViewer",
|
|
122
|
-
"Nearby",
|
|
123
|
-
"OnePane",
|
|
124
|
-
"Panels",
|
|
125
|
-
"PanelsLegend",
|
|
126
|
-
"Profile",
|
|
127
|
-
"PublicGallery",
|
|
128
|
-
"PublicInformation",
|
|
129
|
-
"ServiceLookup",
|
|
130
|
-
"SimpleMapViewer",
|
|
131
|
-
"SimpleViewer",
|
|
132
|
-
"SocialMedia",
|
|
133
|
-
"Solutions/s2.html?app=apps2/FindEditFilter",
|
|
134
|
-
"Solutions/s2.html?app=apps2/Finder",
|
|
135
|
-
"Solutions/s2.html",
|
|
136
|
-
"StoryMapBasic",
|
|
137
|
-
"StorytellingSwipe",
|
|
138
|
-
"StorytellingTextLegend",
|
|
139
|
-
"Styler",
|
|
140
|
-
"SummaryViewer",
|
|
141
|
-
"Time",
|
|
142
|
-
"TimeAware",
|
|
143
|
-
"TwoPane",
|
|
144
|
-
"View",
|
|
145
|
-
"Viewer",
|
|
146
|
-
"ZoneLookup"
|
|
147
|
-
], k = (r) => {
|
|
148
|
-
if (!r)
|
|
149
|
-
return !1;
|
|
150
|
-
const e = F.some((t) => {
|
|
151
|
-
const i = t.includes(".html"), a = `/apps/${t}${i ? "" : "/"}`;
|
|
152
|
-
return decodeURIComponent(r.url)?.includes(a);
|
|
153
|
-
});
|
|
154
|
-
return r.type === "Web Mapping Application" && !!r.url && e;
|
|
155
|
-
};
|
|
156
|
-
function B(r) {
|
|
157
|
-
const e = [
|
|
158
|
-
"Cascade",
|
|
159
|
-
"MapTour",
|
|
160
|
-
"MapJournal",
|
|
161
|
-
"MapSeries",
|
|
162
|
-
"Shortlist",
|
|
163
|
-
"StoryMapCrowdsource",
|
|
164
|
-
"SwipeSpyglass",
|
|
165
|
-
"Story Map"
|
|
166
|
-
];
|
|
167
|
-
return r.type === "Web Mapping Application" && (V(e, r) || E(r));
|
|
168
|
-
}
|
|
169
|
-
function E(r) {
|
|
170
|
-
return [
|
|
171
|
-
"Cascade",
|
|
172
|
-
"MapTour",
|
|
173
|
-
"MapJournal",
|
|
174
|
-
"MapSeries",
|
|
175
|
-
"Shortlist",
|
|
176
|
-
"StoryMapCrowdsource",
|
|
177
|
-
"StorytellingSwipe"
|
|
178
|
-
].some((t) => {
|
|
179
|
-
const i = `/apps/${t}/index.html`;
|
|
180
|
-
return decodeURIComponent(r.url)?.includes(i);
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
function V(r, e) {
|
|
184
|
-
return r?.some((t) => e?.typeKeywords?.includes(t));
|
|
185
|
-
}
|
|
186
|
-
function H(r) {
|
|
187
|
-
return !!r && D.some((e) => r.type === e);
|
|
188
|
-
}
|
|
189
|
-
const d = 5e3;
|
|
190
|
-
class _ extends I {
|
|
13
|
+
import { g as B } from "../../chunks/portal2.js";
|
|
14
|
+
import { f as D } from "../../chunks/user.js";
|
|
15
|
+
import { g as P } from "../../chunks/user2.js";
|
|
16
|
+
import { b as _ } from "../../chunks/portal.js";
|
|
17
|
+
const O = w`.thumbnail{object-fit:cover;max-height:8rem}.replacement-container{margin:.5rem}.replacement-message{margin-bottom:.5rem}.replacement-card__title{margin-bottom:.25rem}`, p = 5e3;
|
|
18
|
+
class H extends u {
|
|
191
19
|
constructor() {
|
|
192
|
-
super(...arguments), this.replacementId = null, this.itemOwnerName = "", this.replacementItemInRecycleBin = !1, this.hasInaccessibleReplacementItem = !1, this.replacementItemSupportsOpenActions = !1, this.thumbnailUrl = null, this.timer = void 0, this.messages =
|
|
193
|
-
const
|
|
194
|
-
return
|
|
20
|
+
super(...arguments), this.replacementId = null, this.itemOwnerName = "", this.replacementItemInRecycleBin = !1, this.hasInaccessibleReplacementItem = !1, this.replacementItemSupportsOpenActions = !1, this.thumbnailUrl = null, this.timer = void 0, this.messages = f({ blocking: !0 }), this.primaryActionRef = b(), this.getItemDetailsUrl = ({ portal: e, itemId: t, redirect: i }) => {
|
|
21
|
+
const r = C({ portal: e, usePortalHostname: !this.user });
|
|
22
|
+
return r ? `${`${r}/home`}/item.html?id=${t}${i ? "&performRedirectAction=true" : ""}` : "";
|
|
195
23
|
}, this.performRedirectAction = () => {
|
|
196
24
|
window.open(this.getItemDetailsUrl({ portal: this.portal, itemId: this.replacementId, redirect: !0 }), "_self");
|
|
197
25
|
}, this.viewItemDetailsPage = () => {
|
|
198
26
|
window.open(this.getItemDetailsUrl({ portal: this.portal, itemId: this.replacementId ?? this.itemId }), this.supportsReplacement ? "_self" : "_blank");
|
|
199
|
-
}, this.canRedirect = !1, this.item = null, this.replacementItem = null, this.redirectAction = null, this.supportsReplacement = !1, this.redirectCancelled = !1, this.open = !1, this.redirectTimeRemaining =
|
|
27
|
+
}, this.canRedirect = !1, this.item = null, this.replacementItem = null, this.redirectAction = null, this.supportsReplacement = !1, this.redirectCancelled = !1, this.open = !1, this.redirectTimeRemaining = p / 1e3, this.arcgisPortalReplacementItemFetch = I();
|
|
200
28
|
}
|
|
201
29
|
static {
|
|
202
30
|
this.properties = { item: 16, replacementItem: 16, redirectAction: 16, supportsReplacement: 16, redirectCancelled: 16, open: 16, redirectTimeRemaining: 16, itemId: 1, portal: 0, user: 0 };
|
|
203
31
|
}
|
|
204
32
|
static {
|
|
205
|
-
this.styles =
|
|
33
|
+
this.styles = O;
|
|
206
34
|
}
|
|
207
35
|
async setFocus() {
|
|
208
36
|
this.primaryActionRef.value?.setFocus();
|
|
@@ -211,7 +39,7 @@ class _ extends I {
|
|
|
211
39
|
(e.has("itemId") || e.has("portal") || e.has("user")) && (this.user ??= this.portal?.user ?? null, this.initItem());
|
|
212
40
|
}
|
|
213
41
|
setupTimer({ onComplete: e }) {
|
|
214
|
-
typeof this.timer == "number" && clearInterval(this.timer), this.redirectTimeRemaining =
|
|
42
|
+
typeof this.timer == "number" && clearInterval(this.timer), this.redirectTimeRemaining = p / 1e3, this.timer = setInterval(() => {
|
|
215
43
|
if (this.redirectTimeRemaining <= 0) {
|
|
216
44
|
clearInterval(this.timer), this.timer = void 0, e();
|
|
217
45
|
return;
|
|
@@ -229,31 +57,31 @@ class _ extends I {
|
|
|
229
57
|
this.cancelTimer(), this.redirectCancelled = !0;
|
|
230
58
|
}
|
|
231
59
|
isItemRetired(e) {
|
|
232
|
-
return
|
|
60
|
+
return A(e) || T(e);
|
|
233
61
|
}
|
|
234
62
|
async initItem() {
|
|
235
63
|
if (!this.itemId)
|
|
236
64
|
return;
|
|
237
|
-
const { itemId: e, portal: t, performRedirectAction: i } = this,
|
|
65
|
+
const { itemId: e, portal: t, performRedirectAction: i } = this, r = new o({
|
|
238
66
|
id: e,
|
|
239
67
|
portal: t
|
|
240
68
|
});
|
|
241
|
-
this.item = await
|
|
242
|
-
const
|
|
69
|
+
this.item = await r?.load();
|
|
70
|
+
const a = await g(e, t, {
|
|
243
71
|
relationshipType: "ReplacementItem2Item",
|
|
244
72
|
direction: "reverse"
|
|
245
|
-
}, !0),
|
|
246
|
-
this.replacementItemInRecycleBin =
|
|
247
|
-
const
|
|
248
|
-
id:
|
|
73
|
+
}, !0), n = a.data?.relatedItems?.[0];
|
|
74
|
+
this.replacementItemInRecycleBin = n?.inRecycleBin;
|
|
75
|
+
const l = n?.id, s = !this.replacementItemInRecycleBin && l ? new o({
|
|
76
|
+
id: l,
|
|
249
77
|
portal: t
|
|
250
78
|
}) : null;
|
|
251
|
-
await s?.load(), this.replacementItem = s, this.hasInaccessibleReplacementItem = this.replacementItemInRecycleBin || !s &&
|
|
79
|
+
await s?.load(), this.replacementItem = s, this.hasInaccessibleReplacementItem = this.replacementItemInRecycleBin || !s && a.data?.aggregations?.total?.count > 0 && a.data?.relatedItems?.length === 0, this.arcgisPortalReplacementItemFetch.emit({
|
|
252
80
|
replacementItem: this.hasInaccessibleReplacementItem ? {} : s || null
|
|
253
81
|
}), this.replacementItem = s;
|
|
254
|
-
const m = this.replacementItem?.owner ?? (
|
|
255
|
-
this.itemOwnerName = m ?
|
|
256
|
-
const h =
|
|
82
|
+
const m = this.replacementItem?.owner ?? (r?.owner || null);
|
|
83
|
+
this.itemOwnerName = m ? P(await D(m, t), this.messages?._t9nLocale || "en") : "", this.replacementItemSupportsOpenActions = U(s), this.thumbnailUrl = y(t, s ?? this.item), this.supportsReplacement = !!s && this.isItemRetired(r);
|
|
84
|
+
const h = _(this.replacementItem, await B(this.portal), this.portal?.isPortal ?? !1);
|
|
257
85
|
this.canRedirect = this.supportsReplacement && this.replacementItemSupportsOpenActions && !h, this.replacementId = s?.id || null, this.canRedirect && this.setupTimer({
|
|
258
86
|
onComplete: () => i()
|
|
259
87
|
}), this.open = !0;
|
|
@@ -267,24 +95,24 @@ class _ extends I {
|
|
|
267
95
|
return t ? e.retiredReplacementUnavailable : i ? e.deprecatedHasReplacement : this.isItemRetired(this.item) && !this.replacementItem ? e.retired : e.deprecatedHasReplacement;
|
|
268
96
|
}
|
|
269
97
|
getRedirectActionMessage() {
|
|
270
|
-
const { messages: e, canRedirect: t, redirectTimeRemaining: i, redirectCancelled:
|
|
271
|
-
return
|
|
98
|
+
const { messages: e, canRedirect: t, redirectTimeRemaining: i, redirectCancelled: r } = this;
|
|
99
|
+
return r ? e.redirectToReplacement : t ? e.redirect.replace("${seconds}", `${i}`) : e.moreDetails;
|
|
272
100
|
}
|
|
273
101
|
renderCard(e) {
|
|
274
102
|
const { canRedirect: t, messages: i } = this;
|
|
275
|
-
return c`<calcite-card thumbnail-position=inline-start><img slot=thumbnail class="thumbnail" src=${(this.thumbnailUrl || void 0) ?? R} @error=${async () => this.thumbnailUrl =
|
|
103
|
+
return c`<calcite-card thumbnail-position=inline-start><img slot=thumbnail class="thumbnail" src=${(this.thumbnailUrl || void 0) ?? R} @error=${async () => this.thumbnailUrl = k(e)}><span slot=heading class="replacement-card__title">${e.title}</span><span slot=description>${i.ownedBy?.replace("${owner}", this.itemOwnerName)}</span>${t && c`<calcite-link slot=footer-start icon-end=launch .href=${this.getItemDetailsUrl({ portal: this.portal, itemId: this.replacementId })} target=_blank>${i.moreDetails}</calcite-link>` || ""}</calcite-card>`;
|
|
276
104
|
}
|
|
277
105
|
render() {
|
|
278
|
-
const { open: e, messages: t, item: i, replacementItem:
|
|
106
|
+
const { open: e, messages: t, item: i, replacementItem: r, supportsReplacement: a, canRedirect: n, redirectCancelled: l } = this;
|
|
279
107
|
if (!(!i || !this.isItemRetired(i)))
|
|
280
|
-
return c`<calcite-dialog modal .open=${e} width=s kind=info outside-close-disabled escape-disabled close-disabled .heading=${this.getReplacementHeading()} @calciteDialogClose=${() => this.handleClose()}><div class="replacement-container"><div class="replacement-message">${
|
|
108
|
+
return c`<calcite-dialog modal .open=${e} width=s kind=info outside-close-disabled escape-disabled close-disabled .heading=${this.getReplacementHeading()} @calciteDialogClose=${() => this.handleClose()}><div class="replacement-container"><div class="replacement-message">${v(this.getReplacementMessage()?.replace("${itemTitle}", this.item?.title || ""))}</div>${this.renderCard(a ? r : i)}</div>${n && !l && c`<calcite-button slot=footer-end appearance=outline-fill kind=neutral @click=${() => {
|
|
281
109
|
this.cancelRedirect();
|
|
282
110
|
}}>${t.cancelRedirection}</calcite-button>` || ""}<calcite-button slot=footer-end @click=${() => {
|
|
283
|
-
this.cancelTimer(),
|
|
284
|
-
}} .iconEnd=${
|
|
111
|
+
this.cancelTimer(), n ? this.performRedirectAction() : this.viewItemDetailsPage();
|
|
112
|
+
}} .iconEnd=${n ? void 0 : "launch"} ${$(this.primaryActionRef)}>${this.getRedirectActionMessage()}</calcite-button></calcite-dialog>`;
|
|
285
113
|
}
|
|
286
114
|
}
|
|
287
|
-
|
|
115
|
+
d("arcgis-portal-replacement-item-redirect", H);
|
|
288
116
|
export {
|
|
289
|
-
|
|
117
|
+
H as ArcgisPortalReplacementItemRedirect
|
|
290
118
|
};
|
|
@@ -1,120 +1,86 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
2
|
import { c as A } from "../../chunks/runtime.js";
|
|
3
|
-
import { LitElement as
|
|
4
|
-
import { css as
|
|
5
|
-
import { createRef as
|
|
3
|
+
import { LitElement as R, createEvent as g, safeClassMap as b, safeStyleMap as B } from "@arcgis/lumina";
|
|
4
|
+
import { css as N, html as l } from "lit";
|
|
5
|
+
import { createRef as $, ref as w } from "lit/directives/ref.js";
|
|
6
6
|
import { u as L } from "../../chunks/useT9n.js";
|
|
7
|
-
import { f
|
|
8
|
-
import {
|
|
9
|
-
import { g as
|
|
10
|
-
import { f as
|
|
11
|
-
import {
|
|
12
|
-
import { g as
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const a = s.portal?.portalHostname || o?.portalHostname || o?.restUrl?.replace("/sharing/rest", ""), n = e ? `https://www.arcgis.com/sharing/rest/portals/${t}` : `https://${a}/sharing/rest/portals/${t}`;
|
|
16
|
-
if (!a && !e)
|
|
17
|
-
return null;
|
|
18
|
-
const i = e ? { disableIdentityLookup: !0, addTokenManually: !1 } : {}, l = await $({ url: n, portal: o, options: i }), { urlKey: m, thumbnail: p, customBaseUrl: c } = l, f = `https://${m}.${c}/`, h = p ? `${f}sharing/rest/portals/self/resources/${p}` : null;
|
|
19
|
-
let d = "", v = "";
|
|
20
|
-
try {
|
|
21
|
-
const g = await $({
|
|
22
|
-
url: `${n}/resources/localizedOrgProperties`,
|
|
23
|
-
portal: o,
|
|
24
|
-
params: { start: 1, num: 100 },
|
|
25
|
-
options: i
|
|
26
|
-
});
|
|
27
|
-
if (g) {
|
|
28
|
-
const b = g[r] || g.default;
|
|
29
|
-
d = b.name, v = b.description;
|
|
30
|
-
}
|
|
31
|
-
} catch {
|
|
32
|
-
}
|
|
33
|
-
return {
|
|
34
|
-
name: d || l.name,
|
|
35
|
-
description: H(v || l.description),
|
|
36
|
-
url: `${f}home/`,
|
|
37
|
-
thumbnail: h
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
async function S(s, t, r, o) {
|
|
41
|
-
const e = s.sourceJSON?.orgId ?? s.portal?.id ?? r?.id;
|
|
42
|
-
return await _({
|
|
43
|
-
requester: async () => await F(s, e, t, r, o),
|
|
44
|
-
key: "verified",
|
|
45
|
-
id: e
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
const O = (s) => (
|
|
7
|
+
import { f } from "../../chunks/user.js";
|
|
8
|
+
import { r as C, g as T } from "../../chunks/string.js";
|
|
9
|
+
import { g as z } from "../../chunks/user2.js";
|
|
10
|
+
import { f as k, r as y } from "../../chunks/request.js";
|
|
11
|
+
import { s as q } from "../../chunks/dom.js";
|
|
12
|
+
import { g as U } from "../../chunks/portal.js";
|
|
13
|
+
import { f as F } from "../../chunks/verified.js";
|
|
14
|
+
const H = N`:host{display:flex}.button{display:flex;align-items:center;max-width:100%;cursor:pointer;white-space:normal;border-style:none;padding:0;font-size:.75rem;color:var(--calcite-color-text-2);outline:2px solid transparent;outline-offset:2px;transition-property:all;outline-color:transparent;background:transparent;font-family:inherit;line-height:1.5;&:focus{outline:2px solid var(--calcite-color-brand);outline-offset:2px}}.button--outline{box-sizing:border-box;width:100%;padding:.5rem .75rem;transition-property:all;border:1px solid var(--calcite-color-border-3);&:hover{box-shadow:inset 0 0 0 1px var(--calcite-color-foreground-3)}}.name{overflow:hidden;white-space:nowrap;margin-inline-start:.5rem;text-overflow:ellipsis}.popover__wrapper{background-color:var(--calcite-color-foreground-1);width:min(32rem,80vw)}.popover__header{padding:1.25rem 1rem}.popover__avatar{max-width:100%}.popover__content{padding:.5rem 1rem 1.25rem}.popover__description{margin:0;overflow:auto;padding:0;padding-bottom:1rem;font-size:.875rem;color:var(--calcite-color-text-2);max-height:21.25rem}.popover__fade{position:relative;z-index:10;margin-bottom:.25rem;display:block;height:1rem;width:100%;background:linear-gradient(to bottom,transparent,var(--calcite-color-foreground-1) 100%);margin-top:-1rem}.popover__buttons{display:grid;grid-auto-flow:column;grid-gap:.5rem}.popover__buttons--no-description{padding-top:1rem}.popover__button{min-width:0px}.popover__loader{--calcite-loader-padding: 0}`, I = (a) => (
|
|
49
15
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
50
|
-
|
|
16
|
+
a?.sourceJSON?.contentStatus === "public_authoritative"
|
|
51
17
|
);
|
|
52
|
-
async function
|
|
53
|
-
if (
|
|
54
|
-
const e =
|
|
55
|
-
if (!
|
|
56
|
-
return await
|
|
57
|
-
const { description: n, name: i, thumbnail:
|
|
18
|
+
async function M(a, t, r, o) {
|
|
19
|
+
if (I(a)) {
|
|
20
|
+
const e = a.owner || "", s = await F(a, r, t, o);
|
|
21
|
+
if (!s)
|
|
22
|
+
return await f(e, t, o);
|
|
23
|
+
const { description: n, name: i, thumbnail: u, url: m } = s;
|
|
58
24
|
return {
|
|
59
|
-
description: n ?
|
|
25
|
+
description: n ? q(n) : "",
|
|
60
26
|
fullName: i,
|
|
61
27
|
username: e,
|
|
62
|
-
thumbnail:
|
|
63
|
-
id:
|
|
28
|
+
thumbnail: u,
|
|
29
|
+
id: a.portal.id,
|
|
64
30
|
url: m
|
|
65
31
|
};
|
|
66
32
|
}
|
|
67
|
-
return await
|
|
33
|
+
return await f(a.owner || "", t, o);
|
|
68
34
|
}
|
|
69
|
-
async function
|
|
70
|
-
const o = r ? "https://www.arcgis.com/sharing/rest/" :
|
|
71
|
-
return await
|
|
72
|
-
requester: async () => await
|
|
35
|
+
async function E(a, t, r) {
|
|
36
|
+
const o = r ? "https://www.arcgis.com/sharing/rest/" : U(t), e = r ? { disableIdentityLookup: !0, addTokenManually: !1 } : {};
|
|
37
|
+
return await k({
|
|
38
|
+
requester: async () => await y({
|
|
73
39
|
url: `${o}community/groups`,
|
|
74
40
|
portal: t,
|
|
75
41
|
params: {
|
|
76
|
-
q: `(owner:"${
|
|
42
|
+
q: `(owner:"${a}")`,
|
|
77
43
|
num: 100
|
|
78
44
|
},
|
|
79
45
|
options: e
|
|
80
46
|
}),
|
|
81
47
|
key: "userGroups",
|
|
82
|
-
id:
|
|
48
|
+
id: a
|
|
83
49
|
});
|
|
84
50
|
}
|
|
85
|
-
async function
|
|
86
|
-
const o = r ? "https://www.arcgis.com/sharing/rest/" :
|
|
87
|
-
return await
|
|
88
|
-
requester: async () => (await
|
|
51
|
+
async function G(a, t, r) {
|
|
52
|
+
const o = r ? "https://www.arcgis.com/sharing/rest/" : U(t), e = r ? { disableIdentityLookup: !0, addTokenManually: !1 } : {};
|
|
53
|
+
return await k({
|
|
54
|
+
requester: async () => (await y({
|
|
89
55
|
url: `${o}search`,
|
|
90
56
|
portal: t,
|
|
91
57
|
params: {
|
|
92
|
-
q: `(owner:"${
|
|
58
|
+
q: `(owner:"${a}") -typekeywords:"recyclebin"`,
|
|
93
59
|
num: 1
|
|
94
60
|
},
|
|
95
61
|
options: e
|
|
96
62
|
})).total,
|
|
97
63
|
key: "userItemsTotal",
|
|
98
|
-
id:
|
|
64
|
+
id: a
|
|
99
65
|
});
|
|
100
66
|
}
|
|
101
|
-
function
|
|
102
|
-
baseUrl:
|
|
67
|
+
function _({
|
|
68
|
+
baseUrl: a,
|
|
103
69
|
user: t,
|
|
104
70
|
type: r
|
|
105
71
|
}) {
|
|
106
|
-
const o =
|
|
72
|
+
const o = C(a), e = encodeURIComponent(t.username || "");
|
|
107
73
|
return e ? `${o}/${r}.html?user=${e}` : `${o}/${r}.html`;
|
|
108
74
|
}
|
|
109
|
-
class
|
|
75
|
+
class S extends R {
|
|
110
76
|
constructor() {
|
|
111
|
-
super(...arguments), this.messages = L({ blocking: !0 }), this.buttonRef =
|
|
77
|
+
super(...arguments), this.messages = L({ blocking: !0 }), this.buttonRef = $(), this.popoverRef = $(), this.isPopoverOpen = !1, this.scale = "m", this.showAvatar = !0, this.showName = !0, this.showUsername = !1, this.appearance = "transparent", this.arcgisUserPopupInternalUIAction = g(), this.arcgisUserPopupClose = g();
|
|
112
78
|
}
|
|
113
79
|
static {
|
|
114
80
|
this.properties = { itemUserInfo: 16, groups: 16, total: 16, isPopoverOpen: 16, user: 0, username: 1, fullName: 1, item: 0, scale: 3, portal: 0, baseUrl: 1, underline: 5, showAvatar: 5, showName: 5, showUsername: 5, wrap: 5, appearance: 1, zIndex: 9, avatarAriaHidden: 5, checkOnline: 5 };
|
|
115
81
|
}
|
|
116
82
|
static {
|
|
117
|
-
this.styles =
|
|
83
|
+
this.styles = H;
|
|
118
84
|
}
|
|
119
85
|
async setFocus() {
|
|
120
86
|
this.buttonRef.value?.focus();
|
|
@@ -132,26 +98,26 @@ class J extends B {
|
|
|
132
98
|
return this.baseUrl || `${this.portal.url}/home`;
|
|
133
99
|
}
|
|
134
100
|
async init() {
|
|
135
|
-
const { item: t, username: r, portal: o, fullName: e, messages:
|
|
136
|
-
if (!(!
|
|
101
|
+
const { item: t, username: r, portal: o, fullName: e, messages: s } = this;
|
|
102
|
+
if (!(!s._lang || !o)) {
|
|
137
103
|
if (t) {
|
|
138
|
-
this.itemUserInfo = await
|
|
104
|
+
this.itemUserInfo = await M(t, o, s._lang, this.checkOnline);
|
|
139
105
|
return;
|
|
140
106
|
}
|
|
141
107
|
if (r) {
|
|
142
|
-
const n = await
|
|
108
|
+
const n = await f(r, o, this.checkOnline);
|
|
143
109
|
!n.fullName && e && (n.fullName = e), this.itemUserInfo = n;
|
|
144
110
|
}
|
|
145
111
|
}
|
|
146
112
|
}
|
|
147
113
|
async fetchItemsAndGroups() {
|
|
148
|
-
const { user: t, itemUserInfo: r, item: o, portal: e, username:
|
|
114
|
+
const { user: t, itemUserInfo: r, item: o, portal: e, username: s, checkOnline: n } = this, i = s || t?.username || o?.owner || r?.username;
|
|
149
115
|
if (!(!i || !e)) {
|
|
150
116
|
if (!this.groups) {
|
|
151
|
-
const
|
|
152
|
-
this.groups =
|
|
117
|
+
const u = await E(i, e, n);
|
|
118
|
+
this.groups = u;
|
|
153
119
|
}
|
|
154
|
-
this.total = await
|
|
120
|
+
this.total = await G(i, e, n);
|
|
155
121
|
}
|
|
156
122
|
}
|
|
157
123
|
setPopoverOpen(t) {
|
|
@@ -164,43 +130,43 @@ class J extends B {
|
|
|
164
130
|
}
|
|
165
131
|
renderOrgButtons(t) {
|
|
166
132
|
const { messages: r } = this, e = (t.url || this.resolvedBaseUrl).replace(/\/$/u, "");
|
|
167
|
-
return
|
|
133
|
+
return l`<calcite-button appearance=outline-fill kind=neutral .href=${e} target=_blank @click=${(s) => this.openLink(s, e)}>${r.homepage}</calcite-button><calcite-button appearance=outline-fill kind=neutral .href=${`${e}/gallery.html`} target=_blank @click=${(s) => this.openLink(s, `${e}/gallery.html`)}>${r.gallery}</calcite-button>`;
|
|
168
134
|
}
|
|
169
135
|
renderUserButtons(t) {
|
|
170
|
-
const { total: r, groups: o, messages: e } = this,
|
|
136
|
+
const { total: r, groups: o, messages: e } = this, s = t.username || "";
|
|
171
137
|
if (typeof r != "number" || !o)
|
|
172
|
-
return
|
|
173
|
-
const i =
|
|
174
|
-
return
|
|
138
|
+
return l`<calcite-loader .label=${e.loadingUserInformation} scale=s class="popover__loader"></calcite-loader>`;
|
|
139
|
+
const i = _({ baseUrl: this.resolvedBaseUrl, user: { username: s }, type: "groups" }), u = _({ baseUrl: this.resolvedBaseUrl, user: { username: s }, type: "content" }), m = `${this.resolvedBaseUrl.replace(/\/$/u, "")}/user.html?user=${encodeURIComponent(s)}`;
|
|
140
|
+
return l`${!!o.total && l`<calcite-button class="popover__button" appearance=outline-fill kind=neutral .href=${i} target=_blank @click=${(p) => {
|
|
175
141
|
this.openLink(p, i), this.arcgisUserPopupInternalUIAction.emit({ category: "profile popup", action: "view all groups" });
|
|
176
|
-
}}>${e.groups.replace("${number}", new Intl.NumberFormat(e._lang).format(o.total))}</calcite-button>` || ""}${!!r &&
|
|
177
|
-
this.openLink(p,
|
|
142
|
+
}}>${e.groups.replace("${number}", new Intl.NumberFormat(e._lang).format(o.total))}</calcite-button>` || ""}${!!r && l`<calcite-button class="popover__button" appearance=outline-fill kind=neutral .href=${u} target=_blank @click=${(p) => {
|
|
143
|
+
this.openLink(p, u), this.arcgisUserPopupInternalUIAction.emit({ category: "profile popup", action: "view all content" });
|
|
178
144
|
}}>${e.items.replace("${number}", new Intl.NumberFormat(e._lang).format(r))}</calcite-button>` || ""}<calcite-button class="popover__button" appearance=outline-fill kind=neutral .href=${m} target=_blank @click=${(p) => {
|
|
179
145
|
this.openLink(p, m), this.arcgisUserPopupInternalUIAction.emit({ category: "profile popup", action: "view profile" });
|
|
180
146
|
}}>${e.profile}</calcite-button>`;
|
|
181
147
|
}
|
|
182
148
|
render() {
|
|
183
|
-
const { user: t, itemUserInfo: r, portal: o, item: e, appearance:
|
|
149
|
+
const { user: t, itemUserInfo: r, portal: o, item: e, appearance: s, scale: n, isPopoverOpen: i, showName: u, showUsername: m, messages: p } = this, c = t || r;
|
|
184
150
|
if (!p._lang || !c)
|
|
185
|
-
return
|
|
186
|
-
const
|
|
187
|
-
return
|
|
151
|
+
return l`<arcgis-portal-user-avatar scale=s show-name .checkOnline=${this.checkOnline}></arcgis-portal-user-avatar>`;
|
|
152
|
+
const v = I(e), d = c.username || "", h = T(c.description || "") || "", x = z(c, p._lang), P = v ? p.itemManagedBy.replace("${username}", d) : d;
|
|
153
|
+
return l`<button class=${b({
|
|
188
154
|
button: !0,
|
|
189
|
-
"button--outline":
|
|
155
|
+
"button--outline": s === "outline"
|
|
190
156
|
})} @click=${() => {
|
|
191
157
|
this.isPopoverOpen || (this.isPopoverOpen = !0), this.fetchItemsAndGroups();
|
|
192
|
-
}} ${
|
|
158
|
+
}} ${w(this.buttonRef)}><slot><arcgis-portal-user-avatar .user=${c} .scale=${n} .portal=${o} .showName=${u} .description=${m ? d : ""} .hideAvatar=${!this.showAvatar} .underline=${this.underline} .checkOnline=${this.checkOnline} .wrap=${this.wrap}></arcgis-portal-user-avatar></slot></button>${i && this.buttonRef.value && c && l`<calcite-popover class="popover" .label=${x} pointer-disabled .referenceElement=${this.buttonRef.value} placement=auto .id=${`${d}-popover`} auto-close style=${B({ "--calcite-popover-z-index": this.zIndex?.toString() || "12" })} @calcitePopoverOpen=${() => {
|
|
193
159
|
this.arcgisUserPopupInternalUIAction.emit({ category: "profile popup", action: "open profile popup" });
|
|
194
160
|
}} @calcitePopoverClose=${() => {
|
|
195
161
|
this.isPopoverOpen = !1, this.arcgisUserPopupClose.emit();
|
|
196
|
-
}} @keydown=${(
|
|
197
|
-
|
|
162
|
+
}} @keydown=${(O) => {
|
|
163
|
+
O.key === "Escape" && setTimeout(() => {
|
|
198
164
|
this.buttonRef.value?.focus();
|
|
199
165
|
}, 200);
|
|
200
|
-
}} ${
|
|
166
|
+
}} ${w(this.popoverRef)}><div class="popover__wrapper"><div class="popover__header"><arcgis-portal-user-avatar class="popover__avatar" .user=${c} scale=l .portal=${o} show-name .description=${P} .checkOnline=${this.checkOnline}></arcgis-portal-user-avatar></div><div class="popover__content">${!!h && l`<p class="popover__description">${h}</p>` || ""}${!!h && l`<div class="popover__fade"></div>` || ""}<div class=${b({ popover__buttons: !0, "popover__buttons--no-description": !h })}>${v ? this.renderOrgButtons(c) : this.renderUserButtons(c)}</div></div></div></calcite-popover>` || ""}`;
|
|
201
167
|
}
|
|
202
168
|
}
|
|
203
|
-
A("arcgis-portal-user-popup",
|
|
169
|
+
A("arcgis-portal-user-popup", S);
|
|
204
170
|
export {
|
|
205
|
-
|
|
171
|
+
S as ArcgisPortalUserPopup
|
|
206
172
|
};
|