@esri/solutions-components 0.2.2 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. package/dist/assets/t9n/solution-config-modal/resources.json +22 -0
  2. package/dist/assets/t9n/solution-config-modal/resources_en.json +22 -0
  3. package/dist/cjs/calcite-action-menu_2.cjs.entry.js +18 -401
  4. package/dist/cjs/calcite-action-menu_2.cjs.entry.js.map +1 -1
  5. package/dist/cjs/calcite-action_2.cjs.entry.js +423 -71
  6. package/dist/cjs/calcite-action_2.cjs.entry.js.map +1 -1
  7. package/dist/cjs/calcite-loader.cjs.entry.js +97 -0
  8. package/dist/cjs/calcite-loader.cjs.entry.js.map +1 -0
  9. package/dist/cjs/{solution-configuration.cjs.entry.js → calcite-modal_2.cjs.entry.js} +451 -13
  10. package/dist/cjs/calcite-modal_2.cjs.entry.js.map +1 -0
  11. package/dist/cjs/{calcite-shell-panel_14.cjs.entry.js → calcite-panel_12.cjs.entry.js} +455 -709
  12. package/dist/cjs/calcite-panel_12.cjs.entry.js.map +1 -0
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/cjs/solution-config-modal.cjs.entry.js +131 -0
  15. package/dist/cjs/solution-config-modal.cjs.entry.js.map +1 -0
  16. package/dist/cjs/{solution-contents_3.cjs.entry.js → solution-contents_7.cjs.entry.js} +664 -5
  17. package/dist/cjs/solution-contents_7.cjs.entry.js.map +1 -0
  18. package/dist/cjs/{solution-store-893499a5.js → solution-store-09b3fc53.js} +4 -6
  19. package/dist/cjs/solution-store-09b3fc53.js.map +1 -0
  20. package/dist/cjs/solutions-components.cjs.js +1 -1
  21. package/dist/collection/collection-manifest.json +1 -0
  22. package/dist/collection/components/solution-config-modal/solution-config-modal.css +91 -0
  23. package/dist/collection/components/solution-config-modal/solution-config-modal.js +245 -0
  24. package/dist/collection/components/solution-config-modal/solution-config-modal.js.map +1 -0
  25. package/dist/collection/components/solution-configuration/solution-configuration.js +23 -17
  26. package/dist/collection/components/solution-configuration/solution-configuration.js.map +1 -1
  27. package/dist/collection/components/solution-item/solution-item.js +0 -2
  28. package/dist/collection/components/solution-item/solution-item.js.map +1 -1
  29. package/dist/collection/components/solution-item-details/solution-item-details.js +0 -13
  30. package/dist/collection/components/solution-item-details/solution-item-details.js.map +1 -1
  31. package/dist/collection/utils/solution-store.js +3 -5
  32. package/dist/collection/utils/solution-store.js.map +1 -1
  33. package/dist/collection/utils/solution-store.ts +3 -5
  34. package/dist/esm/buffer-tools_6.entry.js +2 -2
  35. package/dist/esm/calcite-action-bar_6.entry.js +2 -2
  36. package/dist/esm/calcite-action-menu_2.entry.js +20 -403
  37. package/dist/esm/calcite-action-menu_2.entry.js.map +1 -1
  38. package/dist/esm/calcite-action_2.entry.js +424 -72
  39. package/dist/esm/calcite-action_2.entry.js.map +1 -1
  40. package/dist/esm/calcite-combobox_3.entry.js +2 -2
  41. package/dist/esm/calcite-loader.entry.js +93 -0
  42. package/dist/esm/calcite-loader.entry.js.map +1 -0
  43. package/dist/esm/{solution-configuration.entry.js → calcite-modal_2.entry.js} +453 -16
  44. package/dist/esm/calcite-modal_2.entry.js.map +1 -0
  45. package/dist/esm/{calcite-shell-panel_14.entry.js → calcite-panel_12.entry.js} +454 -706
  46. package/dist/esm/calcite-panel_12.entry.js.map +1 -0
  47. package/dist/esm/config-layer-picker.entry.js +2 -2
  48. package/dist/esm/{interfaces-e2a2064d.js → interfaces-1bdfc3a8.js} +2 -2
  49. package/dist/esm/{interfaces-e2a2064d.js.map → interfaces-1bdfc3a8.js.map} +1 -1
  50. package/dist/esm/loader.js +1 -1
  51. package/dist/esm/{mapViewUtils-09f1e7bd.js → mapViewUtils-809947c8.js} +2 -2
  52. package/dist/esm/{mapViewUtils-09f1e7bd.js.map → mapViewUtils-809947c8.js.map} +1 -1
  53. package/dist/esm/public-notification.entry.js +2 -2
  54. package/dist/esm/solution-config-modal.entry.js +127 -0
  55. package/dist/esm/solution-config-modal.entry.js.map +1 -0
  56. package/dist/esm/{solution-contents_3.entry.js → solution-contents_7.entry.js} +661 -6
  57. package/dist/esm/solution-contents_7.entry.js.map +1 -0
  58. package/dist/esm/{solution-store-0c58c852.js → solution-store-d8519c64.js} +5 -7
  59. package/dist/esm/solution-store-d8519c64.js.map +1 -0
  60. package/dist/esm/solutions-components.js +1 -1
  61. package/dist/solutions-components/{p-be1ed982.entry.js → p-11068040.entry.js} +3 -3
  62. package/dist/solutions-components/{p-be1ed982.entry.js.map → p-11068040.entry.js.map} +0 -0
  63. package/dist/solutions-components/{p-659edb14.js → p-2910dd9e.js} +5 -7
  64. package/dist/{cjs/solution-store-893499a5.js.map → solutions-components/p-2910dd9e.js.map} +1 -1
  65. package/dist/solutions-components/{p-291fd295.entry.js → p-30810b45.entry.js} +3 -3
  66. package/dist/solutions-components/{p-291fd295.entry.js.map → p-30810b45.entry.js.map} +0 -0
  67. package/dist/solutions-components/p-38ddadf2.entry.js +342 -0
  68. package/dist/solutions-components/p-38ddadf2.entry.js.map +1 -0
  69. package/dist/solutions-components/{p-77c75f3a.entry.js → p-5b20090f.entry.js} +661 -6
  70. package/dist/solutions-components/p-5b20090f.entry.js.map +1 -0
  71. package/dist/solutions-components/{p-9393631c.entry.js → p-9ef1328a.entry.js} +3 -3
  72. package/dist/solutions-components/{p-9393631c.entry.js.map → p-9ef1328a.entry.js.map} +0 -0
  73. package/dist/solutions-components/{p-984cb687.entry.js → p-a1786d11.entry.js} +454 -706
  74. package/dist/solutions-components/p-a1786d11.entry.js.map +1 -0
  75. package/dist/solutions-components/{p-fe0fdd8b.js → p-c20bd963.js} +2 -2
  76. package/dist/solutions-components/{p-fe0fdd8b.js.map → p-c20bd963.js.map} +1 -1
  77. package/dist/solutions-components/p-c5721b0f.entry.js +127 -0
  78. package/dist/solutions-components/p-c5721b0f.entry.js.map +1 -0
  79. package/dist/solutions-components/{p-24d75151.entry.js → p-c818e661.entry.js} +3 -3
  80. package/dist/solutions-components/{p-24d75151.entry.js.map → p-c818e661.entry.js.map} +0 -0
  81. package/dist/solutions-components/{p-90629c1d.entry.js → p-cf59eb16.entry.js} +453 -16
  82. package/dist/solutions-components/p-cf59eb16.entry.js.map +1 -0
  83. package/dist/solutions-components/p-e405ebe8.entry.js +93 -0
  84. package/dist/solutions-components/p-e405ebe8.entry.js.map +1 -0
  85. package/dist/solutions-components/{p-77e6b03c.entry.js → p-e6fb9cde.entry.js} +3 -3
  86. package/dist/solutions-components/{p-77e6b03c.entry.js.map → p-e6fb9cde.entry.js.map} +0 -0
  87. package/dist/solutions-components/{p-97c4a268.entry.js → p-ef6f9e24.entry.js} +113 -229
  88. package/dist/solutions-components/p-ef6f9e24.entry.js.map +1 -0
  89. package/dist/solutions-components/{p-6b9dc092.js → p-f04fdb9a.js} +2 -2
  90. package/dist/solutions-components/{p-6b9dc092.js.map → p-f04fdb9a.js.map} +1 -1
  91. package/dist/solutions-components/solutions-components.esm.js +1 -1
  92. package/dist/solutions-components/utils/solution-store.ts +3 -5
  93. package/dist/solutions-components_commit.txt +8 -8
  94. package/dist/types/components/solution-config-modal/solution-config-modal.d.ts +69 -0
  95. package/dist/types/components/solution-configuration/solution-configuration.d.ts +4 -2
  96. package/dist/types/components/solution-item-details/solution-item-details.d.ts +0 -1
  97. package/dist/types/components.d.ts +43 -5
  98. package/dist/types/preact.d.ts +4 -0
  99. package/package.json +1 -1
  100. package/dist/cjs/calcite-modal.cjs.entry.js +0 -449
  101. package/dist/cjs/calcite-modal.cjs.entry.js.map +0 -1
  102. package/dist/cjs/calcite-panel_2.cjs.entry.js +0 -439
  103. package/dist/cjs/calcite-panel_2.cjs.entry.js.map +0 -1
  104. package/dist/cjs/calcite-scrim.cjs.entry.js +0 -64
  105. package/dist/cjs/calcite-scrim.cjs.entry.js.map +0 -1
  106. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js.map +0 -1
  107. package/dist/cjs/solution-configuration.cjs.entry.js.map +0 -1
  108. package/dist/cjs/solution-contents_3.cjs.entry.js.map +0 -1
  109. package/dist/esm/calcite-modal.entry.js +0 -445
  110. package/dist/esm/calcite-modal.entry.js.map +0 -1
  111. package/dist/esm/calcite-panel_2.entry.js +0 -434
  112. package/dist/esm/calcite-panel_2.entry.js.map +0 -1
  113. package/dist/esm/calcite-scrim.entry.js +0 -60
  114. package/dist/esm/calcite-scrim.entry.js.map +0 -1
  115. package/dist/esm/calcite-shell-panel_14.entry.js.map +0 -1
  116. package/dist/esm/solution-configuration.entry.js.map +0 -1
  117. package/dist/esm/solution-contents_3.entry.js.map +0 -1
  118. package/dist/esm/solution-store-0c58c852.js.map +0 -1
  119. package/dist/solutions-components/p-0fda7d9e.entry.js +0 -434
  120. package/dist/solutions-components/p-0fda7d9e.entry.js.map +0 -1
  121. package/dist/solutions-components/p-2ff754ce.entry.js +0 -257
  122. package/dist/solutions-components/p-2ff754ce.entry.js.map +0 -1
  123. package/dist/solutions-components/p-30a6199a.entry.js +0 -445
  124. package/dist/solutions-components/p-30a6199a.entry.js.map +0 -1
  125. package/dist/solutions-components/p-659edb14.js.map +0 -1
  126. package/dist/solutions-components/p-77c75f3a.entry.js.map +0 -1
  127. package/dist/solutions-components/p-90629c1d.entry.js.map +0 -1
  128. package/dist/solutions-components/p-97c4a268.entry.js.map +0 -1
  129. package/dist/solutions-components/p-984cb687.entry.js.map +0 -1
  130. package/dist/solutions-components/p-f5268b4f.entry.js +0 -60
  131. package/dist/solutions-components/p-f5268b4f.entry.js.map +0 -1
@@ -3,13 +3,448 @@
3
3
  * Licensed under the Apache License, Version 2.0
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
- import { r as registerInstance, h, H as Host, g as getElement } from './p-58c69df2.js';
7
- import { r as request, N as NODEJS_DEFAULT_REFERER_HEADER, c as cleanUrl, e as encodeQueryString, A as ArcGISAuthError, g as getProp, s as state } from './p-659edb14.js';
6
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './p-58c69df2.js';
7
+ import { f as focusElement, a as getSlotted, h as ensureId, j as isCalciteFocusable } from './p-32a67cb2.js';
8
+ import { c as createObserver } from './p-9a9955db.js';
9
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './p-5cf33602.js';
10
+ import { c as connectOpenCloseComponent, d as disconnectOpenCloseComponent } from './p-2e9ed892.js';
11
+ import { r as request, N as NODEJS_DEFAULT_REFERER_HEADER, c as cleanUrl, e as encodeQueryString, A as ArcGISAuthError, g as getProp, s as state } from './p-2910dd9e.js';
8
12
  import { g as getLocaleComponentStrings } from './p-20bdf42f.js';
13
+ import './p-729708a3.js';
14
+ import './p-a80b3880.js';
9
15
  import './p-f759a6e7.js';
10
- import './p-6b9dc092.js';
16
+ import './p-f04fdb9a.js';
11
17
  import './p-3b010ce1.js';
12
18
 
19
+ /**
20
+ * Traverses the slots of the open shadowroots and returns all children matching the query.
21
+ * @param {ShadowRoot | HTMLElement} root
22
+ * @param skipNode
23
+ * @param isMatch
24
+ * @param {number} maxDepth
25
+ * @param {number} depth
26
+ * @returns {HTMLElement[]}
27
+ */
28
+ function queryShadowRoot(root, skipNode, isMatch, maxDepth = 20, depth = 0) {
29
+ let matches = [];
30
+ // If the depth is above the max depth, abort the searching here.
31
+ if (depth >= maxDepth) {
32
+ return matches;
33
+ }
34
+ // Traverses a slot element
35
+ const traverseSlot = ($slot) => {
36
+ // Only check nodes that are of the type Node.ELEMENT_NODE
37
+ // Read more here https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType
38
+ const assignedNodes = $slot.assignedNodes().filter(node => node.nodeType === 1);
39
+ if (assignedNodes.length > 0) {
40
+ return queryShadowRoot(assignedNodes[0].parentElement, skipNode, isMatch, maxDepth, depth + 1);
41
+ }
42
+ return [];
43
+ };
44
+ // Go through each child and continue the traversing if necessary
45
+ // Even though the typing says that children can't be undefined, Edge 15 sometimes gives an undefined value.
46
+ // Therefore we fallback to an empty array if it is undefined.
47
+ const children = Array.from(root.children || []);
48
+ for (const $child of children) {
49
+ // Check if the node and its descendants should be skipped
50
+ if (skipNode($child)) {
51
+ continue;
52
+ }
53
+ // If the child matches we always add it
54
+ if (isMatch($child)) {
55
+ matches.push($child);
56
+ }
57
+ if ($child.shadowRoot != null) {
58
+ matches.push(...queryShadowRoot($child.shadowRoot, skipNode, isMatch, maxDepth, depth + 1));
59
+ }
60
+ else if ($child.tagName === "SLOT") {
61
+ matches.push(...traverseSlot($child));
62
+ }
63
+ else {
64
+ matches.push(...queryShadowRoot($child, skipNode, isMatch, maxDepth, depth + 1));
65
+ }
66
+ }
67
+ return matches;
68
+ }
69
+
70
+ /**
71
+ * Returns whether the element is hidden.
72
+ * @param $elem
73
+ */
74
+ function isHidden($elem) {
75
+ return $elem.hasAttribute("hidden")
76
+ || ($elem.hasAttribute("aria-hidden") && $elem.getAttribute("aria-hidden") !== "false")
77
+ // A quick and dirty way to check whether the element is hidden.
78
+ // For a more fine-grained check we could use "window.getComputedStyle" but we don't because of bad performance.
79
+ // If the element has visibility set to "hidden" or "collapse", display set to "none" or opacity set to "0" through CSS
80
+ // we won't be able to catch it here. We accept it due to the huge performance benefits.
81
+ || $elem.style.display === `none`
82
+ || $elem.style.opacity === `0`
83
+ || $elem.style.visibility === `hidden`
84
+ || $elem.style.visibility === `collapse`;
85
+ // If offsetParent is null we can assume that the element is hidden
86
+ // https://stackoverflow.com/questions/306305/what-would-make-offsetparent-null
87
+ //|| $elem.offsetParent == null;
88
+ }
89
+ /**
90
+ * Returns whether the element is disabled.
91
+ * @param $elem
92
+ */
93
+ function isDisabled($elem) {
94
+ return $elem.hasAttribute("disabled")
95
+ || ($elem.hasAttribute("aria-disabled") && $elem.getAttribute("aria-disabled") !== "false");
96
+ }
97
+ /**
98
+ * Determines whether an element is focusable.
99
+ * Read more here: https://stackoverflow.com/questions/1599660/which-html-elements-can-receive-focus/1600194#1600194
100
+ * Or here: https://stackoverflow.com/questions/18261595/how-to-check-if-a-dom-element-is-focusable
101
+ * @param $elem
102
+ */
103
+ function isFocusable($elem) {
104
+ // Discard elements that are removed from the tab order.
105
+ if ($elem.getAttribute("tabindex") === "-1" || isHidden($elem) || isDisabled($elem)) {
106
+ return false;
107
+ }
108
+ return (
109
+ // At this point we know that the element can have focus (eg. won't be -1) if the tabindex attribute exists
110
+ $elem.hasAttribute("tabindex")
111
+ // Anchor tags or area tags with a href set
112
+ || ($elem instanceof HTMLAnchorElement || $elem instanceof HTMLAreaElement) && $elem.hasAttribute("href")
113
+ // Form elements which are not disabled
114
+ || ($elem instanceof HTMLButtonElement
115
+ || $elem instanceof HTMLInputElement
116
+ || $elem instanceof HTMLTextAreaElement
117
+ || $elem instanceof HTMLSelectElement)
118
+ // IFrames
119
+ || $elem instanceof HTMLIFrameElement);
120
+ }
121
+
122
+ /*!
123
+ * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
124
+ * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
125
+ * v1.0.0-beta.97
126
+ */
127
+ const CSS = {
128
+ modal: "modal",
129
+ modalOpen: "modal--open",
130
+ title: "title",
131
+ header: "header",
132
+ footer: "footer",
133
+ scrim: "scrim",
134
+ back: "back",
135
+ close: "close",
136
+ secondary: "secondary",
137
+ primary: "primary",
138
+ overflowHidden: "overflow-hidden",
139
+ // these classes help apply the animation in phases to only set transform on open/close
140
+ // this helps avoid a positioning issue for any floating-ui-owning children
141
+ openingIdle: "modal--opening-idle",
142
+ openingActive: "modal--opening-active",
143
+ closingIdle: "modal--closing-idle",
144
+ closingActive: "modal--closing-active"
145
+ };
146
+ const ICONS = {
147
+ close: "x"
148
+ };
149
+ const SLOTS = {
150
+ content: "content",
151
+ header: "header",
152
+ back: "back",
153
+ secondary: "secondary",
154
+ primary: "primary"
155
+ };
156
+ const TEXT = {
157
+ close: "Close"
158
+ };
159
+
160
+ const modalCss = "@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{position:fixed;inset:0px;z-index:700;display:flex;align-items:center;justify-content:center;overflow-y:hidden;color:var(--calcite-ui-text-2);opacity:0;visibility:hidden !important;transition:visibility 0ms linear var(--calcite-internal-animation-timing-slow), opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88)}:host([scale=s]){--calcite-modal-padding:0.75rem;--calcite-modal-padding-large:1rem;--calcite-modal-title-text:var(--calcite-font-size-1);--calcite-modal-content-text:var(--calcite-font-size--1);--calcite-modal-padding-internal:0.75rem;--calcite-modal-padding-large-internal:1rem;--calcite-modal-title-text-internal:var(--calcite-font-size-1);--calcite-modal-content-text-internal:var(--calcite-font-size--1)}:host([scale=m]){--calcite-modal-padding:1rem;--calcite-modal-padding-large:1.25rem;--calcite-modal-title-text:var(--calcite-font-size-2);--calcite-modal-content-text:var(--calcite-font-size-0);--calcite-modal-padding-internal:1rem;--calcite-modal-padding-large-internal:1.25rem;--calcite-modal-title-text-internal:var(--calcite-font-size-2);--calcite-modal-content-text-internal:var(--calcite-font-size-0)}:host([scale=l]){--calcite-modal-padding:1.25rem;--calcite-modal-padding-large:1.5rem;--calcite-modal-title-text:var(--calcite-font-size-3);--calcite-modal-content-text:var(--calcite-font-size-1);--calcite-modal-padding-internal:1.25rem;--calcite-modal-padding-large-internal:1.5rem;--calcite-modal-title-text-internal:var(--calcite-font-size-3);--calcite-modal-content-text-internal:var(--calcite-font-size-1)}.scrim{--calcite-scrim-background:rgba(0, 0, 0, 0.75);position:fixed;inset:0px;display:flex;overflow-y:hidden}.modal{pointer-events:none;z-index:800;float:none;margin:1.5rem;box-sizing:border-box;display:flex;inline-size:100%;flex-direction:column;overflow:hidden;border-radius:0.25rem;background-color:var(--calcite-ui-foreground-1);opacity:0;--tw-shadow:0 2px 12px -4px rgba(0, 0, 0, 0.2), 0 2px 4px -2px rgba(0, 0, 0, 0.16);--tw-shadow-colored:0 2px 12px -4px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);-webkit-overflow-scrolling:touch;visibility:hidden;transition:transform var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), visibility 0ms linear var(--calcite-internal-animation-timing-slow), opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88);--calcite-modal-hidden-position:translate3d(0, 20px, 0);--calcite-modal-shown-position:translate3d(0, 0, 0)}.modal--opening-idle{transform:var(--calcite-modal-hidden-position)}.modal--opening-active{transform:var(--calcite-modal-shown-position)}.modal--closing-idle{transform:var(--calcite-modal-shown-position)}.modal--closing-active{transform:var(--calcite-modal-hidden-position)}:host([open]){opacity:1;visibility:visible !important;transition-delay:0ms}:host([open]) .modal--open{pointer-events:auto;visibility:visible;opacity:1;transition:transform var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), visibility 0ms linear, opacity var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), max-inline-size var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88), max-block-size var(--calcite-internal-animation-timing-slow) cubic-bezier(0.215, 0.44, 0.42, 0.88);transition-delay:0ms}.header{z-index:400;display:flex;min-inline-size:0px;max-inline-size:100%;border-start-start-radius:0.25rem;border-start-end-radius:0.25rem;border-width:0px;border-block-end-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1);flex:0 0 auto}.close{order:2;margin:0px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-style:none;background-color:transparent;color:var(--calcite-ui-text-3);outline-color:transparent;transition:all var(--calcite-animation-timing) ease-in-out 0s, outline 0s, outline-offset 0s;border-start-end-radius:0.25rem;padding-block:var(--calcite-modal-padding, var(--calcite-modal-padding-internal));padding-inline:var(--calcite-modal-padding, var(--calcite-modal-padding-internal));flex:0 0 auto}.close calcite-icon{pointer-events:none;vertical-align:-2px}.close:focus{outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}.close:hover,.close:focus,.close:active{background-color:var(--calcite-ui-foreground-2);color:var(--calcite-ui-text-1)}.title{order:1;display:flex;min-inline-size:0px;align-items:center;flex:1 1 auto;padding-block:var(--calcite-modal-padding, var(--calcite-model-padding-internal));padding-inline:var(--calcite-modal-padding-large, var(--calcite-modal-padding-large-internal))}slot[name=header]::slotted(*),*::slotted([slot=header]){margin:0px;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-1);font-size:var(--calcite-modal-title-text, var(--calcite-modal-title-text-internal))}.content{position:relative;box-sizing:border-box;display:block;block-size:100%;overflow:auto;background-color:var(--calcite-ui-foreground-1);padding:0px;max-block-size:calc(100vh - 12rem)}.content--spaced{padding:var(--calcite-modal-padding)}.content--no-footer{border-end-end-radius:0.25rem;border-end-start-radius:0.25rem}slot[name=content]::slotted(*),*::slotted([slot=content]){font-size:var(--calcite-modal-content-text, var(--calcite-modal-context-text-internal))}:host([background-color=grey]) .content{background-color:var(--calcite-ui-background)}.footer{z-index:400;-webkit-margin-before:auto;margin-block-start:auto;box-sizing:border-box;display:flex;inline-size:100%;justify-content:space-between;border-end-end-radius:0.25rem;border-end-start-radius:0.25rem;border-width:0px;border-block-start-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1);flex:0 0 auto;padding-block:var(--calcite-modal-padding, var(--calcite-modal-padding-internal));padding-inline:var(--calcite-modal-padding-large, var(--calcite-modal-padding-large-internal))}.footer--hide-back .back,.footer--hide-secondary .secondary{display:none}.back{display:block;-webkit-margin-end:auto;margin-inline-end:auto}.secondary{margin-inline:0.25rem;display:block}slot[name=primary]{display:block}:host([width=small]) .modal{inline-size:auto}:host([width=s]) .modal{max-inline-size:32rem}@media screen and (max-width: 35rem){:host([width=s]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0px}:host([width=s]) .content{flex:1 1 auto;max-block-size:unset}:host([width=s][docked]){align-items:flex-end}}:host([width=m]) .modal{max-inline-size:48rem}@media screen and (max-width: 51rem){:host([width=m]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0px}:host([width=m]) .content{flex:1 1 auto;max-block-size:unset}:host([width=m][docked]){align-items:flex-end}}:host([width=l]) .modal{max-inline-size:94rem}@media screen and (max-width: 97rem){:host([width=l]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;border-radius:0px}:host([width=l]) .content{flex:1 1 auto;max-block-size:unset}:host([width=l][docked]){align-items:flex-end}}:host([fullscreen]){background-color:transparent}:host([fullscreen]) .modal{margin:0px;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;--calcite-modal-hidden-position:translate3D(0, 20px, 0) scale(0.95);--calcite-modal-shown-position:translate3D(0, 0, 0) scale(1)}:host([fullscreen]) .content{max-block-size:100%;flex:1 1 auto}:host([open][fullscreen]) .header{border-radius:0}:host([open][fullscreen]) .footer{border-radius:0}:host([docked]) .modal{block-size:auto}:host([docked]) .content{block-size:auto;flex:1 1 auto}@media screen and (max-width: 860px){:host([docked]) .modal{border-radius:var(--calcite-border-radius) var(--calcite-border-radius) 0 0}:host([docked]) .close{border-start-end-radius:var(--calcite-border-radius)}}:host([color=red]) .modal{border-color:var(--calcite-ui-danger)}:host([color=blue]) .modal{border-color:var(--calcite-ui-info)}:host([color=red]) .modal,:host([color=blue]) .modal{border-width:0px;border-block-start-width:4px;border-style:solid}:host([color=red]) .header,:host([color=blue]) .header{border-radius:0.25rem;border-end-end-radius:0px;border-end-start-radius:0px}@media screen and (max-width: 860px){slot[name=header]::slotted(*),*::slotted([slot=header]){font-size:var(--calcite-font-size-1)}.footer{position:sticky;inset-block-end:0px}}@media screen and (max-width: 480px){.footer{flex-direction:column}.back,.secondary{margin:0px;-webkit-margin-after:0.25rem;margin-block-end:0.25rem}}";
161
+
162
+ const isFocusableExtended = (el) => {
163
+ return isCalciteFocusable(el) || isFocusable(el);
164
+ };
165
+ const getFocusableElements = (el) => {
166
+ return queryShadowRoot(el, isHidden, isFocusableExtended);
167
+ };
168
+ const Modal = class {
169
+ constructor(hostRef) {
170
+ registerInstance(this, hostRef);
171
+ this.calciteModalBeforeClose = createEvent(this, "calciteModalBeforeClose", 6);
172
+ this.calciteModalClose = createEvent(this, "calciteModalClose", 6);
173
+ this.calciteModalBeforeOpen = createEvent(this, "calciteModalBeforeOpen", 6);
174
+ this.calciteModalOpen = createEvent(this, "calciteModalOpen", 6);
175
+ //--------------------------------------------------------------------------
176
+ //
177
+ // Properties
178
+ //
179
+ //--------------------------------------------------------------------------
180
+ /**
181
+ * When `true`, the component is active.
182
+ *
183
+ * @deprecated use `open` instead.
184
+ */
185
+ this.active = false;
186
+ /** When `true`, displays and positions the component. */
187
+ this.open = false;
188
+ /** Passes a function to run before the component closes. */
189
+ this.beforeClose = () => Promise.resolve();
190
+ /** When `true`, disables the component's close button. */
191
+ this.disableCloseButton = false;
192
+ /** When `true`, disables the closing of the component when clicked outside. */
193
+ this.disableOutsideClose = false;
194
+ /** Accessible name for the component's close button. */
195
+ this.intlClose = TEXT.close;
196
+ /** When `true`, disables the default close on escape behavior. */
197
+ this.disableEscape = false;
198
+ /** Specifies the size of the component. */
199
+ this.scale = "m";
200
+ /** Specifies the width of the component. Can use scale sizes or pass a number (displays in pixels). */
201
+ this.width = "m";
202
+ /** Sets the background color of the component's content. */
203
+ this.backgroundColor = "white";
204
+ /**
205
+ * When `true`, disables spacing to the content area slot.
206
+ *
207
+ * @deprecated Use `--calcite-modal-padding` CSS variable instead.
208
+ */
209
+ this.noPadding = false;
210
+ //--------------------------------------------------------------------------
211
+ //
212
+ // Variables
213
+ //
214
+ //--------------------------------------------------------------------------
215
+ this.hasFooter = true;
216
+ /**
217
+ * We use internal variable to make sure initially open modal can transition from closed state when rendered
218
+ *
219
+ * @private
220
+ */
221
+ this.isOpen = false;
222
+ this.mutationObserver = createObserver("mutation", () => this.updateFooterVisibility());
223
+ this.openTransitionProp = "opacity";
224
+ //--------------------------------------------------------------------------
225
+ //
226
+ // Private Methods
227
+ //
228
+ //--------------------------------------------------------------------------
229
+ this.setTransitionEl = (el) => {
230
+ this.transitionEl = el;
231
+ connectOpenCloseComponent(this);
232
+ };
233
+ this.openEnd = () => {
234
+ this.setFocus();
235
+ this.el.removeEventListener("calciteModalOpen", this.openEnd);
236
+ };
237
+ this.handleOutsideClose = () => {
238
+ if (this.disableOutsideClose) {
239
+ return;
240
+ }
241
+ this.close();
242
+ };
243
+ /** Close the modal, first running the `beforeClose` method */
244
+ this.close = () => {
245
+ return this.beforeClose(this.el).then(() => {
246
+ this.open = false;
247
+ this.isOpen = false;
248
+ focusElement(this.previousActiveElement);
249
+ this.removeOverflowHiddenClass();
250
+ });
251
+ };
252
+ this.focusFirstElement = () => {
253
+ focusElement(this.disableCloseButton ? getFocusableElements(this.el)[0] : this.closeButtonEl);
254
+ };
255
+ this.focusLastElement = () => {
256
+ const focusableElements = getFocusableElements(this.el).filter((el) => !el.getAttribute("data-focus-fence"));
257
+ if (focusableElements.length > 0) {
258
+ focusElement(focusableElements[focusableElements.length - 1]);
259
+ }
260
+ else {
261
+ focusElement(this.closeButtonEl);
262
+ }
263
+ };
264
+ this.updateFooterVisibility = () => {
265
+ this.hasFooter = !!getSlotted(this.el, [SLOTS.back, SLOTS.primary, SLOTS.secondary]);
266
+ };
267
+ }
268
+ //--------------------------------------------------------------------------
269
+ //
270
+ // Lifecycle
271
+ //
272
+ //--------------------------------------------------------------------------
273
+ componentWillLoad() {
274
+ // when modal initially renders, if active was set we need to open as watcher doesn't fire
275
+ if (this.open) {
276
+ requestAnimationFrame(() => this.openModal());
277
+ }
278
+ }
279
+ connectedCallback() {
280
+ var _a;
281
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });
282
+ this.updateFooterVisibility();
283
+ connectConditionalSlotComponent(this);
284
+ connectOpenCloseComponent(this);
285
+ if (this.open) {
286
+ this.active = this.open;
287
+ }
288
+ if (this.active) {
289
+ this.activeHandler(this.active);
290
+ }
291
+ }
292
+ disconnectedCallback() {
293
+ var _a;
294
+ this.removeOverflowHiddenClass();
295
+ (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
296
+ disconnectConditionalSlotComponent(this);
297
+ disconnectOpenCloseComponent(this);
298
+ }
299
+ render() {
300
+ return (h(Host, { "aria-describedby": this.contentId, "aria-labelledby": this.titleId, "aria-modal": "true", role: "dialog" }, h("calcite-scrim", { class: CSS.scrim, onClick: this.handleOutsideClose }), this.renderStyle(), h("div", { class: {
301
+ [CSS.modal]: true,
302
+ [CSS.modalOpen]: this.isOpen
303
+ }, ref: this.setTransitionEl }, h("div", { "data-focus-fence": true, onFocus: this.focusLastElement, tabindex: "0" }), h("div", { class: CSS.header }, this.renderCloseButton(), h("header", { class: CSS.title }, h("slot", { name: CSS.header }))), h("div", { class: {
304
+ content: true,
305
+ "content--spaced": !this.noPadding,
306
+ "content--no-footer": !this.hasFooter
307
+ }, ref: (el) => (this.modalContent = el) }, h("slot", { name: SLOTS.content })), this.renderFooter(), h("div", { "data-focus-fence": true, onFocus: this.focusFirstElement, tabindex: "0" }))));
308
+ }
309
+ renderFooter() {
310
+ return this.hasFooter ? (h("div", { class: CSS.footer, key: "footer" }, h("span", { class: CSS.back }, h("slot", { name: SLOTS.back })), h("span", { class: CSS.secondary }, h("slot", { name: SLOTS.secondary })), h("span", { class: CSS.primary }, h("slot", { name: SLOTS.primary })))) : null;
311
+ }
312
+ renderCloseButton() {
313
+ return !this.disableCloseButton ? (h("button", { "aria-label": this.intlClose, class: CSS.close, key: "button", onClick: this.close, ref: (el) => (this.closeButtonEl = el), title: this.intlClose }, h("calcite-icon", { icon: ICONS.close, scale: this.scale === "s" ? "s" : this.scale === "m" ? "m" : this.scale === "l" ? "l" : null }))) : null;
314
+ }
315
+ renderStyle() {
316
+ const hasCustomWidth = !isNaN(parseInt(`${this.width}`));
317
+ return hasCustomWidth ? (h("style", null, `
318
+ .${CSS.modal} {
319
+ max-width: ${this.width}px !important;
320
+ }
321
+ @media screen and (max-width: ${this.width}px) {
322
+ .${CSS.modal} {
323
+ height: 100% !important;
324
+ max-height: 100% !important;
325
+ width: 100% !important;
326
+ max-width: 100% !important;
327
+ margin: 0 !important;
328
+ border-radius: 0 !important;
329
+ }
330
+ .content {
331
+ flex: 1 1 auto !important;
332
+ max-height: unset !important;
333
+ }
334
+ }
335
+ `)) : null;
336
+ }
337
+ //--------------------------------------------------------------------------
338
+ //
339
+ // Event Listeners
340
+ //
341
+ //--------------------------------------------------------------------------
342
+ handleEscape(event) {
343
+ if (this.open && !this.disableEscape && event.key === "Escape" && !event.defaultPrevented) {
344
+ this.close();
345
+ event.preventDefault();
346
+ }
347
+ }
348
+ //--------------------------------------------------------------------------
349
+ //
350
+ // Public Methods
351
+ //
352
+ //--------------------------------------------------------------------------
353
+ /**
354
+ * Focus the first interactive element.
355
+ *
356
+ * @param el
357
+ * @deprecated use `setFocus` instead.
358
+ */
359
+ async focusElement(el) {
360
+ if (el) {
361
+ el.focus();
362
+ }
363
+ return this.setFocus();
364
+ }
365
+ /**
366
+ * Sets focus on the component.
367
+ *
368
+ * By default, tries to focus on focusable content. If there is none, it will focus on the close button.
369
+ * To focus on the close button, use the `close-button` focus ID.
370
+ *
371
+ * @param focusId
372
+ */
373
+ async setFocus(focusId) {
374
+ const closeButton = this.closeButtonEl;
375
+ return focusElement(focusId === "close-button" ? closeButton : getFocusableElements(this.el)[0] || closeButton);
376
+ }
377
+ /**
378
+ * Sets the scroll top of the component's content.
379
+ *
380
+ * @param top
381
+ * @param left
382
+ */
383
+ async scrollContent(top = 0, left = 0) {
384
+ if (this.modalContent) {
385
+ if (this.modalContent.scrollTo) {
386
+ this.modalContent.scrollTo({ top, left, behavior: "smooth" });
387
+ }
388
+ else {
389
+ this.modalContent.scrollTop = top;
390
+ this.modalContent.scrollLeft = left;
391
+ }
392
+ }
393
+ }
394
+ onBeforeOpen() {
395
+ this.transitionEl.classList.add(CSS.openingActive);
396
+ this.calciteModalBeforeOpen.emit();
397
+ }
398
+ onOpen() {
399
+ this.transitionEl.classList.remove(CSS.openingIdle, CSS.openingActive);
400
+ this.calciteModalOpen.emit();
401
+ }
402
+ onBeforeClose() {
403
+ this.transitionEl.classList.add(CSS.closingActive);
404
+ this.calciteModalBeforeClose.emit();
405
+ }
406
+ onClose() {
407
+ this.transitionEl.classList.remove(CSS.closingIdle, CSS.closingActive);
408
+ this.calciteModalClose.emit();
409
+ }
410
+ activeHandler(value) {
411
+ this.open = value;
412
+ }
413
+ async toggleModal(value) {
414
+ var _a, _b;
415
+ this.active = value;
416
+ if (value) {
417
+ (_a = this.transitionEl) === null || _a === void 0 ? void 0 : _a.classList.add(CSS.openingIdle);
418
+ this.openModal();
419
+ }
420
+ else {
421
+ (_b = this.transitionEl) === null || _b === void 0 ? void 0 : _b.classList.add(CSS.closingIdle);
422
+ this.close();
423
+ }
424
+ }
425
+ /** Open the modal */
426
+ openModal() {
427
+ this.previousActiveElement = document.activeElement;
428
+ this.el.addEventListener("calciteModalOpen", this.openEnd);
429
+ this.open = true;
430
+ this.isOpen = true;
431
+ const titleEl = getSlotted(this.el, SLOTS.header);
432
+ const contentEl = getSlotted(this.el, SLOTS.content);
433
+ this.titleId = ensureId(titleEl);
434
+ this.contentId = ensureId(contentEl);
435
+ document.documentElement.classList.add(CSS.overflowHidden);
436
+ }
437
+ removeOverflowHiddenClass() {
438
+ document.documentElement.classList.remove(CSS.overflowHidden);
439
+ }
440
+ get el() { return getElement(this); }
441
+ static get watchers() { return {
442
+ "active": ["activeHandler"],
443
+ "open": ["toggleModal"]
444
+ }; }
445
+ };
446
+ Modal.style = modalCss;
447
+
13
448
  /** @license
14
449
  * Copyright 2022 Esri
15
450
  *
@@ -1450,7 +1885,7 @@ const SolutionConfiguration = class {
1450
1885
  this._solutionEditorHasChanges = false;
1451
1886
  this._solutionEditorHasErrors = false;
1452
1887
  this._canSave = false;
1453
- this.authentication = new UserSession({});
1888
+ this.serializedAuthentication = "";
1454
1889
  this.solutionItemId = "";
1455
1890
  this.showLoading = false;
1456
1891
  this._currentEditItemId = "";
@@ -1461,6 +1896,8 @@ const SolutionConfiguration = class {
1461
1896
  this._templateHierarchy = [];
1462
1897
  this._translations = undefined;
1463
1898
  this._treeOpen = true;
1899
+ this._authentication = this.serializedAuthentication ? UserSession.deserialize(this.serializedAuthentication) : new UserSession({});
1900
+ console.log("CONFIG constructor " + this.solutionItemId); //???
1464
1901
  void this._loadSolution(this.solutionItemId);
1465
1902
  window.addEventListener("solutionStoreHasChanges", (evt) => {
1466
1903
  this._updateSaveability(this._solutionStoreHasChanges = evt.detail, this._solutionEditorHasChanges, this._solutionEditorHasErrors);
@@ -1472,8 +1909,11 @@ const SolutionConfiguration = class {
1472
1909
  this._updateSaveability(this._solutionStoreHasChanges, this._solutionEditorHasChanges, this._solutionEditorHasErrors = evt.detail);
1473
1910
  });
1474
1911
  }
1912
+ async serializedAuthenticationWatchHandler() {
1913
+ this._authentication = this.serializedAuthentication ? UserSession.deserialize(this.serializedAuthentication) : new UserSession({});
1914
+ }
1475
1915
  async valueWatchHandler() {
1476
- console.log("update solution config " + this.solutionItemId); //???
1916
+ console.log("CONFIG watch " + this.solutionItemId); //???
1477
1917
  await this._loadSolution(this.solutionItemId);
1478
1918
  }
1479
1919
  /**
@@ -1488,17 +1928,17 @@ const SolutionConfiguration = class {
1488
1928
  * Renders the component.
1489
1929
  */
1490
1930
  render() {
1491
- console.log("render solution config " + this.solutionItemId); //???
1492
1931
  const wkid = getProp(state.getStoreInfo("spatialReferenceInfo"), "spatialReference");
1493
1932
  const hasServices = state.getStoreInfo("featureServices").length > 0;
1494
1933
  const solutionData = state.getStoreInfo("solutionData");
1495
1934
  this._solutionVariables = JSON.stringify(getSolutionVariables(solutionData.templates, this._translations));
1496
1935
  this._organizationVariables = JSON.stringify(getOrganizationVariables(this._translations));
1936
+ console.log("CONFIG render " + this.solutionItemId); //???
1497
1937
  return (h(Host, null, !this._solutionIsLoaded
1498
1938
  ? h("calcite-loader", { active: true, label: '' })
1499
1939
  : null, h("div", { class: "configuration-container" }, h("div", { class: "configuration" }, h("calcite-tabs", { class: "config-tabs" }, h("calcite-tab-nav", { slot: "tab-nav" }, h("calcite-tab-title", null, this._translations.definitionTab), hasServices ?
1500
1940
  h("calcite-tab-title", null, this._translations.spatialReferenceTab) :
1501
- null), h("calcite-tab", { active: true, class: "config-tab" }, h("div", { class: "config-solution" }, h("div", { class: this._treeOpen ? "config-inventory" : "config-inventory-hide" }, h("solution-contents", { id: "configInventory", key: `${this.solutionItemId}-contents`, ref: (el) => (this._solutionContentsComponent = el) })), h("calcite-button", { appearance: "transparent", class: "collapse-btn", "icon-start": this._treeOpen ? "chevrons-left" : "chevrons-right", id: "collapse-vars", onClick: () => this._toggleTree(), scale: "s", title: this._treeOpen ? this._translations.collapse : this._translations.expand }), h("div", { class: "config-item" }, h("solution-item", { authentication: this.authentication, "item-id": this._currentEditItemId, key: `${this.solutionItemId}-item`, "organization-variables": this._organizationVariables, "solution-item-id": this.solutionItemId, "solution-variables": this._solutionVariables })))), hasServices
1941
+ null), h("calcite-tab", { active: true, class: "config-tab" }, h("div", { class: "config-solution" }, h("div", { class: this._treeOpen ? "config-inventory" : "config-inventory-hide" }, h("solution-contents", { id: "configInventory", key: `${this.solutionItemId}-contents`, ref: (el) => (this._solutionContentsComponent = el) })), h("calcite-button", { appearance: "transparent", class: "collapse-btn", "icon-start": this._treeOpen ? "chevrons-left" : "chevrons-right", id: "collapse-vars", onClick: () => this._toggleTree(), scale: "s", title: this._treeOpen ? this._translations.collapse : this._translations.expand }), h("div", { class: "config-item" }, h("solution-item", { authentication: this._authentication, "item-id": this._currentEditItemId, key: `${this.solutionItemId}-item`, "organization-variables": this._organizationVariables, "solution-item-id": this.solutionItemId, "solution-variables": this._solutionVariables })))), hasServices
1502
1942
  ? h("calcite-tab", { class: "config-tab" }, h("div", { class: "config-solution" }, h("solution-spatial-ref", { defaultWkid: wkid, id: "configure-solution-spatial-ref", key: `${this.solutionItemId}-spatial-ref`, locked: !wkid, services: state.getStoreInfo("featureServices").map(fs => fs.name) })))
1503
1943
  : null)))));
1504
1944
  }
@@ -1566,7 +2006,7 @@ const SolutionConfiguration = class {
1566
2006
  this.modelsSet = false;
1567
2007
  state.reset();
1568
2008
  }
1569
- getModels(templates, this.authentication, this.solutionItemId).then(models => {
2009
+ getModels(templates, this._authentication, this.solutionItemId).then(models => {
1570
2010
  state.models = models;
1571
2011
 
1572
2012
  state.featureServices = getFeatureServices(templates);
@@ -1600,10 +2040,6 @@ const SolutionConfiguration = class {
1600
2040
  if (this._templateHierarchy.length > 0) {
1601
2041
  // Start with the first item in the contents
1602
2042
  firstItem = state.getItemInfo(this._templateHierarchy[0].id);
1603
- console.log("init with first item " + firstItem.itemId); //???
1604
- }
1605
- else {
1606
- console.log("no initial first item"); //???
1607
2043
  }
1608
2044
  this._currentEditItemId = firstItem ? firstItem.itemId : "";
1609
2045
  }
@@ -1619,7 +2055,7 @@ const SolutionConfiguration = class {
1619
2055
  async _loadSolution(solutionItemId) {
1620
2056
  if (solutionItemId) {
1621
2057
  this._solutionIsLoaded = false;
1622
- await state.loadSolution(solutionItemId, this.authentication);
2058
+ await state.loadSolution(solutionItemId, this._authentication);
1623
2059
  this._initProps();
1624
2060
  this._solutionIsLoaded = true;
1625
2061
  }
@@ -1682,7 +2118,7 @@ const SolutionConfiguration = class {
1682
2118
  this.solutionItemId,
1683
2119
  data,
1684
2120
  state.models,
1685
- this.authentication,
2121
+ this._authentication,
1686
2122
  this._translations
1687
2123
  ).then(saveResult => {
1688
2124
  // need to trigger re-render...and re-fetch
@@ -1976,11 +2412,12 @@ const SolutionConfiguration = class {
1976
2412
  }
1977
2413
  get el() { return getElement(this); }
1978
2414
  static get watchers() { return {
2415
+ "serializedAuthentication": ["serializedAuthenticationWatchHandler"],
1979
2416
  "solutionItemId": ["valueWatchHandler"]
1980
2417
  }; }
1981
2418
  };
1982
2419
  SolutionConfiguration.style = solutionConfigurationCss;
1983
2420
 
1984
- export { SolutionConfiguration as solution_configuration };
2421
+ export { Modal as calcite_modal, SolutionConfiguration as solution_configuration };
1985
2422
 
1986
- //# sourceMappingURL=p-90629c1d.entry.js.map
2423
+ //# sourceMappingURL=p-cf59eb16.entry.js.map