@esri/solutions-components 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/t9n/solution-config-modal/resources.json +22 -0
- package/dist/assets/t9n/solution-config-modal/resources_en.json +22 -0
- package/dist/cjs/calcite-action-menu_2.cjs.entry.js +18 -401
- package/dist/cjs/calcite-action-menu_2.cjs.entry.js.map +1 -1
- package/dist/cjs/calcite-action_2.cjs.entry.js +423 -71
- package/dist/cjs/calcite-action_2.cjs.entry.js.map +1 -1
- package/dist/cjs/calcite-loader.cjs.entry.js +97 -0
- package/dist/cjs/calcite-loader.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-configuration.cjs.entry.js → calcite-modal_2.cjs.entry.js} +451 -13
- package/dist/cjs/calcite-modal_2.cjs.entry.js.map +1 -0
- package/dist/cjs/{calcite-shell-panel_14.cjs.entry.js → calcite-panel_12.cjs.entry.js} +455 -709
- package/dist/cjs/calcite-panel_12.cjs.entry.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/solution-config-modal.cjs.entry.js +131 -0
- package/dist/cjs/solution-config-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-contents_3.cjs.entry.js → solution-contents_7.cjs.entry.js} +664 -5
- package/dist/cjs/solution-contents_7.cjs.entry.js.map +1 -0
- package/dist/cjs/{solution-store-893499a5.js → solution-store-09b3fc53.js} +4 -6
- package/dist/cjs/solution-store-09b3fc53.js.map +1 -0
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.css +91 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.js +245 -0
- package/dist/collection/components/solution-config-modal/solution-config-modal.js.map +1 -0
- package/dist/collection/components/solution-configuration/solution-configuration.js +23 -17
- package/dist/collection/components/solution-configuration/solution-configuration.js.map +1 -1
- package/dist/collection/components/solution-item/solution-item.js +0 -2
- package/dist/collection/components/solution-item/solution-item.js.map +1 -1
- package/dist/collection/components/solution-item-details/solution-item-details.js +0 -13
- package/dist/collection/components/solution-item-details/solution-item-details.js.map +1 -1
- package/dist/collection/utils/solution-store.js +3 -5
- package/dist/collection/utils/solution-store.js.map +1 -1
- package/dist/collection/utils/solution-store.ts +3 -5
- package/dist/esm/buffer-tools_6.entry.js +2 -2
- package/dist/esm/calcite-action-bar_6.entry.js +2 -2
- package/dist/esm/calcite-action-menu_2.entry.js +20 -403
- package/dist/esm/calcite-action-menu_2.entry.js.map +1 -1
- package/dist/esm/calcite-action_2.entry.js +424 -72
- package/dist/esm/calcite-action_2.entry.js.map +1 -1
- package/dist/esm/calcite-combobox_3.entry.js +2 -2
- package/dist/esm/calcite-loader.entry.js +93 -0
- package/dist/esm/calcite-loader.entry.js.map +1 -0
- package/dist/esm/{solution-configuration.entry.js → calcite-modal_2.entry.js} +453 -16
- package/dist/esm/calcite-modal_2.entry.js.map +1 -0
- package/dist/esm/{calcite-shell-panel_14.entry.js → calcite-panel_12.entry.js} +454 -706
- package/dist/esm/calcite-panel_12.entry.js.map +1 -0
- package/dist/esm/config-layer-picker.entry.js +2 -2
- package/dist/esm/{interfaces-e2a2064d.js → interfaces-1bdfc3a8.js} +2 -2
- package/dist/esm/{interfaces-e2a2064d.js.map → interfaces-1bdfc3a8.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{mapViewUtils-09f1e7bd.js → mapViewUtils-809947c8.js} +2 -2
- package/dist/esm/{mapViewUtils-09f1e7bd.js.map → mapViewUtils-809947c8.js.map} +1 -1
- package/dist/esm/public-notification.entry.js +2 -2
- package/dist/esm/solution-config-modal.entry.js +127 -0
- package/dist/esm/solution-config-modal.entry.js.map +1 -0
- package/dist/esm/{solution-contents_3.entry.js → solution-contents_7.entry.js} +661 -6
- package/dist/esm/solution-contents_7.entry.js.map +1 -0
- package/dist/esm/{solution-store-0c58c852.js → solution-store-d8519c64.js} +5 -7
- package/dist/esm/solution-store-d8519c64.js.map +1 -0
- package/dist/esm/solutions-components.js +1 -1
- package/dist/solutions-components/{p-be1ed982.entry.js → p-11068040.entry.js} +3 -3
- package/dist/solutions-components/{p-be1ed982.entry.js.map → p-11068040.entry.js.map} +0 -0
- package/dist/solutions-components/{p-659edb14.js → p-2910dd9e.js} +5 -7
- package/dist/{cjs/solution-store-893499a5.js.map → solutions-components/p-2910dd9e.js.map} +1 -1
- package/dist/solutions-components/{p-291fd295.entry.js → p-30810b45.entry.js} +3 -3
- package/dist/solutions-components/{p-291fd295.entry.js.map → p-30810b45.entry.js.map} +0 -0
- package/dist/solutions-components/p-38ddadf2.entry.js +342 -0
- package/dist/solutions-components/p-38ddadf2.entry.js.map +1 -0
- package/dist/solutions-components/{p-77c75f3a.entry.js → p-5b20090f.entry.js} +661 -6
- package/dist/solutions-components/p-5b20090f.entry.js.map +1 -0
- package/dist/solutions-components/{p-9393631c.entry.js → p-9ef1328a.entry.js} +3 -3
- package/dist/solutions-components/{p-9393631c.entry.js.map → p-9ef1328a.entry.js.map} +0 -0
- package/dist/solutions-components/{p-984cb687.entry.js → p-a1786d11.entry.js} +454 -706
- package/dist/solutions-components/p-a1786d11.entry.js.map +1 -0
- package/dist/solutions-components/{p-fe0fdd8b.js → p-c20bd963.js} +2 -2
- package/dist/solutions-components/{p-fe0fdd8b.js.map → p-c20bd963.js.map} +1 -1
- package/dist/solutions-components/p-c5721b0f.entry.js +127 -0
- package/dist/solutions-components/p-c5721b0f.entry.js.map +1 -0
- package/dist/solutions-components/{p-24d75151.entry.js → p-c818e661.entry.js} +3 -3
- package/dist/solutions-components/{p-24d75151.entry.js.map → p-c818e661.entry.js.map} +0 -0
- package/dist/solutions-components/{p-90629c1d.entry.js → p-cf59eb16.entry.js} +453 -16
- package/dist/solutions-components/p-cf59eb16.entry.js.map +1 -0
- package/dist/solutions-components/p-e405ebe8.entry.js +93 -0
- package/dist/solutions-components/p-e405ebe8.entry.js.map +1 -0
- package/dist/solutions-components/{p-77e6b03c.entry.js → p-e6fb9cde.entry.js} +3 -3
- package/dist/solutions-components/{p-77e6b03c.entry.js.map → p-e6fb9cde.entry.js.map} +0 -0
- package/dist/solutions-components/{p-97c4a268.entry.js → p-ef6f9e24.entry.js} +113 -229
- package/dist/solutions-components/p-ef6f9e24.entry.js.map +1 -0
- package/dist/solutions-components/{p-6b9dc092.js → p-f04fdb9a.js} +2 -2
- package/dist/solutions-components/{p-6b9dc092.js.map → p-f04fdb9a.js.map} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/solution-store.ts +3 -5
- package/dist/solutions-components_commit.txt +8 -8
- package/dist/types/components/solution-config-modal/solution-config-modal.d.ts +69 -0
- package/dist/types/components/solution-configuration/solution-configuration.d.ts +4 -2
- package/dist/types/components/solution-item-details/solution-item-details.d.ts +0 -1
- package/dist/types/components.d.ts +43 -5
- package/dist/types/preact.d.ts +4 -0
- package/package.json +1 -1
- package/dist/cjs/calcite-modal.cjs.entry.js +0 -449
- package/dist/cjs/calcite-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/calcite-panel_2.cjs.entry.js +0 -439
- package/dist/cjs/calcite-panel_2.cjs.entry.js.map +0 -1
- package/dist/cjs/calcite-scrim.cjs.entry.js +0 -64
- package/dist/cjs/calcite-scrim.cjs.entry.js.map +0 -1
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js.map +0 -1
- package/dist/cjs/solution-configuration.cjs.entry.js.map +0 -1
- package/dist/cjs/solution-contents_3.cjs.entry.js.map +0 -1
- package/dist/esm/calcite-modal.entry.js +0 -445
- package/dist/esm/calcite-modal.entry.js.map +0 -1
- package/dist/esm/calcite-panel_2.entry.js +0 -434
- package/dist/esm/calcite-panel_2.entry.js.map +0 -1
- package/dist/esm/calcite-scrim.entry.js +0 -60
- package/dist/esm/calcite-scrim.entry.js.map +0 -1
- package/dist/esm/calcite-shell-panel_14.entry.js.map +0 -1
- package/dist/esm/solution-configuration.entry.js.map +0 -1
- package/dist/esm/solution-contents_3.entry.js.map +0 -1
- package/dist/esm/solution-store-0c58c852.js.map +0 -1
- package/dist/solutions-components/p-0fda7d9e.entry.js +0 -434
- package/dist/solutions-components/p-0fda7d9e.entry.js.map +0 -1
- package/dist/solutions-components/p-2ff754ce.entry.js +0 -257
- package/dist/solutions-components/p-2ff754ce.entry.js.map +0 -1
- package/dist/solutions-components/p-30a6199a.entry.js +0 -445
- package/dist/solutions-components/p-30a6199a.entry.js.map +0 -1
- package/dist/solutions-components/p-659edb14.js.map +0 -1
- package/dist/solutions-components/p-77c75f3a.entry.js.map +0 -1
- package/dist/solutions-components/p-90629c1d.entry.js.map +0 -1
- package/dist/solutions-components/p-97c4a268.entry.js.map +0 -1
- package/dist/solutions-components/p-984cb687.entry.js.map +0 -1
- package/dist/solutions-components/p-f5268b4f.entry.js +0 -60
- package/dist/solutions-components/p-f5268b4f.entry.js.map +0 -1
@@ -8,12 +8,447 @@
|
|
8
8
|
Object.defineProperty(exports, '__esModule', { value: true });
|
9
9
|
|
10
10
|
const index = require('./index-a86078a0.js');
|
11
|
-
const
|
11
|
+
const dom = require('./dom-4a580af6.js');
|
12
|
+
const observers = require('./observers-5311faf8.js');
|
13
|
+
const conditionalSlot = require('./conditionalSlot-2defe83d.js');
|
14
|
+
const openCloseComponent = require('./openCloseComponent-bf986132.js');
|
15
|
+
const solutionStore = require('./solution-store-09b3fc53.js');
|
12
16
|
const locale = require('./locale-746a095d.js');
|
17
|
+
require('./resources-b56bce71.js');
|
18
|
+
require('./guid-84ac4d91.js');
|
13
19
|
require('./index-d7f9770d.js');
|
14
20
|
require('./interfaces-ab603e16.js');
|
15
21
|
require('./_commonjsHelpers-6aafa5de.js');
|
16
22
|
|
23
|
+
/**
|
24
|
+
* Traverses the slots of the open shadowroots and returns all children matching the query.
|
25
|
+
* @param {ShadowRoot | HTMLElement} root
|
26
|
+
* @param skipNode
|
27
|
+
* @param isMatch
|
28
|
+
* @param {number} maxDepth
|
29
|
+
* @param {number} depth
|
30
|
+
* @returns {HTMLElement[]}
|
31
|
+
*/
|
32
|
+
function queryShadowRoot(root, skipNode, isMatch, maxDepth = 20, depth = 0) {
|
33
|
+
let matches = [];
|
34
|
+
// If the depth is above the max depth, abort the searching here.
|
35
|
+
if (depth >= maxDepth) {
|
36
|
+
return matches;
|
37
|
+
}
|
38
|
+
// Traverses a slot element
|
39
|
+
const traverseSlot = ($slot) => {
|
40
|
+
// Only check nodes that are of the type Node.ELEMENT_NODE
|
41
|
+
// Read more here https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType
|
42
|
+
const assignedNodes = $slot.assignedNodes().filter(node => node.nodeType === 1);
|
43
|
+
if (assignedNodes.length > 0) {
|
44
|
+
return queryShadowRoot(assignedNodes[0].parentElement, skipNode, isMatch, maxDepth, depth + 1);
|
45
|
+
}
|
46
|
+
return [];
|
47
|
+
};
|
48
|
+
// Go through each child and continue the traversing if necessary
|
49
|
+
// Even though the typing says that children can't be undefined, Edge 15 sometimes gives an undefined value.
|
50
|
+
// Therefore we fallback to an empty array if it is undefined.
|
51
|
+
const children = Array.from(root.children || []);
|
52
|
+
for (const $child of children) {
|
53
|
+
// Check if the node and its descendants should be skipped
|
54
|
+
if (skipNode($child)) {
|
55
|
+
continue;
|
56
|
+
}
|
57
|
+
// If the child matches we always add it
|
58
|
+
if (isMatch($child)) {
|
59
|
+
matches.push($child);
|
60
|
+
}
|
61
|
+
if ($child.shadowRoot != null) {
|
62
|
+
matches.push(...queryShadowRoot($child.shadowRoot, skipNode, isMatch, maxDepth, depth + 1));
|
63
|
+
}
|
64
|
+
else if ($child.tagName === "SLOT") {
|
65
|
+
matches.push(...traverseSlot($child));
|
66
|
+
}
|
67
|
+
else {
|
68
|
+
matches.push(...queryShadowRoot($child, skipNode, isMatch, maxDepth, depth + 1));
|
69
|
+
}
|
70
|
+
}
|
71
|
+
return matches;
|
72
|
+
}
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Returns whether the element is hidden.
|
76
|
+
* @param $elem
|
77
|
+
*/
|
78
|
+
function isHidden($elem) {
|
79
|
+
return $elem.hasAttribute("hidden")
|
80
|
+
|| ($elem.hasAttribute("aria-hidden") && $elem.getAttribute("aria-hidden") !== "false")
|
81
|
+
// A quick and dirty way to check whether the element is hidden.
|
82
|
+
// For a more fine-grained check we could use "window.getComputedStyle" but we don't because of bad performance.
|
83
|
+
// If the element has visibility set to "hidden" or "collapse", display set to "none" or opacity set to "0" through CSS
|
84
|
+
// we won't be able to catch it here. We accept it due to the huge performance benefits.
|
85
|
+
|| $elem.style.display === `none`
|
86
|
+
|| $elem.style.opacity === `0`
|
87
|
+
|| $elem.style.visibility === `hidden`
|
88
|
+
|| $elem.style.visibility === `collapse`;
|
89
|
+
// If offsetParent is null we can assume that the element is hidden
|
90
|
+
// https://stackoverflow.com/questions/306305/what-would-make-offsetparent-null
|
91
|
+
//|| $elem.offsetParent == null;
|
92
|
+
}
|
93
|
+
/**
|
94
|
+
* Returns whether the element is disabled.
|
95
|
+
* @param $elem
|
96
|
+
*/
|
97
|
+
function isDisabled($elem) {
|
98
|
+
return $elem.hasAttribute("disabled")
|
99
|
+
|| ($elem.hasAttribute("aria-disabled") && $elem.getAttribute("aria-disabled") !== "false");
|
100
|
+
}
|
101
|
+
/**
|
102
|
+
* Determines whether an element is focusable.
|
103
|
+
* Read more here: https://stackoverflow.com/questions/1599660/which-html-elements-can-receive-focus/1600194#1600194
|
104
|
+
* Or here: https://stackoverflow.com/questions/18261595/how-to-check-if-a-dom-element-is-focusable
|
105
|
+
* @param $elem
|
106
|
+
*/
|
107
|
+
function isFocusable($elem) {
|
108
|
+
// Discard elements that are removed from the tab order.
|
109
|
+
if ($elem.getAttribute("tabindex") === "-1" || isHidden($elem) || isDisabled($elem)) {
|
110
|
+
return false;
|
111
|
+
}
|
112
|
+
return (
|
113
|
+
// At this point we know that the element can have focus (eg. won't be -1) if the tabindex attribute exists
|
114
|
+
$elem.hasAttribute("tabindex")
|
115
|
+
// Anchor tags or area tags with a href set
|
116
|
+
|| ($elem instanceof HTMLAnchorElement || $elem instanceof HTMLAreaElement) && $elem.hasAttribute("href")
|
117
|
+
// Form elements which are not disabled
|
118
|
+
|| ($elem instanceof HTMLButtonElement
|
119
|
+
|| $elem instanceof HTMLInputElement
|
120
|
+
|| $elem instanceof HTMLTextAreaElement
|
121
|
+
|| $elem instanceof HTMLSelectElement)
|
122
|
+
// IFrames
|
123
|
+
|| $elem instanceof HTMLIFrameElement);
|
124
|
+
}
|
125
|
+
|
126
|
+
/*!
|
127
|
+
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
128
|
+
* See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
|
129
|
+
* v1.0.0-beta.97
|
130
|
+
*/
|
131
|
+
const CSS = {
|
132
|
+
modal: "modal",
|
133
|
+
modalOpen: "modal--open",
|
134
|
+
title: "title",
|
135
|
+
header: "header",
|
136
|
+
footer: "footer",
|
137
|
+
scrim: "scrim",
|
138
|
+
back: "back",
|
139
|
+
close: "close",
|
140
|
+
secondary: "secondary",
|
141
|
+
primary: "primary",
|
142
|
+
overflowHidden: "overflow-hidden",
|
143
|
+
// these classes help apply the animation in phases to only set transform on open/close
|
144
|
+
// this helps avoid a positioning issue for any floating-ui-owning children
|
145
|
+
openingIdle: "modal--opening-idle",
|
146
|
+
openingActive: "modal--opening-active",
|
147
|
+
closingIdle: "modal--closing-idle",
|
148
|
+
closingActive: "modal--closing-active"
|
149
|
+
};
|
150
|
+
const ICONS = {
|
151
|
+
close: "x"
|
152
|
+
};
|
153
|
+
const SLOTS = {
|
154
|
+
content: "content",
|
155
|
+
header: "header",
|
156
|
+
back: "back",
|
157
|
+
secondary: "secondary",
|
158
|
+
primary: "primary"
|
159
|
+
};
|
160
|
+
const TEXT = {
|
161
|
+
close: "Close"
|
162
|
+
};
|
163
|
+
|
164
|
+
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}}";
|
165
|
+
|
166
|
+
const isFocusableExtended = (el) => {
|
167
|
+
return dom.isCalciteFocusable(el) || isFocusable(el);
|
168
|
+
};
|
169
|
+
const getFocusableElements = (el) => {
|
170
|
+
return queryShadowRoot(el, isHidden, isFocusableExtended);
|
171
|
+
};
|
172
|
+
const Modal = class {
|
173
|
+
constructor(hostRef) {
|
174
|
+
index.registerInstance(this, hostRef);
|
175
|
+
this.calciteModalBeforeClose = index.createEvent(this, "calciteModalBeforeClose", 6);
|
176
|
+
this.calciteModalClose = index.createEvent(this, "calciteModalClose", 6);
|
177
|
+
this.calciteModalBeforeOpen = index.createEvent(this, "calciteModalBeforeOpen", 6);
|
178
|
+
this.calciteModalOpen = index.createEvent(this, "calciteModalOpen", 6);
|
179
|
+
//--------------------------------------------------------------------------
|
180
|
+
//
|
181
|
+
// Properties
|
182
|
+
//
|
183
|
+
//--------------------------------------------------------------------------
|
184
|
+
/**
|
185
|
+
* When `true`, the component is active.
|
186
|
+
*
|
187
|
+
* @deprecated use `open` instead.
|
188
|
+
*/
|
189
|
+
this.active = false;
|
190
|
+
/** When `true`, displays and positions the component. */
|
191
|
+
this.open = false;
|
192
|
+
/** Passes a function to run before the component closes. */
|
193
|
+
this.beforeClose = () => Promise.resolve();
|
194
|
+
/** When `true`, disables the component's close button. */
|
195
|
+
this.disableCloseButton = false;
|
196
|
+
/** When `true`, disables the closing of the component when clicked outside. */
|
197
|
+
this.disableOutsideClose = false;
|
198
|
+
/** Accessible name for the component's close button. */
|
199
|
+
this.intlClose = TEXT.close;
|
200
|
+
/** When `true`, disables the default close on escape behavior. */
|
201
|
+
this.disableEscape = false;
|
202
|
+
/** Specifies the size of the component. */
|
203
|
+
this.scale = "m";
|
204
|
+
/** Specifies the width of the component. Can use scale sizes or pass a number (displays in pixels). */
|
205
|
+
this.width = "m";
|
206
|
+
/** Sets the background color of the component's content. */
|
207
|
+
this.backgroundColor = "white";
|
208
|
+
/**
|
209
|
+
* When `true`, disables spacing to the content area slot.
|
210
|
+
*
|
211
|
+
* @deprecated Use `--calcite-modal-padding` CSS variable instead.
|
212
|
+
*/
|
213
|
+
this.noPadding = false;
|
214
|
+
//--------------------------------------------------------------------------
|
215
|
+
//
|
216
|
+
// Variables
|
217
|
+
//
|
218
|
+
//--------------------------------------------------------------------------
|
219
|
+
this.hasFooter = true;
|
220
|
+
/**
|
221
|
+
* We use internal variable to make sure initially open modal can transition from closed state when rendered
|
222
|
+
*
|
223
|
+
* @private
|
224
|
+
*/
|
225
|
+
this.isOpen = false;
|
226
|
+
this.mutationObserver = observers.createObserver("mutation", () => this.updateFooterVisibility());
|
227
|
+
this.openTransitionProp = "opacity";
|
228
|
+
//--------------------------------------------------------------------------
|
229
|
+
//
|
230
|
+
// Private Methods
|
231
|
+
//
|
232
|
+
//--------------------------------------------------------------------------
|
233
|
+
this.setTransitionEl = (el) => {
|
234
|
+
this.transitionEl = el;
|
235
|
+
openCloseComponent.connectOpenCloseComponent(this);
|
236
|
+
};
|
237
|
+
this.openEnd = () => {
|
238
|
+
this.setFocus();
|
239
|
+
this.el.removeEventListener("calciteModalOpen", this.openEnd);
|
240
|
+
};
|
241
|
+
this.handleOutsideClose = () => {
|
242
|
+
if (this.disableOutsideClose) {
|
243
|
+
return;
|
244
|
+
}
|
245
|
+
this.close();
|
246
|
+
};
|
247
|
+
/** Close the modal, first running the `beforeClose` method */
|
248
|
+
this.close = () => {
|
249
|
+
return this.beforeClose(this.el).then(() => {
|
250
|
+
this.open = false;
|
251
|
+
this.isOpen = false;
|
252
|
+
dom.focusElement(this.previousActiveElement);
|
253
|
+
this.removeOverflowHiddenClass();
|
254
|
+
});
|
255
|
+
};
|
256
|
+
this.focusFirstElement = () => {
|
257
|
+
dom.focusElement(this.disableCloseButton ? getFocusableElements(this.el)[0] : this.closeButtonEl);
|
258
|
+
};
|
259
|
+
this.focusLastElement = () => {
|
260
|
+
const focusableElements = getFocusableElements(this.el).filter((el) => !el.getAttribute("data-focus-fence"));
|
261
|
+
if (focusableElements.length > 0) {
|
262
|
+
dom.focusElement(focusableElements[focusableElements.length - 1]);
|
263
|
+
}
|
264
|
+
else {
|
265
|
+
dom.focusElement(this.closeButtonEl);
|
266
|
+
}
|
267
|
+
};
|
268
|
+
this.updateFooterVisibility = () => {
|
269
|
+
this.hasFooter = !!dom.getSlotted(this.el, [SLOTS.back, SLOTS.primary, SLOTS.secondary]);
|
270
|
+
};
|
271
|
+
}
|
272
|
+
//--------------------------------------------------------------------------
|
273
|
+
//
|
274
|
+
// Lifecycle
|
275
|
+
//
|
276
|
+
//--------------------------------------------------------------------------
|
277
|
+
componentWillLoad() {
|
278
|
+
// when modal initially renders, if active was set we need to open as watcher doesn't fire
|
279
|
+
if (this.open) {
|
280
|
+
requestAnimationFrame(() => this.openModal());
|
281
|
+
}
|
282
|
+
}
|
283
|
+
connectedCallback() {
|
284
|
+
var _a;
|
285
|
+
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });
|
286
|
+
this.updateFooterVisibility();
|
287
|
+
conditionalSlot.connectConditionalSlotComponent(this);
|
288
|
+
openCloseComponent.connectOpenCloseComponent(this);
|
289
|
+
if (this.open) {
|
290
|
+
this.active = this.open;
|
291
|
+
}
|
292
|
+
if (this.active) {
|
293
|
+
this.activeHandler(this.active);
|
294
|
+
}
|
295
|
+
}
|
296
|
+
disconnectedCallback() {
|
297
|
+
var _a;
|
298
|
+
this.removeOverflowHiddenClass();
|
299
|
+
(_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
300
|
+
conditionalSlot.disconnectConditionalSlotComponent(this);
|
301
|
+
openCloseComponent.disconnectOpenCloseComponent(this);
|
302
|
+
}
|
303
|
+
render() {
|
304
|
+
return (index.h(index.Host, { "aria-describedby": this.contentId, "aria-labelledby": this.titleId, "aria-modal": "true", role: "dialog" }, index.h("calcite-scrim", { class: CSS.scrim, onClick: this.handleOutsideClose }), this.renderStyle(), index.h("div", { class: {
|
305
|
+
[CSS.modal]: true,
|
306
|
+
[CSS.modalOpen]: this.isOpen
|
307
|
+
}, ref: this.setTransitionEl }, index.h("div", { "data-focus-fence": true, onFocus: this.focusLastElement, tabindex: "0" }), index.h("div", { class: CSS.header }, this.renderCloseButton(), index.h("header", { class: CSS.title }, index.h("slot", { name: CSS.header }))), index.h("div", { class: {
|
308
|
+
content: true,
|
309
|
+
"content--spaced": !this.noPadding,
|
310
|
+
"content--no-footer": !this.hasFooter
|
311
|
+
}, ref: (el) => (this.modalContent = el) }, index.h("slot", { name: SLOTS.content })), this.renderFooter(), index.h("div", { "data-focus-fence": true, onFocus: this.focusFirstElement, tabindex: "0" }))));
|
312
|
+
}
|
313
|
+
renderFooter() {
|
314
|
+
return this.hasFooter ? (index.h("div", { class: CSS.footer, key: "footer" }, index.h("span", { class: CSS.back }, index.h("slot", { name: SLOTS.back })), index.h("span", { class: CSS.secondary }, index.h("slot", { name: SLOTS.secondary })), index.h("span", { class: CSS.primary }, index.h("slot", { name: SLOTS.primary })))) : null;
|
315
|
+
}
|
316
|
+
renderCloseButton() {
|
317
|
+
return !this.disableCloseButton ? (index.h("button", { "aria-label": this.intlClose, class: CSS.close, key: "button", onClick: this.close, ref: (el) => (this.closeButtonEl = el), title: this.intlClose }, index.h("calcite-icon", { icon: ICONS.close, scale: this.scale === "s" ? "s" : this.scale === "m" ? "m" : this.scale === "l" ? "l" : null }))) : null;
|
318
|
+
}
|
319
|
+
renderStyle() {
|
320
|
+
const hasCustomWidth = !isNaN(parseInt(`${this.width}`));
|
321
|
+
return hasCustomWidth ? (index.h("style", null, `
|
322
|
+
.${CSS.modal} {
|
323
|
+
max-width: ${this.width}px !important;
|
324
|
+
}
|
325
|
+
@media screen and (max-width: ${this.width}px) {
|
326
|
+
.${CSS.modal} {
|
327
|
+
height: 100% !important;
|
328
|
+
max-height: 100% !important;
|
329
|
+
width: 100% !important;
|
330
|
+
max-width: 100% !important;
|
331
|
+
margin: 0 !important;
|
332
|
+
border-radius: 0 !important;
|
333
|
+
}
|
334
|
+
.content {
|
335
|
+
flex: 1 1 auto !important;
|
336
|
+
max-height: unset !important;
|
337
|
+
}
|
338
|
+
}
|
339
|
+
`)) : null;
|
340
|
+
}
|
341
|
+
//--------------------------------------------------------------------------
|
342
|
+
//
|
343
|
+
// Event Listeners
|
344
|
+
//
|
345
|
+
//--------------------------------------------------------------------------
|
346
|
+
handleEscape(event) {
|
347
|
+
if (this.open && !this.disableEscape && event.key === "Escape" && !event.defaultPrevented) {
|
348
|
+
this.close();
|
349
|
+
event.preventDefault();
|
350
|
+
}
|
351
|
+
}
|
352
|
+
//--------------------------------------------------------------------------
|
353
|
+
//
|
354
|
+
// Public Methods
|
355
|
+
//
|
356
|
+
//--------------------------------------------------------------------------
|
357
|
+
/**
|
358
|
+
* Focus the first interactive element.
|
359
|
+
*
|
360
|
+
* @param el
|
361
|
+
* @deprecated use `setFocus` instead.
|
362
|
+
*/
|
363
|
+
async focusElement(el) {
|
364
|
+
if (el) {
|
365
|
+
el.focus();
|
366
|
+
}
|
367
|
+
return this.setFocus();
|
368
|
+
}
|
369
|
+
/**
|
370
|
+
* Sets focus on the component.
|
371
|
+
*
|
372
|
+
* By default, tries to focus on focusable content. If there is none, it will focus on the close button.
|
373
|
+
* To focus on the close button, use the `close-button` focus ID.
|
374
|
+
*
|
375
|
+
* @param focusId
|
376
|
+
*/
|
377
|
+
async setFocus(focusId) {
|
378
|
+
const closeButton = this.closeButtonEl;
|
379
|
+
return dom.focusElement(focusId === "close-button" ? closeButton : getFocusableElements(this.el)[0] || closeButton);
|
380
|
+
}
|
381
|
+
/**
|
382
|
+
* Sets the scroll top of the component's content.
|
383
|
+
*
|
384
|
+
* @param top
|
385
|
+
* @param left
|
386
|
+
*/
|
387
|
+
async scrollContent(top = 0, left = 0) {
|
388
|
+
if (this.modalContent) {
|
389
|
+
if (this.modalContent.scrollTo) {
|
390
|
+
this.modalContent.scrollTo({ top, left, behavior: "smooth" });
|
391
|
+
}
|
392
|
+
else {
|
393
|
+
this.modalContent.scrollTop = top;
|
394
|
+
this.modalContent.scrollLeft = left;
|
395
|
+
}
|
396
|
+
}
|
397
|
+
}
|
398
|
+
onBeforeOpen() {
|
399
|
+
this.transitionEl.classList.add(CSS.openingActive);
|
400
|
+
this.calciteModalBeforeOpen.emit();
|
401
|
+
}
|
402
|
+
onOpen() {
|
403
|
+
this.transitionEl.classList.remove(CSS.openingIdle, CSS.openingActive);
|
404
|
+
this.calciteModalOpen.emit();
|
405
|
+
}
|
406
|
+
onBeforeClose() {
|
407
|
+
this.transitionEl.classList.add(CSS.closingActive);
|
408
|
+
this.calciteModalBeforeClose.emit();
|
409
|
+
}
|
410
|
+
onClose() {
|
411
|
+
this.transitionEl.classList.remove(CSS.closingIdle, CSS.closingActive);
|
412
|
+
this.calciteModalClose.emit();
|
413
|
+
}
|
414
|
+
activeHandler(value) {
|
415
|
+
this.open = value;
|
416
|
+
}
|
417
|
+
async toggleModal(value) {
|
418
|
+
var _a, _b;
|
419
|
+
this.active = value;
|
420
|
+
if (value) {
|
421
|
+
(_a = this.transitionEl) === null || _a === void 0 ? void 0 : _a.classList.add(CSS.openingIdle);
|
422
|
+
this.openModal();
|
423
|
+
}
|
424
|
+
else {
|
425
|
+
(_b = this.transitionEl) === null || _b === void 0 ? void 0 : _b.classList.add(CSS.closingIdle);
|
426
|
+
this.close();
|
427
|
+
}
|
428
|
+
}
|
429
|
+
/** Open the modal */
|
430
|
+
openModal() {
|
431
|
+
this.previousActiveElement = document.activeElement;
|
432
|
+
this.el.addEventListener("calciteModalOpen", this.openEnd);
|
433
|
+
this.open = true;
|
434
|
+
this.isOpen = true;
|
435
|
+
const titleEl = dom.getSlotted(this.el, SLOTS.header);
|
436
|
+
const contentEl = dom.getSlotted(this.el, SLOTS.content);
|
437
|
+
this.titleId = dom.ensureId(titleEl);
|
438
|
+
this.contentId = dom.ensureId(contentEl);
|
439
|
+
document.documentElement.classList.add(CSS.overflowHidden);
|
440
|
+
}
|
441
|
+
removeOverflowHiddenClass() {
|
442
|
+
document.documentElement.classList.remove(CSS.overflowHidden);
|
443
|
+
}
|
444
|
+
get el() { return index.getElement(this); }
|
445
|
+
static get watchers() { return {
|
446
|
+
"active": ["activeHandler"],
|
447
|
+
"open": ["toggleModal"]
|
448
|
+
}; }
|
449
|
+
};
|
450
|
+
Modal.style = modalCss;
|
451
|
+
|
17
452
|
/** @license
|
18
453
|
* Copyright 2022 Esri
|
19
454
|
*
|
@@ -1454,7 +1889,7 @@ const SolutionConfiguration = class {
|
|
1454
1889
|
this._solutionEditorHasChanges = false;
|
1455
1890
|
this._solutionEditorHasErrors = false;
|
1456
1891
|
this._canSave = false;
|
1457
|
-
this.
|
1892
|
+
this.serializedAuthentication = "";
|
1458
1893
|
this.solutionItemId = "";
|
1459
1894
|
this.showLoading = false;
|
1460
1895
|
this._currentEditItemId = "";
|
@@ -1465,6 +1900,8 @@ const SolutionConfiguration = class {
|
|
1465
1900
|
this._templateHierarchy = [];
|
1466
1901
|
this._translations = undefined;
|
1467
1902
|
this._treeOpen = true;
|
1903
|
+
this._authentication = this.serializedAuthentication ? UserSession.deserialize(this.serializedAuthentication) : new UserSession({});
|
1904
|
+
console.log("CONFIG constructor " + this.solutionItemId); //???
|
1468
1905
|
void this._loadSolution(this.solutionItemId);
|
1469
1906
|
window.addEventListener("solutionStoreHasChanges", (evt) => {
|
1470
1907
|
this._updateSaveability(this._solutionStoreHasChanges = evt.detail, this._solutionEditorHasChanges, this._solutionEditorHasErrors);
|
@@ -1476,8 +1913,11 @@ const SolutionConfiguration = class {
|
|
1476
1913
|
this._updateSaveability(this._solutionStoreHasChanges, this._solutionEditorHasChanges, this._solutionEditorHasErrors = evt.detail);
|
1477
1914
|
});
|
1478
1915
|
}
|
1916
|
+
async serializedAuthenticationWatchHandler() {
|
1917
|
+
this._authentication = this.serializedAuthentication ? UserSession.deserialize(this.serializedAuthentication) : new UserSession({});
|
1918
|
+
}
|
1479
1919
|
async valueWatchHandler() {
|
1480
|
-
console.log("
|
1920
|
+
console.log("CONFIG watch " + this.solutionItemId); //???
|
1481
1921
|
await this._loadSolution(this.solutionItemId);
|
1482
1922
|
}
|
1483
1923
|
/**
|
@@ -1492,17 +1932,17 @@ const SolutionConfiguration = class {
|
|
1492
1932
|
* Renders the component.
|
1493
1933
|
*/
|
1494
1934
|
render() {
|
1495
|
-
console.log("render solution config " + this.solutionItemId); //???
|
1496
1935
|
const wkid = solutionStore.getProp(solutionStore.state.getStoreInfo("spatialReferenceInfo"), "spatialReference");
|
1497
1936
|
const hasServices = solutionStore.state.getStoreInfo("featureServices").length > 0;
|
1498
1937
|
const solutionData = solutionStore.state.getStoreInfo("solutionData");
|
1499
1938
|
this._solutionVariables = JSON.stringify(getSolutionVariables(solutionData.templates, this._translations));
|
1500
1939
|
this._organizationVariables = JSON.stringify(getOrganizationVariables(this._translations));
|
1940
|
+
console.log("CONFIG render " + this.solutionItemId); //???
|
1501
1941
|
return (index.h(index.Host, null, !this._solutionIsLoaded
|
1502
1942
|
? index.h("calcite-loader", { active: true, label: '' })
|
1503
1943
|
: null, index.h("div", { class: "configuration-container" }, index.h("div", { class: "configuration" }, index.h("calcite-tabs", { class: "config-tabs" }, index.h("calcite-tab-nav", { slot: "tab-nav" }, index.h("calcite-tab-title", null, this._translations.definitionTab), hasServices ?
|
1504
1944
|
index.h("calcite-tab-title", null, this._translations.spatialReferenceTab) :
|
1505
|
-
null), index.h("calcite-tab", { active: true, class: "config-tab" }, index.h("div", { class: "config-solution" }, index.h("div", { class: this._treeOpen ? "config-inventory" : "config-inventory-hide" }, index.h("solution-contents", { id: "configInventory", key: `${this.solutionItemId}-contents`, ref: (el) => (this._solutionContentsComponent = el) })), index.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 }), index.h("div", { class: "config-item" }, index.h("solution-item", { authentication: this.
|
1945
|
+
null), index.h("calcite-tab", { active: true, class: "config-tab" }, index.h("div", { class: "config-solution" }, index.h("div", { class: this._treeOpen ? "config-inventory" : "config-inventory-hide" }, index.h("solution-contents", { id: "configInventory", key: `${this.solutionItemId}-contents`, ref: (el) => (this._solutionContentsComponent = el) })), index.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 }), index.h("div", { class: "config-item" }, index.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
|
1506
1946
|
? index.h("calcite-tab", { class: "config-tab" }, index.h("div", { class: "config-solution" }, index.h("solution-spatial-ref", { defaultWkid: wkid, id: "configure-solution-spatial-ref", key: `${this.solutionItemId}-spatial-ref`, locked: !wkid, services: solutionStore.state.getStoreInfo("featureServices").map(fs => fs.name) })))
|
1507
1947
|
: null)))));
|
1508
1948
|
}
|
@@ -1570,7 +2010,7 @@ const SolutionConfiguration = class {
|
|
1570
2010
|
this.modelsSet = false;
|
1571
2011
|
state.reset();
|
1572
2012
|
}
|
1573
|
-
getModels(templates, this.
|
2013
|
+
getModels(templates, this._authentication, this.solutionItemId).then(models => {
|
1574
2014
|
state.models = models;
|
1575
2015
|
|
1576
2016
|
state.featureServices = getFeatureServices(templates);
|
@@ -1604,10 +2044,6 @@ const SolutionConfiguration = class {
|
|
1604
2044
|
if (this._templateHierarchy.length > 0) {
|
1605
2045
|
// Start with the first item in the contents
|
1606
2046
|
firstItem = solutionStore.state.getItemInfo(this._templateHierarchy[0].id);
|
1607
|
-
console.log("init with first item " + firstItem.itemId); //???
|
1608
|
-
}
|
1609
|
-
else {
|
1610
|
-
console.log("no initial first item"); //???
|
1611
2047
|
}
|
1612
2048
|
this._currentEditItemId = firstItem ? firstItem.itemId : "";
|
1613
2049
|
}
|
@@ -1623,7 +2059,7 @@ const SolutionConfiguration = class {
|
|
1623
2059
|
async _loadSolution(solutionItemId) {
|
1624
2060
|
if (solutionItemId) {
|
1625
2061
|
this._solutionIsLoaded = false;
|
1626
|
-
await solutionStore.state.loadSolution(solutionItemId, this.
|
2062
|
+
await solutionStore.state.loadSolution(solutionItemId, this._authentication);
|
1627
2063
|
this._initProps();
|
1628
2064
|
this._solutionIsLoaded = true;
|
1629
2065
|
}
|
@@ -1686,7 +2122,7 @@ const SolutionConfiguration = class {
|
|
1686
2122
|
this.solutionItemId,
|
1687
2123
|
data,
|
1688
2124
|
state.models,
|
1689
|
-
this.
|
2125
|
+
this._authentication,
|
1690
2126
|
this._translations
|
1691
2127
|
).then(saveResult => {
|
1692
2128
|
// need to trigger re-render...and re-fetch
|
@@ -1980,11 +2416,13 @@ const SolutionConfiguration = class {
|
|
1980
2416
|
}
|
1981
2417
|
get el() { return index.getElement(this); }
|
1982
2418
|
static get watchers() { return {
|
2419
|
+
"serializedAuthentication": ["serializedAuthenticationWatchHandler"],
|
1983
2420
|
"solutionItemId": ["valueWatchHandler"]
|
1984
2421
|
}; }
|
1985
2422
|
};
|
1986
2423
|
SolutionConfiguration.style = solutionConfigurationCss;
|
1987
2424
|
|
2425
|
+
exports.calcite_modal = Modal;
|
1988
2426
|
exports.solution_configuration = SolutionConfiguration;
|
1989
2427
|
|
1990
|
-
//# sourceMappingURL=
|
2428
|
+
//# sourceMappingURL=calcite-modal_2.cjs.entry.js.map
|