@esri/calcite-components 1.0.0-next.365 → 1.0.0-next.366

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/dist/calcite/calcite.esm.js +1 -1
  2. package/dist/calcite/p-0282fd8b.system.entry.js +5 -0
  3. package/dist/calcite/p-050ff462.entry.js +5 -0
  4. package/dist/calcite/p-05b03971.system.entry.js +5 -0
  5. package/dist/calcite/p-08847812.entry.js +5 -0
  6. package/dist/calcite/p-1bcce6c9.entry.js +5 -0
  7. package/dist/calcite/p-1ef9235e.system.entry.js +5 -0
  8. package/dist/calcite/p-25ed6059.entry.js +5 -0
  9. package/dist/calcite/p-40cbbd20.entry.js +5 -0
  10. package/dist/calcite/p-4347fde9.system.entry.js +5 -0
  11. package/dist/calcite/p-43cd4b9b.entry.js +5 -0
  12. package/dist/calcite/p-55e2658e.entry.js +5 -0
  13. package/dist/calcite/p-5682a918.entry.js +5 -0
  14. package/dist/calcite/p-597b782e.system.entry.js +5 -0
  15. package/dist/calcite/p-60e4f404.entry.js +5 -0
  16. package/dist/calcite/p-660c8077.js +5 -0
  17. package/dist/calcite/p-7279ccf9.entry.js +5 -0
  18. package/dist/calcite/p-832d7f68.system.entry.js +5 -0
  19. package/dist/calcite/p-888a152c.system.entry.js +5 -0
  20. package/dist/calcite/p-946c3bed.system.entry.js +5 -0
  21. package/dist/calcite/p-94717214.entry.js +5 -0
  22. package/dist/calcite/p-953259af.entry.js +5 -0
  23. package/dist/calcite/p-99d32fc3.system.js +1 -1
  24. package/dist/calcite/p-9b723fdd.system.entry.js +5 -0
  25. package/dist/calcite/p-9fe77a88.system.entry.js +5 -0
  26. package/dist/calcite/p-a52288cd.system.entry.js +5 -0
  27. package/dist/calcite/p-a71d17b4.entry.js +5 -0
  28. package/dist/calcite/p-aea7c650.system.entry.js +5 -0
  29. package/dist/calcite/p-af7ed41f.system.entry.js +5 -0
  30. package/dist/calcite/p-b14e0be5.system.entry.js +5 -0
  31. package/dist/calcite/p-b53b28e3.system.js +5 -0
  32. package/dist/calcite/p-b88d7391.entry.js +5 -0
  33. package/dist/calcite/p-ba915998.entry.js +5 -0
  34. package/dist/calcite/p-dd4457cd.entry.js +5 -0
  35. package/dist/calcite/p-eff2fb8c.system.entry.js +5 -0
  36. package/dist/calcite/p-fd57beb5.system.entry.js +5 -0
  37. package/dist/cjs/calcite-action-bar.cjs.entry.js +3 -24
  38. package/dist/cjs/calcite-action-group.cjs.entry.js +13 -0
  39. package/dist/cjs/calcite-action-menu.cjs.entry.js +3 -0
  40. package/dist/cjs/calcite-action-pad.cjs.entry.js +8 -0
  41. package/dist/cjs/calcite-block_2.cjs.entry.js +14 -1
  42. package/dist/cjs/calcite-chip.cjs.entry.js +14 -1
  43. package/dist/cjs/calcite-list_3.cjs.entry.js +13 -0
  44. package/dist/cjs/calcite-modal.cjs.entry.js +5 -2
  45. package/dist/cjs/calcite-notice.cjs.entry.js +8 -0
  46. package/dist/cjs/calcite-panel.cjs.entry.js +18 -12
  47. package/dist/cjs/calcite-pick-list_3.cjs.entry.js +23 -0
  48. package/dist/cjs/calcite-shell_3.cjs.entry.js +35 -7
  49. package/dist/cjs/calcite-tile.cjs.entry.js +13 -0
  50. package/dist/cjs/calcite-tip_3.cjs.entry.js +13 -1
  51. package/dist/cjs/calcite-tree_2.cjs.entry.js +6 -0
  52. package/dist/cjs/calcite-value-list_2.cjs.entry.js +12 -0
  53. package/dist/cjs/conditionalSlot-e874fbb0.js +43 -0
  54. package/dist/collection/components/calcite-action-group/calcite-action-group.js +12 -0
  55. package/dist/collection/components/calcite-action-menu/calcite-action-menu.js +3 -0
  56. package/dist/collection/components/calcite-action-pad/calcite-action-pad.js +7 -0
  57. package/dist/collection/components/calcite-block/calcite-block.js +13 -1
  58. package/dist/collection/components/calcite-chip/calcite-chip.js +13 -1
  59. package/dist/collection/components/calcite-list-item/calcite-list-item.js +12 -0
  60. package/dist/collection/components/calcite-modal/calcite-modal.js +5 -2
  61. package/dist/collection/components/calcite-notice/calcite-notice.js +7 -0
  62. package/dist/collection/components/calcite-panel/calcite-panel.js +19 -14
  63. package/dist/collection/components/calcite-pick-list-group/calcite-pick-list-group.js +12 -0
  64. package/dist/collection/components/calcite-pick-list-item/calcite-pick-list-item.js +12 -0
  65. package/dist/collection/components/calcite-shell/calcite-shell.js +14 -2
  66. package/dist/collection/components/calcite-shell-center-row/calcite-shell-center-row.js +13 -1
  67. package/dist/collection/components/calcite-shell-panel/calcite-shell-panel.js +9 -4
  68. package/dist/collection/components/calcite-tile/calcite-tile.js +12 -0
  69. package/dist/collection/components/calcite-tip/calcite-tip.js +13 -1
  70. package/dist/collection/components/calcite-tree-item/calcite-tree-item.js +5 -0
  71. package/dist/collection/components/calcite-value-list-item/calcite-value-list-item.js +12 -0
  72. package/dist/collection/utils/conditionalSlot.js +22 -11
  73. package/dist/components/calcite-action-bar.js +2 -23
  74. package/dist/components/calcite-action-group2.js +12 -0
  75. package/dist/components/calcite-action-menu2.js +3 -0
  76. package/dist/components/calcite-action-pad.js +7 -0
  77. package/dist/components/calcite-block.js +13 -1
  78. package/dist/components/calcite-chip2.js +13 -1
  79. package/dist/components/calcite-list-item.js +12 -0
  80. package/dist/components/calcite-modal.js +5 -2
  81. package/dist/components/calcite-notice.js +7 -0
  82. package/dist/components/calcite-panel.js +17 -12
  83. package/dist/components/calcite-pick-list-group.js +12 -0
  84. package/dist/components/calcite-pick-list-item2.js +12 -0
  85. package/dist/components/calcite-shell-center-row.js +13 -1
  86. package/dist/components/calcite-shell-panel.js +9 -4
  87. package/dist/components/calcite-shell.js +14 -2
  88. package/dist/components/calcite-tile2.js +12 -0
  89. package/dist/components/calcite-tip.js +13 -1
  90. package/dist/components/calcite-tree-item.js +5 -0
  91. package/dist/components/calcite-value-list-item.js +12 -0
  92. package/dist/components/conditionalSlot.js +40 -0
  93. package/dist/custom-elements/index.js +194 -35
  94. package/dist/esm/calcite-action-bar.entry.js +2 -23
  95. package/dist/esm/calcite-action-group.entry.js +13 -0
  96. package/dist/esm/calcite-action-menu.entry.js +3 -0
  97. package/dist/esm/calcite-action-pad.entry.js +8 -0
  98. package/dist/esm/calcite-block_2.entry.js +14 -1
  99. package/dist/esm/calcite-chip.entry.js +14 -1
  100. package/dist/esm/calcite-list_3.entry.js +13 -0
  101. package/dist/esm/calcite-modal.entry.js +5 -2
  102. package/dist/esm/calcite-notice.entry.js +8 -0
  103. package/dist/esm/calcite-panel.entry.js +18 -12
  104. package/dist/esm/calcite-pick-list_3.entry.js +23 -0
  105. package/dist/esm/calcite-shell_3.entry.js +35 -7
  106. package/dist/esm/calcite-tile.entry.js +13 -0
  107. package/dist/esm/calcite-tip_3.entry.js +13 -1
  108. package/dist/esm/calcite-tree_2.entry.js +6 -0
  109. package/dist/esm/calcite-value-list_2.entry.js +12 -0
  110. package/dist/esm/conditionalSlot-0c4ea23a.js +40 -0
  111. package/dist/esm-es5/calcite-action-bar.entry.js +2 -2
  112. package/dist/esm-es5/calcite-action-group.entry.js +1 -1
  113. package/dist/esm-es5/calcite-action-menu.entry.js +2 -2
  114. package/dist/esm-es5/calcite-action-pad.entry.js +2 -2
  115. package/dist/esm-es5/calcite-block_2.entry.js +1 -1
  116. package/dist/esm-es5/calcite-chip.entry.js +2 -2
  117. package/dist/esm-es5/calcite-list_3.entry.js +1 -1
  118. package/dist/esm-es5/calcite-modal.entry.js +1 -1
  119. package/dist/esm-es5/calcite-notice.entry.js +2 -2
  120. package/dist/esm-es5/calcite-panel.entry.js +2 -2
  121. package/dist/esm-es5/calcite-pick-list_3.entry.js +1 -1
  122. package/dist/esm-es5/calcite-shell_3.entry.js +1 -1
  123. package/dist/esm-es5/calcite-tile.entry.js +1 -1
  124. package/dist/esm-es5/calcite-tip_3.entry.js +1 -1
  125. package/dist/esm-es5/calcite-tree_2.entry.js +1 -1
  126. package/dist/esm-es5/calcite-value-list_2.entry.js +1 -1
  127. package/dist/esm-es5/conditionalSlot-0c4ea23a.js +5 -0
  128. package/dist/extras/docs-json.json +1 -1
  129. package/dist/types/components/calcite-action-group/calcite-action-group.d.ts +4 -1
  130. package/dist/types/components/calcite-action-menu/calcite-action-menu.d.ts +2 -1
  131. package/dist/types/components/calcite-action-pad/calcite-action-pad.d.ts +4 -1
  132. package/dist/types/components/calcite-block/calcite-block.d.ts +4 -1
  133. package/dist/types/components/calcite-chip/calcite-chip.d.ts +4 -1
  134. package/dist/types/components/calcite-list-item/calcite-list-item.d.ts +4 -1
  135. package/dist/types/components/calcite-modal/calcite-modal.d.ts +2 -1
  136. package/dist/types/components/calcite-notice/calcite-notice.d.ts +4 -1
  137. package/dist/types/components/calcite-panel/calcite-panel.d.ts +5 -6
  138. package/dist/types/components/calcite-pick-list-group/calcite-pick-list-group.d.ts +4 -1
  139. package/dist/types/components/calcite-pick-list-item/calcite-pick-list-item.d.ts +4 -1
  140. package/dist/types/components/calcite-shell/calcite-shell.d.ts +4 -1
  141. package/dist/types/components/calcite-shell-center-row/calcite-shell-center-row.d.ts +4 -1
  142. package/dist/types/components/calcite-shell-panel/calcite-shell-panel.d.ts +3 -1
  143. package/dist/types/components/calcite-tile/calcite-tile.d.ts +4 -1
  144. package/dist/types/components/calcite-tip/calcite-tip.d.ts +4 -1
  145. package/dist/types/components/calcite-tree-item/calcite-tree-item.d.ts +3 -1
  146. package/dist/types/components/calcite-value-list-item/calcite-value-list-item.d.ts +4 -1
  147. package/hydrate/index.js +194 -35
  148. package/package.json +1 -1
  149. package/dist/calcite/p-0af820bf.entry.js +0 -5
  150. package/dist/calcite/p-0cf878ed.system.entry.js +0 -5
  151. package/dist/calcite/p-1d7a9909.system.entry.js +0 -5
  152. package/dist/calcite/p-253efee4.entry.js +0 -5
  153. package/dist/calcite/p-2618de8a.entry.js +0 -5
  154. package/dist/calcite/p-273cd5ab.entry.js +0 -5
  155. package/dist/calcite/p-2a8938c7.system.entry.js +0 -5
  156. package/dist/calcite/p-2c954eaa.system.entry.js +0 -5
  157. package/dist/calcite/p-37bddb73.system.entry.js +0 -5
  158. package/dist/calcite/p-3ab992ff.system.entry.js +0 -5
  159. package/dist/calcite/p-3b73b785.system.entry.js +0 -5
  160. package/dist/calcite/p-4659df78.entry.js +0 -5
  161. package/dist/calcite/p-54e271c9.system.entry.js +0 -5
  162. package/dist/calcite/p-5df1936f.entry.js +0 -5
  163. package/dist/calcite/p-698167ac.entry.js +0 -5
  164. package/dist/calcite/p-7d355abe.system.entry.js +0 -5
  165. package/dist/calcite/p-8d36bc7c.entry.js +0 -5
  166. package/dist/calcite/p-9d81d229.entry.js +0 -5
  167. package/dist/calcite/p-a0043c61.entry.js +0 -5
  168. package/dist/calcite/p-a1f65f6e.entry.js +0 -5
  169. package/dist/calcite/p-a4dec1f6.system.entry.js +0 -5
  170. package/dist/calcite/p-a9c50960.system.entry.js +0 -5
  171. package/dist/calcite/p-aaed1677.entry.js +0 -5
  172. package/dist/calcite/p-ac778725.system.entry.js +0 -5
  173. package/dist/calcite/p-ac8cf248.entry.js +0 -5
  174. package/dist/calcite/p-b4d3f1c1.entry.js +0 -5
  175. package/dist/calcite/p-c0ed9eff.entry.js +0 -5
  176. package/dist/calcite/p-cb9cd28c.system.entry.js +0 -5
  177. package/dist/calcite/p-d578e568.system.entry.js +0 -5
  178. package/dist/calcite/p-e564004a.system.entry.js +0 -5
  179. package/dist/calcite/p-f6fc151d.system.entry.js +0 -5
  180. package/dist/calcite/p-f73124d0.entry.js +0 -5
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { HTMLElement, h, Fragment, proxyCustomElement } from '@stencil/core/internal/client';
6
6
  import { b as getSlotted } from './dom.js';
7
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
7
8
 
8
9
  const CSS = {
9
10
  main: "main",
@@ -39,12 +40,23 @@ let CalciteShell$1 = class extends HTMLElement {
39
40
  }
40
41
  // --------------------------------------------------------------------------
41
42
  //
43
+ // Lifecycle
44
+ //
45
+ // --------------------------------------------------------------------------
46
+ connectedCallback() {
47
+ connectConditionalSlotComponent(this);
48
+ }
49
+ disconnectedCallback() {
50
+ disconnectConditionalSlotComponent(this);
51
+ }
52
+ // --------------------------------------------------------------------------
53
+ //
42
54
  // Render Methods
43
55
  //
44
56
  // --------------------------------------------------------------------------
45
57
  renderHeader() {
46
58
  const hasHeader = !!getSlotted(this.el, SLOTS.header);
47
- return hasHeader ? h("slot", { name: SLOTS.header }) : null;
59
+ return hasHeader ? h("slot", { key: "header", name: SLOTS.header }) : null;
48
60
  }
49
61
  renderContent() {
50
62
  const content = !!this.contentBehind
@@ -62,7 +74,7 @@ let CalciteShell$1 = class extends HTMLElement {
62
74
  }
63
75
  renderFooter() {
64
76
  const hasFooter = !!getSlotted(this.el, SLOTS.footer);
65
- return hasFooter ? (h("div", { class: CSS.footer }, h("slot", { name: SLOTS.footer }))) : null;
77
+ return hasFooter ? (h("div", { class: CSS.footer, key: "footer" }, h("slot", { name: SLOTS.footer }))) : null;
66
78
  }
67
79
  renderMain() {
68
80
  const primaryPanel = getSlotted(this.el, SLOTS.primaryPanel);
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { HTMLElement, h, Fragment, proxyCustomElement } from '@stencil/core/internal/client';
6
6
  import { b as getSlotted } from './dom.js';
7
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
7
8
  import { d as defineCustomElement$2 } from './calcite-icon2.js';
8
9
  import { d as defineCustomElement$1 } from './calcite-link2.js';
9
10
 
@@ -42,6 +43,17 @@ let CalciteTile = class extends HTMLElement {
42
43
  }
43
44
  // --------------------------------------------------------------------------
44
45
  //
46
+ // Lifecycle
47
+ //
48
+ // --------------------------------------------------------------------------
49
+ connectedCallback() {
50
+ connectConditionalSlotComponent(this);
51
+ }
52
+ disconnectedCallback() {
53
+ disconnectConditionalSlotComponent(this);
54
+ }
55
+ // --------------------------------------------------------------------------
56
+ //
45
57
  // Render Methods
46
58
  //
47
59
  // --------------------------------------------------------------------------
@@ -6,6 +6,7 @@ import { HTMLElement, createEvent, h, Fragment, proxyCustomElement } from '@sten
6
6
  import { H as HEADING_LEVEL$1 } from './resources4.js';
7
7
  import { b as getSlotted } from './dom.js';
8
8
  import { C as CalciteHeading, c as constrainHeadingLevel } from './CalciteHeading.js';
9
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
9
10
  import { d as defineCustomElement$4 } from './calcite-action2.js';
10
11
  import { d as defineCustomElement$3 } from './calcite-icon2.js';
11
12
  import { d as defineCustomElement$2 } from './calcite-loader2.js';
@@ -67,6 +68,17 @@ let CalciteTip$1 = class extends HTMLElement {
67
68
  }
68
69
  // --------------------------------------------------------------------------
69
70
  //
71
+ // Lifecycle
72
+ //
73
+ // --------------------------------------------------------------------------
74
+ connectedCallback() {
75
+ connectConditionalSlotComponent(this);
76
+ }
77
+ disconnectedCallback() {
78
+ disconnectConditionalSlotComponent(this);
79
+ }
80
+ // --------------------------------------------------------------------------
81
+ //
70
82
  // Render Methods
71
83
  //
72
84
  // --------------------------------------------------------------------------
@@ -85,7 +97,7 @@ let CalciteTip$1 = class extends HTMLElement {
85
97
  }
86
98
  renderImageFrame() {
87
99
  const { el } = this;
88
- return getSlotted(el, SLOTS.thumbnail) ? (h("div", { class: CSS.imageFrame }, h("slot", { name: SLOTS.thumbnail }))) : null;
100
+ return getSlotted(el, SLOTS.thumbnail) ? (h("div", { class: CSS.imageFrame, key: "thumbnail" }, h("slot", { name: SLOTS.thumbnail }))) : null;
89
101
  }
90
102
  renderInfoNode() {
91
103
  return (h("div", { class: CSS.info }, h("slot", null)));
@@ -5,6 +5,7 @@
5
5
  import { HTMLElement, createEvent, h, Host, proxyCustomElement } from '@stencil/core/internal/client';
6
6
  import { T as TreeSelectionMode } from './interfaces2.js';
7
7
  import { b as getSlotted, a as getElementDir, C as CSS_UTILITY, e as filterDirectChildren, n as nodeListToArray } from './dom.js';
8
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
8
9
  import { d as defineCustomElement$3 } from './calcite-checkbox2.js';
9
10
  import { d as defineCustomElement$2 } from './calcite-icon2.js';
10
11
 
@@ -99,6 +100,10 @@ let CalciteTreeItem$1 = class extends HTMLElement {
99
100
  const { expanded } = this.parentTreeItem;
100
101
  this.updateParentIsExpanded(this.parentTreeItem, expanded);
101
102
  }
103
+ connectConditionalSlotComponent(this);
104
+ }
105
+ disconnectedCallback() {
106
+ disconnectConditionalSlotComponent(this);
102
107
  }
103
108
  componentWillRender() {
104
109
  this.hasChildren = !!this.el.querySelector("calcite-tree");
@@ -7,6 +7,7 @@ import { I as ICON_TYPES } from './resources3.js';
7
7
  import { g as guid } from './guid.js';
8
8
  import { S as SLOTS$1, a as CSS, d as defineCustomElement$2 } from './calcite-pick-list-item2.js';
9
9
  import { b as getSlotted } from './dom.js';
10
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
10
11
  import { d as defineCustomElement$5 } from './calcite-action2.js';
11
12
  import { d as defineCustomElement$4 } from './calcite-icon2.js';
12
13
  import { d as defineCustomElement$3 } from './calcite-loader2.js';
@@ -78,6 +79,17 @@ let CalciteValueListItem$1 = class extends HTMLElement {
78
79
  }
79
80
  // --------------------------------------------------------------------------
80
81
  //
82
+ // Lifecycle
83
+ //
84
+ // --------------------------------------------------------------------------
85
+ connectedCallback() {
86
+ connectConditionalSlotComponent(this);
87
+ }
88
+ disconnectedCallback() {
89
+ disconnectConditionalSlotComponent(this);
90
+ }
91
+ // --------------------------------------------------------------------------
92
+ //
81
93
  // Public Methods
82
94
  //
83
95
  // --------------------------------------------------------------------------
@@ -0,0 +1,40 @@
1
+ /*!
2
+ * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
4
+ */
5
+ import { forceUpdate } from '@stencil/core/internal/client';
6
+ import { c as createObserver } from './observers.js';
7
+
8
+ const observed = new Set();
9
+ let mutationObserver;
10
+ const observerOptions = { childList: true };
11
+ /**
12
+ * Helper to set up a conditional slot component on connectedCallback.
13
+ */
14
+ function connectConditionalSlotComponent(component) {
15
+ if (!mutationObserver) {
16
+ mutationObserver = createObserver("mutation", processMutations);
17
+ }
18
+ mutationObserver.observe(component.el, observerOptions);
19
+ }
20
+ /**
21
+ * Helper to tear down a conditional slot component on disconnectedCallback.
22
+ */
23
+ function disconnectConditionalSlotComponent(component) {
24
+ observed.delete(component.el);
25
+ // we explicitly process queued mutations and disconnect and reconnect
26
+ // the observer until MutationObserver gets an `unobserve` method
27
+ // see https://github.com/whatwg/dom/issues/126
28
+ processMutations(mutationObserver.takeRecords());
29
+ mutationObserver.disconnect();
30
+ for (const [element] of observed.entries()) {
31
+ mutationObserver.observe(element, observerOptions);
32
+ }
33
+ }
34
+ function processMutations(mutations) {
35
+ mutations.forEach(({ target }) => {
36
+ forceUpdate(target);
37
+ });
38
+ }
39
+
40
+ export { connectConditionalSlotComponent as c, disconnectConditionalSlotComponent as d };
@@ -1979,26 +1979,36 @@ function throttle$1(func, wait, options) {
1979
1979
  });
1980
1980
  }
1981
1981
 
1982
- const slotChangedMap = new WeakMap();
1983
- function onSlotChange() {
1984
- forceUpdate(this);
1985
- }
1986
- const eventType = "slotchange";
1982
+ const observed = new Set();
1983
+ let mutationObserver;
1984
+ const observerOptions = { childList: true };
1987
1985
  /**
1988
1986
  * Helper to set up a conditional slot component on connectedCallback.
1989
1987
  */
1990
1988
  function connectConditionalSlotComponent(component) {
1991
- const boundSlotChange = onSlotChange.bind(component);
1992
- component.el.shadowRoot.addEventListener(eventType, boundSlotChange);
1993
- slotChangedMap.set(component, boundSlotChange);
1989
+ if (!mutationObserver) {
1990
+ mutationObserver = createObserver("mutation", processMutations);
1991
+ }
1992
+ mutationObserver.observe(component.el, observerOptions);
1994
1993
  }
1995
1994
  /**
1996
1995
  * Helper to tear down a conditional slot component on disconnectedCallback.
1997
1996
  */
1998
1997
  function disconnectConditionalSlotComponent(component) {
1999
- const boundSlotChange = slotChangedMap.get(component);
2000
- component.el.shadowRoot.removeEventListener(eventType, boundSlotChange);
2001
- slotChangedMap.delete(component);
1998
+ observed.delete(component.el);
1999
+ // we explicitly process queued mutations and disconnect and reconnect
2000
+ // the observer until MutationObserver gets an `unobserve` method
2001
+ // see https://github.com/whatwg/dom/issues/126
2002
+ processMutations(mutationObserver.takeRecords());
2003
+ mutationObserver.disconnect();
2004
+ for (const [element] of observed.entries()) {
2005
+ mutationObserver.observe(element, observerOptions);
2006
+ }
2007
+ }
2008
+ function processMutations(mutations) {
2009
+ mutations.forEach(({ target }) => {
2010
+ forceUpdate(target);
2011
+ });
2002
2012
  }
2003
2013
 
2004
2014
  const calciteActionBarCss = "@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 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;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:host{-webkit-box-sizing:border-box;box-sizing:border-box;background-color:var(--calcite-ui-foreground-1);color:var(--calcite-ui-text-2);font-size:var(--calcite-font-size--1)}:host *{-webkit-box-sizing:border-box;box-sizing:border-box}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{pointer-events:auto;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:stretch;align-self:stretch;max-width:15vw}:host([overflow-actions-disabled]){overflow-y:auto}:host([expanded]){max-width:20vw}::slotted(calcite-action-group){border-width:0px;border-bottom-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3)}::slotted(calcite-action-group:last-child){border-bottom-width:0px}.action-group--bottom{-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:end;justify-content:flex-end;padding-bottom:0px}";
@@ -2217,6 +2227,17 @@ let CalciteActionGroup$1 = class extends HTMLElement$1 {
2217
2227
  }
2218
2228
  // --------------------------------------------------------------------------
2219
2229
  //
2230
+ // Lifecycle
2231
+ //
2232
+ // --------------------------------------------------------------------------
2233
+ connectedCallback() {
2234
+ connectConditionalSlotComponent(this);
2235
+ }
2236
+ disconnectedCallback() {
2237
+ disconnectConditionalSlotComponent(this);
2238
+ }
2239
+ // --------------------------------------------------------------------------
2240
+ //
2220
2241
  // Component Methods
2221
2242
  //
2222
2243
  // --------------------------------------------------------------------------
@@ -2456,11 +2477,13 @@ let CalciteActionMenu$1 = class extends HTMLElement$1 {
2456
2477
  var _a;
2457
2478
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });
2458
2479
  this.getActions();
2480
+ connectConditionalSlotComponent(this);
2459
2481
  }
2460
2482
  disconnectedCallback() {
2461
2483
  var _a;
2462
2484
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
2463
2485
  this.disconnectMenuButtonEl();
2486
+ disconnectConditionalSlotComponent(this);
2464
2487
  }
2465
2488
  expandedHandler() {
2466
2489
  this.open = false;
@@ -2598,6 +2621,12 @@ let CalciteActionPad$1 = class extends HTMLElement$1 {
2598
2621
  // Lifecycle
2599
2622
  //
2600
2623
  // --------------------------------------------------------------------------
2624
+ connectedCallback() {
2625
+ connectConditionalSlotComponent(this);
2626
+ }
2627
+ disconnectedCallback() {
2628
+ disconnectConditionalSlotComponent(this);
2629
+ }
2601
2630
  componentWillLoad() {
2602
2631
  const { el, expandDisabled, expanded } = this;
2603
2632
  if (!expandDisabled) {
@@ -3191,6 +3220,17 @@ let CalciteBlock$1 = class extends HTMLElement$1 {
3191
3220
  }
3192
3221
  // --------------------------------------------------------------------------
3193
3222
  //
3223
+ // Lifecycle
3224
+ //
3225
+ // --------------------------------------------------------------------------
3226
+ connectedCallback() {
3227
+ connectConditionalSlotComponent(this);
3228
+ }
3229
+ disconnectedCallback() {
3230
+ disconnectConditionalSlotComponent(this);
3231
+ }
3232
+ // --------------------------------------------------------------------------
3233
+ //
3194
3234
  // Render Methods
3195
3235
  //
3196
3236
  // --------------------------------------------------------------------------
@@ -3204,7 +3244,7 @@ let CalciteBlock$1 = class extends HTMLElement$1 {
3204
3244
  const showingLoadingStatus = this.loading && !this.open;
3205
3245
  const statusIcon = showingLoadingStatus ? ICONS$c.refresh : ICONS$c[status];
3206
3246
  const hasIcon = getSlotted(el, SLOTS$k.icon) || statusIcon;
3207
- const iconEl = !statusIcon ? (h("slot", { name: SLOTS$k.icon })) : (h("calcite-icon", { class: {
3247
+ const iconEl = !statusIcon ? (h("slot", { key: "icon-slot", name: SLOTS$k.icon })) : (h("calcite-icon", { class: {
3208
3248
  [CSS$L.statusIcon]: true,
3209
3249
  [CSS$L.valid]: status == "valid",
3210
3250
  [CSS$L.invalid]: status == "invalid",
@@ -4048,6 +4088,17 @@ let CalciteChip$1 = class extends HTMLElement$1 {
4048
4088
  };
4049
4089
  this.guid = guid();
4050
4090
  }
4091
+ // --------------------------------------------------------------------------
4092
+ //
4093
+ // Lifecycle
4094
+ //
4095
+ // --------------------------------------------------------------------------
4096
+ connectedCallback() {
4097
+ connectConditionalSlotComponent(this);
4098
+ }
4099
+ disconnectedCallback() {
4100
+ disconnectConditionalSlotComponent(this);
4101
+ }
4051
4102
  //--------------------------------------------------------------------------
4052
4103
  //
4053
4104
  // Public Methods
@@ -4066,7 +4117,7 @@ let CalciteChip$1 = class extends HTMLElement$1 {
4066
4117
  renderChipImage() {
4067
4118
  const { el } = this;
4068
4119
  const hasChipImage = getSlotted(el, SLOTS$i.image);
4069
- return hasChipImage ? (h("div", { class: CSS$H.chipImageContainer }, h("slot", { name: SLOTS$i.image }))) : null;
4120
+ return hasChipImage ? (h("div", { class: CSS$H.chipImageContainer, key: "image" }, h("slot", { name: SLOTS$i.image }))) : null;
4070
4121
  }
4071
4122
  render() {
4072
4123
  const iconEl = (h("calcite-icon", { class: CSS$H.calciteChipIcon, flipRtl: this.iconFlipRtl, icon: this.icon, scale: "s" }));
@@ -14426,6 +14477,17 @@ let CalciteListItem$1 = class extends HTMLElement$1 {
14426
14477
  }
14427
14478
  // --------------------------------------------------------------------------
14428
14479
  //
14480
+ // Lifecycle
14481
+ //
14482
+ // --------------------------------------------------------------------------
14483
+ connectedCallback() {
14484
+ connectConditionalSlotComponent(this);
14485
+ }
14486
+ disconnectedCallback() {
14487
+ disconnectConditionalSlotComponent(this);
14488
+ }
14489
+ // --------------------------------------------------------------------------
14490
+ //
14429
14491
  // Public Methods
14430
14492
  //
14431
14493
  // --------------------------------------------------------------------------
@@ -14815,11 +14877,13 @@ let CalciteModal$1 = class extends HTMLElement$1 {
14815
14877
  var _a;
14816
14878
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });
14817
14879
  this.updateFooterVisibility();
14880
+ connectConditionalSlotComponent(this);
14818
14881
  }
14819
14882
  disconnectedCallback() {
14820
14883
  var _a;
14821
14884
  this.removeOverflowHiddenClass();
14822
14885
  (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
14886
+ disconnectConditionalSlotComponent(this);
14823
14887
  }
14824
14888
  render() {
14825
14889
  return (h(Host, { "aria-describedby": this.contentId, "aria-labelledby": this.titleId, "aria-modal": "true", role: "dialog" }, h("calcite-scrim", { class: CSS$n.scrim, onClick: this.handleOutsideClose }), this.renderStyle(), h("div", { class: "modal", onTransitionEnd: this.transitionEnd }, h("div", { "data-focus-fence": true, onFocus: this.focusLastElement, tabindex: "0" }), h("div", { class: CSS$n.header }, this.renderCloseButton(), h("header", { class: CSS$n.title }, h("slot", { name: CSS$n.header }))), h("div", { class: {
@@ -14829,10 +14893,10 @@ let CalciteModal$1 = class extends HTMLElement$1 {
14829
14893
  }, ref: (el) => (this.modalContent = el) }, h("slot", { name: SLOTS$e.content })), this.renderFooter(), h("div", { "data-focus-fence": true, onFocus: this.focusFirstElement, tabindex: "0" }))));
14830
14894
  }
14831
14895
  renderFooter() {
14832
- return this.hasFooter ? (h("div", { class: CSS$n.footer }, h("span", { class: CSS$n.back }, h("slot", { name: SLOTS$e.back })), h("span", { class: CSS$n.secondary }, h("slot", { name: SLOTS$e.secondary })), h("span", { class: CSS$n.primary }, h("slot", { name: SLOTS$e.primary })))) : null;
14896
+ return this.hasFooter ? (h("div", { class: CSS$n.footer, key: "footer" }, h("span", { class: CSS$n.back }, h("slot", { name: SLOTS$e.back })), h("span", { class: CSS$n.secondary }, h("slot", { name: SLOTS$e.secondary })), h("span", { class: CSS$n.primary }, h("slot", { name: SLOTS$e.primary })))) : null;
14833
14897
  }
14834
14898
  renderCloseButton() {
14835
- return !this.disableCloseButton ? (h("button", { "aria-label": this.intlClose, class: CSS$n.close, onClick: this.close, ref: (el) => (this.closeButtonEl = el), title: this.intlClose }, h("calcite-icon", { icon: ICONS$6.close, scale: this.scale === "s" ? "s" : this.scale === "m" ? "m" : this.scale === "l" ? "l" : null }))) : null;
14899
+ return !this.disableCloseButton ? (h("button", { "aria-label": this.intlClose, class: CSS$n.close, key: "button", onClick: this.close, ref: (el) => (this.closeButtonEl = el), title: this.intlClose }, h("calcite-icon", { icon: ICONS$6.close, scale: this.scale === "s" ? "s" : this.scale === "m" ? "m" : this.scale === "l" ? "l" : null }))) : null;
14836
14900
  }
14837
14901
  renderStyle() {
14838
14902
  const hasCustomWidth = !isNaN(parseInt(`${this.width}`));
@@ -14997,6 +15061,12 @@ let CalciteNotice$1 = class extends HTMLElement$1 {
14997
15061
  // Lifecycle
14998
15062
  //
14999
15063
  //--------------------------------------------------------------------------
15064
+ connectedCallback() {
15065
+ connectConditionalSlotComponent(this);
15066
+ }
15067
+ disconnectedCallback() {
15068
+ disconnectConditionalSlotComponent(this);
15069
+ }
15000
15070
  componentWillLoad() {
15001
15071
  this.requestedIcon = setRequestedIcon(StatusIcons, this.icon, this.color);
15002
15072
  }
@@ -15435,6 +15505,17 @@ let CalcitePanel$1 = class extends HTMLElement$1 {
15435
15505
  }
15436
15506
  // --------------------------------------------------------------------------
15437
15507
  //
15508
+ // Lifecycle
15509
+ //
15510
+ // --------------------------------------------------------------------------
15511
+ connectedCallback() {
15512
+ connectConditionalSlotComponent(this);
15513
+ }
15514
+ disconnectedCallback() {
15515
+ disconnectConditionalSlotComponent(this);
15516
+ }
15517
+ // --------------------------------------------------------------------------
15518
+ //
15438
15519
  // Methods
15439
15520
  //
15440
15521
  // --------------------------------------------------------------------------
@@ -15474,7 +15555,7 @@ let CalcitePanel$1 = class extends HTMLElement$1 {
15474
15555
  * Allows user to override the entire header-content node.
15475
15556
  */
15476
15557
  renderHeaderSlottedContent() {
15477
- return (h("div", { class: CSS$k.headerContent, key: "header-content" }, h("slot", { name: SLOTS$c.headerContent })));
15558
+ return (h("div", { class: CSS$k.headerContent, key: "slotted-header-content" }, h("slot", { name: SLOTS$c.headerContent })));
15478
15559
  }
15479
15560
  renderHeaderStartActions() {
15480
15561
  const { el } = this;
@@ -15492,7 +15573,7 @@ let CalcitePanel$1 = class extends HTMLElement$1 {
15492
15573
  renderMenu() {
15493
15574
  const { el, intlOptions, menuOpen } = this;
15494
15575
  const hasMenuItems = getSlotted(el, SLOTS$c.headerMenuActions);
15495
- return hasMenuItems ? (h("calcite-action-menu", { flipPlacements: ["top", "bottom"], label: intlOptions || TEXT$8.options, open: menuOpen, placement: "bottom-end" }, h("calcite-action", { icon: ICONS$5.menu, slot: SLOTS$p.trigger, text: intlOptions || TEXT$8.options }), h("slot", { name: SLOTS$c.headerMenuActions }))) : null;
15576
+ return hasMenuItems ? (h("calcite-action-menu", { flipPlacements: ["top", "bottom"], key: "menu", label: intlOptions || TEXT$8.options, open: menuOpen, placement: "bottom-end" }, h("calcite-action", { icon: ICONS$5.menu, slot: SLOTS$p.trigger, text: intlOptions || TEXT$8.options }), h("slot", { name: SLOTS$c.headerMenuActions }))) : null;
15496
15577
  }
15497
15578
  renderHeaderNode() {
15498
15579
  const { el, showBackButton } = this;
@@ -15510,18 +15591,11 @@ let CalcitePanel$1 = class extends HTMLElement$1 {
15510
15591
  headerMenuNode ||
15511
15592
  showBackButton ? (h("header", { class: CSS$k.header }, backButtonNode, actionsNodeStart, headerContentNode, actionsNodeEnd, headerMenuNode)) : null;
15512
15593
  }
15513
- /**
15514
- * Allows user to override the entire footer node.
15515
- */
15516
- renderFooterSlottedContent() {
15594
+ renderFooterNode() {
15517
15595
  const { el } = this;
15518
15596
  const hasFooterSlottedContent = getSlotted(el, SLOTS$c.footer);
15519
- return hasFooterSlottedContent ? (h("footer", { class: CSS$k.footer }, h("slot", { name: SLOTS$c.footer }))) : null;
15520
- }
15521
- renderFooterActions() {
15522
- const { el } = this;
15523
15597
  const hasFooterActions = getSlotted(el, SLOTS$c.footerActions);
15524
- return hasFooterActions ? (h("footer", { class: CSS$k.footer }, h("slot", { name: SLOTS$c.footerActions }))) : null;
15598
+ return hasFooterSlottedContent || hasFooterActions ? (h("footer", { class: CSS$k.footer, key: "footer" }, hasFooterSlottedContent ? h("slot", { key: "footer-slot", name: SLOTS$c.footer }) : null, hasFooterActions ? h("slot", { key: "footer-actions-slot", name: SLOTS$c.footerActions }) : null)) : null;
15525
15599
  }
15526
15600
  renderContent() {
15527
15601
  const { el } = this;
@@ -15533,7 +15607,7 @@ let CalcitePanel$1 = class extends HTMLElement$1 {
15533
15607
  }
15534
15608
  render() {
15535
15609
  const { dismissed, disabled, dismissible, loading, panelKeyDownHandler } = this;
15536
- const panelNode = (h("article", { "aria-busy": loading.toString(), class: CSS$k.container, hidden: dismissible && dismissed, onKeyDown: panelKeyDownHandler, ref: this.setContainerRef, tabIndex: dismissible ? 0 : -1 }, this.renderHeaderNode(), this.renderContent(), this.renderFooterSlottedContent() || this.renderFooterActions()));
15610
+ const panelNode = (h("article", { "aria-busy": loading.toString(), class: CSS$k.container, hidden: dismissible && dismissed, onKeyDown: panelKeyDownHandler, ref: this.setContainerRef, tabIndex: dismissible ? 0 : -1 }, this.renderHeaderNode(), this.renderContent(), this.renderFooterNode()));
15537
15611
  return (h(Fragment, null, loading || disabled ? h("calcite-scrim", { loading: loading }) : null, panelNode));
15538
15612
  }
15539
15613
  get el() { return this; }
@@ -15985,6 +16059,17 @@ let CalcitePickListGroup$1 = class extends HTMLElement$1 {
15985
16059
  }
15986
16060
  // --------------------------------------------------------------------------
15987
16061
  //
16062
+ // Lifecycle
16063
+ //
16064
+ // --------------------------------------------------------------------------
16065
+ connectedCallback() {
16066
+ connectConditionalSlotComponent(this);
16067
+ }
16068
+ disconnectedCallback() {
16069
+ disconnectConditionalSlotComponent(this);
16070
+ }
16071
+ // --------------------------------------------------------------------------
16072
+ //
15988
16073
  // Render Methods
15989
16074
  //
15990
16075
  // --------------------------------------------------------------------------
@@ -16122,6 +16207,17 @@ let CalcitePickListItem$1 = class extends HTMLElement$1 {
16122
16207
  }
16123
16208
  // --------------------------------------------------------------------------
16124
16209
  //
16210
+ // Lifecycle
16211
+ //
16212
+ // --------------------------------------------------------------------------
16213
+ connectedCallback() {
16214
+ connectConditionalSlotComponent(this);
16215
+ }
16216
+ disconnectedCallback() {
16217
+ disconnectConditionalSlotComponent(this);
16218
+ }
16219
+ // --------------------------------------------------------------------------
16220
+ //
16125
16221
  // Public Methods
16126
16222
  //
16127
16223
  // --------------------------------------------------------------------------
@@ -17554,12 +17650,23 @@ let CalciteShell$1 = class extends HTMLElement$1 {
17554
17650
  }
17555
17651
  // --------------------------------------------------------------------------
17556
17652
  //
17653
+ // Lifecycle
17654
+ //
17655
+ // --------------------------------------------------------------------------
17656
+ connectedCallback() {
17657
+ connectConditionalSlotComponent(this);
17658
+ }
17659
+ disconnectedCallback() {
17660
+ disconnectConditionalSlotComponent(this);
17661
+ }
17662
+ // --------------------------------------------------------------------------
17663
+ //
17557
17664
  // Render Methods
17558
17665
  //
17559
17666
  // --------------------------------------------------------------------------
17560
17667
  renderHeader() {
17561
17668
  const hasHeader = !!getSlotted(this.el, SLOTS$7.header);
17562
- return hasHeader ? h("slot", { name: SLOTS$7.header }) : null;
17669
+ return hasHeader ? h("slot", { key: "header", name: SLOTS$7.header }) : null;
17563
17670
  }
17564
17671
  renderContent() {
17565
17672
  const content = !!this.contentBehind
@@ -17577,7 +17684,7 @@ let CalciteShell$1 = class extends HTMLElement$1 {
17577
17684
  }
17578
17685
  renderFooter() {
17579
17686
  const hasFooter = !!getSlotted(this.el, SLOTS$7.footer);
17580
- return hasFooter ? (h("div", { class: CSS$b.footer }, h("slot", { name: SLOTS$7.footer }))) : null;
17687
+ return hasFooter ? (h("div", { class: CSS$b.footer, key: "footer" }, h("slot", { name: SLOTS$7.footer }))) : null;
17581
17688
  }
17582
17689
  renderMain() {
17583
17690
  const primaryPanel = getSlotted(this.el, SLOTS$7.primaryPanel);
@@ -17629,6 +17736,17 @@ let CalciteShellCenterRow$1 = class extends HTMLElement$1 {
17629
17736
  }
17630
17737
  // --------------------------------------------------------------------------
17631
17738
  //
17739
+ // Lifecycle
17740
+ //
17741
+ // --------------------------------------------------------------------------
17742
+ connectedCallback() {
17743
+ connectConditionalSlotComponent(this);
17744
+ }
17745
+ disconnectedCallback() {
17746
+ disconnectConditionalSlotComponent(this);
17747
+ }
17748
+ // --------------------------------------------------------------------------
17749
+ //
17632
17750
  // Render Methods
17633
17751
  //
17634
17752
  // --------------------------------------------------------------------------
@@ -17636,7 +17754,7 @@ let CalciteShellCenterRow$1 = class extends HTMLElement$1 {
17636
17754
  const { el } = this;
17637
17755
  const contentNode = (h("div", { class: CSS$a.content }, h("slot", null)));
17638
17756
  const actionBar = getSlotted(el, SLOTS$6.actionBar);
17639
- const actionBarNode = actionBar ? (h("div", { class: CSS$a.actionBarContainer }, h("slot", { name: SLOTS$6.actionBar }))) : null;
17757
+ const actionBarNode = actionBar ? (h("div", { class: CSS$a.actionBarContainer, key: "action-bar" }, h("slot", { name: SLOTS$6.actionBar }))) : null;
17640
17758
  const children = [actionBarNode, contentNode];
17641
17759
  if ((actionBar === null || actionBar === void 0 ? void 0 : actionBar.position) === "end") {
17642
17760
  children.reverse();
@@ -17810,7 +17928,11 @@ let CalciteShellPanel$1 = class extends HTMLElement$1 {
17810
17928
  // Lifecycle
17811
17929
  //
17812
17930
  //--------------------------------------------------------------------------
17931
+ connectedCallback() {
17932
+ connectConditionalSlotComponent(this);
17933
+ }
17813
17934
  disconnectedCallback() {
17935
+ disconnectConditionalSlotComponent(this);
17814
17936
  this.disconnectSeparator();
17815
17937
  }
17816
17938
  componentDidLoad() {
@@ -17824,14 +17946,14 @@ let CalciteShellPanel$1 = class extends HTMLElement$1 {
17824
17946
  renderHeader() {
17825
17947
  const { el } = this;
17826
17948
  const hasHeader = getSlotted(el, SLOTS$5.header);
17827
- return hasHeader ? (h("div", { class: CSS$9.contentHeader }, h("slot", { name: SLOTS$5.header }))) : null;
17949
+ return hasHeader ? (h("div", { class: CSS$9.contentHeader, key: "header" }, h("slot", { name: SLOTS$5.header }))) : null;
17828
17950
  }
17829
17951
  render() {
17830
17952
  const { collapsed, detached, position, initialContentWidth, contentWidth, contentWidthMax, contentWidthMin, intlResize, resizable } = this;
17831
17953
  const allowResizing = !detached && resizable;
17832
- const contentNode = (h("div", { class: { [CSS$9.content]: true, [CSS$9.contentDetached]: detached }, hidden: collapsed, ref: this.storeContentEl, style: allowResizing && contentWidth ? { width: `${contentWidth}px` } : null }, this.renderHeader(), h("div", { class: CSS$9.contentBody }, h("slot", null))));
17833
- const separatorNode = allowResizing ? (h("div", { "aria-label": intlResize, "aria-orientation": "horizontal", "aria-valuemax": contentWidthMax, "aria-valuemin": contentWidthMin, "aria-valuenow": contentWidth !== null && contentWidth !== void 0 ? contentWidth : initialContentWidth, class: CSS$9.separator, onKeyDown: this.separatorKeyDown, ref: this.connectSeparator, role: "separator", tabIndex: 0, "touch-action": "none" })) : null;
17834
- const actionBarNode = h("slot", { name: SLOTS$5.actionBar });
17954
+ const contentNode = (h("div", { class: { [CSS$9.content]: true, [CSS$9.contentDetached]: detached }, hidden: collapsed, key: "content", ref: this.storeContentEl, style: allowResizing && contentWidth ? { width: `${contentWidth}px` } : null }, this.renderHeader(), h("div", { class: CSS$9.contentBody }, h("slot", null))));
17955
+ const separatorNode = allowResizing ? (h("div", { "aria-label": intlResize, "aria-orientation": "horizontal", "aria-valuemax": contentWidthMax, "aria-valuemin": contentWidthMin, "aria-valuenow": contentWidth !== null && contentWidth !== void 0 ? contentWidth : initialContentWidth, class: CSS$9.separator, key: "separator", onKeyDown: this.separatorKeyDown, ref: this.connectSeparator, role: "separator", tabIndex: 0, "touch-action": "none" })) : null;
17956
+ const actionBarNode = h("slot", { key: "action-bar", name: SLOTS$5.actionBar });
17835
17957
  const mainNodes = [actionBarNode, contentNode, separatorNode];
17836
17958
  if (position === "end") {
17837
17959
  mainNodes.reverse();
@@ -22943,6 +23065,17 @@ let CalciteTile$1 = class extends HTMLElement$1 {
22943
23065
  }
22944
23066
  // --------------------------------------------------------------------------
22945
23067
  //
23068
+ // Lifecycle
23069
+ //
23070
+ // --------------------------------------------------------------------------
23071
+ connectedCallback() {
23072
+ connectConditionalSlotComponent(this);
23073
+ }
23074
+ disconnectedCallback() {
23075
+ disconnectConditionalSlotComponent(this);
23076
+ }
23077
+ // --------------------------------------------------------------------------
23078
+ //
22946
23079
  // Render Methods
22947
23080
  //
22948
23081
  // --------------------------------------------------------------------------
@@ -23881,6 +24014,17 @@ let CalciteTip$1 = class extends HTMLElement$1 {
23881
24014
  }
23882
24015
  // --------------------------------------------------------------------------
23883
24016
  //
24017
+ // Lifecycle
24018
+ //
24019
+ // --------------------------------------------------------------------------
24020
+ connectedCallback() {
24021
+ connectConditionalSlotComponent(this);
24022
+ }
24023
+ disconnectedCallback() {
24024
+ disconnectConditionalSlotComponent(this);
24025
+ }
24026
+ // --------------------------------------------------------------------------
24027
+ //
23884
24028
  // Render Methods
23885
24029
  //
23886
24030
  // --------------------------------------------------------------------------
@@ -23899,7 +24043,7 @@ let CalciteTip$1 = class extends HTMLElement$1 {
23899
24043
  }
23900
24044
  renderImageFrame() {
23901
24045
  const { el } = this;
23902
- return getSlotted(el, SLOTS$2.thumbnail) ? (h("div", { class: CSS$3.imageFrame }, h("slot", { name: SLOTS$2.thumbnail }))) : null;
24046
+ return getSlotted(el, SLOTS$2.thumbnail) ? (h("div", { class: CSS$3.imageFrame, key: "thumbnail" }, h("slot", { name: SLOTS$2.thumbnail }))) : null;
23903
24047
  }
23904
24048
  renderInfoNode() {
23905
24049
  return (h("div", { class: CSS$3.info }, h("slot", null)));
@@ -24713,6 +24857,10 @@ let CalciteTreeItem$1 = class extends HTMLElement$1 {
24713
24857
  const { expanded } = this.parentTreeItem;
24714
24858
  this.updateParentIsExpanded(this.parentTreeItem, expanded);
24715
24859
  }
24860
+ connectConditionalSlotComponent(this);
24861
+ }
24862
+ disconnectedCallback() {
24863
+ disconnectConditionalSlotComponent(this);
24716
24864
  }
24717
24865
  componentWillRender() {
24718
24866
  this.hasChildren = !!this.el.querySelector("calcite-tree");
@@ -25153,6 +25301,17 @@ let CalciteValueListItem$1 = class extends HTMLElement$1 {
25153
25301
  }
25154
25302
  // --------------------------------------------------------------------------
25155
25303
  //
25304
+ // Lifecycle
25305
+ //
25306
+ // --------------------------------------------------------------------------
25307
+ connectedCallback() {
25308
+ connectConditionalSlotComponent(this);
25309
+ }
25310
+ disconnectedCallback() {
25311
+ disconnectConditionalSlotComponent(this);
25312
+ }
25313
+ // --------------------------------------------------------------------------
25314
+ //
25156
25315
  // Public Methods
25157
25316
  //
25158
25317
  // --------------------------------------------------------------------------