@esri/solutions-components 5.1.0-next.94 → 5.1.0-next.96

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 (192) hide show
  1. package/dist/cdn/{XAW6KPKL.js → 2BUUN32T.js} +1 -1
  2. package/dist/cdn/{ZGEMIOB5.js → 2NVL4Z5G.js} +1 -1
  3. package/dist/cdn/{D4GI6KPZ.js → 3CDDDNHX.js} +1 -1
  4. package/dist/cdn/{VOF34LDF.js → 3EVMNCX6.js} +1 -1
  5. package/dist/cdn/{2VXTMCRJ.js → 3JQP6RGM.js} +1 -1
  6. package/dist/cdn/5K6B2WSQ.js +2 -0
  7. package/dist/cdn/{QYDGCI2P.js → 63RUMXWC.js} +1 -1
  8. package/dist/cdn/{5Z45KDQY.js → 6HZIF7DC.js} +1 -1
  9. package/dist/cdn/{C7ASL3A4.js → 6ZRRFBIZ.js} +1 -1
  10. package/dist/cdn/{NPOHA56R.js → 7RK7YWYV.js} +1 -1
  11. package/dist/cdn/{4QZ7WHXA.js → AG22WAP3.js} +1 -1
  12. package/dist/cdn/{JQXKQHAG.js → AMEUOI76.js} +1 -1
  13. package/dist/cdn/{ZP6VPBP4.js → BGXRCU7G.js} +1 -1
  14. package/dist/cdn/{5OF3YOO7.js → BIVYOKLF.js} +1 -1
  15. package/dist/cdn/{WRSVJIPA.js → BSXTZCNH.js} +1 -1
  16. package/dist/cdn/DRXERUDE.js +2 -0
  17. package/dist/cdn/{3ZZ726LQ.js → DSLOJFRD.js} +1 -1
  18. package/dist/cdn/{YVDSW2OQ.js → EN6E35NY.js} +1 -1
  19. package/dist/cdn/ESBPGZRY.js +2 -0
  20. package/dist/cdn/{NXL2QN3P.js → EVEXF6IH.js} +2 -2
  21. package/dist/cdn/{55NRVFJ5.js → FZBIZBOO.js} +1 -1
  22. package/dist/cdn/{LUZYJVG5.js → G7N3V3YJ.js} +1 -1
  23. package/dist/cdn/{ELPH6EFW.js → I2GXCEQM.js} +1 -1
  24. package/dist/cdn/{4HPFDUTJ.js → IC2D4LPZ.js} +1 -1
  25. package/dist/cdn/IRRMUFW7.js +2 -0
  26. package/dist/cdn/{FGWGYIBZ.js → KLLT6LQO.js} +1 -1
  27. package/dist/cdn/{3XGF3ZJO.js → MWMNRIUD.js} +1 -1
  28. package/dist/cdn/{CWXOH2PC.js → NBX7J6DU.js} +1 -1
  29. package/dist/cdn/{JC5EXPFH.js → NEM3F44J.js} +1 -1
  30. package/dist/cdn/{2HUG6L4M.js → OF33IXBV.js} +1 -1
  31. package/dist/cdn/{2O3HAXKG.js → OZE4W3UQ.js} +1 -1
  32. package/dist/cdn/PVM4ETZ7.js +2 -0
  33. package/dist/cdn/QADMFYXT.js +2 -0
  34. package/dist/cdn/QKJ4PGBO.js +2 -0
  35. package/dist/cdn/RTA6KNSK.js +2 -0
  36. package/dist/cdn/{SJCXI4TB.js → RX3VLQGY.js} +1 -1
  37. package/dist/cdn/{CHZWEULM.js → SAI5O6SI.js} +1 -1
  38. package/dist/cdn/{C4UB6MNN.js → TRBSV6ZY.js} +110 -110
  39. package/dist/cdn/{5BU6XZAD.js → TTV5UYNT.js} +1 -1
  40. package/dist/cdn/{2B2ANB2N.js → U6CZXWSF.js} +1 -1
  41. package/dist/cdn/{GJTXLQOS.js → URVOLZIY.js} +1 -1
  42. package/dist/cdn/{XXT542UR.js → UYY6JODL.js} +1 -1
  43. package/dist/cdn/VESARS2D.js +7 -0
  44. package/dist/cdn/VFZ2J4EW.js +2 -0
  45. package/dist/cdn/VRM54VB2.js +2 -0
  46. package/dist/cdn/{IGSOHYV3.js → XGZCGPHU.js} +1 -1
  47. package/dist/cdn/{JJ7JB2ZP.js → Y5N6ESUO.js} +1 -1
  48. package/dist/cdn/YDNNXKDK.js +2 -0
  49. package/dist/cdn/{O3SWSZQE.js → ZKGLAGUM.js} +1 -1
  50. package/dist/cdn/ZPWKF5SM.js +2 -0
  51. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.en.json +1 -1
  52. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.json +1 -1
  53. package/dist/cdn/assets/solution-details-card/t9n/messages.ar.json +1 -1
  54. package/dist/cdn/assets/solution-details-card/t9n/messages.bg.json +1 -1
  55. package/dist/cdn/assets/solution-details-card/t9n/messages.bs.json +1 -1
  56. package/dist/cdn/assets/solution-details-card/t9n/messages.ca.json +1 -1
  57. package/dist/cdn/assets/solution-details-card/t9n/messages.cs.json +1 -1
  58. package/dist/cdn/assets/solution-details-card/t9n/messages.da.json +1 -1
  59. package/dist/cdn/assets/solution-details-card/t9n/messages.de.json +1 -1
  60. package/dist/cdn/assets/solution-details-card/t9n/messages.el.json +1 -1
  61. package/dist/cdn/assets/solution-details-card/t9n/messages.en.json +1 -1
  62. package/dist/cdn/assets/solution-details-card/t9n/messages.es.json +1 -1
  63. package/dist/cdn/assets/solution-details-card/t9n/messages.et.json +1 -1
  64. package/dist/cdn/assets/solution-details-card/t9n/messages.fi.json +1 -1
  65. package/dist/cdn/assets/solution-details-card/t9n/messages.fr.json +1 -1
  66. package/dist/cdn/assets/solution-details-card/t9n/messages.he.json +1 -1
  67. package/dist/cdn/assets/solution-details-card/t9n/messages.hr.json +1 -1
  68. package/dist/cdn/assets/solution-details-card/t9n/messages.hu.json +1 -1
  69. package/dist/cdn/assets/solution-details-card/t9n/messages.id.json +1 -1
  70. package/dist/cdn/assets/solution-details-card/t9n/messages.it.json +1 -1
  71. package/dist/cdn/assets/solution-details-card/t9n/messages.ja.json +1 -1
  72. package/dist/cdn/assets/solution-details-card/t9n/messages.json +1 -1
  73. package/dist/cdn/assets/solution-details-card/t9n/messages.ko.json +1 -1
  74. package/dist/cdn/assets/solution-details-card/t9n/messages.lt.json +1 -1
  75. package/dist/cdn/assets/solution-details-card/t9n/messages.lv.json +1 -1
  76. package/dist/cdn/assets/solution-details-card/t9n/messages.nl.json +1 -1
  77. package/dist/cdn/assets/solution-details-card/t9n/messages.no.json +1 -1
  78. package/dist/cdn/assets/solution-details-card/t9n/messages.pl.json +1 -1
  79. package/dist/cdn/assets/solution-details-card/t9n/messages.pt-BR.json +1 -1
  80. package/dist/cdn/assets/solution-details-card/t9n/messages.pt-PT.json +1 -1
  81. package/dist/cdn/assets/solution-details-card/t9n/messages.ro.json +1 -1
  82. package/dist/cdn/assets/solution-details-card/t9n/messages.ru.json +1 -1
  83. package/dist/cdn/assets/solution-details-card/t9n/messages.sk.json +1 -1
  84. package/dist/cdn/assets/solution-details-card/t9n/messages.sl.json +1 -1
  85. package/dist/cdn/assets/solution-details-card/t9n/messages.sr.json +1 -1
  86. package/dist/cdn/assets/solution-details-card/t9n/messages.sv.json +1 -1
  87. package/dist/cdn/assets/solution-details-card/t9n/messages.th.json +1 -1
  88. package/dist/cdn/assets/solution-details-card/t9n/messages.tr.json +1 -1
  89. package/dist/cdn/assets/solution-details-card/t9n/messages.uk.json +1 -1
  90. package/dist/cdn/assets/solution-details-card/t9n/messages.vi.json +1 -1
  91. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-CN.json +1 -1
  92. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-HK.json +1 -1
  93. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-TW.json +1 -1
  94. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ar.json +1 -1
  95. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bg.json +1 -1
  96. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bs.json +1 -1
  97. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ca.json +1 -1
  98. package/dist/cdn/assets/solution-item-accordion/t9n/messages.cs.json +1 -1
  99. package/dist/cdn/assets/solution-item-accordion/t9n/messages.da.json +1 -1
  100. package/dist/cdn/assets/solution-item-accordion/t9n/messages.de.json +1 -1
  101. package/dist/cdn/assets/solution-item-accordion/t9n/messages.el.json +1 -1
  102. package/dist/cdn/assets/solution-item-accordion/t9n/messages.en.json +1 -1
  103. package/dist/cdn/assets/solution-item-accordion/t9n/messages.es.json +1 -1
  104. package/dist/cdn/assets/solution-item-accordion/t9n/messages.et.json +1 -1
  105. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fi.json +1 -1
  106. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fr.json +1 -1
  107. package/dist/cdn/assets/solution-item-accordion/t9n/messages.he.json +1 -1
  108. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hr.json +1 -1
  109. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hu.json +1 -1
  110. package/dist/cdn/assets/solution-item-accordion/t9n/messages.id.json +1 -1
  111. package/dist/cdn/assets/solution-item-accordion/t9n/messages.it.json +1 -1
  112. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ja.json +1 -1
  113. package/dist/cdn/assets/solution-item-accordion/t9n/messages.json +1 -1
  114. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ko.json +1 -1
  115. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lt.json +1 -1
  116. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lv.json +1 -1
  117. package/dist/cdn/assets/solution-item-accordion/t9n/messages.nl.json +1 -1
  118. package/dist/cdn/assets/solution-item-accordion/t9n/messages.no.json +1 -1
  119. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pl.json +1 -1
  120. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-BR.json +1 -1
  121. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-PT.json +1 -1
  122. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ro.json +1 -1
  123. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ru.json +1 -1
  124. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sk.json +1 -1
  125. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sl.json +1 -1
  126. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sr.json +1 -1
  127. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sv.json +1 -1
  128. package/dist/cdn/assets/solution-item-accordion/t9n/messages.th.json +1 -1
  129. package/dist/cdn/assets/solution-item-accordion/t9n/messages.tr.json +1 -1
  130. package/dist/cdn/assets/solution-item-accordion/t9n/messages.uk.json +1 -1
  131. package/dist/cdn/assets/solution-item-accordion/t9n/messages.vi.json +1 -1
  132. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-CN.json +1 -1
  133. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-HK.json +1 -1
  134. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-TW.json +1 -1
  135. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.en.json +1 -0
  136. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.json +1 -0
  137. package/dist/cdn/index.js +1 -1
  138. package/dist/cdn/main.css +1 -1
  139. package/dist/chunks/cardFetchingUtils.js +1 -1
  140. package/dist/chunks/converter.js +86 -89
  141. package/dist/chunks/get.js +387 -0
  142. package/dist/chunks/helpers.js +61 -39
  143. package/dist/chunks/solution-deploy-dialog.js +1 -1
  144. package/dist/chunks/solutions-deploy-app-nav.js +1 -1
  145. package/dist/components/arcgis-solutions-assistant/customElement.js +7713 -7308
  146. package/dist/components/consent-manager/customElement.js +609 -638
  147. package/dist/components/solution-configure-titles/customElement.js +13 -12
  148. package/dist/components/solution-delete-dialog/customElement.js +28 -27
  149. package/dist/components/solution-deployed-card-panel/customElement.js +12 -12
  150. package/dist/components/solution-details-card/customElement.d.ts +4 -0
  151. package/dist/components/solution-details-card/customElement.js +29 -21
  152. package/dist/components/solution-details-card/index.js +1 -0
  153. package/dist/components/solution-details-panel/customElement.js +1 -1
  154. package/dist/components/solution-item-accordion/customElement.d.ts +5 -2
  155. package/dist/components/solution-item-accordion/customElement.js +42 -32
  156. package/dist/components/solution-item-accordion/index.js +1 -0
  157. package/dist/components/solutions-all-panel/customElement.d.ts +2 -0
  158. package/dist/components/solutions-all-panel/customElement.js +57 -42
  159. package/dist/components/solutions-all-shell/customElement.js +94 -40
  160. package/dist/components/solutions-deployed-list/customElement.d.ts +33 -0
  161. package/dist/components/solutions-deployed-list/customElement.js +38 -0
  162. package/dist/components/solutions-deployed-list/index.d.ts +1 -0
  163. package/dist/components/solutions-deployed-list/index.js +1 -0
  164. package/dist/components/solutions-deployed-panel/customElement.js +1 -1
  165. package/dist/components/solutions-deployed-shell/customElement.js +1 -1
  166. package/dist/docs/api.json +1 -1
  167. package/dist/docs/docs.json +1 -1
  168. package/dist/docs/vscode.html-custom-data.json +1 -1
  169. package/dist/docs/web-types.json +1 -1
  170. package/dist/index.d.ts +10 -0
  171. package/dist/loader.js +4 -3
  172. package/dist/solutions-components_commit.txt +6 -6
  173. package/dist/types/lumina.d.ts +6 -0
  174. package/dist/types/preact.d.ts +7 -0
  175. package/dist/types/react.d.ts +8 -0
  176. package/dist/types/stencil.d.ts +6 -0
  177. package/dist/utils/getRelatedInfos.d.ts +4 -0
  178. package/dist/utils/interfaces.d.ts +10 -2
  179. package/package.json +1 -1
  180. package/dist/cdn/2L3RREZ4.js +0 -2
  181. package/dist/cdn/2WHAF4H7.js +0 -2
  182. package/dist/cdn/AKKTG2RD.js +0 -2
  183. package/dist/cdn/DLH53PYM.js +0 -7
  184. package/dist/cdn/FDE2V7FU.js +0 -2
  185. package/dist/cdn/K6WLYYPH.js +0 -2
  186. package/dist/cdn/P24CZ4HM.js +0 -2
  187. package/dist/cdn/R2G4DDRZ.js +0 -2
  188. package/dist/cdn/SO3S3WP4.js +0 -2
  189. package/dist/cdn/UBLDT5XD.js +0 -2
  190. package/dist/cdn/X5EABWHE.js +0 -2
  191. package/dist/cdn/ZONXYZVU.js +0 -2
  192. package/dist/chunks/get-portal-url.js +0 -345
@@ -5,14 +5,15 @@ import { LitElement as T, createEvent as m, safeClassMap as u } from "@arcgis/lu
5
5
  import { useContextConsumer as D } from "@arcgis/lumina/context";
6
6
  import { css as $, html as h } from "lit";
7
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";
8
+ import { createRef as _, ref as c } from "lit-html/directives/ref.js";
9
9
  import { c as V } from "../../chunks/deployAppContexts.js";
10
10
  import * as w from "@esri/solution-common";
11
11
  import { updateGroup as x, updateItem as g, updateItemExtended as E } from "@esri/solution-common";
12
12
  import { v as C } from "../../chunks/validators.js";
13
13
  import { g as W } from "../../chunks/getRelatedInfos.js";
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
- class N extends T {
14
+ import { d as L } from "../../chunks/helpers.js";
15
+ const N = $`*[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}`;
16
+ class O extends T {
16
17
  constructor() {
17
18
  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
19
  context: V,
@@ -23,7 +24,7 @@ class N extends T {
23
24
  this.properties = { card: 0, open: 5, source: 1, solutionData: 1, templateInfos: 0, _saveDisabled: 16, _displayTemplateInfos: 16, _hasNameLengthError: 16, _nonSolutionDependencyItems: 16, _solutionItemsTitlesUpdating: 16, _translations: 16 };
24
25
  }
25
26
  static {
26
- this.styles = L;
27
+ this.styles = N;
27
28
  }
28
29
  async willUpdate(e) {
29
30
  if (e.has("templateInfos") && (this._templateInfos = JSON.parse(JSON.stringify(this.templateInfos)), this._updateTemplates()), e.has("open")) {
@@ -50,12 +51,12 @@ class N extends T {
50
51
  }} .open=${this.open} outside-close-disabled width=l>${this._getPrefixSuffixControls()}${this._getAccordion()}${this._getDialogButtons()}</calcite-dialog>`;
51
52
  }
52
53
  _getPrefixSuffixControls() {
53
- const e = C(this._prefixValue), i = this._hasNameLengthError && this._prefixValue.length > 0, a = e.errorType !== "special-character", t = !i, s = a ? "display-none" : "", n = t ? "display-none" : "", d = a && 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 = !a || !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(s)} 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>`;
54
+ const e = C(this._prefixValue), i = this._hasNameLengthError && this._prefixValue.length > 0, a = e.errorType !== "special-character", t = !i, s = a ? "display-none" : "", n = t ? "display-none" : "", d = a && t ? "valid" : "invalid", p = C(this._suffixValue), l = this._hasNameLengthError && this._suffixValue.length > 0, o = p.errorType !== "special-character", r = !l, f = o ? "display-none" : "", y = r ? "display-none" : "", I = o && r ? "valid" : "invalid";
55
+ return this._saveDisabled = !a || !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} ${c(this._prefixRef)}></calcite-input><calcite-input-message class=${u(s)} 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=${I} .value=${this._suffixValue} ${c(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(y)} icon=exclamation-mark-triangle status=invalid>${this._translations.invalidPrefixOrSuffixLengthError}</calcite-input-message></calcite-label></div></div>`;
55
56
  }
56
57
  _getAccordion() {
57
- const e = [...new Set(this._nonSolutionDependencyItems.map((i) => i.controlItemId))];
58
- 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=${e} list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReuseWarning} .templateInfos=${this._displayTemplateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=rename ${p(async (i) => {
58
+ const e = L(this._nonSolutionDependencyItems, this.card.id);
59
+ 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=${e} list-selection-mode=multiple .reuseWarning=${this._translations.itemDependencyReuseWarning} .templateInfos=${this._displayTemplateInfos} .typeKeywords=${this.card?.typeKeywords} usage-context=rename ${c(async (i) => {
59
60
  i && (this._accordionRef = i);
60
61
  })}></solution-item-accordion></div>`;
61
62
  }
@@ -77,13 +78,13 @@ class N extends T {
77
78
  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));
78
79
  const a = JSON.parse(JSON.stringify(this._templateInfos));
79
80
  this._hasNameLengthError = !1, this._displayTemplateInfos = a.map((t) => {
80
- const s = this._prefixValue !== "", n = this._suffixValue !== "", d = this._defaultPrefix !== "", c = this._defaultSuffix !== "";
81
+ const s = this._prefixValue !== "", n = this._suffixValue !== "", d = this._defaultPrefix !== "", p = this._defaultSuffix !== "";
81
82
  if (t.owner !== i && !e)
82
83
  return t;
83
84
  let l = t.title;
84
85
  s && (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));
85
86
  let o = l;
86
- 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;
87
+ return n && (p ? 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;
87
88
  }), this._loadingDefaultPrefix = !1, this._loadingDefaultSuffix = !1;
88
89
  }
89
90
  _replaceStart(e, i, a) {
@@ -155,7 +156,7 @@ class N extends T {
155
156
  this._closeDialog();
156
157
  }
157
158
  }
158
- S("solution-configure-titles", N);
159
+ S("solution-configure-titles", O);
159
160
  export {
160
- N as SolutionConfigureTitles
161
+ O as SolutionConfigureTitles
161
162
  };
@@ -7,15 +7,16 @@ import { useContextConsumer as _ } from "@arcgis/lumina/context";
7
7
  import { g as D } from "../../chunks/common.js";
8
8
  import { y as I, T as y } from "../../chunks/interfaces.js";
9
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";
10
+ import { c as C } from "../../chunks/deployAppContexts.js";
11
+ import { createRef as w, ref as h } from "lit-html/directives/ref.js";
12
12
  import "../solution-item-accordion/customElement.js";
13
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 {
14
+ import { d as x } from "../../chunks/helpers.js";
15
+ const S = 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}`;
16
+ class T extends g {
16
17
  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,
18
+ 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 = w(), this._configContextConsumer = _({
19
+ context: C,
19
20
  subscribe: !0
20
21
  }), this.solutionDeleteDialogOpen = d(), this.solutionDeleted = d(), this.solutionDeleteDialogBeforeClose = d(), this.listenOn(window, "beforeunload", (e) => {
21
22
  this._isDeleteInProgress && (e.preventDefault(), e.returnValue = !0);
@@ -25,7 +26,7 @@ class S extends g {
25
26
  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
27
  }
27
28
  static {
28
- this.styles = x;
29
+ this.styles = S;
29
30
  }
30
31
  get _hasAdminDeletePermission() {
31
32
  return this._configContextConsumer.value?.authentication ? I(this._configContextConsumer.value?.authentication) : !1;
@@ -61,30 +62,30 @@ class S extends g {
61
62
  b(this.card.id, this._configContextConsumer.value.userSession, t).then((i) => {
62
63
  const s = i[1];
63
64
  let o;
64
- if (s ? o = s.items.map((n) => ({
65
- itemName: n.title,
66
- itemType: n.type,
67
- owner: n.owner,
68
- modified: n.modified
65
+ if (s ? o = s.items.map((a) => ({
66
+ itemName: a.title,
67
+ itemType: a.type,
68
+ owner: a.owner,
69
+ modified: a.modified
69
70
  })) : o = e, o.length === 0)
70
71
  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;
72
+ else if (o.some((n) => n.itemType === "Solution"))
73
+ this.card ? $(this.card, this._configContextConsumer.value.userSession).then((n) => {
74
+ this._templateInfos = n, this._showDeleteError = !0, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
74
75
  }) : (this._showDeleteError = !0, this._isDeleteInProgress = !1);
75
76
  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,
77
+ let n = [];
78
+ n = s.items.map((l) => ({
79
+ id: l.id,
80
+ title: l.title,
81
+ type: l.type,
82
+ owner: l.owner,
83
+ modified: l.modified,
83
84
  typeKeywords: [],
84
85
  snippet: "",
85
86
  dependencies: [],
86
- url: D(a.id, this._configContextConsumer.value.authentication)
87
- })), this._templateInfos = l, this._showDeleteError = !1, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
87
+ url: D(l.id, this._configContextConsumer.value.authentication)
88
+ })), this._templateInfos = n, this._showDeleteError = !1, this._showUndeletableItems = !0, this._isDeleteInProgress = !1;
88
89
  } else
89
90
  this.solutionDeleted.emit({ showAlert: !0, refreshSolutionsTimeout: !0 }), this._isDeleteInProgress = !1, this.open = !1;
90
91
  });
@@ -99,7 +100,7 @@ class S extends g {
99
100
  }
100
101
  }
101
102
  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
+ const e = this._fetchingTemplates ? "" : "display-none", t = this._fetchingTemplates ? "display-none" : "", i = x(this._nonSolutionDependencyItems, this.card.id), s = this._templateInfos.length - this._getDependencyCount() - this._getNonOwnerCount(), o = this._translations.deletionCount.replace("{{deleteableCount}}", s.toString()).replace("{{totalCount}}", this._templateInfos.length.toString());
103
104
  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=${() => {
104
105
  this.solutionDeleteDialogBeforeClose.emit();
105
106
  }} @calciteDialogClose=${() => {
@@ -121,7 +122,7 @@ class S extends g {
121
122
  return this._templateInfos.filter((s) => !t.has(s.id)).filter((s) => s.owner !== i).length;
122
123
  }
123
124
  }
124
- m("solution-delete-dialog", S);
125
+ m("solution-delete-dialog", T);
125
126
  export {
126
- S as SolutionDeleteDialog
127
+ T as SolutionDeleteDialog
127
128
  };
@@ -7,12 +7,12 @@ import { css as x, html as i } from "lit";
7
7
  import { c as _, i as v } from "../../chunks/deployAppContexts.js";
8
8
  import { y, T as s, x as w } from "../../chunks/interfaces.js";
9
9
  import { f as C, g as p, a as $ } from "../../chunks/cardsHelpers.js";
10
- import { g as S } from "../../chunks/getRelatedInfos.js";
11
- import { u as k } from "../../chunks/common.js";
12
- import { d as D } from "../../chunks/helpers.js";
10
+ import { g as D } from "../../chunks/getRelatedInfos.js";
11
+ import { u as S } from "../../chunks/common.js";
12
+ import { e as k, d as T } from "../../chunks/helpers.js";
13
13
  import * as h from "@esri/solution-common";
14
- const T = x`.negative-tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:2px}.font-weight-med{font-weight:var(--calcite-font-weight-medium)}.font-weight-bold{font-weight:var(--calcite-font-weight-bold)}.heading-font{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.title-font{font-size:1.8rem;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.font-1{font-size:var(--calcite-spacing-lg)}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}@container (min-width: 801px){.font-size-override .display-flex.flex-direction-row>.image-width+.display-flex{flex:1;min-width:0}}.icon-color{color:var(--calcite-color-text-3)}.padding-bottom-lg{padding-bottom:var(--calcite-spacing-lg)}.item-padding{--calcite-internal-accordion-item-padding: var(--calcite-spacing-xl)}.align-items-center{align-items:center}.align-items-start{align-items:start}.font-size-override{--calcite-font-size--2: var(--calcite-font-size--1)}.background-color-1{background-color:var(--calcite-color-surface-2)}.background-color-2{background-color:var(--calcite-color-surface-3)}.label-override{--calcite-label-margin-bottom: var(--calcite-spacing-none)}.position-relative{position:relative}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.margin-block-start-end-0{margin-block-start:var(--calcite-spacing-none);margin-block-end:var(--calcite-spacing-none)}.panel-background-2{--calcite-panel-background-color: var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-3)}.panel-background-1{--calcite-panel-background-color: var(--calcite-color-surface-2);--calcite-shell-panel-background-color: var(--calcite-color-surface-2)}.border-none{border:none}.font-color-1{color:var(--calcite-color-text-1)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.dialog-y-size{--calcite-dialog-size-y: 90% }.dialog-x-size{--calcite-dialog-size-x: 90% }.bottom-border{border-bottom:solid var(--calcite-spacing-px);color:var(--calcite-color-border-1)}.margin-start-end-xxl{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.margin-start-end-lg{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-top-xxl{margin-top:var(--calcite-spacing-xxl)}.justify-between{justify-content:space-between}.items-baseline{align-items:baseline}.padding-xxl{padding:var(--calcite-spacing-xxl)}.padding-lg{padding:var(--calcite-spacing-lg)}.padding-top-xxl{padding-top:var(--calcite-spacing-xxl)}.padding-top-lg{padding-top:var(--calcite-spacing-lg)}.padding-bottom-xxl{padding-bottom:var(--calcite-spacing-xxl)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-end-xxl{padding-inline-end:var(--calcite-spacing-xxl)}.padding-start-sm{padding-inline-start:var(--calcite-spacing-sm)}.padding-start-xxl{padding-inline-start:var(--calcite-spacing-xxl)}.image-width{width:300px;flex-grow:0;flex-shrink:0}@container (max-width: 1280px){.image-width{flex-grow:0;flex-shrink:1}}img{max-width:100%;height:auto;overflow-clip-margin:content-box;overflow:clip;display:block}.margin-xl{margin:var(--calcite-spacing-xl)}.line-height-1{line-height:1.1}.line-height-xxl{line-height:var(--calcite-line-height-xxl)}@container (max-width: 800px){.font-size-override .display-flex.flex-direction-row{flex-direction:column!important}.image-width{width:100%!important;max-width:100%!important;margin:0!important;padding:var(--calcite-spacing-lg)!important;padding-bottom:0!important;box-sizing:border-box}.image-width img{width:100%;max-width:100%}.margin-xl{margin:0!important}.image-width+.display-flex{padding-inline-start:var(--calcite-spacing-lg)!important;padding-inline-end:var(--calcite-spacing-lg)!important}.padding-start-sm{padding-inline-start:0!important}.title-font{padding-inline-start:0!important;padding-top:var(--calcite-spacing-lg)!important;padding-bottom:var(--calcite-spacing-lg)!important}.align-items-start.padding-bottom-xxl,.padding-bottom-xxl.padding-start-sm{padding-bottom:var(--calcite-spacing-lg)!important}}calcite-shell-panel{--calcite-shell-panel-max-width: 20rem;--calcite-shell-panel-width: 24vw}calcite-shell{block-size:unset}.solution-deployed-action{--calcite-color-focus: initial}.skeleton-loader{background:linear-gradient(90deg,var(--calcite-color-foreground-1) 0%,var(--calcite-color-foreground-2) 50%,var(--calcite-color-foreground-1) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--calcite-border-radius)}.skeleton-folder{height:1.5rem;width:12rem;border-radius:var(--calcite-border-radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}`;
15
- class I extends f {
14
+ const I = x`.negative-tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:2px}.font-weight-med{font-weight:var(--calcite-font-weight-medium)}.font-weight-bold{font-weight:var(--calcite-font-weight-bold)}.heading-font{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.title-font{font-size:1.8rem;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.font-1{font-size:var(--calcite-spacing-lg)}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}@container (min-width: 801px){.font-size-override .display-flex.flex-direction-row>.image-width+.display-flex{flex:1;min-width:0}}.icon-color{color:var(--calcite-color-text-3)}.padding-bottom-lg{padding-bottom:var(--calcite-spacing-lg)}.item-padding{--calcite-internal-accordion-item-padding: var(--calcite-spacing-xl)}.align-items-center{align-items:center}.align-items-start{align-items:start}.font-size-override{--calcite-font-size--2: var(--calcite-font-size--1)}.background-color-1{background-color:var(--calcite-color-surface-2)}.background-color-2{background-color:var(--calcite-color-surface-3)}.label-override{--calcite-label-margin-bottom: var(--calcite-spacing-none)}.position-relative{position:relative}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.margin-block-start-end-0{margin-block-start:var(--calcite-spacing-none);margin-block-end:var(--calcite-spacing-none)}.panel-background-2{--calcite-panel-background-color: var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-3)}.panel-background-1{--calcite-panel-background-color: var(--calcite-color-surface-2);--calcite-shell-panel-background-color: var(--calcite-color-surface-2)}.border-none{border:none}.font-color-1{color:var(--calcite-color-text-1)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.dialog-y-size{--calcite-dialog-size-y: 90% }.dialog-x-size{--calcite-dialog-size-x: 90% }.bottom-border{border-bottom:solid var(--calcite-spacing-px);color:var(--calcite-color-border-1)}.margin-start-end-xxl{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.margin-start-end-lg{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-top-xxl{margin-top:var(--calcite-spacing-xxl)}.justify-between{justify-content:space-between}.items-baseline{align-items:baseline}.padding-xxl{padding:var(--calcite-spacing-xxl)}.padding-lg{padding:var(--calcite-spacing-lg)}.padding-top-xxl{padding-top:var(--calcite-spacing-xxl)}.padding-top-lg{padding-top:var(--calcite-spacing-lg)}.padding-bottom-xxl{padding-bottom:var(--calcite-spacing-xxl)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-end-xxl{padding-inline-end:var(--calcite-spacing-xxl)}.padding-start-sm{padding-inline-start:var(--calcite-spacing-sm)}.padding-start-xxl{padding-inline-start:var(--calcite-spacing-xxl)}.image-width{width:300px;flex-grow:0;flex-shrink:0}@container (max-width: 1280px){.image-width{flex-grow:0;flex-shrink:1}}img{max-width:100%;height:auto;overflow-clip-margin:content-box;overflow:clip;display:block}.margin-xl{margin:var(--calcite-spacing-xl)}.line-height-1{line-height:1.1}.line-height-xxl{line-height:var(--calcite-line-height-xxl)}@container (max-width: 800px){.font-size-override .display-flex.flex-direction-row{flex-direction:column!important}.image-width{width:100%!important;max-width:100%!important;margin:0!important;padding:var(--calcite-spacing-lg)!important;padding-bottom:0!important;box-sizing:border-box}.image-width img{width:100%;max-width:100%}.margin-xl{margin:0!important}.image-width+.display-flex{padding-inline-start:var(--calcite-spacing-lg)!important;padding-inline-end:var(--calcite-spacing-lg)!important}.padding-start-sm{padding-inline-start:0!important}.title-font{padding-inline-start:0!important;padding-top:var(--calcite-spacing-lg)!important;padding-bottom:var(--calcite-spacing-lg)!important}.align-items-start.padding-bottom-xxl,.padding-bottom-xxl.padding-start-sm{padding-bottom:var(--calcite-spacing-lg)!important}}calcite-shell-panel{--calcite-shell-panel-max-width: 20rem;--calcite-shell-panel-width: 24vw}calcite-shell{block-size:unset}.solution-deployed-action{--calcite-color-focus: initial}.skeleton-loader{background:linear-gradient(90deg,var(--calcite-color-foreground-1) 0%,var(--calcite-color-foreground-2) 50%,var(--calcite-color-foreground-1) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--calcite-border-radius)}.skeleton-folder{height:1.5rem;width:12rem;border-radius:var(--calcite-border-radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}`;
15
+ class O extends f {
16
16
  constructor() {
17
17
  super(), this.diagramKey = "", this.open = !1, this.templateInfos = [], this._accordionLoading = !1, this._configureTitlesOpen = !1, this._deleteDialogOpen = !1, this._hasNewVersion = !1, this._isDiagramOpen = !1, this._isNameConflict = !1, this._invalidNameMessage = "", this._showFailedAlert = !1, this._showItemUpdateLoading = !1, this.isMobile = !1, this._templateInfoGraph = [], this._thumbnailUrl = "", this._folderName = "", this._folderId = null, this._folderLoading = !1, this._translations = m({ name: "solution-deployed-card-panel", blocking: !0 }), this._configContextConsumer = g({
18
18
  context: _,
@@ -47,7 +47,7 @@ class I extends f {
47
47
  this._folderId ? a = `${t}/home/content.html?user=${this.card?.owner}&folder=${this._folderId}` : a = `${t}/home/content.html?user=${this.card?.owner}&folder=${this.card?.owner}`;
48
48
  window.open(a, "_blank");
49
49
  }, this.listenOn(window, "deployedCardSelected", this._deployedCardSelected), this.listenOn(window, "deployAppTabSelected", this._handleDeployAppTabSelected), this.listenOn(window, "displayDeployedCard", () => {
50
- D({
50
+ k({
51
51
  kind: "success",
52
52
  icon: "check-circle",
53
53
  title: this._translations.deploySuccessAlert.replace("{{solutionTitle}}", this.card?.title ?? ""),
@@ -63,7 +63,7 @@ class I extends f {
63
63
  this.properties = { card: 0, cardRef: 1, diagramKey: 1, open: 5, templateInfos: 0, _accordionLoading: 16, _configureTitlesOpen: 16, _deleteDialogOpen: 16, _hasNewVersion: 16, _isDiagramOpen: 16, _isNameConflict: 16, _invalidNameMessage: 16, _showFailedAlert: 16, _showItemUpdateLoading: 16, isMobile: 16, _templateInfoGraph: 16, _thumbnailUrl: 16, _folderName: 16, _folderId: 16, _folderLoading: 16, _translations: 16, _nonSolutionDependencyItems: 16 };
64
64
  }
65
65
  static {
66
- this.styles = T;
66
+ this.styles = I;
67
67
  }
68
68
  get _telemetry() {
69
69
  return this._configContextConsumer.value?.telemetrySession;
@@ -86,7 +86,7 @@ class I extends f {
86
86
  async _deployedCardSelected(e) {
87
87
  const t = e.detail;
88
88
  this.card = t.card, this.cardRef = t.cardRef, this.templateInfos = [], this._accordionLoading = !0, this.templateInfos = await this._getTemplates(), this._accordionLoading = !1;
89
- const o = await S(this._configContextConsumer.value.userSession, this.card);
89
+ const o = await D(this._configContextConsumer.value.userSession, this.card);
90
90
  this._nonSolutionDependencyItems = o._nonSolutionDependencyItems;
91
91
  const n = C(this._configContextConsumer.value?.allCards || [], this.card.deployCommonId);
92
92
  let a = !1;
@@ -201,7 +201,7 @@ class I extends f {
201
201
  return i`<calcite-panel class="font-size-override panel-background-1"><div class="display-flex flex-direction-row"><div class="image-width margin-xl"><img alt=${this.card?.title ?? d} src=${this._thumbnailUrl ?? d}></div><div class="display-flex flex-direction-column"><h1 class="title-font margin-block-start-end-0 padding-end-xxl padding-start-sm padding-top-xxl padding-bottom-xxl line-height-1 negative-tabbing-offset" tabindex=0>${this.card?.title}</h1><div class="display-flex flex-direction-column padding-bottom-xxl padding-start-sm"><div class="display-flex align-items-start padding-bottom-xxl"><div class="font-1 padding-end-1 line-height-xxl negative-tabbing-offset" tabindex=0>${this.card?.snippet}</div></div><div class="display-flex"><div class="display-flex"><calcite-label class="label-override icon-color tabbing-offset" layout=inline tabindex=0><calcite-icon class="icon-color" icon=projects scale=s></calcite-icon>${this._translations.aboutYourSolutionDeployedDate.replace("{{deployedDate}}", this.card?.created || "")}</calcite-label></div></div></div></div></div></calcite-panel>`;
202
202
  }
203
203
  _getSolutionContents() {
204
- const e = [...new Set(this._nonSolutionDependencyItems.map((t) => t.controlItemId))];
204
+ const e = T(this._nonSolutionDependencyItems, this.card.id);
205
205
  return i`<calcite-panel class="panel-background-1 padding-top-xxl"><calcite-accordion class="accordion-bg " icon-position=start scale=l appearance=transparent><calcite-accordion-item class="item-padding" expanded><div class="margin-block-start-end-0 heading-font " slot=content-start>${this._translations.solutionsContentsAndCount.replace("{{numberOfSolutions}}", this.templateInfos.length.toString())}</div><div class="overflow-auto">${this._accordionLoading ? i`<calcite-loader .label=${this._translations.loadingText} scale=m></calcite-loader>` : i`<solution-item-accordion .itemRelationshipDependencies=${e} .listSelectionMode=${e.length > 0 ? "multiple" : "single"} .reuseWarning=${this._translations.itemUsedInOtherSolutions} .templateInfos=${this.templateInfos} .typeKeywords=${this.card?.typeKeywords}></solution-item-accordion>`}</div></calcite-accordion-item></calcite-accordion></calcite-panel>`;
206
206
  }
207
207
  _getDeleteDialog() {
@@ -218,10 +218,10 @@ class I extends f {
218
218
  this._deleteDialogOpen = !0;
219
219
  }
220
220
  _updateThumbnailToken(e) {
221
- this._thumbnailUrl !== "" && (this._thumbnailUrl = k(this._thumbnailUrl, e));
221
+ this._thumbnailUrl !== "" && (this._thumbnailUrl = S(this._thumbnailUrl, e));
222
222
  }
223
223
  }
224
- u("solution-deployed-card-panel", I);
224
+ u("solution-deployed-card-panel", O);
225
225
  export {
226
- I as SolutionDeployedCardPanel
226
+ O as SolutionDeployedCardPanel
227
227
  };
@@ -16,12 +16,16 @@ export abstract class SolutionDetailsCard extends LitElement {
16
16
  updated: string;
17
17
  deployed: string;
18
18
  viewDetails: string;
19
+ deployedTitle: string;
20
+ deployedPreviousTitle: string;
19
21
  } & T9nMeta<{
20
22
  arcgisSolutions: string;
21
23
  newSolution: string;
22
24
  updated: string;
23
25
  deployed: string;
24
26
  viewDetails: string;
27
+ deployedTitle: string;
28
+ deployedPreviousTitle: string;
25
29
  }>;
26
30
  /** The solutions card */
27
31
  accessor card: ISolutionInfoCard | undefined;
@@ -3,30 +3,31 @@ import { c as h } from "../../chunks/runtime.js";
3
3
  import { css as p, html as o } from "lit";
4
4
  import { u as m } from "../../chunks/useT9n.js";
5
5
  import { LitElement as u, createEvent as f, nothing as r, safeClassMap as g } from "@arcgis/lumina";
6
- import { useContextConsumer as b } from "@arcgis/lumina/context";
7
- import { c as x } from "../../chunks/deployAppContexts.js";
6
+ import { useContextConsumer as y } from "@arcgis/lumina/context";
7
+ import { c as b } from "../../chunks/deployAppContexts.js";
8
8
  import { T as v } from "../../chunks/interfaces.js";
9
- import { c as y } from "../../chunks/cardsHelpers.js";
10
- import { h as $ } from "../../chunks/helpers.js";
11
- const _ = p`calcite-card{height:100%;padding-bottom:2px;border:2px solid transparent;transition:border-color .1s ease;box-sizing:border-box}@media(max-width:400px){calcite-card{width:100%}}calcite-card:hover img{-webkit-filter:brightness(30%);filter:brightness(30%);-webkit-transition:all .1s ease;-moz-transition:all .1s ease;-o-transition:all .1s ease;-ms-transition:all .1s ease;transition:all .1s ease}calcite-card:hover .hover-text{opacity:1;color:#fff}calcite-card:hover{border-color:var(--calcite-color-brand);cursor:pointer}.chip-status{--calcite-chip-icon-color: var(--calcite-color-brand);cursor:pointer}.chip-deployed{--calcite-chip-icon-color: var(--calcite-color-status-success)}.hover-text{transition:.1s ease;opacity:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:row;align-items:center;height:100%;font-size:1.2rem}.font-color-text-2{--calcite-label-text-color: var(--calcite-color-text-2)}.font-line-height{line-height:1.4}.font-size-size--1{font-size:var(--calcite-font-size--1)}.header-line-height{--calcite-label-margin-bottom: 0;margin-top:.5rem;margin-bottom:.7rem}.info-icon{--calcite-icon-color: var(--calcite-color-text-inverse);padding-inline-end:.3rem}.card-image-wrap{flex:0 0 auto}.card-image-wrap{width:100%;position:relative;margin-bottom:0;-webkit-box-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.card-image{width:100%;display:block}video,img{max-width:100%;height:auto}img{overflow-clip-margin:content-box;overflow:clip}a{text-decoration:none;color:inherit;outline:0;padding:0;margin:0;display:inherit;height:100%}`;
12
- class C extends u {
9
+ import { c as x } from "../../chunks/cardsHelpers.js";
10
+ import { s as $, h as C } from "../../chunks/helpers.js";
11
+ import * as _ from "@esri/solution-common";
12
+ const S = p`calcite-card{height:100%;padding-bottom:2px;border:2px solid transparent;transition:border-color .1s ease;box-sizing:border-box}@media(max-width:400px){calcite-card{width:100%}}calcite-card:hover img{-webkit-filter:brightness(30%);filter:brightness(30%);-webkit-transition:all .1s ease;-moz-transition:all .1s ease;-o-transition:all .1s ease;-ms-transition:all .1s ease;transition:all .1s ease}calcite-card:hover .hover-text{opacity:1;color:#fff}calcite-card:hover{border-color:var(--calcite-color-brand);cursor:pointer}.chip-status{--calcite-chip-icon-color: var(--calcite-color-brand);cursor:pointer}.chip-deployed{--calcite-chip-icon-color: var(--calcite-color-status-success)}.hover-text{transition:.1s ease;opacity:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:row;align-items:center;height:100%;font-size:1.2rem}.font-color-text-2{--calcite-label-text-color: var(--calcite-color-text-2)}.font-line-height{line-height:1.4}.font-size-size--1{font-size:var(--calcite-font-size--1)}.header-line-height{--calcite-label-margin-bottom: 0;margin-top:.5rem;margin-bottom:.7rem}.info-icon{--calcite-icon-color: var(--calcite-color-text-inverse);padding-inline-end:.3rem}.card-image-wrap{flex:0 0 auto}.card-image-wrap{width:100%;position:relative;margin-bottom:0;-webkit-box-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.card-image{width:100%;display:block}video,img{max-width:100%;height:auto}img{overflow-clip-margin:content-box;overflow:clip}a{text-decoration:none;color:inherit;outline:0;padding:0;margin:0;display:inherit;height:100%}`;
13
+ class w extends u {
13
14
  constructor() {
14
- super(...arguments), this.referrerSolutionId = "", this.referrerSolutionTitle = "", this.referrerSolutionVersion = "", this.source = "all-solutions", this._translations = m({ name: "solution-details-card", blocking: !0 }), this._configContextConsumer = b({
15
- context: x,
15
+ super(...arguments), this.referrerSolutionId = "", this.referrerSolutionTitle = "", this.referrerSolutionVersion = "", this.source = "all-solutions", this._deployedTooltipContent = "", this._translations = m({ name: "solution-details-card", blocking: !0 }), this._configContextConsumer = y({
16
+ context: b,
16
17
  subscribe: !0
17
18
  }), this.detailsCardSelected = f();
18
19
  }
19
20
  static {
20
- this.properties = { card: 0, referrerSolutionId: 1, referrerSolutionTitle: 1, referrerSolutionVersion: 1, source: 1, _translations: 16 };
21
+ this.properties = { card: 0, referrerSolutionId: 1, referrerSolutionTitle: 1, referrerSolutionVersion: 1, source: 1, _deployedTooltipContent: 16, _translations: 16 };
21
22
  }
22
23
  static {
23
- this.styles = _;
24
+ this.styles = S;
24
25
  }
25
26
  get _telemetry() {
26
27
  return this._configContextConsumer.value?.telemetrySession;
27
28
  }
28
29
  render() {
29
- const e = y(this.card.title);
30
+ const e = x(this.card.title);
30
31
  return o`<a href=${e ?? r} @click=${this._anchorClick} tabindex=-1 .title=${`${this._translations.arcgisSolutions} | ${this.card.title}`}>${this._renderCard()}</a>`;
31
32
  }
32
33
  _anchorClick(e) {
@@ -34,7 +35,7 @@ class C extends u {
34
35
  }
35
36
  _cardSelected() {
36
37
  if (this.source === "you-may-also-like") {
37
- const t = [
38
+ const i = [
38
39
  this.referrerSolutionTitle,
39
40
  this.referrerSolutionId,
40
41
  this.referrerSolutionVersion,
@@ -45,24 +46,31 @@ class C extends u {
45
46
  this._telemetry?.logEvent({
46
47
  category: v.SOLUTION_DETAILS,
47
48
  action: "Related Solution",
48
- dimensions: t
49
+ dimensions: i
49
50
  });
50
51
  }
51
52
  this.detailsCardSelected.emit(this.card);
52
53
  }
53
54
  _renderChips(e) {
54
- const t = e.includes("deployed"), c = e.filter((i) => i !== "deployed"), s = [];
55
- return c.forEach((i) => {
56
- const n = "chip-status", l = `solution-details-card-chip-${i}`, d = i === "new" ? "star" : "mega-phone", a = i === "new" ? this._translations.newSolution : this._translations.updated;
57
- s.push(o`<calcite-chip class=${g(n)} .icon=${d} id=${l ?? r} .label=${a} .value=${a} scale=s></calcite-chip><calcite-tooltip .referenceElement=${l}><span>${a}</span></calcite-tooltip>`);
58
- }), t && s.push(o`<calcite-chip class="chip-deployed" icon=check-circle id=solution-details-card-chip-deployed .label=${this._translations.deployed} .value=${this._translations.deployed} scale=s></calcite-chip><calcite-tooltip reference-element=solution-details-card-chip-deployed><span>${this._translations.deployed}</span></calcite-tooltip>`), s;
55
+ const i = e.filter((t) => t === "deployed" || t === "deployedOlderVersion"), c = e.filter((t) => t !== "deployed" && t !== "deployedOlderVersion"), s = [];
56
+ return c.forEach((t) => {
57
+ const l = "chip-status", n = `solution-details-card-chip-${t}`, d = t === "new" ? "star" : "mega-phone", a = t === "new" ? this._translations.newSolution : this._translations.updated;
58
+ s.push(o`<calcite-chip class=${g(l)} .icon=${d} id=${n ?? r} .label=${a} .value=${a} scale=s></calcite-chip><calcite-tooltip .referenceElement=${n}><span>${a}</span></calcite-tooltip>`);
59
+ }), i.length > 0 && s.push(o`<calcite-chip class="chip-deployed" .icon=${i[0] === "deployedOlderVersion" ? "recent" : "check-circle"} id=solution-details-card-chip-deployed .label=${this._translations.deployed} .value=${this._translations.deployed} scale=s></calcite-chip><calcite-tooltip placement=bottom reference-element=solution-details-card-chip-deployed @calciteTooltipBeforeOpen=${async () => {
60
+ const t = {
61
+ q: `${this.card?.deployCommonId} and owner:${this._configContextConsumer.value?.userSession?.username}`,
62
+ authentication: this._configContextConsumer.value?.userSession,
63
+ pagingParam: { start: 1, num: 100 }
64
+ }, l = await _.searchItems(t);
65
+ this._deployedTooltipContent = o`<solutions-deployed-list .cards=${$(l.results)} has-links .listTitle=${i[0] === "deployedOlderVersion" ? this._translations.deployedPreviousTitle : this._translations.deployedTitle}></solutions-deployed-list>`;
66
+ }}>${this._deployedTooltipContent}</calcite-tooltip>`), s;
59
67
  }
60
68
  _renderCard() {
61
69
  const e = this.card;
62
- return o`<calcite-card .label=${e.snippet} @click=${this._cardSelected} @keydown=${(t) => $(t, () => this._cardSelected())}><div class="card-image-wrap" slot=thumbnail><img alt=${e.title ?? r} class="thumbnail card-image" src=${e.thumbnailUrl ?? r}><div class="hover-text">${this._translations.viewDetails}</div></div><calcite-label slot=heading class="header-line-height" scale=l>${e.title}</calcite-label><p slot=description class="font-color-text-2 font-line-height font-size-size--1">${e.snippet}</p>${e.chips && e.chips.length > 0 ? o`<div slot=footer-end style="display: flex; gap: 0.5rem; justify-content: flex-end;">${this._renderChips(e.chips)}</div>` : void 0}<div slot=footer-start></div></calcite-card>`;
70
+ return o`<calcite-card .label=${e.snippet} @click=${this._cardSelected} @keydown=${(i) => C(i, () => this._cardSelected())}><div class="card-image-wrap" slot=thumbnail><img alt=${e.title ?? r} class="thumbnail card-image" src=${e.thumbnailUrl ?? r}><div class="hover-text">${this._translations.viewDetails}</div></div><calcite-label slot=heading class="header-line-height" scale=l>${e.title}</calcite-label><p slot=description class="font-color-text-2 font-line-height font-size-size--1">${e.snippet}</p>${e.chips && e.chips.length > 0 ? o`<div slot=footer-end style="display: flex; gap: 0.5rem; justify-content: flex-end;">${this._renderChips(e.chips)}</div>` : void 0}<div slot=footer-start></div></calcite-card>`;
63
71
  }
64
72
  }
65
- h("solution-details-card", C);
73
+ h("solution-details-card", w);
66
74
  export {
67
- C as SolutionDetailsCard
75
+ w as SolutionDetailsCard
68
76
  };
@@ -1,5 +1,6 @@
1
1
  import "@esri/calcite-components/components/calcite-chip";
2
2
  import "@esri/calcite-components/components/calcite-tooltip";
3
+ import "../solutions-deployed-list/index.js";
3
4
  import "@esri/calcite-components/components/calcite-card";
4
5
  import "@esri/calcite-components/components/calcite-label";
5
6
  export * from "./customElement.js";
@@ -9,7 +9,7 @@ import { css as R, html as l } from "lit";
9
9
  import { request as T, getWorkflowBaseURL as P, getWorkflowManagerAuthorized as A, sanitizeHTML as _, getItemDataAsJson as O, getItem as U, getPropWithDefault as $, getProp as f, setCreateProp as N } from "@esri/solution-common";
10
10
  import { E as m, g as x, T as g, z as F, A as H } from "../../chunks/interfaces.js";
11
11
  import { _findExistingItem as V } from "@esri/solution-deployer";
12
- import { l as z, m as b, n as B, h as Y } from "../../chunks/helpers.js";
12
+ import { m as z, n as b, o as B, h as Y } from "../../chunks/helpers.js";
13
13
  import { a as M, g as G } from "../../chunks/common.js";
14
14
  import "../../chunks/solution-deploy-dialog.js";
15
15
  import "../solution-snapshot-gallery/customElement.js";
@@ -1,6 +1,7 @@
1
1
  /// <reference path="../../index.d.ts" />
2
2
  import type { ISolutionItemHover, ISolutionItemSelected, ISolutionTypeHover, ITemplateInfo } from "../../utils/interfaces.js";
3
3
  import type { PublicLitElement as LitElement } from "@arcgis/lumina";
4
+ import type { DependencyItem } from "../../utils/getRelatedInfos.js";
4
5
  import type { T9nMeta } from "@arcgis/lumina/controllers";
5
6
 
6
7
  export abstract class SolutionItemAccordion extends LitElement {
@@ -16,15 +17,17 @@ export abstract class SolutionItemAccordion extends LitElement {
16
17
  openDetails: string;
17
18
  solutionsTemplates: string;
18
19
  usedInAnotherSolution: string;
20
+ itemUsedInOtherSolutions: string;
19
21
  } & T9nMeta<{
20
22
  usedInOtherSolutionsDeleteWarning: string;
21
23
  noPrivilegeToManage: string;
22
24
  openDetails: string;
23
25
  solutionsTemplates: string;
24
26
  usedInAnotherSolution: string;
27
+ itemUsedInOtherSolutions: string;
25
28
  }>;
26
- /** string[]: List of items that have relationship dependencies outside of this solution */
27
- accessor itemRelationshipDependencies: string[];
29
+ /** DependencyItem[]: List of items that have relationship dependencies outside of this solution */
30
+ accessor itemRelationshipDependencies: DependencyItem[];
28
31
  /**
29
32
  * 'action' | 'item': Specifies the type of link that will be used for deployed items.
30
33
  * 'item' the items title will be underlined and clicking anywhere on the list item will open the items details page
@@ -1,15 +1,17 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as a } from "../../chunks/runtime.js";
3
- import { u as c } from "../../chunks/useT9n.js";
4
- import { css as d, html as o, nothing as h } from "lit";
5
- import { LitElement as p, createEvent as l, safeStyleMap as u } from "@arcgis/lumina";
6
- import { c as m } from "../../chunks/deployAppContexts.js";
7
- import { useContextConsumer as f } from "@arcgis/lumina/context";
8
- const g = 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 y extends p {
2
+ import { c as h } from "../../chunks/runtime.js";
3
+ import { u as p } from "../../chunks/useT9n.js";
4
+ import { css as u, html as o, nothing as m } from "lit";
5
+ import { LitElement as g, createEvent as l, safeStyleMap as y } from "@arcgis/lumina";
6
+ import { c as f } from "../../chunks/deployAppContexts.js";
7
+ import { useContextConsumer as _ } from "@arcgis/lumina/context";
8
+ import * as T from "@esri/solution-common";
9
+ import { s as x } from "../../chunks/helpers.js";
10
+ const v = u`: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)}`;
11
+ class w extends g {
10
12
  constructor() {
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 = f({
12
- context: m,
13
+ super(...arguments), this.itemRelationshipDependencies = [], this.linkType = "item", this.listSelectionMode = "none", this.reuseWarning = "", this.templateInfos = [], this.typeKeywords = [], this.usageContext = "content", this._canDeletePermission = !1, this._dependencyTooltipContent = "", this._sortedTemplateInfos = [], this._translations = p({ name: "solution-item-accordion", blocking: !0 }), this._configContextConsumer = _({
14
+ context: f,
13
15
  subscribe: !0
14
16
  }), this._sortOrder = [
15
17
  "Hub Site Application",
@@ -47,10 +49,10 @@ class y extends p {
47
49
  ], this.solutionItemHover = l(), this.solutionItemSelect = l(), this.solutionTypeHover = l();
48
50
  }
49
51
  static {
50
- this.properties = { itemRelationshipDependencies: 0, linkType: 1, listSelectionMode: 1, reuseWarning: 1, templateInfos: 0, typeKeywords: 0, usageContext: 1, _canDeletePermission: 16, _sortedTemplateInfos: 16, _translations: 16 };
52
+ this.properties = { itemRelationshipDependencies: 0, linkType: 1, listSelectionMode: 1, reuseWarning: 1, templateInfos: 0, typeKeywords: 0, usageContext: 1, _canDeletePermission: 16, _dependencyTooltipContent: 16, _sortedTemplateInfos: 16, _translations: 16 };
51
53
  }
52
54
  static {
53
- this.styles = g;
55
+ this.styles = v;
54
56
  }
55
57
  willUpdate(e) {
56
58
  e.has("templateInfos") && (this.hasUpdated || this.templateInfos?.length > 0) && this.templateInfosWatchHandler();
@@ -124,7 +126,7 @@ class y extends p {
124
126
  }
125
127
  _getListItem(e) {
126
128
  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=${() => {
129
+ return o`<calcite-list-item id=${e.id ?? m} @mouseenter=${() => this.solutionItemHover.emit({ itemId: e.id, entering: !0 })} @mouseleave=${() => this.solutionItemHover.emit({ itemId: e.id, entering: !1 })} @calciteListItemSelect=${() => {
128
130
  this._deselectOthers(e.id), this.solutionItemSelect.emit({ itemId: e.id, selected: !0 }), i && !t && window.open(e.url, "_blank");
129
131
  }} .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
132
  }
@@ -149,38 +151,46 @@ class y extends p {
149
151
  }
150
152
  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
153
  }
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 style=${u({ "--calcite-chip-icon-color": i === "info" ? "var(--calcite-color-status-info)" : "var(--calcite-color-status-danger)" })}>${e}</calcite-chip>`;
154
+ _getWarningChip(e, i, t, s) {
155
+ const n = i === "info" ? "var(--calcite-color-status-info)" : "var(--calcite-color-status-danger)";
156
+ return o`<div slot=actions-end><calcite-chip .icon=${i === "info" ? "information" : "exclamation-mark-triangle"} .id=${t + "-warning"} kind=neutral .label=${e} scale=s style=${y({ "--calcite-chip-icon-color": n, cursor: s && s.length > 0 ? "pointer" : "default" })}>${e}</calcite-chip>${s && s.length > 0 ? o`<calcite-tooltip class=solution-list-item-content placement=bottom .referenceElement=${`${t}-warning`} scale=s @calciteTooltipBeforeOpen=${async () => {
157
+ const a = {
158
+ q: s.map((d) => `id:${d.dependencyItemId}`).join(" OR "),
159
+ authentication: this._configContextConsumer.value?.userSession,
160
+ pagingParam: { start: 1, num: 100 }
161
+ }, c = await T.searchItems(a);
162
+ this._dependencyTooltipContent = o`<solutions-deployed-list .cards=${x(c.results)} .listTitle=${this._translations?.itemUsedInOtherSolutions || ""}></solutions-deployed-list>`;
163
+ }}>${this._dependencyTooltipContent}</calcite-tooltip>` : null}</div>`;
154
164
  }
155
165
  _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");
166
+ const i = this._configContextConsumer.value?.userSession?.username ?? null, t = this.itemRelationshipDependencies.filter((n) => n.controlItemId === e.id), s = t.length > 0;
167
+ if (this.usageContext === "content" && s && this.reuseWarning)
168
+ return this._getWarningChip(this.reuseWarning, "info", e.id, t);
159
169
  if (this.usageContext === "rename") {
160
- const s = this._configContextConsumer.value?.authentication?.CanUpdateSolution ?? !1;
170
+ const n = this._configContextConsumer.value?.authentication?.CanUpdateSolution ?? !1;
161
171
  if (e.owner !== i)
162
- if (s) {
163
- if (t && this.reuseWarning)
164
- return this._getWarningChip(this.reuseWarning, "info");
172
+ if (n) {
173
+ if (s && this.reuseWarning)
174
+ return this._getWarningChip(this.reuseWarning, "info", e.id, t);
165
175
  } else
166
- return this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn");
167
- else if (t && this.reuseWarning)
168
- return this._getWarningChip(this.reuseWarning, "info");
176
+ return this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn", e.id);
177
+ else if (s && this.reuseWarning)
178
+ return this._getWarningChip(this.reuseWarning, "info", e.id, t);
169
179
  }
170
180
  if (this.usageContext === "delete") {
171
181
  if (e.owner !== i)
172
182
  if (this._canDeletePermission) {
173
- if (t)
174
- return this._getWarningChip(this._translations?.usedInOtherSolutionsDeleteWarning || "", "info");
183
+ if (s)
184
+ return this._getWarningChip(this._translations?.usedInOtherSolutionsDeleteWarning || "", "info", e.id);
175
185
  } else
176
- return this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn");
177
- else if (t)
178
- return this._getWarningChip(this.reuseWarning, "info");
186
+ return this._getWarningChip(this._translations?.noPrivilegeToManage || "", "warn", e.id);
187
+ else if (s)
188
+ return this._getWarningChip(this.reuseWarning, "info", e.id, t);
179
189
  }
180
190
  return "";
181
191
  }
182
192
  }
183
- a("solution-item-accordion", y);
193
+ h("solution-item-accordion", w);
184
194
  export {
185
- y as SolutionItemAccordion
195
+ w as SolutionItemAccordion
186
196
  };
@@ -6,4 +6,5 @@ import "@esri/calcite-components/components/calcite-list-item";
6
6
  import "@esri/calcite-components/components/calcite-action";
7
7
  import "@esri/calcite-components/components/calcite-tooltip";
8
8
  import "@esri/calcite-components/components/calcite-chip";
9
+ import "../solutions-deployed-list/index.js";
9
10
  export * from "./customElement.js";
@@ -35,6 +35,8 @@ export abstract class SolutionsAllPanel extends LitElement {
35
35
  * @default 'relevance'
36
36
  */
37
37
  accessor sortType: SortType;
38
+ /** Returns displayed solution ids in the same order cards are currently rendered. */
39
+ getDisplayedSolutionIds(): string[];
38
40
  /**
39
41
  * Search solutions based on key criteria
40
42
  *