@esri/solutions-components 5.1.0-next.145 → 5.1.0-next.147

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 (140) hide show
  1. package/dist/cdn/{LL647FJR.js → 2IGILR4T.js} +1 -1
  2. package/dist/cdn/{BQE6IVEF.js → 3A2YSBVB.js} +1 -1
  3. package/dist/cdn/{ZHXREM2D.js → 3KYQE6O5.js} +1 -1
  4. package/dist/cdn/{MEZL3ZHS.js → 3MRR3HKE.js} +25 -25
  5. package/dist/cdn/{QKJJHBMB.js → 42GXADY4.js} +1 -1
  6. package/dist/cdn/{L3UI7EZZ.js → 4DAGSZIC.js} +1 -1
  7. package/dist/cdn/{7ADKNWWI.js → 4FRYNYQ6.js} +1 -1
  8. package/dist/cdn/{5OFQVDNK.js → 4MAZNAHZ.js} +1 -1
  9. package/dist/cdn/{7CLM77HQ.js → 4SBOBTOR.js} +1 -1
  10. package/dist/cdn/{3V2UWENT.js → 4YCLQ3RW.js} +1 -1
  11. package/dist/cdn/{CVRBLJ5O.js → 5MPDXVRM.js} +1 -1
  12. package/dist/cdn/{ULUJKWT5.js → 6AUKNSKW.js} +1 -1
  13. package/dist/cdn/{RIHOGDUV.js → 6IUKH3E3.js} +1 -1
  14. package/dist/cdn/6K3C5JX2.js +2 -0
  15. package/dist/cdn/6VCG2ITQ.js +2 -0
  16. package/dist/cdn/{NOXANMDF.js → 757HAEJS.js} +1 -1
  17. package/dist/cdn/{P4XNRWG7.js → 7Q5BT35O.js} +1 -1
  18. package/dist/cdn/{RSCBZIAN.js → 7WIFBTQF.js} +12 -1
  19. package/dist/cdn/{I7XBRB6B.js → 7WYPODAB.js} +1 -1
  20. package/dist/cdn/AH3PJQ6A.js +2 -0
  21. package/dist/cdn/{C5ZH23YO.js → B5MBF4JC.js} +13 -13
  22. package/dist/cdn/BG4LNU44.js +2 -0
  23. package/dist/cdn/{IEN3TA4W.js → BH42V5CR.js} +1 -1
  24. package/dist/cdn/DD2Y5NOB.js +2 -0
  25. package/dist/cdn/{J5K2SIY6.js → DMM5WA5Q.js} +3 -3
  26. package/dist/cdn/{UKQPYE7U.js → DQQTSOMQ.js} +1 -1
  27. package/dist/cdn/{Y4KGXRSD.js → FWLPMS4Q.js} +1 -1
  28. package/dist/cdn/{M4II4TSX.js → G3C6IL5Y.js} +1 -1
  29. package/dist/cdn/{3DCFUYKP.js → GG4IIHQE.js} +1 -1
  30. package/dist/cdn/{MHVLVLRA.js → HYQVSB6C.js} +1 -1
  31. package/dist/cdn/I46CXTVR.js +2 -0
  32. package/dist/cdn/{A27DLHRU.js → IFONVCBL.js} +1 -1
  33. package/dist/cdn/IZSM7ZJK.js +2 -0
  34. package/dist/cdn/{MIH5YMTN.js → JMBANG5V.js} +1 -1
  35. package/dist/cdn/{G3F52QRW.js → JOAEH3CI.js} +1 -1
  36. package/dist/cdn/KETYOYXQ.js +2 -0
  37. package/dist/cdn/{GJD7AOUI.js → KH5WPLZK.js} +1 -1
  38. package/dist/cdn/{IDEOFV22.js → LTLR4VF3.js} +1 -1
  39. package/dist/cdn/{NIHPHDXG.js → LWT3JEQ6.js} +21 -52
  40. package/dist/cdn/LZDMYPQ2.js +75 -0
  41. package/dist/cdn/{Y6QJCLML.js → M3NML7ZV.js} +1 -1
  42. package/dist/cdn/NQH7ZZWD.js +2 -0
  43. package/dist/cdn/{6MOTC6CE.js → NV2DLQDN.js} +1 -1
  44. package/dist/cdn/OANAQ6HY.js +2 -0
  45. package/dist/cdn/PQL3UL3P.js +2 -0
  46. package/dist/cdn/{L6P26BYB.js → Q2DJUFVO.js} +1 -1
  47. package/dist/cdn/{LCV5GKUD.js → Q35DDH7J.js} +123 -123
  48. package/dist/cdn/QDKHYQJB.js +2 -0
  49. package/dist/cdn/{HPWNNMVU.js → QU25YPPX.js} +1 -1
  50. package/dist/cdn/{5NQNJZTE.js → RMO244NW.js} +1 -1
  51. package/dist/cdn/{HLKEBN2O.js → RRD4QUQS.js} +1 -1
  52. package/dist/cdn/RY6KZ77P.js +2 -0
  53. package/dist/cdn/{PBGG3TGN.js → RYBSWXQQ.js} +1 -1
  54. package/dist/cdn/{2UMMLVCR.js → SYQ5E5TV.js} +1 -1
  55. package/dist/cdn/U56TK45K.js +113 -0
  56. package/dist/cdn/{UM3P3Q52.js → U6JZYJ4D.js} +1 -1
  57. package/dist/cdn/UBEU6ULP.js +2 -0
  58. package/dist/cdn/{MPCJZCL5.js → UTZUXO5F.js} +2 -2
  59. package/dist/cdn/UXKH44PB.js +2 -0
  60. package/dist/cdn/{34CZ4EWR.js → V3MSUKLX.js} +6 -4
  61. package/dist/cdn/{2PUK3PST.js → W7I22AW3.js} +1 -1
  62. package/dist/cdn/{72X4E4QW.js → WC37HMOI.js} +1 -1
  63. package/dist/cdn/{RUQ4RO4T.js → WUEJANIZ.js} +1 -1
  64. package/dist/cdn/{LJY6BB64.js → X6JL6SAH.js} +1 -1
  65. package/dist/cdn/{XGYNSCTA.js → Y37QLEAM.js} +1 -1
  66. package/dist/cdn/{XGWDWPRK.js → YFJZN5K5.js} +1 -1
  67. package/dist/cdn/{6T35OGRG.js → YTU2BYBP.js} +1 -1
  68. package/dist/cdn/{5LF6C3S5.js → YWALGZAG.js} +1 -1
  69. package/dist/cdn/{QFZK4TD4.js → Z23BVIGQ.js} +1 -1
  70. package/dist/cdn/{QQXQAU33.js → ZCPVOS4Q.js} +1 -1
  71. package/dist/cdn/{F26SXWZ5.js → ZNH7LRND.js} +1 -1
  72. package/dist/cdn/{BMMIXOTR.js → ZWQWBXHR.js} +1 -1
  73. package/dist/cdn/index.js +1 -1
  74. package/dist/chunks/Auth.js +1 -1
  75. package/dist/chunks/assessBuildRequest.js +116 -0
  76. package/dist/chunks/assessUpdateRequest.js +78 -0
  77. package/dist/chunks/assistantResponse.js +12 -1
  78. package/dist/chunks/classifyIntent.js +21 -52
  79. package/dist/chunks/deployFlowController.js +1 -1
  80. package/dist/chunks/designSolution.js +6 -4
  81. package/dist/chunks/helpers.js +47 -43
  82. package/dist/chunks/interfaces.js +105 -102
  83. package/dist/chunks/solution-builder-assistant.js +185 -121
  84. package/dist/chunks/solution-deploy-dialog.js +4 -4
  85. package/dist/chunks/solutions-deploy-app-nav.js +2 -2
  86. package/dist/chunks/templates.js +2 -2
  87. package/dist/chunks/updateDesign.js +1 -1
  88. package/dist/components/arcgis-solutions-assistant/customElement.js +340 -278
  89. package/dist/components/arcgis-solutions-assistant/index.js +1 -0
  90. package/dist/components/card-manager/customElement.js +8 -8
  91. package/dist/components/create-feature/customElement.js +107 -113
  92. package/dist/components/crowdsource-reporter/customElement.js +1 -1
  93. package/dist/components/layer-table/customElement.d.ts +3 -0
  94. package/dist/components/layer-table/customElement.js +110 -100
  95. package/dist/components/solution-configure-titles/customElement.js +11 -10
  96. package/dist/components/solution-delete-dialog/customElement.js +9 -8
  97. package/dist/components/solution-deploy-dialog/customElement.d.ts +6 -2
  98. package/dist/components/solution-deployed-card-panel/customElement.js +40 -37
  99. package/dist/components/solution-details-card/customElement.js +1 -1
  100. package/dist/components/solution-details-panel/customElement.js +78 -64
  101. package/dist/components/solution-item-diagram/customElement.js +321 -285
  102. package/dist/components/solution-resource-card/customElement.js +1 -1
  103. package/dist/components/solution-snapshot-gallery/customElement.js +1 -1
  104. package/dist/components/solutions-all-panel/customElement.js +5 -5
  105. package/dist/components/solutions-deploy-app/customElement.js +13 -15
  106. package/dist/components/solutions-deployed-panel/customElement.js +7 -7
  107. package/dist/components/solutions-deployed-shell/customElement.js +1 -1
  108. package/dist/components/solutions-filter-panel/customElement.js +1 -1
  109. package/dist/components/solutions-searchsort-toolbar/customElement.js +1 -1
  110. package/dist/docs/api.json +1 -1
  111. package/dist/docs/docs.json +1 -1
  112. package/dist/docs/vscode.html-custom-data.json +1 -1
  113. package/dist/docs/web-types.json +1 -1
  114. package/dist/solutions-components_commit.txt +5 -8
  115. package/dist/types/lumina.d.ts +1 -0
  116. package/dist/types/preact.d.ts +1 -0
  117. package/dist/types/react.d.ts +1 -0
  118. package/dist/types/stencil.d.ts +1 -0
  119. package/package.json +1 -1
  120. package/dist/cdn/25NZZKXC.js +0 -2
  121. package/dist/cdn/3JQ2RXVJ.js +0 -2
  122. package/dist/cdn/4JVDUPVW.js +0 -2
  123. package/dist/cdn/54AE7WD2.js +0 -2
  124. package/dist/cdn/56A5UMZG.js +0 -9
  125. package/dist/cdn/AZN2E5DL.js +0 -2
  126. package/dist/cdn/DFZZNKPK.js +0 -76
  127. package/dist/cdn/G3FTF6WH.js +0 -2
  128. package/dist/cdn/KDNGZ47C.js +0 -2
  129. package/dist/cdn/NIYB3TEW.js +0 -2
  130. package/dist/cdn/PBMTIFFX.js +0 -2
  131. package/dist/cdn/PECGJO2P.js +0 -2
  132. package/dist/cdn/Q5TICZRX.js +0 -15
  133. package/dist/cdn/QGCF64WY.js +0 -2
  134. package/dist/cdn/VO53567V.js +0 -2
  135. package/dist/cdn/WKS3TKDC.js +0 -2
  136. package/dist/cdn/YVIEKHQQ.js +0 -2
  137. package/dist/cdn/Z3B5KW2S.js +0 -2
  138. package/dist/chunks/initialAssessment.js +0 -79
  139. package/dist/chunks/responseOptionsBuilderExclusion.js +0 -12
  140. package/dist/chunks/responseOptionsDefault.js +0 -18
@@ -1,371 +1,379 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as D } from "../../chunks/runtime.js";
3
- import { css as B, html as C } from "lit";
4
- import { u as z } from "../../chunks/useT9n.js";
5
- import { LitElement as $ } from "@arcgis/lumina";
6
- import { createRef as k, ref as I } from "lit-html/directives/ref.js";
7
- import * as d from "gojs";
8
- import { a as A } from "../../chunks/getItemIcon.js";
2
+ import { c as E } from "../../chunks/runtime.js";
3
+ import { u as B } from "../../chunks/useT9n.js";
4
+ import { LitElement as A } from "@arcgis/lumina";
5
+ import { css as $, html as O } from "lit";
6
+ import { createRef as b, ref as T } from "lit-html/directives/ref.js";
7
+ import * as s from "gojs";
8
+ import { a as P } from "../../chunks/getItemIcon.js";
9
9
  import "../solution-item-accordion/customElement.js";
10
- const P = B`#filter-bar{background-color:var(--calcite-color-surface-2);position:absolute;top:16px;right:196px;z-index:100;box-shadow:var(--calcite-shadow-sm)}#filteredViewButtonDiv{padding:8px}#filteredViewButtonLabel{--calcite-label-margin-bottom: 0}#graph-navigation-bar{background-color:var(--calcite-color-surface-2);position:absolute;top:16px;right:16px;z-index:100}#graph-navigation-controls{position:absolute;top:0;right:0;box-shadow:var(--calcite-shadow-sm)}.z-index-1{z-index:1}#diagram-panel{--calcite-panel-space: 0px}#diagram-shell-panel{--calcite-color-surface-1: var(--calcite-color-surface-2);padding:16px}`, _ = 15, V = 15, H = 10, u = new d.Size(220, 48), O = 1, G = 8, S = new d.Size(48, 48), R = new d.Size(16, 16), v = new d.Size(153, 17), M = '400 0.75rem "Avenir Next", Avenir, "Helvetica Neue", sans-serif', F = '500 0.75rem "Avenir Next", Avenir, "Helvetica Neue", sans-serif', K = "val(--calcite-color-surface-1)", W = p("--calcite-color-border-1"), N = p("--calcite-color-surface-2"), g = p("--calcite-color-text-1"), T = p("--calcite-color-border-input"), j = p("--calcite-color-surface-2"), f = 1, L = 0.3, w = 1, b = 0.2, Z = 1;
11
- function q(n) {
10
+ const V = $`#filter-bar{background-color:var(--calcite-color-surface-2);position:absolute;top:16px;right:196px;z-index:100;box-shadow:var(--calcite-shadow-sm)}#filteredViewButtonDiv{padding:8px}#filteredViewButtonLabel{--calcite-label-margin-bottom: 0}#graph-navigation-bar{background-color:var(--calcite-color-surface-2);position:absolute;top:16px;right:16px;z-index:100}#graph-navigation-controls{position:absolute;top:0;right:0;box-shadow:var(--calcite-shadow-sm)}.z-index-1{z-index:1}#diagram-panel{--calcite-panel-space: 0px}#diagram-shell-panel{--calcite-color-surface-1: var(--calcite-color-surface-2);padding:16px}`, H = 15, G = 15, R = 10, p = new s.Size(220, 48), F = 1, M = 8, x = new s.Size(48, 48), K = new s.Size(16, 16), C = new s.Size(153, 17), W = '400 0.75rem "Avenir Next", Avenir, "Helvetica Neue", sans-serif', j = '500 0.75rem "Avenir Next", Avenir, "Helvetica Neue", sans-serif', q = "val(--calcite-color-surface-1)";
11
+ let S = "", y = "", u = "", w = "", I = "";
12
+ function Z() {
13
+ S = g("--calcite-color-border-1") || S, y = g("--calcite-color-surface-2") || y, u = g("--calcite-color-text-1") || u, w = g("--calcite-color-border-input") || w, I = g("--calcite-color-surface-2") || I;
14
+ }
15
+ const k = 1, _ = 0.3, N = 1, z = 0.2, Y = 1;
16
+ function J(o) {
17
+ Z();
12
18
  const t = document.createElement("div");
13
19
  t.style.width = "100%", t.style.height = "100%";
14
- const e = document.documentElement.dir === "rtl", a = e ? d.Spot.Right : d.Spot.Left, s = e ? "right" : "left";
15
- n.appendChild(t);
16
- const i = new d.Diagram(
20
+ const e = document.documentElement.dir === "rtl", r = e ? s.Spot.Right : s.Spot.Left, d = e ? "right" : "left";
21
+ o.appendChild(t);
22
+ const i = new s.Diagram(
17
23
  t,
18
24
  // create a Diagram for the HTML Div element
19
25
  {
20
- click: ie,
26
+ click: oe,
21
27
  // handle diagram clicks
22
- contentAlignment: d.Spot.Center,
28
+ contentAlignment: s.Spot.Center,
23
29
  // align document to the center of the viewport
24
30
  dragSelectingTool: null,
25
31
  // disable drag selection
26
32
  hoverDelay: 50,
27
33
  // milliseconds before mouse-hover displays information
28
- initialAutoScale: d.AutoScale.Uniform,
34
+ initialAutoScale: s.AutoScale.Uniform,
29
35
  // automatic zoom-to-fit
30
- layout: new d.LayeredDigraphLayout({
31
- columnSpacing: _,
32
- layerSpacing: V
36
+ layout: new s.LayeredDigraphLayout({
37
+ columnSpacing: H,
38
+ layerSpacing: G
33
39
  }),
34
- padding: H,
35
- scrollMode: d.ScrollMode.Infinite,
40
+ padding: R,
41
+ scrollMode: s.ScrollMode.Infinite,
36
42
  // allow infinite scrolling--beyond document bounds
37
43
  "toolManager.hoverDelay": 50,
38
44
  // 50 milliseconds before tooltip appears
39
- "toolManager.mouseWheelBehavior": d.WheelMode.Zoom
45
+ "toolManager.mouseWheelBehavior": s.WheelMode.Zoom
40
46
  // mouse wheel zooms instead of scrolls vertically
41
47
  }
42
48
  );
43
- i.nodeTemplate = new d.Node("Auto", {
44
- click: oe,
49
+ i.nodeTemplate = new s.Node("Auto", {
50
+ click: re,
45
51
  movable: !1,
46
- opacity: f,
47
- toolTip: new d.Adornment("Auto", {
52
+ opacity: k,
53
+ toolTip: new s.Adornment("Auto", {
48
54
  isShadowed: !0,
49
- margin: new d.Margin(12, 16, 6, 16),
55
+ margin: new s.Margin(12, 16, 6, 16),
50
56
  // top, right, bottom, left
51
57
  padding: 0,
52
58
  shadowBlur: 16,
53
- shadowColor: se(g, 0.05),
54
- shadowOffset: new d.Point(0, 0)
55
- }).add(new d.Panel("Vertical", { background: j, margin: 0 }).add(new d.TextBlock({ margin: 14, stroke: g, alignment: a, textAlign: s }).bind("text", "title")))
59
+ shadowColor: ce(u, 0.05),
60
+ shadowOffset: new s.Point(0, 0)
61
+ }).add(new s.Panel("Vertical", { background: I, margin: 0 }).add(new s.TextBlock({ margin: 14, stroke: u, alignment: r, textAlign: d }).bind("text", "title")))
56
62
  }).bind("text", "title").add(
57
- new d.Shape({
58
- desiredSize: u,
59
- fill: N,
60
- geometryString: te(
61
- u.width,
62
- u.height,
63
- G,
64
- S.width,
65
- !!N
63
+ new s.Shape({
64
+ desiredSize: p,
65
+ fill: y,
66
+ geometryString: ne(
67
+ p.width,
68
+ p.height,
69
+ M,
70
+ x.width,
71
+ !!y
66
72
  ),
67
- height: u.height,
73
+ height: p.height,
68
74
  portId: "",
69
- stroke: W,
70
- strokeWidth: O,
71
- width: u.width
75
+ stroke: S,
76
+ strokeWidth: F,
77
+ width: p.width
72
78
  })
73
79
  ).add(
74
80
  // Node content
75
- new d.Panel("Horizontal", {
76
- alignment: a,
77
- stretch: d.Stretch.Horizontal
81
+ new s.Panel("Horizontal", {
82
+ alignment: r,
83
+ stretch: s.Stretch.Horizontal
78
84
  }).add(
79
85
  // Icon panel
80
- new d.Panel("Horizontal", {
81
- alignment: a,
82
- desiredSize: S,
86
+ new s.Panel("Horizontal", {
87
+ alignment: r,
88
+ desiredSize: x,
83
89
  margin: 1
84
90
  }).add(
85
- new d.Panel("Horizontal", {
86
- alignment: d.Spot.Center,
91
+ new s.Panel("Horizontal", {
92
+ alignment: s.Spot.Center,
87
93
  margin: 16
88
94
  }).add(
89
- new d.Picture({
90
- desiredSize: R
91
- }).bind("source", "", (c) => A(c.itemType, c.itemTypeKeywords))
95
+ new s.Picture({
96
+ desiredSize: K
97
+ }).bind("source", "", (l) => P(l.itemType, l.itemTypeKeywords))
92
98
  )
93
99
  ),
94
100
  // Label
95
- new d.Panel("Horizontal", {
96
- alignment: a,
97
- margin: new d.Margin(4, 8, 0, 8)
101
+ new s.Panel("Horizontal", {
102
+ alignment: r,
103
+ margin: new s.Margin(4, 8, 0, 8)
98
104
  // top, right, bottom, left
99
105
  }).add(
100
- new d.Panel("Vertical", {}).add(
106
+ new s.Panel("Vertical", {}).add(
101
107
  // First line
102
- new d.TextBlock({
103
- alignment: a,
104
- textAlign: s,
105
- desiredSize: v,
106
- font: F,
107
- overflow: d.TextOverflow.Ellipsis,
108
- stroke: g,
109
- wrap: d.Wrap.None
108
+ new s.TextBlock({
109
+ alignment: r,
110
+ textAlign: d,
111
+ desiredSize: C,
112
+ font: j,
113
+ overflow: s.TextOverflow.Ellipsis,
114
+ stroke: u,
115
+ wrap: s.Wrap.None
110
116
  }).bind("text", "title"),
111
117
  // Second line
112
- new d.TextBlock({
113
- alignment: a,
114
- textAlign: s,
115
- desiredSize: v,
116
- font: M,
117
- overflow: d.TextOverflow.Ellipsis,
118
- stroke: g,
119
- wrap: d.Wrap.None
118
+ new s.TextBlock({
119
+ alignment: r,
120
+ textAlign: d,
121
+ desiredSize: C,
122
+ font: W,
123
+ overflow: s.TextOverflow.Ellipsis,
124
+ stroke: u,
125
+ wrap: s.Wrap.None
120
126
  }).bind("text", "itemTypeForDisplay")
121
127
  )
122
128
  )
123
129
  )
124
- ), i.commandHandler.zoomFactor = 1.05, i.setDivBackground(K);
125
- const o = i.toolManager.clickSelectingTool;
126
- o.standardMouseSelect = function() {
130
+ ), i.commandHandler.zoomFactor = 1.05, i.setDivBackground(q);
131
+ const n = i.toolManager.clickSelectingTool;
132
+ n.standardMouseSelect = function() {
127
133
  };
128
- const r = i.toolManager.draggingTool;
129
- return r.isEnabled = !1, i.linkTemplate = new d.Link({
134
+ const a = i.toolManager.draggingTool;
135
+ return a.isEnabled = !1, i.linkTemplate = new s.Link({
130
136
  corner: 5,
131
137
  movable: !1,
132
- routing: d.Routing.Orthogonal,
138
+ routing: s.Routing.Orthogonal,
133
139
  selectable: !1
134
140
  }).add(
135
- new d.Shape({
141
+ new s.Shape({
136
142
  // the link path shape
137
- opacity: w,
138
- stroke: T
143
+ opacity: N,
144
+ stroke: w
139
145
  }),
140
- new d.Shape({
146
+ new s.Shape({
141
147
  // the 'to' arrowhead
142
- fill: T,
143
- opacity: w,
148
+ fill: w,
149
+ opacity: N,
144
150
  stroke: null,
145
151
  toArrow: "Standard"
146
152
  })
147
153
  ), i;
148
154
  }
149
- function m(n, t) {
150
- n.model = new d.GraphLinksModel(t.nodes, t.links, {
155
+ function m(o, t) {
156
+ o.model = new s.GraphLinksModel(t.nodes, t.links, {
151
157
  linkFromPortIdProperty: "fromPort",
152
158
  linkToPortIdProperty: "toPort"
153
159
  });
154
160
  }
155
- function Y(n, t, e, a = !0) {
156
- if (a) {
157
- const c = ne(n, e);
158
- c.addEventListener(
161
+ function Q(o, t, e, r = !0) {
162
+ if (r) {
163
+ const l = ae(o, e);
164
+ l.addEventListener(
159
165
  "calciteSwitchChange",
160
- () => document.dispatchEvent(new CustomEvent("filteredViewChanged", { detail: c.checked }))
166
+ () => document.dispatchEvent(new CustomEvent("filteredViewChanged", { detail: l.checked }))
161
167
  );
162
168
  }
163
- const { resetButton: s, centerButton: i, zoomInButton: o, zoomOutButton: r } = ae(n, e);
164
- s.addEventListener("click", () => de(t)), i.addEventListener("click", () => t.zoomToFit()), o.addEventListener("click", () => t.commandHandler.increaseZoom()), r.addEventListener("click", () => t.commandHandler.decreaseZoom());
169
+ const { resetButton: d, centerButton: i, zoomInButton: n, zoomOutButton: a } = se(o, e);
170
+ d.addEventListener("click", () => le(t)), i.addEventListener("click", () => t.zoomToFit()), n.addEventListener("click", () => t.commandHandler.increaseZoom()), a.addEventListener("click", () => t.commandHandler.decreaseZoom());
165
171
  }
166
- function J(n, t, e) {
167
- const a = q(n);
168
- return m(a, t), Y(n, a, e), a;
172
+ function U(o, t, e) {
173
+ const r = J(o);
174
+ return m(r, t), Q(o, r, e), r;
169
175
  }
170
- function E(n) {
176
+ function D(o) {
171
177
  const t = /* @__PURE__ */ new Set(), e = /* @__PURE__ */ new Set();
172
- function a(i) {
178
+ function r(i) {
173
179
  i.findLinksInto().each(
174
- (o) => {
175
- e.add(o);
176
- const r = o.fromNode;
177
- r && !t.has(r) && (t.add(r), a(r));
180
+ (n) => {
181
+ e.add(n);
182
+ const a = n.fromNode;
183
+ a && !t.has(a) && (t.add(a), r(a));
178
184
  }
179
185
  );
180
186
  }
181
- a(n);
182
- function s(i) {
187
+ r(o);
188
+ function d(i) {
183
189
  i.findLinksOutOf().each(
184
- (o) => {
185
- e.add(o);
186
- const r = o.toNode;
187
- r && !t.has(r) && (t.add(r), s(r));
190
+ (n) => {
191
+ e.add(n);
192
+ const a = n.toNode;
193
+ a && !t.has(a) && (t.add(a), d(a));
188
194
  }
189
195
  );
190
196
  }
191
- return s(n), { connectedNodes: t, connectedLinks: e };
197
+ return d(o), { connectedNodes: t, connectedLinks: e };
192
198
  }
193
- function Q(n, t = !1, e) {
194
- const a = [], s = n.map((o) => {
195
- if (o.type !== "Group") {
196
- const r = ee(o);
197
- return X(o, r, t, e);
199
+ function X(o, t = !1, e) {
200
+ const r = [], d = o.map((n) => {
201
+ if (n.type !== "Group") {
202
+ const a = ie(n);
203
+ return te(n, a, t, e);
198
204
  } else {
199
- a.push(o.id);
205
+ r.push(n.id);
200
206
  return;
201
207
  }
202
- }).filter((o) => o !== void 0), i = [];
203
- return s.forEach((o) => {
204
- (n.find((c) => c.id === o.itemId)?.dependencies || []).forEach((c) => {
205
- const h = s.find((l) => l?.itemId === c);
208
+ }).filter((n) => n !== void 0), i = [];
209
+ return d.forEach((n) => {
210
+ (o.find((l) => l.id === n.itemId)?.dependencies || []).forEach((l) => {
211
+ const h = d.find((c) => c?.itemId === l);
206
212
  h && i.push({
207
213
  from: h.key,
208
- fromSpot: d.Spot.AllSides,
209
- to: o.key,
210
- toSpot: d.Spot.AllSides
214
+ fromSpot: s.Spot.AllSides,
215
+ to: n.key,
216
+ toSpot: s.Spot.AllSides
211
217
  });
212
218
  });
213
- }), { nodes: s, links: i, groupPseudoNodes: a };
219
+ }), { nodes: d, links: i, groupPseudoNodes: r };
214
220
  }
215
- function U(n, t, e, a = !0) {
216
- const s = n.diagram;
217
- if (!s)
221
+ function ee(o, t, e, r = !0) {
222
+ const d = o.diagram;
223
+ if (!d)
218
224
  return;
219
225
  const i = {};
220
- if (a) {
221
- for (const o of s.nodes)
222
- i[o.key] = o === n ? f : L;
223
- for (const o of s.links) {
224
- const r = `${o.fromNode?.key}-${o.toNode?.key}`;
225
- i[r] = b;
226
+ if (r) {
227
+ for (const n of d.nodes)
228
+ i[n.key] = n === o ? k : _;
229
+ for (const n of d.links) {
230
+ const a = `${n.fromNode?.key}-${n.toNode?.key}`;
231
+ i[a] = z;
226
232
  }
227
233
  {
228
- const { connectedNodes: o, connectedLinks: r } = E(n);
229
- for (const c of o)
230
- i[c.key] = f;
231
- for (const c of r) {
232
- const h = `${c.fromNode?.key}-${c.toNode?.key}`;
233
- i[h] = Z;
234
+ const { connectedNodes: n, connectedLinks: a } = D(o);
235
+ for (const l of n)
236
+ i[l.key] = k;
237
+ for (const l of a) {
238
+ const h = `${l.fromNode?.key}-${l.toNode?.key}`;
239
+ i[h] = Y;
234
240
  }
235
241
  }
236
242
  }
237
- if (e && (e.adornedObject = n), a) {
238
- const o = new d.Animation();
239
- o.duration = 1;
240
- for (const r of s.nodes)
241
- o.add(r, "opacity", r.opacity, i[r.key]);
242
- for (const r of s.links) {
243
- const c = `${r.fromNode?.key}-${r.toNode?.key}`;
244
- o.add(r, "opacity", r.opacity, i[c]);
243
+ if (e && (e.adornedObject = o), r) {
244
+ const n = new s.Animation();
245
+ n.duration = 1;
246
+ for (const a of d.nodes)
247
+ n.add(a, "opacity", a.opacity, i[a.key]);
248
+ for (const a of d.links) {
249
+ const l = `${a.fromNode?.key}-${a.toNode?.key}`;
250
+ n.add(a, "opacity", a.opacity, i[l]);
245
251
  }
246
- o.start();
252
+ n.start();
247
253
  }
248
254
  }
249
- function x(n, t, e, a, s = !0) {
250
- if (n.length === 0)
255
+ function L(o, t, e, r, d = !0) {
256
+ if (o.length === 0)
251
257
  return;
252
258
  const i = t[0].diagram;
253
259
  if (!i)
254
260
  return;
255
- const o = {};
256
- if (s) {
257
- for (const r of i.nodes) {
258
- const c = n.includes(r.key);
259
- o[r.key] = !e || c ? f : L;
261
+ const n = {};
262
+ if (d) {
263
+ for (const a of i.nodes) {
264
+ const l = o.includes(a.key);
265
+ n[a.key] = !e || l ? k : _;
260
266
  }
261
- for (const r of i.links) {
262
- const c = `${r.fromNode?.key}-${r.toNode?.key}`;
263
- o[c] = e ? b : w;
267
+ for (const a of i.links) {
268
+ const l = `${a.fromNode?.key}-${a.toNode?.key}`;
269
+ n[l] = e ? z : N;
264
270
  }
265
271
  }
266
- if (Object.keys(a).forEach((r) => {
267
- a[r].adornedObject = null;
268
- }), s) {
269
- const r = new d.Animation();
270
- r.duration = 1;
271
- for (const c of i.nodes)
272
- r.add(c, "opacity", c.opacity, o[c.key]);
273
- for (const c of i.links) {
274
- const h = `${c.fromNode?.key}-${c.toNode?.key}`;
275
- r.add(c, "opacity", c.opacity, o[h]);
272
+ if (Object.keys(r).forEach((a) => {
273
+ r[a].adornedObject = null;
274
+ }), d) {
275
+ const a = new s.Animation();
276
+ a.duration = 1;
277
+ for (const l of i.nodes)
278
+ a.add(l, "opacity", l.opacity, n[l.key]);
279
+ for (const l of i.links) {
280
+ const h = `${l.fromNode?.key}-${l.toNode?.key}`;
281
+ a.add(l, "opacity", l.opacity, n[h]);
276
282
  }
277
- r.start();
283
+ a.start();
278
284
  }
279
285
  }
280
- function X(n, t, e = !1, a) {
286
+ function te(o, t, e = !1, r) {
281
287
  return {
282
288
  key: t,
283
- title: n.title,
284
- itemId: n.id,
285
- itemType: n.type,
286
- itemTypeForDisplay: re(n.type, n.typeKeywords),
287
- itemTypeKeywords: n.typeKeywords,
288
- group: n.type,
289
- url: e ? `${a}?id=${n.id}` : void 0
289
+ title: o.title,
290
+ itemId: o.id,
291
+ itemType: o.type,
292
+ itemTypeForDisplay: de(o.type, o.typeKeywords),
293
+ itemTypeKeywords: o.typeKeywords,
294
+ group: o.type,
295
+ url: e ? `${r}?id=${o.id}` : void 0
290
296
  };
291
297
  }
292
- function ee(n) {
293
- return n.id;
298
+ function ie(o) {
299
+ return o.id;
294
300
  }
295
- function te(n, t, e, a = 0, s = !1) {
301
+ function ne(o, t, e, r = 0, d = !1) {
296
302
  let i = "";
297
- s && (i += "F");
298
- const o = n - 2 * e, r = t - 2 * e;
299
- return i += " M0 0", i += ` h${o}`, i += ` a${e} ${e} 0 0 1 ${e} ${e}`, i += ` v${r}`, i += ` a${e} ${e} 0 0 1 ${-e} ${e}`, i += ` h${-o}`, i += ` a${e} ${e} 0 0 1 ${-e} ${-e}`, i += ` v${-r}`, i += ` a${e} ${e} 0 0 1 ${e} ${-e}`, a > 0 && (i += ` M${a - e} 0 v${t}`), i;
303
+ d && (i += "F");
304
+ const n = o - 2 * e, a = t - 2 * e;
305
+ return i += " M0 0", i += ` h${n}`, i += ` a${e} ${e} 0 0 1 ${e} ${e}`, i += ` v${a}`, i += ` a${e} ${e} 0 0 1 ${-e} ${e}`, i += ` h${-n}`, i += ` a${e} ${e} 0 0 1 ${-e} ${-e}`, i += ` v${-a}`, i += ` a${e} ${e} 0 0 1 ${e} ${-e}`, r > 0 && (i += ` M${r - e} 0 v${t}`), i;
300
306
  }
301
- function ie() {
307
+ function oe() {
302
308
  document.dispatchEvent(new CustomEvent("clickInDiagram"));
303
309
  }
304
- function oe(n, t) {
310
+ function re(o, t) {
305
311
  const e = t.part;
306
- e instanceof d.Node && (e.selectionAdorned = !1, document.dispatchEvent(new CustomEvent("clickOnNode", { detail: e })));
312
+ e instanceof s.Node && (e.selectionAdorned = !1, document.dispatchEvent(new CustomEvent("clickOnNode", { detail: e })));
307
313
  }
308
- function ne(n, t) {
314
+ function ae(o, t) {
309
315
  const e = document.createElement("calcite-switch");
310
316
  e.id = "filteredViewButton", e.label = t.filteredView;
311
- const a = document.createElement("calcite-label");
312
- a.id = "filteredViewButtonLabel", a.setAttribute("layout", "inline"), a.innerHTML = t.filteredView, a.appendChild(e);
313
- const s = document.createElement("div");
314
- s.id = "filteredViewButtonDiv", s.appendChild(a);
317
+ const r = document.createElement("calcite-label");
318
+ r.id = "filteredViewButtonLabel", r.setAttribute("layout", "inline"), r.innerHTML = t.filteredView, r.appendChild(e);
319
+ const d = document.createElement("div");
320
+ d.id = "filteredViewButtonDiv", d.appendChild(r);
315
321
  const i = document.createElement("calcite-action-bar");
316
- i.id = "filter-bar-controls", i.layout = "horizontal", i.expandDisabled = !0, i.appendChild(s);
317
- const o = document.createElement("div");
318
- return o.id = "filter-bar", n.appendChild(o), o.appendChild(i), e;
322
+ i.id = "filter-bar-controls", i.layout = "horizontal", i.expandDisabled = !0, i.appendChild(d);
323
+ const n = document.createElement("div");
324
+ return n.id = "filter-bar", o.appendChild(n), n.appendChild(i), e;
319
325
  }
320
- function ae(n, t) {
326
+ function se(o, t) {
321
327
  const e = document.createElement("calcite-action");
322
328
  e.icon = "reset", e.id = "showHideGrayedOutButton", e.text = t.reset;
323
- const a = document.createElement("calcite-tooltip");
324
- a.id = "resetButtonTooltip", a.innerHTML = t.reset, a.overlayPositioning = "fixed", a.placement = "bottom", a.referenceElement = e.id;
325
- const s = document.createElement("calcite-action");
326
- s.icon = "zoom-to-object", s.id = "centerButton", s.text = t.centerDiagram;
327
- const i = document.createElement("calcite-tooltip");
328
- i.id = "centerButtonTooltip", i.innerHTML = t.centerDiagram, i.overlayPositioning = "fixed", i.placement = "bottom", i.referenceElement = s.id;
329
- const o = document.createElement("calcite-action");
330
- o.icon = "plus", o.id = "zoomInButton", o.text = t.zoomIn;
331
329
  const r = document.createElement("calcite-tooltip");
332
- r.id = "zoomInButtonTooltip", r.innerHTML = t.zoomIn, r.overlayPositioning = "fixed", r.placement = "bottom", r.referenceElement = o.id;
333
- const c = document.createElement("calcite-action");
334
- c.appearance = "solid", c.icon = "minus", c.id = "zoomOutButton", c.text = t.zoomOut;
330
+ r.id = "resetButtonTooltip", r.innerHTML = t.reset, r.overlayPositioning = "fixed", r.placement = "bottom", r.referenceElement = e.id;
331
+ const d = document.createElement("calcite-action");
332
+ d.icon = "zoom-to-object", d.id = "centerButton", d.text = t.centerDiagram;
333
+ const i = document.createElement("calcite-tooltip");
334
+ i.id = "centerButtonTooltip", i.innerHTML = t.centerDiagram, i.overlayPositioning = "fixed", i.placement = "bottom", i.referenceElement = d.id;
335
+ const n = document.createElement("calcite-action");
336
+ n.icon = "plus", n.id = "zoomInButton", n.text = t.zoomIn;
337
+ const a = document.createElement("calcite-tooltip");
338
+ a.id = "zoomInButtonTooltip", a.innerHTML = t.zoomIn, a.overlayPositioning = "fixed", a.placement = "bottom", a.referenceElement = n.id;
339
+ const l = document.createElement("calcite-action");
340
+ l.appearance = "solid", l.icon = "minus", l.id = "zoomOutButton", l.text = t.zoomOut;
335
341
  const h = document.createElement("calcite-tooltip");
336
- h.id = "zoomOutButtonTooltip", h.innerHTML = t.zoomOut, h.overlayPositioning = "fixed", h.placement = "bottom", h.referenceElement = c.id;
337
- const l = document.createElement("calcite-action-bar");
338
- l.id = "graph-navigation-controls", l.layout = "horizontal", l.expandDisabled = !0, l.appendChild(e), l.appendChild(a), l.appendChild(s), l.appendChild(i), l.appendChild(o), l.appendChild(r), l.appendChild(c), l.appendChild(h);
339
- const y = document.createElement("div");
340
- return y.id = "graph-navigation-bar", n.appendChild(y), y.appendChild(l), { resetButton: e, centerButton: s, zoomInButton: o, zoomOutButton: c };
342
+ h.id = "zoomOutButtonTooltip", h.innerHTML = t.zoomOut, h.overlayPositioning = "fixed", h.placement = "bottom", h.referenceElement = l.id;
343
+ const c = document.createElement("calcite-action-bar");
344
+ c.id = "graph-navigation-controls", c.layout = "horizontal", c.expandDisabled = !0, c.appendChild(e), c.appendChild(r), c.appendChild(d), c.appendChild(i), c.appendChild(n), c.appendChild(a), c.appendChild(l), c.appendChild(h);
345
+ const v = document.createElement("div");
346
+ return v.id = "graph-navigation-bar", o.appendChild(v), v.appendChild(c), { resetButton: e, centerButton: d, zoomInButton: n, zoomOutButton: l };
341
347
  }
342
- function re(n, t) {
343
- let e = n;
344
- if (n === "Feature Service") {
345
- const a = t.indexOf("View Service") > -1, s = t.indexOf("Table") > -1;
346
- e = a && s ? "Table (hosted, view)" : s ? "Table (hosted)" : a ? "Feature Layer (hosted, view)" : "Feature Layer (hosted)";
348
+ function de(o, t) {
349
+ let e = o;
350
+ if (o === "Feature Service") {
351
+ const r = t.indexOf("View Service") > -1, d = t.indexOf("Table") > -1;
352
+ e = r && d ? "Table (hosted, view)" : d ? "Table (hosted)" : r ? "Feature Layer (hosted, view)" : "Feature Layer (hosted)";
347
353
  }
348
- return n === "Web Mapping Application" && (e = t.indexOf("configurableApp") > -1 ? "Instant App" : e), e = n === "Geoprocessing Service" ? "Tool" : e, e = n === "Feed" ? "Feed (hosted)" : e, e = n === "Real Time Analytic" ? "Real Time Analytic (hosted)" : e, e = n === "Big Data Analytic" ? "Big Data Analytic (hosted)" : e, e = n === "Vector Tile Service" ? "Tile Layer" : e, e;
354
+ return o === "Web Mapping Application" && (e = t.indexOf("configurableApp") > -1 ? "Instant App" : e), e = o === "Geoprocessing Service" ? "Tool" : e, e = o === "Feed" ? "Feed (hosted)" : e, e = o === "Real Time Analytic" ? "Real Time Analytic (hosted)" : e, e = o === "Big Data Analytic" ? "Big Data Analytic (hosted)" : e, e = o === "Vector Tile Service" ? "Tile Layer" : e, e;
349
355
  }
350
- function de(n) {
351
- n.zoomToFit(), document.dispatchEvent(new CustomEvent("reset"));
356
+ function le(o) {
357
+ o.zoomToFit(), document.dispatchEvent(new CustomEvent("reset"));
352
358
  }
353
- function p(n) {
359
+ function g(o) {
354
360
  const t = document.body;
355
- return getComputedStyle(t).getPropertyValue(n).trim();
361
+ return getComputedStyle(t).getPropertyValue(o).trim();
356
362
  }
357
- function se(n, t) {
358
- if (n = n.replace(/^#/, ""), n.length === 3 && (n = n.split("").map((i) => i + i).join("")), n.length !== 6)
363
+ function ce(o, t) {
364
+ if (o = o.replace(/^#/, ""), o.length === 3 && (o = o.split("").map((i) => i + i).join("")), o.length !== 6)
359
365
  throw new Error("Invalid hex color");
360
- const e = parseInt(n.slice(0, 2), 16), a = parseInt(n.slice(2, 4), 16), s = parseInt(n.slice(4, 6), 16);
361
- return `rgba(${e}, ${a}, ${s}, ${t})`;
366
+ const e = parseInt(o.slice(0, 2), 16), r = parseInt(o.slice(2, 4), 16), d = parseInt(o.slice(4, 6), 16);
367
+ return `rgba(${e}, ${r}, ${d}, ${t})`;
362
368
  }
363
- const ce = 8, le = 15, he = ue("--calcite-color-brand"), me = 4;
364
- function ue(n) {
369
+ const he = 8, me = 15;
370
+ let f = "";
371
+ const ue = 4;
372
+ function pe(o) {
365
373
  const t = document.documentElement;
366
- return getComputedStyle(t).getPropertyValue(n).trim();
374
+ return getComputedStyle(t).getPropertyValue(o).trim();
367
375
  }
368
- class pe {
376
+ class ge {
369
377
  /**
370
378
  * Creates a new instance of the SolutionDisplay class.
371
379
  * @param indexPanel The Calcite panel element to use as the index panel.
@@ -378,22 +386,22 @@ class pe {
378
386
  * <calcite-panel id='diagramPanel' style='display:flex;'/>
379
387
  * </calcite-shell>
380
388
  */
381
- constructor(t, e, a, s) {
382
- this.indexPanel = t, this.diagramPanel = e, this.diagramTranslations = a, this.diagramKey = s, this.currentSelectedGroupId = "", this.currentSelectedItemId = "", this.diagramNeedsRedraw = !1, this.usefilteredView = !1, this.handle_clickInDiagram = (i) => {
389
+ constructor(t, e, r, d) {
390
+ this.indexPanel = t, this.diagramPanel = e, this.diagramTranslations = r, this.diagramKey = d, this.currentSelectedGroupId = "", this.currentSelectedItemId = "", this.diagramNeedsRedraw = !1, this.usefilteredView = !1, this.handle_clickInDiagram = (i) => {
383
391
  i.stopImmediatePropagation(), (this.currentSelectedGroupId || this.currentSelectedItemId) && (this.currentSelectedGroupId = "", this.currentSelectedItemId = "", this.diagramNeedsRedraw = this.usefilteredView, this.redraw());
384
392
  }, this.handle_clickOnNode = (i) => {
385
393
  i.stopImmediatePropagation();
386
- const o = i.detail.data.key;
387
- this.redraw(o, o === this.currentSelectedItemId);
394
+ const n = i.detail.data.key;
395
+ this.redraw(n, n === this.currentSelectedItemId);
388
396
  }, this.handle_filteredViewChanged = (i) => {
389
397
  this.usefilteredView = i.detail, this.diagramNeedsRedraw = !!this.currentSelectedGroupId || !!this.currentSelectedItemId, this.redraw(this.currentSelectedItemId || this.currentSelectedGroupId);
390
398
  }, this.handle_reset = (i) => {
391
399
  i.stopImmediatePropagation(), this.reset();
392
400
  }, this.handle_solutionItemSelect = (i) => {
393
401
  i.stopImmediatePropagation();
394
- const o = i.detail.itemId;
395
- this.redraw(o, o === this.currentSelectedItemId || o === this.currentSelectedGroupId, !1);
396
- }, d.Diagram.licenseKey === "" && (d.Diagram.licenseKey = s ?? "");
402
+ const n = i.detail.itemId;
403
+ this.redraw(n, n === this.currentSelectedItemId || n === this.currentSelectedGroupId, !1);
404
+ }, s.Diagram.licenseKey === "" && (s.Diagram.licenseKey = d ?? "");
397
405
  }
398
406
  /**
399
407
  * Creates the index and diagram for the given collection of template info.
@@ -402,7 +410,7 @@ class pe {
402
410
  * @returns A promise that resolves when the index and diagram have been created.
403
411
  */
404
412
  create(t, e) {
405
- this.collection = t, this.index = document.createElement("solution-item-accordion"), this.index.linkType = "action", this.index.listSelectionMode = "single", this.index.typeKeywords = e, this.index.style.overflowY = "auto", this.indexPanel.appendChild(this.index), this.index.templateInfos = t, this.allNodesAndLinks = Q(t), this.diagram = J(
413
+ this.collection = t, this.index = document.createElement("solution-item-accordion"), this.index.linkType = "action", this.index.listSelectionMode = "single", this.index.typeKeywords = e, this.index.style.overflowY = "auto", this.indexPanel.appendChild(this.index), this.index.templateInfos = t, this.allNodesAndLinks = X(t), this.diagram = U(
406
414
  this.diagramPanel,
407
415
  this.allNodesAndLinks,
408
416
  this.diagramTranslations
@@ -410,7 +418,7 @@ class pe {
410
418
  setTimeout(() => {
411
419
  this.diagram.zoomToFit();
412
420
  }, 1e3);
413
- }), d.Link.setRoutingParameter(44, 600942), this.createNodeHighlighters(), document.addEventListener("clickInDiagram", this.handle_clickInDiagram), document.addEventListener("clickOnNode", this.handle_clickOnNode), document.addEventListener("filteredViewChanged", this.handle_filteredViewChanged), document.addEventListener("reset", this.handle_reset), this.index.addEventListener("solutionItemSelect", this.handle_solutionItemSelect);
421
+ }), s.Link.setRoutingParameter(44, 600942), this.createNodeHighlighters(), document.addEventListener("clickInDiagram", this.handle_clickInDiagram), document.addEventListener("clickOnNode", this.handle_clickOnNode), document.addEventListener("filteredViewChanged", this.handle_filteredViewChanged), document.addEventListener("reset", this.handle_reset), this.index.addEventListener("solutionItemSelect", this.handle_solutionItemSelect);
414
422
  }
415
423
  /**
416
424
  * Destroys the index and diagram; removes all event listeners.
@@ -425,29 +433,29 @@ class pe {
425
433
  */
426
434
  clearSelections(t = !0) {
427
435
  this.index.deselectAll(), t && this.index.collapseAll();
428
- const e = this.getNodesFromDiagram(this.diagram), a = e.map((s) => s.data.key);
429
- x(a, e, !1, this.diagramNodeHighlighterIndex);
436
+ const e = this.getNodesFromDiagram(this.diagram), r = e.map((d) => d.data.key);
437
+ L(r, e, !1, this.diagramNodeHighlighterIndex);
430
438
  }
431
439
  /**
432
440
  * Creates indicies into the diagram's nodes and node highlighters.
433
441
  * Rebuilds this.diagramNodeIndex and this.diagramNodeHighlighterIndex.
434
442
  */
435
443
  createNodeHighlighters() {
436
- this.diagramNodeIndex = {}, this.diagramNodeHighlighterIndex = {}, this.getNodesFromDiagram(this.diagram).forEach((e) => {
444
+ this.diagramNodeIndex = {}, this.diagramNodeHighlighterIndex = {}, f || (f = pe("--calcite-color-brand") || f), this.getNodesFromDiagram(this.diagram).forEach((e) => {
437
445
  this.diagramNodeIndex[e.data.key] = e;
438
- const a = new d.Adornment("Auto", {
446
+ const r = new s.Adornment("Auto", {
439
447
  background: "transparent",
440
448
  margin: 2
441
449
  });
442
- a.add(new d.Shape("RoundedRectangle", {
450
+ r.add(new s.Shape("RoundedRectangle", {
443
451
  fill: "transparent",
444
- parameter1: ce,
445
- parameter2: le,
446
- stroke: he,
447
- strokeWidth: me
448
- })), a.add(new d.Placeholder({
452
+ parameter1: he,
453
+ parameter2: me,
454
+ stroke: f,
455
+ strokeWidth: ue
456
+ })), r.add(new s.Placeholder({
449
457
  margin: 1
450
- })), this.diagramNodeHighlighterIndex[e.data.key] = a;
458
+ })), this.diagramNodeHighlighterIndex[e.data.key] = r;
451
459
  });
452
460
  }
453
461
  /**
@@ -465,9 +473,9 @@ class pe {
465
473
  * @returns Array of nodes in the diagram
466
474
  */
467
475
  getNodesFromDiagram(t) {
468
- const e = [], a = t.nodes.iterator;
469
- for (; a.next(); )
470
- e.push(a.value);
476
+ const e = [], r = t.nodes.iterator;
477
+ for (; r.next(); )
478
+ e.push(r.value);
471
479
  return e;
472
480
  }
473
481
  /**
@@ -476,36 +484,36 @@ class pe {
476
484
  * @param toggleSelection Whether to toggle the selection state of the item
477
485
  * @param alsoCollapseAllAccordionItems Whether to collapse all accordion items in the index
478
486
  */
479
- redraw(t = "", e = !1, a = !0) {
480
- const s = this.allNodesAndLinks.groupPseudoNodes.includes(t);
487
+ redraw(t = "", e = !1, r = !0) {
488
+ const d = this.allNodesAndLinks.groupPseudoNodes.includes(t);
481
489
  this.diagramNeedsRedraw && (m(this.diagram, this.allNodesAndLinks), this.createNodeHighlighters(), this.diagramNeedsRedraw = !1);
482
490
  let i = !1;
483
- if (this.clearSelections(a), !!t) {
484
- if (s) {
491
+ if (this.clearSelections(r), !!t) {
492
+ if (d) {
485
493
  if (this.currentSelectedItemId = "", this.currentSelectedGroupId !== t ? this.currentSelectedGroupId = t : e && (this.currentSelectedGroupId = this.currentSelectedGroupId ? "" : t, i = this.usefilteredView && !this.currentSelectedGroupId), this.currentSelectedGroupId) {
486
494
  this.usefilteredView && (m(this.diagram, this.allNodesAndLinks), this.createNodeHighlighters());
487
- const o = this.collection.filter((c) => c.id === t)[0], r = o.dependencies.map((c) => this.diagramNodeIndex[c]);
495
+ const n = this.collection.filter((l) => l.id === t)[0], a = n.dependencies.map((l) => this.diagramNodeIndex[l]);
488
496
  if (this.usefilteredView) {
489
- const c = r.map((h) => h.data);
490
- m(this.diagram, { nodes: c, links: [] });
497
+ const l = a.map((h) => h.data);
498
+ m(this.diagram, { nodes: l, links: [] });
491
499
  } else
492
- x(o.dependencies, r, !0, this.diagramNodeHighlighterIndex);
500
+ L(n.dependencies, a, !0, this.diagramNodeHighlighterIndex);
493
501
  this.index.selectItem(this.currentSelectedGroupId);
494
502
  }
495
503
  } else {
496
504
  this.currentSelectedGroupId = "", this.currentSelectedItemId !== t ? this.currentSelectedItemId = t : e && (this.currentSelectedItemId = this.currentSelectedItemId ? "" : t, i = this.usefilteredView && !this.currentSelectedItemId);
497
- let o = this.getNodeById(t);
498
- if ((!o || this.usefilteredView) && (m(this.diagram, this.allNodesAndLinks), this.createNodeHighlighters(), o = this.getNodeById(t), !o))
505
+ let n = this.getNodeById(t);
506
+ if ((!n || this.usefilteredView) && (m(this.diagram, this.allNodesAndLinks), this.createNodeHighlighters(), n = this.getNodeById(t), !n))
499
507
  return;
500
508
  if (this.currentSelectedItemId) {
501
509
  if (this.usefilteredView) {
502
- const r = E(o);
503
- r.connectedNodes.add(o);
504
- const c = Array.from(r.connectedNodes).map((l) => l.data), h = Array.from(r.connectedLinks).map((l) => l.data);
505
- if (m(this.diagram, { nodes: c, links: h }), this.createNodeHighlighters(), o = this.getNodeById(t), !o)
510
+ const a = D(n);
511
+ a.connectedNodes.add(n);
512
+ const l = Array.from(a.connectedNodes).map((c) => c.data), h = Array.from(a.connectedLinks).map((c) => c.data);
513
+ if (m(this.diagram, { nodes: l, links: h }), this.createNodeHighlighters(), n = this.getNodeById(t), !n)
506
514
  return;
507
515
  }
508
- o && setTimeout(() => U(o, !0, this.diagramNodeHighlighterIndex[t]), 1), this.index.selectItem(this.currentSelectedItemId);
516
+ n && setTimeout(() => ee(n, !0, this.diagramNodeHighlighterIndex[t]), 1), this.index.selectItem(this.currentSelectedItemId);
509
517
  }
510
518
  }
511
519
  i && this.reset();
@@ -518,34 +526,28 @@ class pe {
518
526
  this.diagramNeedsRedraw = !1, this.currentSelectedGroupId = "", this.currentSelectedItemId = "", m(this.diagram, this.allNodesAndLinks), this.createNodeHighlighters(), this.clearSelections();
519
527
  }
520
528
  }
521
- class ge extends $ {
529
+ class fe extends A {
522
530
  constructor() {
523
- super(...arguments), this.diagramKey = "", this.templateInfoGraph = [], this.typeKeywords = [], this._diagramPanel = k(), this._diagramShell = k(), this._translations = z({ name: "solution-item-diagram", blocking: !0 });
531
+ super(...arguments), this.diagramKey = "", this.templateInfoGraph = [], this.typeKeywords = [], this._diagramPanel = b(), this._diagramShell = b(), this._translations = B({ name: "solution-item-diagram", blocking: !0 }), this._pendingCreate = !1;
524
532
  }
525
533
  static {
526
534
  this.properties = { diagramKey: 1, templateInfoGraph: 0, typeKeywords: 0, _diagramPanel: 16, _diagramShell: 16, _translations: 16 };
527
535
  }
528
536
  static {
529
- this.styles = P;
537
+ this.styles = V;
530
538
  }
531
- updated() {
532
- if (this.solutionDisplay && (this.solutionDisplay.dispose(), this.solutionDisplay = void 0), this.templateInfoGraph.length > 0) {
533
- const t = {
534
- centerDiagram: this._translations.graphTranslations.centerDiagram,
535
- filteredView: this._translations.graphTranslations.filteredView,
536
- reset: this._translations.graphTranslations.reset,
537
- zoomIn: this._translations.graphTranslations.zoomIn,
538
- zoomOut: this._translations.graphTranslations.zoomOut
539
- };
540
- this.solutionDisplay = new pe(this._diagramShell.value, this._diagramPanel.value, t, this.diagramKey), this.solutionDisplay.create(this.templateInfoGraph, this.typeKeywords);
539
+ updated(t) {
540
+ if (!(t.has("templateInfoGraph") || t.has("typeKeywords") || t.has("diagramKey"))) {
541
+ requestAnimationFrame(() => this._preventDiagramScrollbars());
542
+ return;
541
543
  }
542
- requestAnimationFrame(() => this._preventDiagramScrollbars());
544
+ this.solutionDisplay && (this.solutionDisplay.dispose(), this.solutionDisplay = void 0), this.templateInfoGraph.length > 0 && (this._pendingCreate = !0, this._scheduleCreate()), requestAnimationFrame(() => this._preventDiagramScrollbars());
543
545
  }
544
546
  disconnectedCallback() {
545
- super.disconnectedCallback(), this.solutionDisplay && (this.solutionDisplay.dispose(), this.solutionDisplay = void 0);
547
+ super.disconnectedCallback(), this._sizeObserver && (this._sizeObserver.disconnect(), this._sizeObserver = void 0), this._pendingCreate = !1, this.solutionDisplay && (this.solutionDisplay.dispose(), this.solutionDisplay = void 0);
546
548
  }
547
549
  render() {
548
- return C`<calcite-shell><calcite-shell-panel id=diagram-shell-panel slot=panel-start ${I(this._diagramShell)}></calcite-shell-panel><calcite-panel class="z-index-1" id=diagram-panel slot=panel-bottom ${I(this._diagramPanel)}></calcite-panel></calcite-shell>`;
550
+ return O`<calcite-shell><calcite-shell-panel id=diagram-shell-panel slot=panel-start ${T(this._diagramShell)}></calcite-shell-panel><calcite-panel class="z-index-1" id=diagram-panel slot=panel-bottom ${T(this._diagramPanel)}></calcite-panel></calcite-shell>`;
549
551
  }
550
552
  _preventDiagramScrollbars() {
551
553
  if (!this._diagramPanel.value)
@@ -556,8 +558,42 @@ class ge extends $ {
556
558
  const e = t.querySelector(".content-wrapper");
557
559
  e instanceof HTMLElement && (e.style.overflow = "hidden");
558
560
  }
561
+ _scheduleCreate() {
562
+ const t = this._diagramPanel.value, e = this._diagramShell.value;
563
+ if (!t || !e) {
564
+ requestAnimationFrame(() => this._scheduleCreate());
565
+ return;
566
+ }
567
+ const r = (d) => {
568
+ const i = d.getBoundingClientRect();
569
+ return i.width > 0 && i.height > 0;
570
+ };
571
+ if (r(t)) {
572
+ this._buildSolutionDisplay();
573
+ return;
574
+ }
575
+ this._sizeObserver && this._sizeObserver.disconnect(), this._sizeObserver = new ResizeObserver(() => {
576
+ console.log("Is this firing?", (/* @__PURE__ */ new Date()).toISOString()), this._pendingCreate && r(t) && (this._sizeObserver?.disconnect(), this._sizeObserver = void 0, this._buildSolutionDisplay());
577
+ }), this._sizeObserver.observe(t);
578
+ }
579
+ _buildSolutionDisplay() {
580
+ if (!this._pendingCreate)
581
+ return;
582
+ this._pendingCreate = !1;
583
+ const t = this._diagramShell.value, e = this._diagramPanel.value;
584
+ if (!t || !e)
585
+ return;
586
+ const r = {
587
+ centerDiagram: this._translations.graphTranslations.centerDiagram,
588
+ filteredView: this._translations.graphTranslations.filteredView,
589
+ reset: this._translations.graphTranslations.reset,
590
+ zoomIn: this._translations.graphTranslations.zoomIn,
591
+ zoomOut: this._translations.graphTranslations.zoomOut
592
+ };
593
+ this.solutionDisplay = new ge(t, e, r, this.diagramKey), this.solutionDisplay.create(this.templateInfoGraph, this.typeKeywords);
594
+ }
559
595
  }
560
- D("solution-item-diagram", ge);
596
+ E("solution-item-diagram", fe);
561
597
  export {
562
- ge as SolutionItemDiagram
598
+ fe as SolutionItemDiagram
563
599
  };