@esri/solutions-components 5.1.0-next.93 → 5.1.0-next.95

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 (169) hide show
  1. package/dist/cdn/{CDT7ELTA.js → 2B2ANB2N.js} +1 -1
  2. package/dist/cdn/2ID55IJB.js +2 -0
  3. package/dist/cdn/2SGR44DX.js +2 -0
  4. package/dist/cdn/2VXTMCRJ.js +2 -0
  5. package/dist/cdn/{L73FGVVE.js → 3J47AYBV.js} +117 -117
  6. package/dist/cdn/4B7NJE47.js +2 -0
  7. package/dist/cdn/5LTIZSXG.js +2 -0
  8. package/dist/cdn/74MDW73I.js +2 -0
  9. package/dist/cdn/ADPYDJG6.js +2 -0
  10. package/dist/cdn/{FDE2V7FU.js → AJZHT4GA.js} +1 -1
  11. package/dist/cdn/{5A7H4LVR.js → AY6K2SJI.js} +1 -1
  12. package/dist/cdn/{5NPISZEN.js → C6KN2U7N.js} +1 -1
  13. package/dist/cdn/{OGPKAPZK.js → C7ASL3A4.js} +1 -1
  14. package/dist/cdn/{NSJAGP7T.js → DI7PQSFH.js} +2 -2
  15. package/dist/cdn/FVXS4LF5.js +2 -0
  16. package/dist/cdn/{UJLDLGTN.js → IEKNRCBC.js} +1 -1
  17. package/dist/cdn/IRRMUFW7.js +2 -0
  18. package/dist/cdn/ITLTQWCX.js +2 -0
  19. package/dist/cdn/IYUTLV2O.js +2 -0
  20. package/dist/cdn/{3XGF3ZJO.js → KW6YOUWC.js} +1 -1
  21. package/dist/cdn/KYFNXHOH.js +2 -0
  22. package/dist/cdn/{WEAC3FS7.js → NBPM6OJQ.js} +1 -1
  23. package/dist/cdn/{S5VV7I2H.js → R3MCMOLS.js} +1 -1
  24. package/dist/cdn/R4VHCXKS.js +2 -0
  25. package/dist/cdn/RG2D7ZRS.js +3 -0
  26. package/dist/cdn/{XBDEGJHE.js → SJCXI4TB.js} +1 -1
  27. package/dist/cdn/{LCERYSRG.js → U77O2MIG.js} +1 -1
  28. package/dist/cdn/UHPN75WT.js +2 -0
  29. package/dist/cdn/VESARS2D.js +7 -0
  30. package/dist/cdn/{JBFDURMG.js → WVRKV5SS.js} +1 -1
  31. package/dist/cdn/{N3F6RUT6.js → X23TE3BV.js} +1 -1
  32. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ar.json +1 -1
  33. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bg.json +1 -1
  34. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bs.json +1 -1
  35. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ca.json +1 -1
  36. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.cs.json +1 -1
  37. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.da.json +1 -1
  38. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.de.json +1 -1
  39. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.el.json +1 -1
  40. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.es.json +1 -1
  41. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.et.json +1 -1
  42. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fi.json +1 -1
  43. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fr.json +1 -1
  44. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.he.json +1 -1
  45. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hr.json +1 -1
  46. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hu.json +1 -1
  47. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.id.json +1 -1
  48. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.it.json +1 -1
  49. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ja.json +1 -1
  50. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ko.json +1 -1
  51. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lt.json +1 -1
  52. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lv.json +1 -1
  53. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.nl.json +1 -1
  54. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.no.json +1 -1
  55. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pl.json +1 -1
  56. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-BR.json +1 -1
  57. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-PT.json +1 -1
  58. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ro.json +1 -1
  59. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ru.json +1 -1
  60. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sk.json +1 -1
  61. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sl.json +1 -1
  62. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sr.json +1 -1
  63. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sv.json +1 -1
  64. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.th.json +1 -1
  65. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.tr.json +1 -1
  66. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.uk.json +1 -1
  67. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.vi.json +1 -1
  68. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-CN.json +1 -1
  69. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-HK.json +1 -1
  70. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-TW.json +1 -1
  71. package/dist/cdn/assets/solution-details-card/t9n/messages.en.json +1 -1
  72. package/dist/cdn/assets/solution-details-card/t9n/messages.json +1 -1
  73. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ar.json +1 -1
  74. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bg.json +1 -1
  75. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bs.json +1 -1
  76. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ca.json +1 -1
  77. package/dist/cdn/assets/solution-item-accordion/t9n/messages.cs.json +1 -1
  78. package/dist/cdn/assets/solution-item-accordion/t9n/messages.da.json +1 -1
  79. package/dist/cdn/assets/solution-item-accordion/t9n/messages.de.json +1 -1
  80. package/dist/cdn/assets/solution-item-accordion/t9n/messages.el.json +1 -1
  81. package/dist/cdn/assets/solution-item-accordion/t9n/messages.en.json +1 -1
  82. package/dist/cdn/assets/solution-item-accordion/t9n/messages.es.json +1 -1
  83. package/dist/cdn/assets/solution-item-accordion/t9n/messages.et.json +1 -1
  84. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fi.json +1 -1
  85. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fr.json +1 -1
  86. package/dist/cdn/assets/solution-item-accordion/t9n/messages.he.json +1 -1
  87. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hr.json +1 -1
  88. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hu.json +1 -1
  89. package/dist/cdn/assets/solution-item-accordion/t9n/messages.id.json +1 -1
  90. package/dist/cdn/assets/solution-item-accordion/t9n/messages.it.json +1 -1
  91. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ja.json +1 -1
  92. package/dist/cdn/assets/solution-item-accordion/t9n/messages.json +1 -1
  93. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ko.json +1 -1
  94. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lt.json +1 -1
  95. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lv.json +1 -1
  96. package/dist/cdn/assets/solution-item-accordion/t9n/messages.nl.json +1 -1
  97. package/dist/cdn/assets/solution-item-accordion/t9n/messages.no.json +1 -1
  98. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pl.json +1 -1
  99. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-BR.json +1 -1
  100. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-PT.json +1 -1
  101. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ro.json +1 -1
  102. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ru.json +1 -1
  103. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sk.json +1 -1
  104. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sl.json +1 -1
  105. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sr.json +1 -1
  106. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sv.json +1 -1
  107. package/dist/cdn/assets/solution-item-accordion/t9n/messages.th.json +1 -1
  108. package/dist/cdn/assets/solution-item-accordion/t9n/messages.tr.json +1 -1
  109. package/dist/cdn/assets/solution-item-accordion/t9n/messages.uk.json +1 -1
  110. package/dist/cdn/assets/solution-item-accordion/t9n/messages.vi.json +1 -1
  111. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-CN.json +1 -1
  112. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-HK.json +1 -1
  113. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-TW.json +1 -1
  114. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.en.json +1 -0
  115. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.json +1 -0
  116. package/dist/cdn/index.js +1 -1
  117. package/dist/cdn/main.css +1 -1
  118. package/dist/chunks/converter.js +620 -0
  119. package/dist/chunks/get.js +387 -0
  120. package/dist/chunks/solution-deploy-dialog.js +91 -76
  121. package/dist/components/arcgis-solutions-assistant/customElement.js +8403 -8881
  122. package/dist/components/consent-manager/customElement.js +609 -638
  123. package/dist/components/solution-builder-assistant/customElement.js +115 -76
  124. package/dist/components/solution-builder-assistant/index.js +2 -0
  125. package/dist/components/solution-configure-titles/customElement.js +76 -59
  126. package/dist/components/solution-delete-dialog/customElement.js +57 -54
  127. package/dist/components/solution-deploy-dialog/customElement.d.ts +3 -1
  128. package/dist/components/solution-deploy-dialog/customElement.js +3 -2
  129. package/dist/components/solution-deployed-card-panel/customElement.js +40 -37
  130. package/dist/components/solution-details-card/customElement.d.ts +4 -0
  131. package/dist/components/solution-details-card/customElement.js +45 -29
  132. package/dist/components/solution-details-card/index.js +1 -0
  133. package/dist/components/solution-item-accordion/customElement.d.ts +5 -4
  134. package/dist/components/solution-item-accordion/customElement.js +55 -35
  135. package/dist/components/solution-item-accordion/index.js +2 -0
  136. package/dist/components/solutions-all-panel/customElement.js +11 -11
  137. package/dist/components/solutions-deployed-list/customElement.d.ts +33 -0
  138. package/dist/components/solutions-deployed-list/customElement.js +38 -0
  139. package/dist/components/solutions-deployed-list/index.d.ts +1 -0
  140. package/dist/components/solutions-deployed-list/index.js +1 -0
  141. package/dist/docs/api.json +1 -1
  142. package/dist/docs/docs.json +1 -1
  143. package/dist/docs/vscode.html-custom-data.json +1 -1
  144. package/dist/docs/web-types.json +1 -1
  145. package/dist/index.d.ts +10 -0
  146. package/dist/loader.js +4 -3
  147. package/dist/solutions-components_commit.txt +7 -7
  148. package/dist/types/lumina.d.ts +7 -1
  149. package/dist/types/preact.d.ts +8 -1
  150. package/dist/types/react.d.ts +9 -1
  151. package/dist/types/stencil.d.ts +7 -1
  152. package/dist/utils/getRelatedInfos.d.ts +4 -0
  153. package/dist/utils/interfaces.d.ts +3 -1
  154. package/package.json +1 -1
  155. package/dist/cdn/4OJ3LBF6.js +0 -2
  156. package/dist/cdn/5XOS5PST.js +0 -2
  157. package/dist/cdn/BPELKV5K.js +0 -2
  158. package/dist/cdn/BRQJSGIX.js +0 -2
  159. package/dist/cdn/DLH53PYM.js +0 -7
  160. package/dist/cdn/DX56I3QB.js +0 -3
  161. package/dist/cdn/J5XFS6HE.js +0 -2
  162. package/dist/cdn/PJ43TSSJ.js +0 -2
  163. package/dist/cdn/R2G4DDRZ.js +0 -2
  164. package/dist/cdn/RTFBOXOK.js +0 -2
  165. package/dist/cdn/SN4D24TK.js +0 -2
  166. package/dist/cdn/SO3S3WP4.js +0 -2
  167. package/dist/cdn/WF32M7B5.js +0 -2
  168. package/dist/cdn/ZONXYZVU.js +0 -2
  169. package/dist/chunks/get-portal-url.js +0 -345
@@ -1,6 +1,8 @@
1
1
  import "@esri/calcite-components/components/calcite-panel";
2
2
  import "@esri/calcite-components/components/calcite-chip";
3
3
  import "@esri/calcite-components/components/calcite-action";
4
+ import "../solution-deploy-dialog/index.js";
5
+ import "../solution-deploying-dialog/index.js";
4
6
  import "@esri/calcite-components/components/calcite-icon";
5
7
  import "@esri/calcite-components/components/calcite-table-row";
6
8
  import "@esri/calcite-components/components/calcite-table-cell";
@@ -1,23 +1,23 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as y } from "../../chunks/runtime.js";
3
- import { u as C } from "../../chunks/useT9n.js";
4
- import { LitElement as T, createEvent as c, safeClassMap as f } from "@arcgis/lumina";
5
- import { useContextConsumer as S } from "@arcgis/lumina/context";
6
- import { css as D, html as u } from "lit";
7
- import { I as v, T as $ } from "../../chunks/interfaces.js";
8
- import { createRef as m, ref as p } from "lit-html/directives/ref.js";
9
- import { c as P } from "../../chunks/deployAppContexts.js";
10
- import * as b from "@esri/solution-common";
11
- import { updateGroup as V, updateItem as E, updateItemExtended as w } from "@esri/solution-common";
12
- import { v as _ } from "../../chunks/validators.js";
2
+ import { c as S } from "../../chunks/runtime.js";
3
+ import { u as v } from "../../chunks/useT9n.js";
4
+ import { LitElement as T, createEvent as m, safeClassMap as u } from "@arcgis/lumina";
5
+ import { useContextConsumer as D } from "@arcgis/lumina/context";
6
+ import { css as $, html as h } from "lit";
7
+ import { I as P, T as b } from "../../chunks/interfaces.js";
8
+ import { createRef as _, ref as p } from "lit-html/directives/ref.js";
9
+ import { c as V } from "../../chunks/deployAppContexts.js";
10
+ import * as w from "@esri/solution-common";
11
+ import { updateGroup as x, updateItem as g, updateItemExtended as E } from "@esri/solution-common";
12
+ import { v as C } from "../../chunks/validators.js";
13
13
  import { g as W } from "../../chunks/getRelatedInfos.js";
14
- const L = D`*[tabindex]:focus-visible{outline-style:solid!important;outline-width:2px!important;outline-color:var(--calcite-color-brand)!important;outline-offset:2px!important}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}.font-weight-medium{font-weight:var(--calcite-font-weight-medium)}.font-style-1{font-size:1rem;color:var(--calcite-color-text-2)}.margin-top-0{margin-top:0}.padding-top-20{padding-top:20px}.padding-bottom-2{padding-bottom:2rem}.padding-left-2{padding-left:2rem}.padding-right-2{padding-right:2rem}.padding-end-1{padding-inline-end:1rem}.padding-end-1-2{padding-inline-end:.5rem}.width-full{width:100%}.justify-content-space{justify-content:space-between}`;
14
+ const L = $`*[tabindex]:focus-visible{outline-style:solid!important;outline-width:2px!important;outline-color:var(--calcite-color-brand)!important;outline-offset:2px!important}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}.font-weight-medium{font-weight:var(--calcite-font-weight-medium)}.font-style-1{font-size:1rem;color:var(--calcite-color-text-2)}.margin-top-0{margin-top:0}.padding-top-20{padding-top:20px}.padding-bottom-2{padding-bottom:2rem}.padding-left-2{padding-left:2rem}.padding-right-2{padding-right:2rem}.padding-end-1{padding-inline-end:1rem}.padding-end-1-2{padding-inline-end:.5rem}.width-full{width:100%}.justify-content-space{justify-content:space-between}`;
15
15
  class N extends T {
16
16
  constructor() {
17
- super(...arguments), this.open = !1, this.source = "Card Dropdown", this.solutionData = {}, this.templateInfos = [], this._saveDisabled = !1, this._displayTemplateInfos = [], this._hasNameLengthError = !1, this._nonSolutionDependencyItems = [], this._solutionItemsTitlesUpdating = !1, this._translations = C({ name: "solution-configure-titles", blocking: !0 }), this._configContextConsumer = S({
18
- context: P,
17
+ super(...arguments), this.open = !1, this.source = "Card Dropdown", this.solutionData = {}, this.templateInfos = [], this._saveDisabled = !1, this._displayTemplateInfos = [], this._hasNameLengthError = !1, this._nonSolutionDependencyItems = [], this._solutionItemsTitlesUpdating = !1, this._translations = v({ name: "solution-configure-titles", blocking: !0 }), this._configContextConsumer = D({
18
+ context: V,
19
19
  subscribe: !0
20
- }), this._defaultPrefix = "", this._defaultSuffix = "", this._loadingDefaultPrefix = !1, this._loadingDefaultSuffix = !1, this._prefixRef = m(), this._prefixValue = "", this._suffixRef = m(), this._suffixValue = "", this._templateInfos = [], this._originalTitles = [], this.solutionConfigureTitlesBeforeClose = c(), this.solutionItemsTitlesChanged = c();
20
+ }), this._defaultPrefix = "", this._defaultSuffix = "", this._loadingDefaultPrefix = !1, this._loadingDefaultSuffix = !1, this._prefixRef = _(), this._prefixValue = "", this._suffixRef = _(), this._suffixValue = "", this._templateInfos = [], this._originalTitles = [], this.solutionConfigureTitlesBeforeClose = m(), this.solutionItemsTitlesChanged = m();
21
21
  }
22
22
  static {
23
23
  this.properties = { card: 0, open: 5, source: 1, solutionData: 1, templateInfos: 0, _saveDisabled: 16, _displayTemplateInfos: 16, _hasNameLengthError: 16, _nonSolutionDependencyItems: 16, _solutionItemsTitlesUpdating: 16, _translations: 16 };
@@ -27,11 +27,11 @@ class N extends T {
27
27
  }
28
28
  async willUpdate(e) {
29
29
  if (e.has("templateInfos") && (this._templateInfos = JSON.parse(JSON.stringify(this.templateInfos)), this._updateTemplates()), e.has("open")) {
30
- const t = e.get("open");
31
- if (this.open && !t) {
32
- await this._updatePrefixSuffix(), this._templateInfos = JSON.parse(JSON.stringify(this.templateInfos)), this._originalTitles = this._templateInfos.map((s) => ({ id: s.id, title: s.title })), this._updateTemplates();
33
- const i = await W(this._configContextConsumer.value.userSession, this.card);
34
- this._nonSolutionDependencyItems = i._nonSolutionDependencyItems, await this._accordionRef?.expandFirstItem();
30
+ const i = e.get("open");
31
+ if (this.open && !i) {
32
+ await this._updatePrefixSuffix(), this._templateInfos = JSON.parse(JSON.stringify(this.templateInfos)), this._originalTitles = this._templateInfos.map((t) => ({ id: t.id, title: t.title })), this._updateTemplates();
33
+ const s = await W(this._configContextConsumer.value.userSession, this.card);
34
+ this._nonSolutionDependencyItems = s._nonSolutionDependencyItems, await this._accordionRef?.expandFirstItem();
35
35
  }
36
36
  }
37
37
  }
@@ -42,25 +42,28 @@ class N extends T {
42
42
  this._updateTemplates(), await this._updatePrefixSuffix();
43
43
  }
44
44
  async _updatePrefixSuffix() {
45
- this.solutionData = await b.getItemDataAsJson(this.card.id, this._configContextConsumer.value.userSession), this.solutionData.titles?.prefix && (this._loadingDefaultPrefix = !0, this._defaultPrefix = this.solutionData.titles.prefix, this._prefixValue = this.solutionData.titles.prefix), this.solutionData.titles?.suffix && (this._loadingDefaultSuffix = !0, this._defaultSuffix = this.solutionData.titles.suffix, this._suffixValue = this.solutionData.titles.suffix);
45
+ this.solutionData = await w.getItemDataAsJson(this.card.id, this._configContextConsumer.value.userSession), this.solutionData.titles?.prefix && (this._loadingDefaultPrefix = !0, this._defaultPrefix = this.solutionData.titles.prefix, this._prefixValue = this.solutionData.titles.prefix), this.solutionData.titles?.suffix && (this._loadingDefaultSuffix = !0, this._defaultSuffix = this.solutionData.titles.suffix, this._suffixValue = this.solutionData.titles.suffix);
46
46
  }
47
47
  render() {
48
- return u`<calcite-dialog .heading=${this.card.title} modal @calciteDialogBeforeClose=${() => {
48
+ return h`<calcite-dialog .heading=${this.card.title} modal @calciteDialogBeforeClose=${() => {
49
49
  this.solutionConfigureTitlesBeforeClose.emit();
50
50
  }} .open=${this.open} outside-close-disabled width=l>${this._getPrefixSuffixControls()}${this._getAccordion()}${this._getDialogButtons()}</calcite-dialog>`;
51
51
  }
52
52
  _getPrefixSuffixControls() {
53
- const e = _(this._prefixValue), t = this._hasNameLengthError && this._prefixValue.length > 0, i = e.errorType !== "special-character", s = !t, n = i ? "display-none" : "", r = s ? "display-none" : "", a = i && s ? "valid" : "invalid", o = _(this._suffixValue), h = this._hasNameLengthError && this._suffixValue.length > 0, l = o.errorType !== "special-character", d = !h, x = l ? "display-none" : "", g = d ? "display-none" : "", I = l && d ? "valid" : "invalid";
54
- return this._saveDisabled = !i || !s || !l || !d || !this._hasChanges(), u`<div class="display-flex flex-direction-column padding-left-2 padding-right-2 padding-top-20"><calcite-label scale=l class="font-weight-medium"><span tabindex=0>${this._translations.configureTitlesDialogHeader}</span></calcite-label><p class="font-style-1 margin-top-0" tabindex=0>${this._translations.addPrefixOrSuffixToItems}</p><div class="display-flex flex-direction-row justify-content-space"><calcite-label class="width-full padding-end-1" scale=l>${this._translations.prefixToAddToItems}<calcite-input clearable @blur=${this._prefixInput} @input=${this._prefixInput} .placeholder=${this._translations.enterPrefixPlaceholder} .status=${a} .value=${this._prefixValue} ${p(this._prefixRef)}></calcite-input><calcite-input-message class=${f(n)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixCharsError}</calcite-input-message><calcite-input-message class=${f(r)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixLengthError}</calcite-input-message></calcite-label><calcite-label class="width-full" scale=l>${this._translations.suffixToAddToItems}<calcite-input clearable @blur=${this._suffixInput} @input=${this._suffixInput} .placeholder=${this._translations.enterSuffixPlaceholder} .status=${I} .value=${this._suffixValue} ${p(this._suffixRef)}></calcite-input><calcite-input-message class=${f(x)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixCharsError}</calcite-input-message><calcite-input-message class=${f(g)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixLengthError}</calcite-input-message></calcite-label></div></div>`;
53
+ const e = C(this._prefixValue), i = this._hasNameLengthError && this._prefixValue.length > 0, s = e.errorType !== "special-character", t = !i, a = s ? "display-none" : "", n = t ? "display-none" : "", d = s && t ? "valid" : "invalid", c = C(this._suffixValue), l = this._hasNameLengthError && this._suffixValue.length > 0, o = c.errorType !== "special-character", r = !l, f = o ? "display-none" : "", I = r ? "display-none" : "", y = o && r ? "valid" : "invalid";
54
+ return this._saveDisabled = !s || !t || !o || !r || !this._hasChanges(), h`<div class="display-flex flex-direction-column padding-left-2 padding-right-2 padding-top-20"><calcite-label scale=l class="font-weight-medium"><span tabindex=0>${this._translations.configureTitlesDialogHeader}</span></calcite-label><p class="font-style-1 margin-top-0" tabindex=0>${this._translations.addPrefixOrSuffixToItems}</p><div class="display-flex flex-direction-row justify-content-space"><calcite-label class="width-full padding-end-1" scale=l>${this._translations.prefixToAddToItems}<calcite-input clearable @blur=${this._prefixInput} @input=${this._prefixInput} .placeholder=${this._translations.enterPrefixPlaceholder} .status=${d} .value=${this._prefixValue} ${p(this._prefixRef)}></calcite-input><calcite-input-message class=${u(a)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixCharsError}</calcite-input-message><calcite-input-message class=${u(n)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixLengthError}</calcite-input-message></calcite-label><calcite-label class="width-full" scale=l>${this._translations.suffixToAddToItems}<calcite-input clearable @blur=${this._suffixInput} @input=${this._suffixInput} .placeholder=${this._translations.enterSuffixPlaceholder} .status=${y} .value=${this._suffixValue} ${p(this._suffixRef)}></calcite-input><calcite-input-message class=${u(f)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixCharsError}</calcite-input-message><calcite-input-message class=${u(I)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixLengthError}</calcite-input-message></calcite-label></div></div>`;
55
55
  }
56
56
  _getAccordion() {
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} usage-context=rename ${p(async (t) => {
59
- t && (this._accordionRef = t);
57
+ const e = new Set(this._nonSolutionDependencyItems.filter((s) => s.dependencyItemId !== this.card.id).map((s) => `${s.controlItemId}|${s.dependencyItemId}`)), i = Array.from(e).map((s) => {
58
+ const [t, a] = s.split("|");
59
+ return { controlItemId: t, dependencyItemId: a };
60
+ });
61
+ return h`<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=${i} list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReuseWarning} .templateInfos=${this._displayTemplateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=rename ${p(async (s) => {
62
+ s && (this._accordionRef = s);
60
63
  })}></solution-item-accordion></div>`;
61
64
  }
62
65
  _getDialogButtons() {
63
- return u`<div slot=footer-end><calcite-button appearance=outline class="padding-end-1-2" kind=brand @click=${this._closeDialog}>${this._translations.cancelTheDialog}</calcite-button><calcite-button .disabled=${this._saveDisabled} kind=brand .loading=${this._solutionItemsTitlesUpdating} @click=${this._commitNameChanges}>${this._translations.applyChangesAndCloseTheDialog}</calcite-button></div>`;
66
+ return h`<div slot=footer-end><calcite-button appearance=outline class="padding-end-1-2" kind=brand @click=${this._closeDialog}>${this._translations.cancelTheDialog}</calcite-button><calcite-button .disabled=${this._saveDisabled} kind=brand .loading=${this._solutionItemsTitlesUpdating} @click=${this._commitNameChanges}>${this._translations.applyChangesAndCloseTheDialog}</calcite-button></div>`;
64
67
  }
65
68
  _prefixInput() {
66
69
  clearTimeout(this._textInputTimeout), this._textInputTimeout = setTimeout(() => {
@@ -73,34 +76,37 @@ class N extends T {
73
76
  }, 500);
74
77
  }
75
78
  _updateTemplates() {
79
+ const e = this._configContextConsumer.value?.authentication?.CanUpdateSolution ?? !1, i = this._configContextConsumer.value?.authentication?.PortalUserName;
76
80
  this._templateInfos = this._templateInfos.map((t) => (this._loadingDefaultPrefix && t.title.startsWith(this._prefixValue) && (t.title = this._replaceStart(t.title, this._prefixValue, "")), this._loadingDefaultSuffix && t.title.endsWith(this._suffixValue) && (t.title = this._replaceAtEnd(t.title, this._suffixValue, "")), t));
77
- const e = JSON.parse(JSON.stringify(this._templateInfos));
78
- this._hasNameLengthError = !1, this._displayTemplateInfos = e.map((t) => {
79
- const i = this._prefixValue !== "", s = this._suffixValue !== "", n = this._defaultPrefix !== "", r = this._defaultSuffix !== "";
80
- let a = t.title;
81
- i && (n ? this._originalTitles.find((l) => l.id === t.id)?.title.startsWith(this._defaultPrefix) ? a = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue) : this._prefixValue !== this._defaultPrefix && (a = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue)) : a = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue));
82
- let o = a;
83
- return s && (r ? this._originalTitles.find((l) => l.id === t.id)?.title.endsWith(this._defaultSuffix) ? o = this._applySuffixWithDuplicateCheck(a, this._suffixValue) : this._suffixValue !== this._defaultSuffix && (o = this._applySuffixWithDuplicateCheck(a, this._suffixValue)) : o = this._applySuffixWithDuplicateCheck(a, this._suffixValue)), t.title = o, this._hasNameLengthError || (this._hasNameLengthError = t.title.length > v), t;
81
+ const s = JSON.parse(JSON.stringify(this._templateInfos));
82
+ this._hasNameLengthError = !1, this._displayTemplateInfos = s.map((t) => {
83
+ const a = this._prefixValue !== "", n = this._suffixValue !== "", d = this._defaultPrefix !== "", c = this._defaultSuffix !== "";
84
+ if (t.owner !== i && !e)
85
+ return t;
86
+ let l = t.title;
87
+ a && (d ? this._originalTitles.find((f) => f.id === t.id)?.title.startsWith(this._defaultPrefix) ? l = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue) : this._prefixValue !== this._defaultPrefix && (l = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue)) : l = this._applyPrefixWithDuplicateCheck(t.title, this._prefixValue));
88
+ let o = l;
89
+ return n && (c ? this._originalTitles.find((f) => f.id === t.id)?.title.endsWith(this._defaultSuffix) ? o = this._applySuffixWithDuplicateCheck(l, this._suffixValue) : this._suffixValue !== this._defaultSuffix && (o = this._applySuffixWithDuplicateCheck(l, this._suffixValue)) : o = this._applySuffixWithDuplicateCheck(l, this._suffixValue)), t.title = o, this._hasNameLengthError || (this._hasNameLengthError = t.title.length > P), t;
84
90
  }), this._loadingDefaultPrefix = !1, this._loadingDefaultSuffix = !1;
85
91
  }
86
- _replaceStart(e, t, i) {
87
- return e.startsWith(t) ? `${i}${e.slice(t.length)}` : e;
92
+ _replaceStart(e, i, s) {
93
+ return e.startsWith(i) ? `${s}${e.slice(i.length)}` : e;
88
94
  }
89
- _replaceAtEnd(e, t, i) {
90
- return e.endsWith(t) ? `${e.substring(0, e.length - t.length)}${i}` : e;
95
+ _replaceAtEnd(e, i, s) {
96
+ return e.endsWith(i) ? `${e.substring(0, e.length - i.length)}${s}` : e;
91
97
  }
92
- _applyPrefixWithDuplicateCheck(e, t) {
93
- return !t || e.startsWith(t) ? e : t + e;
98
+ _applyPrefixWithDuplicateCheck(e, i) {
99
+ return !i || e.startsWith(i) ? e : i + e;
94
100
  }
95
- _applySuffixWithDuplicateCheck(e, t) {
96
- return !t || e.endsWith(t) ? e : e + t;
101
+ _applySuffixWithDuplicateCheck(e, i) {
102
+ return !i || e.endsWith(i) ? e : e + i;
97
103
  }
98
104
  _hasChanges() {
99
- const e = this._defaultPrefix !== this._prefixValue, t = this._defaultSuffix !== this._suffixValue;
100
- return this._displayTemplateInfos.some((s) => {
101
- const n = this._originalTitles.find((r) => r.id === s.id);
102
- return n && n.title !== s.title;
103
- }) || e || t;
105
+ const e = this._defaultPrefix !== this._prefixValue, i = this._defaultSuffix !== this._suffixValue;
106
+ return this._displayTemplateInfos.some((t) => {
107
+ const a = this._originalTitles.find((n) => n.id === t.id);
108
+ return a && a.title !== t.title;
109
+ }) || e || i;
104
110
  }
105
111
  _closeDialog() {
106
112
  this.open = !1;
@@ -108,7 +114,7 @@ class N extends T {
108
114
  async _commitNameChanges() {
109
115
  if (this._hasChanges()) {
110
116
  this._telemetry?.logEvent({
111
- category: $.DEPLOYMENTS,
117
+ category: b.DEPLOYMENTS,
112
118
  action: "Rename Items",
113
119
  dimensions: [
114
120
  this.card?.title || "",
@@ -117,31 +123,42 @@ class N extends T {
117
123
  this.source
118
124
  ]
119
125
  }), this._solutionItemsTitlesUpdating = !0;
120
- const e = this._displayTemplateInfos.reduce((t, i) => {
121
- const s = {
122
- id: i.id,
123
- title: i.title
124
- };
125
- return t.push(i.type === "Group" ? V(s, this._configContextConsumer.value.userSession) : E(s, this._configContextConsumer.value.userSession, void 0, { solutionOwner: this.card?.owner })), t;
126
+ const e = this._configContextConsumer.value?.authentication?.CanUpdateSolution ?? !1, i = this._configContextConsumer.value?.authentication?.PortalUserName, s = this._displayTemplateInfos.reduce((t, a) => {
127
+ if (a.owner !== i) {
128
+ if (e) {
129
+ const n = {
130
+ id: a.id,
131
+ title: a.title
132
+ };
133
+ t.push(a.type === "Group" ? x(n, this._configContextConsumer.value.userSession) : g(n, this._configContextConsumer.value.userSession, void 0, { solutionOwner: this.card?.owner }));
134
+ }
135
+ } else {
136
+ const n = {
137
+ id: a.id,
138
+ title: a.title
139
+ };
140
+ t.push(a.type === "Group" ? x(n, this._configContextConsumer.value.userSession) : g(n, this._configContextConsumer.value.userSession, void 0, { solutionOwner: this.card?.owner }));
141
+ }
142
+ return t;
126
143
  }, []);
127
144
  if (this.solutionData?.templates) {
128
145
  const t = {
129
146
  id: this.card.id
130
- }, i = {
147
+ }, a = {
131
148
  ...this.solutionData,
132
149
  titles: {
133
150
  prefix: this._prefixValue,
134
151
  suffix: this._suffixValue
135
152
  }
136
153
  };
137
- e.push(w(t, i, this._configContextConsumer.value.userSession, void 0, void 0, null, this.card?.owner));
154
+ s.push(E(t, a, this._configContextConsumer.value.userSession, void 0, void 0, null, this.card?.owner));
138
155
  }
139
- await Promise.all(e), this._solutionItemsTitlesUpdating = !1, this.solutionItemsTitlesChanged.emit();
156
+ await Promise.all(s), this._solutionItemsTitlesUpdating = !1, this.solutionItemsTitlesChanged.emit();
140
157
  }
141
158
  this._closeDialog();
142
159
  }
143
160
  }
144
- y("solution-configure-titles", N);
161
+ S("solution-configure-titles", N);
145
162
  export {
146
163
  N as SolutionConfigureTitles
147
164
  };
@@ -1,34 +1,34 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as m } from "../../chunks/runtime.js";
3
- import { css as u, nothing as p, html as r } from "lit";
4
- import { u as f } from "../../chunks/useT9n.js";
5
- import { LitElement as g, createEvent as d, safeClassMap as c } from "@arcgis/lumina";
6
- import { useContextConsumer as _ } from "@arcgis/lumina/context";
2
+ import { c as u } from "../../chunks/runtime.js";
3
+ import { css as p, nothing as f, html as r } from "lit";
4
+ import { u as g } from "../../chunks/useT9n.js";
5
+ import { LitElement as _, createEvent as d, safeClassMap as c } from "@arcgis/lumina";
6
+ import { useContextConsumer as I } from "@arcgis/lumina/context";
7
7
  import { g as D } from "../../chunks/common.js";
8
- import { y as I, T as y } from "../../chunks/interfaces.js";
9
- import { deleteSolution as b } from "@esri/solution-common";
10
- import { c as w } from "../../chunks/deployAppContexts.js";
11
- import { createRef as C, ref as h } from "lit-html/directives/ref.js";
8
+ import { y, T as b } from "../../chunks/interfaces.js";
9
+ import { deleteSolution as w } from "@esri/solution-common";
10
+ import { c as C } from "../../chunks/deployAppContexts.js";
11
+ import { createRef as $, ref as m } from "lit-html/directives/ref.js";
12
12
  import "../solution-item-accordion/customElement.js";
13
- import { p as $, g as v } from "../../chunks/getRelatedInfos.js";
14
- const x = u`*[tabindex]:focus-visible{outline-style:solid!important;outline-width:2px!important;outline-color:var(--calcite-color-brand)!important;outline-offset:2px!important}.deletion-note-text{display:inline-block}.deletion-note-container{display:flex;align-items:center;gap:var(--calcite-spacing-sm);font-size:var(--calcite-font-size-0);margin-bottom:var(--calcite-spacing-md)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.display-none{display:none}calcite-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.loader-text{margin-top:var(--calcite-spacing-md);margin-bottom:var(--calcite-spacing-xl);text-align:center;font-size:var(--calcite-font-size-relative-base);color:var(--calcite-color-text-1)}.padding-around{padding:12px 2rem 2rem}`;
15
- class S extends g {
13
+ import { p as v, g as x } from "../../chunks/getRelatedInfos.js";
14
+ const S = p`*[tabindex]:focus-visible{outline-style:solid!important;outline-width:2px!important;outline-color:var(--calcite-color-brand)!important;outline-offset:2px!important}.deletion-note-text{display:inline-block}.deletion-note-container{display:flex;align-items:center;gap:var(--calcite-spacing-sm);font-size:var(--calcite-font-size-0);margin-bottom:var(--calcite-spacing-md)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.display-none{display:none}calcite-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.loader-text{margin-top:var(--calcite-spacing-md);margin-bottom:var(--calcite-spacing-xl);text-align:center;font-size:var(--calcite-font-size-relative-base);color:var(--calcite-color-text-1)}.padding-around{padding:12px 2rem 2rem}`;
15
+ class T extends _ {
16
16
  constructor() {
17
- super(), this.open = !1, this.source = "Card Dropdown", this._deletePercentage = 0, this._fetchingTemplates = !1, this._isDeleteInProgress = !1, this._nonSolutionDependencyItems = [], this._showDeleteError = !1, this._showUndeletableItems = !1, this._templateInfos = [], this._translations = f({ name: "solution-delete-dialog", blocking: !0 }), this._accordion = C(), this._configContextConsumer = _({
18
- context: w,
17
+ super(), this.open = !1, this.source = "Card Dropdown", this._deletePercentage = 0, this._fetchingTemplates = !1, this._isDeleteInProgress = !1, this._nonSolutionDependencyItems = [], this._showDeleteError = !1, this._showUndeletableItems = !1, this._templateInfos = [], this._translations = g({ name: "solution-delete-dialog", blocking: !0 }), this._accordion = $(), this._configContextConsumer = I({
18
+ context: C,
19
19
  subscribe: !0
20
- }), this.solutionDeleteDialogOpen = d(), this.solutionDeleted = d(), this.solutionDeleteDialogBeforeClose = d(), this.listenOn(window, "beforeunload", (e) => {
21
- this._isDeleteInProgress && (e.preventDefault(), e.returnValue = !0);
20
+ }), this.solutionDeleteDialogOpen = d(), this.solutionDeleted = d(), this.solutionDeleteDialogBeforeClose = d(), this.listenOn(window, "beforeunload", (t) => {
21
+ this._isDeleteInProgress && (t.preventDefault(), t.returnValue = !0);
22
22
  });
23
23
  }
24
24
  static {
25
25
  this.properties = { card: 0, open: 5, source: 1, _deletePercentage: 16, _fetchingTemplates: 16, _isDeleteInProgress: 16, _nonSolutionDependencyItems: 16, _showDeleteError: 16, _showUndeletableItems: 16, _templateInfos: 16, _translations: 16 };
26
26
  }
27
27
  static {
28
- this.styles = x;
28
+ this.styles = S;
29
29
  }
30
30
  get _hasAdminDeletePermission() {
31
- return this._configContextConsumer.value?.authentication ? I(this._configContextConsumer.value?.authentication) : !1;
31
+ return this._configContextConsumer.value?.authentication ? y(this._configContextConsumer.value?.authentication) : !1;
32
32
  }
33
33
  get _telemetry() {
34
34
  return this._configContextConsumer.value?.telemetrySession;
@@ -38,7 +38,7 @@ class S extends g {
38
38
  }
39
39
  delete() {
40
40
  if (this._telemetry?.logEvent({
41
- category: y.DEPLOYMENTS,
41
+ category: b.DEPLOYMENTS,
42
42
  action: "Delete Solution",
43
43
  dimensions: [
44
44
  this.card?.title || "",
@@ -47,81 +47,84 @@ class S extends g {
47
47
  this.source
48
48
  ]
49
49
  }), this._isDeleteInProgress = !0, this.card) {
50
- const e = [{
50
+ const t = [{
51
51
  itemName: this.card.title,
52
52
  itemType: "Solution",
53
53
  owner: this.card.owner,
54
54
  modified: this.card.modified
55
- }], t = {
56
- progressCallback: (i) => {
57
- this._deletePercentage = Math.round(i);
55
+ }], s = {
56
+ progressCallback: (o) => {
57
+ this._deletePercentage = Math.round(o);
58
58
  },
59
59
  solutionOwner: this.card.owner
60
60
  };
61
- b(this.card.id, this._configContextConsumer.value.userSession, t).then((i) => {
62
- const s = i[1];
63
- let o;
64
- if (s ? o = s.items.map((n) => ({
61
+ w(this.card.id, this._configContextConsumer.value.userSession, s).then((o) => {
62
+ const i = o[1];
63
+ let a;
64
+ if (i ? a = i.items.map((n) => ({
65
65
  itemName: n.title,
66
66
  itemType: n.type,
67
67
  owner: n.owner,
68
68
  modified: n.modified
69
- })) : o = e, o.length === 0)
69
+ })) : a = t, a.length === 0)
70
70
  this.solutionDeleted.emit({ showAlert: !0, refreshSolutionsTimeout: !0, solutionTitle: this.card?.title }), this._isDeleteInProgress = !1, this.open = !1;
71
- else if (o.some((l) => l.itemType === "Solution"))
72
- this.card ? $(this.card, this._configContextConsumer.value.userSession).then((l) => {
73
- this._templateInfos = l, this._showDeleteError = !0, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
71
+ else if (a.some((e) => e.itemType === "Solution"))
72
+ this.card ? v(this.card, this._configContextConsumer.value.userSession).then((e) => {
73
+ this._templateInfos = e, this._showDeleteError = !0, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
74
74
  }) : (this._showDeleteError = !0, this._isDeleteInProgress = !1);
75
75
  else if (this.card) {
76
- let l = [];
77
- l = s.items.map((a) => ({
78
- id: a.id,
79
- title: a.title,
80
- type: a.type,
81
- owner: a.owner,
82
- modified: a.modified,
76
+ let e = [];
77
+ e = i.items.map((l) => ({
78
+ id: l.id,
79
+ title: l.title,
80
+ type: l.type,
81
+ owner: l.owner,
82
+ modified: l.modified,
83
83
  typeKeywords: [],
84
84
  snippet: "",
85
85
  dependencies: [],
86
- url: D(a.id, this._configContextConsumer.value.authentication)
87
- })), this._templateInfos = l, this._showDeleteError = !1, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
86
+ url: D(l.id, this._configContextConsumer.value.authentication)
87
+ })), this._templateInfos = e, this._showDeleteError = !1, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
88
88
  } else
89
89
  this.solutionDeleted.emit({ showAlert: !0, refreshSolutionsTimeout: !0 }), this._isDeleteInProgress = !1, this.open = !1;
90
90
  });
91
91
  }
92
92
  }
93
- willUpdate(e) {
94
- if (e.has("open")) {
95
- const t = e.get("open");
96
- this.open && !t && (this._fetchingTemplates = !0, v(this._configContextConsumer.value.userSession, this.card).then((i) => {
97
- this._templateInfos = i.templateInfos, this._nonSolutionDependencyItems = i._nonSolutionDependencyItems, this._fetchingTemplates = !1;
93
+ willUpdate(t) {
94
+ if (t.has("open")) {
95
+ const s = t.get("open");
96
+ this.open && !s && (this._fetchingTemplates = !0, x(this._configContextConsumer.value.userSession, this.card).then((o) => {
97
+ this._templateInfos = o.templateInfos, this._nonSolutionDependencyItems = o._nonSolutionDependencyItems, this._fetchingTemplates = !1;
98
98
  }));
99
99
  }
100
100
  }
101
101
  render() {
102
- const e = this._fetchingTemplates ? "" : "display-none", t = this._fetchingTemplates ? "display-none" : "", i = [...new Set(this._nonSolutionDependencyItems.map((n) => n.controlItemId))], s = this._templateInfos.length - this._getDependencyCount() - this._getNonOwnerCount(), o = this._translations.deletionCount.replace("{{deleteableCount}}", s.toString()).replace("{{totalCount}}", this._templateInfos.length.toString());
103
- return r`<calcite-dialog class="panel-bg-color" .closeDisabled=${this._isDeleteInProgress} .escapeDisabled=${this._isDeleteInProgress} .heading=${this._translations.title.replace("{{solution}}", this.card?.title ?? "")} id=${this._translations.title.replace("{{solution}}", this.card?.title ?? "") ?? p} modal kind=danger .open=${this.open} width=l outside-close-disabled @calciteDialogBeforeClose=${() => {
102
+ const t = this._fetchingTemplates ? "" : "display-none", s = this._fetchingTemplates ? "display-none" : "", o = new Set(this._nonSolutionDependencyItems.filter((e) => e.dependencyItemId !== this.card.id).map((e) => `${e.controlItemId}|${e.dependencyItemId}`)), i = Array.from(o).map((e) => {
103
+ const [l, h] = e.split("|");
104
+ return { controlItemId: l, dependencyItemId: h };
105
+ }), a = this._templateInfos.length - this._getDependencyCount() - this._getNonOwnerCount(), n = this._translations.deletionCount.replace("{{deleteableCount}}", a.toString()).replace("{{totalCount}}", this._templateInfos.length.toString());
106
+ return r`<calcite-dialog class="panel-bg-color" .closeDisabled=${this._isDeleteInProgress} .escapeDisabled=${this._isDeleteInProgress} .heading=${this._translations.title.replace("{{solution}}", this.card?.title ?? "")} id=${this._translations.title.replace("{{solution}}", this.card?.title ?? "") ?? f} modal kind=danger .open=${this.open} width=l outside-close-disabled @calciteDialogBeforeClose=${() => {
104
107
  this.solutionDeleteDialogBeforeClose.emit();
105
108
  }} @calciteDialogClose=${() => {
106
109
  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} 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=${() => {
110
+ }}>${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(s)} layout=inline><span tabindex=0>${this._translations.failedToDeleteItems}</span></calcite-label><solution-item-accordion class=${c(s)} .itemRelationshipDependencies=${[]} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=delete ${m(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 ${s}`}><span class="deletion-note-text" tabindex=0>${this._translations.deletionNote}</span><calcite-chip .label=${n} scale=m icon=information>${n}</calcite-chip></div><calcite-loader class=${c(t)} label></calcite-loader><solution-item-accordion class=${c(s)} .itemRelationshipDependencies=${i} link-type=item list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReusewarning} .templateInfos=${this._templateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=delete ${m(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
111
  this.delete();
109
112
  }} 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
113
  this._showDeleteError = !1;
111
114
  }} open><div slot=message>${this._translations.failedToDelete}</div></calcite-alert>` || ""}`}</calcite-dialog>`;
112
115
  }
113
116
  _getDependencyCount() {
114
- const e = this._nonSolutionDependencyItems.map((t) => t.controlItemId);
115
- return new Set(e).size;
117
+ const t = this._nonSolutionDependencyItems.map((s) => s.controlItemId);
118
+ return new Set(t).size;
116
119
  }
117
120
  _getNonOwnerCount() {
118
121
  if (this._templateInfos.length === 0 || this._hasAdminDeletePermission)
119
122
  return 0;
120
- const e = this._nonSolutionDependencyItems.map((s) => s.controlItemId), t = new Set(e), i = this._configContextConsumer.value.userSession.username;
121
- return this._templateInfos.filter((s) => !t.has(s.id)).filter((s) => s.owner !== i).length;
123
+ const t = this._nonSolutionDependencyItems.map((i) => i.controlItemId), s = new Set(t), o = this._configContextConsumer.value.userSession.username;
124
+ return this._templateInfos.filter((i) => !s.has(i.id)).filter((i) => i.owner !== o).length;
122
125
  }
123
126
  }
124
- m("solution-delete-dialog", S);
127
+ u("solution-delete-dialog", T);
125
128
  export {
126
- S as SolutionDeleteDialog
129
+ T as SolutionDeleteDialog
127
130
  };
@@ -1,6 +1,6 @@
1
1
  /// <reference path="../../index.d.ts" />
2
2
  import type { PublicLitElement as LitElement } from "@arcgis/lumina";
3
- import type { IDeployFailed, IDeployProgressUpdate, ISolutionInfoCard, IUserOption } from "../../utils/interfaces.js";
3
+ import type { IDeployFailed, IDeployProgressUpdate, ISolutionDesign, ISolutionInfoCard, IUserOption } from "../../utils/interfaces.js";
4
4
  import type { T9nMeta } from "@arcgis/lumina/controllers";
5
5
 
6
6
  export abstract class SolutionDeployDialog extends LitElement {
@@ -59,6 +59,8 @@ export abstract class SolutionDeployDialog extends LitElement {
59
59
  * @default false
60
60
  */
61
61
  accessor debugFailDeployment: boolean;
62
+ /** Builder design payload to convert into buildSolution deploy params */
63
+ accessor design: ISolutionDesign | null;
62
64
  /**
63
65
  * When true the dialog will be shown
64
66
  *
@@ -3,8 +3,9 @@ import "../../chunks/runtime.js";
3
3
  import "../../chunks/useT9n.js";
4
4
  import "@arcgis/lumina";
5
5
  import "@arcgis/lumina/context";
6
- import { S as n } from "../../chunks/solution-deploy-dialog.js";
6
+ import { S as s } from "../../chunks/solution-deploy-dialog.js";
7
7
  import "@esri/solution-common";
8
+ import "../../chunks/converter.js";
8
9
  import "../../chunks/deployAppContexts.js";
9
10
  import "@esri/solution-deployer";
10
11
  import "../../chunks/helpers.js";
@@ -12,5 +13,5 @@ import "../../chunks/validators.js";
12
13
  import "lit";
13
14
  import "lit/directives/ref.js";
14
15
  export {
15
- n as SolutionDeployDialog
16
+ s as SolutionDeployDialog
16
17
  };