@esri/solutions-components 5.1.0-next.92 → 5.1.0-next.93
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/{OV4IBBDL.js → 2O3HAXKG.js} +1 -1
- package/dist/cdn/{BBNWDMCK.js → 3XGF3ZJO.js} +1 -1
- package/dist/cdn/{4LXH3MTT.js → 3ZZ726LQ.js} +1 -1
- package/dist/cdn/{PHIGRQ7V.js → 4HPFDUTJ.js} +1 -1
- package/dist/cdn/4OJ3LBF6.js +2 -0
- package/dist/cdn/{VPDMT4CY.js → 4QZ7WHXA.js} +1 -1
- package/dist/cdn/{SGBMDDAS.js → 55NRVFJ5.js} +1 -1
- package/dist/cdn/{5RTR3NSC.js → 5BU6XZAD.js} +1 -1
- package/dist/cdn/{4ZKGHGGU.js → 5OF3YOO7.js} +1 -1
- package/dist/cdn/{VWPOKKOE.js → 5XOS5PST.js} +1 -1
- package/dist/cdn/{K6PW4IX6.js → BPELKV5K.js} +1 -1
- package/dist/cdn/{DJOOB7YP.js → CDT7ELTA.js} +1 -1
- package/dist/cdn/{I33B45EZ.js → CHZWEULM.js} +1 -1
- package/dist/cdn/{NV3RC3FX.js → CWXOH2PC.js} +1 -1
- package/dist/cdn/{DUZ4KXB3.js → FDE2V7FU.js} +1 -1
- package/dist/cdn/{6DCCVJMZ.js → GJTXLQOS.js} +1 -1
- package/dist/cdn/{SWWDYNJE.js → IGSOHYV3.js} +1 -1
- package/dist/cdn/J5XFS6HE.js +2 -0
- package/dist/cdn/{32YZXXMV.js → JBFDURMG.js} +1 -1
- package/dist/cdn/{KEZAVYJU.js → JJ7JB2ZP.js} +1 -1
- package/dist/cdn/{FN2NSVLO.js → K6WLYYPH.js} +1 -1
- package/dist/cdn/{JDX6K42U.js → L73FGVVE.js} +1 -1
- package/dist/cdn/{VHOYM5MD.js → O3SWSZQE.js} +1 -1
- package/dist/cdn/{XN2JVOOR.js → OGPKAPZK.js} +1 -1
- package/dist/cdn/PJ43TSSJ.js +2 -0
- package/dist/cdn/{LDK4C3VJ.js → R2G4DDRZ.js} +1 -1
- package/dist/cdn/{A7PEA2YP.js → RTFBOXOK.js} +1 -1
- package/dist/cdn/{ET32EBBO.js → S5VV7I2H.js} +1 -1
- package/dist/cdn/{DWEIHGFT.js → SN4D24TK.js} +1 -1
- package/dist/cdn/{QO2RC46D.js → SO3S3WP4.js} +1 -1
- package/dist/cdn/{PP2SFAFD.js → WF32M7B5.js} +1 -1
- package/dist/cdn/WRSVJIPA.js +2 -0
- package/dist/cdn/{73YLLTLN.js → XAW6KPKL.js} +1 -1
- package/dist/cdn/{WQGGCG6M.js → XBDEGJHE.js} +1 -1
- package/dist/cdn/{B7AQR2UD.js → ZGEMIOB5.js} +1 -1
- package/dist/cdn/{JWGDDEVT.js → ZP6VPBP4.js} +1 -1
- package/dist/cdn/assets/solution-builder-assistant/t9n/messages.en.json +1 -1
- package/dist/cdn/assets/solution-builder-assistant/t9n/messages.json +1 -1
- package/dist/cdn/assets/solution-item-accordion/t9n/messages.en.json +1 -1
- package/dist/cdn/assets/solution-item-accordion/t9n/messages.json +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/interfaces.js +22 -21
- package/dist/components/solution-builder-assistant/customElement.d.ts +2 -0
- package/dist/components/solution-builder-assistant/customElement.js +45 -44
- package/dist/components/solution-configure-titles/customElement.js +1 -1
- package/dist/components/solution-delete-dialog/customElement.js +1 -1
- package/dist/components/solution-item-accordion/customElement.d.ts +6 -0
- package/dist/components/solution-item-accordion/customElement.js +51 -27
- 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.js +25 -24
- package/dist/loader.js +1 -1
- package/dist/solutions-components_commit.txt +6 -6
- package/dist/types/lumina.d.ts +1 -1
- package/dist/types/preact.d.ts +1 -1
- package/dist/types/react.d.ts +1 -1
- package/dist/types/stencil.d.ts +1 -1
- package/dist/utils/interfaces.d.ts +2 -0
- package/package.json +1 -1
- package/dist/cdn/3O5CKVIA.js +0 -2
- package/dist/cdn/EMZJJYGC.js +0 -2
- package/dist/cdn/SW3IJGVE.js +0 -2
- package/dist/cdn/ZBET72YB.js +0 -2
|
@@ -55,7 +55,7 @@ class N extends T {
|
|
|
55
55
|
}
|
|
56
56
|
_getAccordion() {
|
|
57
57
|
const e = [...new Set(this._nonSolutionDependencyItems.map((t) => t.controlItemId))];
|
|
58
|
-
return u`<div class="display-flex flex-direction-column padding-left-2 padding-right-2 padding-bottom-2"><p class="font-style-1 margin-top-0">${this._translations.previewTheChanges}</p><solution-item-accordion .itemRelationshipDependencies=${e} list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReuseWarning} .templateInfos=${this._displayTemplateInfos} .typeKeywords=${this.card?.typeKeywords} ${p(async (t) => {
|
|
58
|
+
return u`<div class="display-flex flex-direction-column padding-left-2 padding-right-2 padding-bottom-2"><p class="font-style-1 margin-top-0">${this._translations.previewTheChanges}</p><solution-item-accordion .itemRelationshipDependencies=${e} list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReuseWarning} .templateInfos=${this._displayTemplateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=rename ${p(async (t) => {
|
|
59
59
|
t && (this._accordionRef = t);
|
|
60
60
|
})}></solution-item-accordion></div>`;
|
|
61
61
|
}
|
|
@@ -104,7 +104,7 @@ class S extends g {
|
|
|
104
104
|
this.solutionDeleteDialogBeforeClose.emit();
|
|
105
105
|
}} @calciteDialogClose=${() => {
|
|
106
106
|
this.open = !1, this.solutionDeleteDialogOpen.emit(!1);
|
|
107
|
-
}}>${this._isDeleteInProgress ? r`<calcite-loader .label=${this._translations.deleteInProgress} scale=l type=determinate-value .value=${this._deletePercentage}></calcite-loader><div class="loader-text" tabindex=0>${this._translations.deleteInProgress}</div>` : this._showUndeletableItems ? r`<calcite-label class=${c(t)} layout=inline><span tabindex=0>${this._translations.failedToDeleteItems}</span></calcite-label><solution-item-accordion class=${c(t)} .itemRelationshipDependencies=${[]} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} ${h(this._accordion)}></solution-item-accordion><calcite-button appearance=outline @click=${this.close} slot=footer-end>${this._translations.buttonClose}</calcite-button>` : r`<div class="padding-around"><div class=${`deletion-note-container ${t}`}><span class="deletion-note-text" tabindex=0>${this._translations.deletionNote}</span><calcite-chip .label=${o} scale=m icon=information>${o}</calcite-chip></div><calcite-loader class=${c(e)} label></calcite-loader><solution-item-accordion class=${c(t)} .itemRelationshipDependencies=${i} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} ${h(this._accordion)}></solution-item-accordion></div><calcite-button appearance=outline @click=${this.close} slot=footer-end>${this._translations.buttonCancel}</calcite-button><calcite-button @click=${() => {
|
|
107
|
+
}}>${this._isDeleteInProgress ? r`<calcite-loader .label=${this._translations.deleteInProgress} scale=l type=determinate-value .value=${this._deletePercentage}></calcite-loader><div class="loader-text" tabindex=0>${this._translations.deleteInProgress}</div>` : this._showUndeletableItems ? r`<calcite-label class=${c(t)} layout=inline><span tabindex=0>${this._translations.failedToDeleteItems}</span></calcite-label><solution-item-accordion class=${c(t)} .itemRelationshipDependencies=${[]} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=delete ${h(this._accordion)}></solution-item-accordion><calcite-button appearance=outline @click=${this.close} slot=footer-end>${this._translations.buttonClose}</calcite-button>` : r`<div class="padding-around"><div class=${`deletion-note-container ${t}`}><span class="deletion-note-text" tabindex=0>${this._translations.deletionNote}</span><calcite-chip .label=${o} scale=m icon=information>${o}</calcite-chip></div><calcite-loader class=${c(e)} label></calcite-loader><solution-item-accordion class=${c(t)} .itemRelationshipDependencies=${i} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=delete ${h(this._accordion)}></solution-item-accordion></div><calcite-button appearance=outline @click=${this.close} slot=footer-end>${this._translations.buttonCancel}</calcite-button><calcite-button @click=${() => {
|
|
108
108
|
this.delete();
|
|
109
109
|
}} slot=footer-end kind=danger>${this._translations.buttonDelete}</calcite-button>${this._showDeleteError && r`<calcite-alert icon=exclamation-mark-triangle kind=danger .label=${this._translations.failedToDelete} @calciteAlertClose=${() => {
|
|
110
110
|
this._showDeleteError = !1;
|
|
@@ -12,12 +12,16 @@ export abstract class SolutionItemAccordion extends LitElement {
|
|
|
12
12
|
*/
|
|
13
13
|
protected _translations: {
|
|
14
14
|
differentOwnerDeleteWarning: string;
|
|
15
|
+
noPrivilegeToManage: string;
|
|
15
16
|
openDetails: string;
|
|
16
17
|
solutionsTemplates: string;
|
|
18
|
+
usedInAnotherSolution: string;
|
|
17
19
|
} & T9nMeta<{
|
|
18
20
|
differentOwnerDeleteWarning: string;
|
|
21
|
+
noPrivilegeToManage: string;
|
|
19
22
|
openDetails: string;
|
|
20
23
|
solutionsTemplates: string;
|
|
24
|
+
usedInAnotherSolution: string;
|
|
21
25
|
}>;
|
|
22
26
|
/** string[]: List of items that have relationship dependencies outside of this solution */
|
|
23
27
|
accessor itemRelationshipDependencies: string[];
|
|
@@ -49,6 +53,8 @@ export abstract class SolutionItemAccordion extends LitElement {
|
|
|
49
53
|
accessor templateInfos: ITemplateInfo[];
|
|
50
54
|
/** string[]: Collection of the solutions typeKeywords */
|
|
51
55
|
accessor typeKeywords: string[];
|
|
56
|
+
/** @default 'content' */
|
|
57
|
+
accessor usageContext: "content" | "rename" | "delete";
|
|
52
58
|
/** Collapses all items in the accordion. */
|
|
53
59
|
collapseAll(): Promise<void>;
|
|
54
60
|
/**
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
2
|
import { c as a } from "../../chunks/runtime.js";
|
|
3
3
|
import { u as c } from "../../chunks/useT9n.js";
|
|
4
|
-
import { css as d, html as
|
|
5
|
-
import { LitElement as
|
|
6
|
-
import { c as
|
|
7
|
-
import { useContextConsumer as
|
|
8
|
-
const
|
|
9
|
-
class
|
|
4
|
+
import { css as d, html as o, nothing as h } from "lit";
|
|
5
|
+
import { LitElement as p, createEvent as l } from "@arcgis/lumina";
|
|
6
|
+
import { c as u } from "../../chunks/deployAppContexts.js";
|
|
7
|
+
import { useContextConsumer as m } from "@arcgis/lumina/context";
|
|
8
|
+
const f = d`:host{display:block}.padding-start-1{padding-inline-start:1rem}.border-override{--calcite-accordion-border-color: var(--calcite-color-border-1) !important}.display-flex{display:flex}.align-center{align-items:center}.solution-list-item-label{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size--1)}.solution-list-item-label,.solution-list-item-description{font-family:var(--calcite-font-family);font-weight:var(--calcite-font-weight-normal);overflow-wrap:break-word;word-break:break-word}.solution-list-item-description{font-size:var(--calcite-font-size--2);margin-block-start:.125rem;color:var(--calcite-color-text-3)}.solution-list-item-content{display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;line-height:1.375}.underline{text-decoration:underline}calcite-chip{--calcite-chip-icon-color: var(--calcite-color-brand)}`;
|
|
9
|
+
class g extends p {
|
|
10
10
|
constructor() {
|
|
11
|
-
super(...arguments), this.itemRelationshipDependencies = [], this.linkType = "item", this.listSelectionMode = "none", this.reuseWarning = "", this.templateInfos = [], this.typeKeywords = [], this._canDeletePermission = !1, this._sortedTemplateInfos = [], this._translations = c({ name: "solution-item-accordion", blocking: !0 }), this._configContextConsumer =
|
|
12
|
-
context:
|
|
11
|
+
super(...arguments), this.itemRelationshipDependencies = [], this.linkType = "item", this.listSelectionMode = "none", this.reuseWarning = "", this.templateInfos = [], this.typeKeywords = [], this.usageContext = "content", this._canDeletePermission = !1, this._sortedTemplateInfos = [], this._translations = c({ name: "solution-item-accordion", blocking: !0 }), this._configContextConsumer = m({
|
|
12
|
+
context: u,
|
|
13
13
|
subscribe: !0
|
|
14
14
|
}), this._sortOrder = [
|
|
15
15
|
"Hub Site Application",
|
|
@@ -44,13 +44,13 @@ class f extends h {
|
|
|
44
44
|
"Report Template",
|
|
45
45
|
"Rule Package",
|
|
46
46
|
"Group"
|
|
47
|
-
], this.solutionItemHover =
|
|
47
|
+
], this.solutionItemHover = l(), this.solutionItemSelect = l(), this.solutionTypeHover = l();
|
|
48
48
|
}
|
|
49
49
|
static {
|
|
50
|
-
this.properties = { itemRelationshipDependencies: 0, linkType: 1, listSelectionMode: 1, reuseWarning: 1, templateInfos: 0, typeKeywords: 0, _canDeletePermission: 16, _sortedTemplateInfos: 16, _translations: 16 };
|
|
50
|
+
this.properties = { itemRelationshipDependencies: 0, linkType: 1, listSelectionMode: 1, reuseWarning: 1, templateInfos: 0, typeKeywords: 0, usageContext: 1, _canDeletePermission: 16, _sortedTemplateInfos: 16, _translations: 16 };
|
|
51
51
|
}
|
|
52
52
|
static {
|
|
53
|
-
this.styles =
|
|
53
|
+
this.styles = f;
|
|
54
54
|
}
|
|
55
55
|
willUpdate(e) {
|
|
56
56
|
e.has("templateInfos") && (this.hasUpdated || this.templateInfos?.length > 0) && this.templateInfosWatchHandler();
|
|
@@ -109,32 +109,32 @@ class f extends h {
|
|
|
109
109
|
}
|
|
110
110
|
_getAccordion() {
|
|
111
111
|
const e = [], i = this._sortedTemplateInfos.reduce((t, s) => {
|
|
112
|
-
const
|
|
113
|
-
return e.indexOf(
|
|
112
|
+
const n = this._getTypeForDisplay(s.type, s.typeKeywords);
|
|
113
|
+
return e.indexOf(n) < 0 && (e.push(n), t.push(this._getAccordionItem(s))), t;
|
|
114
114
|
}, []);
|
|
115
|
-
return
|
|
115
|
+
return o`<calcite-accordion class="border-override" selection-mode=single>${i}</calcite-accordion>`;
|
|
116
116
|
}
|
|
117
117
|
_getAccordionItem(e) {
|
|
118
118
|
const i = this._getTypeForDisplay(e.type, e.typeKeywords), t = this._sortedTemplateInfos.filter((s) => this._getTypeForDisplay(s.type, s.typeKeywords) === i);
|
|
119
|
-
return
|
|
119
|
+
return o`<calcite-accordion-item .heading=${`${i} (${t.length})`} @mouseenter=${() => this.solutionTypeHover.emit({ itemType: i, entering: !0 })} @mouseleave=${() => this.solutionTypeHover.emit({ itemType: i, entering: !1 })}><solution-item-icon class="padding-start-1 display-flex align-center" slot=actions-start .type=${e.type} .typeKeywords=${e.typeKeywords}></solution-item-icon>${this._getList(t)}</calcite-accordion-item>`;
|
|
120
120
|
}
|
|
121
121
|
_getList(e) {
|
|
122
122
|
const i = this._sortTemplatesByTitle(e);
|
|
123
|
-
return
|
|
123
|
+
return o`<calcite-list .label=${this._translations.solutionsTemplates} selection-appearance=border .selectionMode=${this.listSelectionMode}>${i.map((t) => this._getListItem(t))}</calcite-list>`;
|
|
124
124
|
}
|
|
125
125
|
_getListItem(e) {
|
|
126
|
-
const i = this.typeKeywords.includes("Deployed") && e.url, t = this.linkType === "action"
|
|
127
|
-
return
|
|
126
|
+
const i = this.typeKeywords.includes("Deployed") && e.url, t = this.linkType === "action";
|
|
127
|
+
return o`<calcite-list-item id=${e.id ?? h} @mouseenter=${() => this.solutionItemHover.emit({ itemId: e.id, entering: !0 })} @mouseleave=${() => this.solutionItemHover.emit({ itemId: e.id, entering: !1 })} @calciteListItemSelect=${() => {
|
|
128
128
|
this._deselectOthers(e.id), this.solutionItemSelect.emit({ itemId: e.id, selected: !0 }), i && !t && window.open(e.url, "_blank");
|
|
129
|
-
}} .value=${e.id}><div class="solution-list-item-content" slot=content><div class=${`solution-list-item-label ${i && !t ? "underline" : ""}`}>${e.title}</div><div class="solution-list-item-description">${e.snippet}</div></div>${
|
|
129
|
+
}} .value=${e.id}><div class="solution-list-item-content" slot=content><div class=${`solution-list-item-label ${i && !t ? "underline" : ""}`}>${e.title}</div><div class="solution-list-item-description">${e.snippet}</div></div>${this._checkUsageForWarnings(e)}${i && t ? o`<div slot=actions-end><calcite-action icon=launch .id=${`${e.id}-launch`} @click=${() => window.open(e.url, "_blank")} text></calcite-action><calcite-tooltip overlay-positioning=fixed .referenceElement=${`${e.id}-launch`}><span>${this._translations?.openDetails}</span></calcite-tooltip></div>` : null}</calcite-list-item>`;
|
|
130
130
|
}
|
|
131
131
|
_sortTemplatesByTitle(e) {
|
|
132
132
|
return e.sort((i, t) => i.title < t.title ? -1 : i.title > t.title ? 1 : 0);
|
|
133
133
|
}
|
|
134
134
|
_sortTemplates() {
|
|
135
135
|
return this.templateInfos.sort((e, i) => {
|
|
136
|
-
const t = this._getTypeForSort(e), s = this._getTypeForSort(i),
|
|
137
|
-
return
|
|
136
|
+
const t = this._getTypeForSort(e), s = this._getTypeForSort(i), n = this._sortOrder.indexOf(t), r = this._sortOrder.indexOf(s);
|
|
137
|
+
return n - r;
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
_getTypeForSort(e) {
|
|
@@ -144,16 +144,40 @@ class f extends h {
|
|
|
144
144
|
_getTypeForDisplay(e, i) {
|
|
145
145
|
let t = e;
|
|
146
146
|
if (e === "Feature Service") {
|
|
147
|
-
const s = i.indexOf("View Service") > -1,
|
|
148
|
-
t = s &&
|
|
147
|
+
const s = i.indexOf("View Service") > -1, n = i.indexOf("Table") > -1;
|
|
148
|
+
t = s && n ? "Table (hosted, view)" : n ? "Table (hosted)" : s ? "Feature Layer (hosted, view)" : "Feature Layer (hosted)";
|
|
149
149
|
}
|
|
150
150
|
return e === "Web Mapping Application" && (t = i.indexOf("configurableApp") > -1 ? "Instant App" : t), t = e === "Geoprocessing Service" ? "Tool" : t, t = e === "Feed" ? "Feed (hosted)" : t, t = e === "Real Time Analytic" ? "Real Time Analytic (hosted)" : t, t = e === "Big Data Analytic" ? "Big Data Analytic (hosted)" : t, t = e === "Vector Tile Service" ? "Tile Layer" : t, t;
|
|
151
151
|
}
|
|
152
|
-
_getWarningChip(e) {
|
|
153
|
-
return
|
|
152
|
+
_getWarningChip(e, i) {
|
|
153
|
+
return o`<calcite-chip .icon=${i === "info" ? "information" : "exclamation-mark-triangle"} kind=neutral .label=${e} scale=s slot=actions-end>${e}</calcite-chip>`;
|
|
154
|
+
}
|
|
155
|
+
_checkUsageForWarnings(e) {
|
|
156
|
+
const i = this._configContextConsumer.value?.userSession?.username ?? null, t = this.itemRelationshipDependencies.some((s) => s === e.id);
|
|
157
|
+
if (this.usageContext === "content" && t && this.reuseWarning)
|
|
158
|
+
return this._getWarningChip(this.reuseWarning, "info");
|
|
159
|
+
if (this.usageContext === "rename") {
|
|
160
|
+
const s = this._configContextConsumer.value?.authentication?.CanUpdateSolution ?? !1;
|
|
161
|
+
if (e.owner !== i)
|
|
162
|
+
if (s) {
|
|
163
|
+
if (t && this.reuseWarning)
|
|
164
|
+
return this._getWarningChip(this.reuseWarning, "info");
|
|
165
|
+
} else
|
|
166
|
+
return this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn");
|
|
167
|
+
else if (t && this.reuseWarning)
|
|
168
|
+
return this._getWarningChip(this.reuseWarning, "info");
|
|
169
|
+
}
|
|
170
|
+
if (this.usageContext === "delete") {
|
|
171
|
+
if (e.owner !== i) {
|
|
172
|
+
if (this._canDeletePermission)
|
|
173
|
+
return t ? this._getWarningChip(this._translations?.differentOwnerDeleteWarning || "", "info") : this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn");
|
|
174
|
+
} else if (t)
|
|
175
|
+
return this._getWarningChip(this._translations?.differentOwnerDeleteWarning || "", "info");
|
|
176
|
+
}
|
|
177
|
+
return "";
|
|
154
178
|
}
|
|
155
179
|
}
|
|
156
|
-
a("solution-item-accordion",
|
|
180
|
+
a("solution-item-accordion", g);
|
|
157
181
|
export {
|
|
158
|
-
|
|
182
|
+
g as SolutionItemAccordion
|
|
159
183
|
};
|