@esri/calcite-components 1.0.0-next.404 → 1.0.0-next.405

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 (40) hide show
  1. package/dist/calcite/calcite.esm.js +1 -1
  2. package/dist/calcite/{p-c150d992.system.entry.js → p-13e36552.system.entry.js} +1 -1
  3. package/dist/calcite/p-296c1d5a.system.entry.js +5 -0
  4. package/dist/calcite/p-3a7606c8.entry.js +5 -0
  5. package/dist/calcite/p-5c425028.entry.js +5 -0
  6. package/dist/calcite/{p-8dcb169e.system.entry.js → p-7a0e8fab.system.entry.js} +1 -1
  7. package/dist/calcite/p-8f93be14.system.js +1 -1
  8. package/dist/calcite/p-d44165c7.entry.js +5 -0
  9. package/dist/cjs/calcite-accordion_2.cjs.entry.js +3 -2
  10. package/dist/cjs/calcite-button.cjs.entry.js +6 -12
  11. package/dist/cjs/calcite-link.cjs.entry.js +4 -14
  12. package/dist/cjs/calcite.cjs.js +1 -1
  13. package/dist/cjs/loader.cjs.js +1 -1
  14. package/dist/collection/components/accordion/accordion.css +7 -6
  15. package/dist/collection/components/accordion/accordion.js +2 -1
  16. package/dist/collection/components/button/button.js +6 -15
  17. package/dist/collection/components/link/link.js +5 -19
  18. package/dist/components/button.js +6 -13
  19. package/dist/components/calcite-accordion.js +3 -2
  20. package/dist/components/link.js +4 -15
  21. package/dist/custom-elements/index.js +15 -30
  22. package/dist/esm/calcite-accordion_2.entry.js +3 -2
  23. package/dist/esm/calcite-button.entry.js +6 -12
  24. package/dist/esm/calcite-link.entry.js +4 -14
  25. package/dist/esm/calcite.js +1 -1
  26. package/dist/esm/loader.js +1 -1
  27. package/dist/esm-es5/calcite-accordion_2.entry.js +1 -1
  28. package/dist/esm-es5/calcite-button.entry.js +1 -1
  29. package/dist/esm-es5/calcite-link.entry.js +2 -2
  30. package/dist/esm-es5/calcite.js +1 -1
  31. package/dist/esm-es5/loader.js +1 -1
  32. package/dist/extras/docs-json.json +1 -1
  33. package/dist/types/components/button/button.d.ts +0 -3
  34. package/dist/types/components/link/link.d.ts +0 -4
  35. package/hydrate/index.js +12 -29
  36. package/package.json +5 -5
  37. package/dist/calcite/p-1208b748.system.entry.js +0 -5
  38. package/dist/calcite/p-56d787e7.entry.js +0 -5
  39. package/dist/calcite/p-afc6c399.entry.js +0 -5
  40. package/dist/calcite/p-ba7ac94f.entry.js +0 -5
@@ -2,7 +2,7 @@
2
2
  * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
4
4
  */
5
- import { Component, Element, h, Host, Method, Prop, State, Watch } from "@stencil/core";
5
+ import { Component, Element, h, Host, Method, Prop } from "@stencil/core";
6
6
  import { focusElement, getElementDir } from "../../utils/dom";
7
7
  import { CSS_UTILITY } from "../../utils/resources";
8
8
  /** Any attributes placed on <calcite-link> component will propagate to the rendered child */
@@ -23,8 +23,6 @@ export class Link {
23
23
  * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download
24
24
  */
25
25
  this.download = false;
26
- /** the node type of the rendered child element */
27
- this.childElType = "span";
28
26
  //--------------------------------------------------------------------------
29
27
  //
30
28
  // Private Methods
@@ -34,25 +32,20 @@ export class Link {
34
32
  this.childEl = el;
35
33
  };
36
34
  }
37
- hrefHandler(href) {
38
- this.childElType = href ? "a" : "span";
39
- }
40
35
  //--------------------------------------------------------------------------
41
36
  //
42
37
  // Lifecycle
43
38
  //
44
39
  //--------------------------------------------------------------------------
45
- connectedCallback() {
46
- this.childElType = this.href ? "a" : "span";
47
- }
48
40
  render() {
49
41
  const { download, el } = this;
50
42
  const dir = getElementDir(el);
43
+ const childElType = this.href ? "a" : "span";
51
44
  const iconStartEl = (h("calcite-icon", { class: "calcite-link--icon icon-start", flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
52
45
  const iconEndEl = (h("calcite-icon", { class: "calcite-link--icon icon-end", flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
53
- const Tag = this.childElType;
54
- const role = this.childElType === "span" ? "link" : null;
55
- const tabIndex = this.disabled ? -1 : this.childElType === "span" ? 0 : null;
46
+ const Tag = childElType;
47
+ const role = childElType === "span" ? "link" : null;
48
+ const tabIndex = this.disabled ? -1 : childElType === "span" ? 0 : null;
56
49
  return (h(Host, { role: "presentation" },
57
50
  h(Tag, { class: { [CSS_UTILITY.rtl]: dir === "rtl" },
58
51
  /*
@@ -226,9 +219,6 @@ export class Link {
226
219
  "reflect": false
227
220
  }
228
221
  }; }
229
- static get states() { return {
230
- "childElType": {}
231
- }; }
232
222
  static get methods() { return {
233
223
  "setFocus": {
234
224
  "complexType": {
@@ -248,8 +238,4 @@ export class Link {
248
238
  }
249
239
  }; }
250
240
  static get elementRef() { return "el"; }
251
- static get watchers() { return [{
252
- "propName": "href",
253
- "methodName": "hrefHandler"
254
- }]; }
255
241
  }
@@ -89,17 +89,15 @@ let Button = class extends HTMLElement$1 {
89
89
  this.width = "auto";
90
90
  /** watches for changing text content **/
91
91
  this.mutationObserver = createObserver("mutation", () => this.updateHasContent());
92
- /** the node type of the rendered child element */
93
- this.childElType = "button";
94
92
  /** determine if there is slotted content for styling purposes */
95
93
  this.hasContent = false;
96
94
  /** determine if loader present for styling purposes */
97
95
  this.hasLoader = false;
98
96
  // act on a requested or nearby form based on type
99
97
  this.handleClick = () => {
100
- const { childElType, formEl, type } = this;
98
+ const { formEl, type } = this;
101
99
  // this.type refers to type attribute, not child element type
102
- if (childElType === "button" && type !== "button") {
100
+ if (!this.href && type !== "button") {
103
101
  if (type === "submit") {
104
102
  formEl === null || formEl === void 0 ? void 0 : formEl.requestSubmit();
105
103
  }
@@ -109,9 +107,6 @@ let Button = class extends HTMLElement$1 {
109
107
  }
110
108
  };
111
109
  }
112
- hrefHandler(href) {
113
- this.childElType = href ? "a" : "button";
114
- }
115
110
  loadingChanged(newValue, oldValue) {
116
111
  if (!!newValue && !oldValue) {
117
112
  this.hasLoader = true;
@@ -128,7 +123,6 @@ let Button = class extends HTMLElement$1 {
128
123
  //
129
124
  //--------------------------------------------------------------------------
130
125
  connectedCallback() {
131
- this.childElType = this.href ? "a" : "button";
132
126
  this.hasLoader = this.loading;
133
127
  this.setupTextContentObserver();
134
128
  connectLabel(this);
@@ -143,13 +137,14 @@ let Button = class extends HTMLElement$1 {
143
137
  componentWillLoad() {
144
138
  if (Build.isBrowser) {
145
139
  this.updateHasContent();
146
- if (this.childElType === "button" && !this.type) {
140
+ if (!this.href && !this.type) {
147
141
  this.type = "submit";
148
142
  }
149
143
  }
150
144
  }
151
145
  render() {
152
- const Tag = this.childElType;
146
+ const childElType = this.href ? "a" : "button";
147
+ const Tag = childElType;
153
148
  const loaderNode = this.hasLoader ? (h("div", { class: CSS.buttonLoader }, h("calcite-loader", { active: true, class: this.loading ? CSS.loadingIn : CSS.loadingOut, inline: true, label: this.intlLoading, scale: "m" }))) : null;
154
149
  const iconStartEl = (h("calcite-icon", { class: { [CSS.icon]: true, [CSS.iconStart]: true }, flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
155
150
  const iconEndEl = (h("calcite-icon", { class: { [CSS.icon]: true, [CSS.iconEnd]: true }, flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
@@ -158,7 +153,7 @@ let Button = class extends HTMLElement$1 {
158
153
  [CSS.contentSlotted]: this.hasContent,
159
154
  [CSS.iconStartEmpty]: !this.iconStart,
160
155
  [CSS.iconEndEmpty]: !this.iconEnd
161
- }, disabled: this.disabled || this.loading, href: this.childElType === "a" && this.href, name: this.childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: this.childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: this.childElType === "a" && this.target, type: this.childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
156
+ }, disabled: this.disabled || this.loading, href: childElType === "a" && this.href, name: childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: childElType === "a" && this.target, type: childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
162
157
  }
163
158
  //--------------------------------------------------------------------------
164
159
  //
@@ -192,7 +187,6 @@ let Button = class extends HTMLElement$1 {
192
187
  }
193
188
  get el() { return this; }
194
189
  static get watchers() { return {
195
- "href": ["hrefHandler"],
196
190
  "loading": ["loadingChanged"]
197
191
  }; }
198
192
  static get style() { return buttonCss; }
@@ -218,7 +212,6 @@ Button = /*@__PURE__*/ proxyCustomElement(Button, [1, "calcite-button", {
218
212
  "target": [1],
219
213
  "type": [1025],
220
214
  "width": [513],
221
- "childElType": [32],
222
215
  "hasContent": [32],
223
216
  "hasLoader": [32],
224
217
  "setFocus": [64]
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { HTMLElement, createEvent, h, proxyCustomElement } from '@stencil/core/internal/client';
6
6
 
7
- const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2);line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{border-color:transparent;--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0;border-color:transparent}";
7
+ const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0}.accordion{border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2)}";
8
8
 
9
9
  let Accordion = class extends HTMLElement {
10
10
  constructor() {
@@ -53,7 +53,8 @@ let Accordion = class extends HTMLElement {
53
53
  render() {
54
54
  return (h("div", { class: {
55
55
  "accordion--transparent": this.appearance === "transparent",
56
- "accordion--minimal": this.appearance === "minimal"
56
+ "accordion--minimal": this.appearance === "minimal",
57
+ accordion: this.appearance === "default"
57
58
  } }, h("slot", null)));
58
59
  }
59
60
  //--------------------------------------------------------------------------
@@ -25,8 +25,6 @@ let Link = class extends HTMLElement {
25
25
  * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download
26
26
  */
27
27
  this.download = false;
28
- /** the node type of the rendered child element */
29
- this.childElType = "span";
30
28
  //--------------------------------------------------------------------------
31
29
  //
32
30
  // Private Methods
@@ -36,25 +34,20 @@ let Link = class extends HTMLElement {
36
34
  this.childEl = el;
37
35
  };
38
36
  }
39
- hrefHandler(href) {
40
- this.childElType = href ? "a" : "span";
41
- }
42
37
  //--------------------------------------------------------------------------
43
38
  //
44
39
  // Lifecycle
45
40
  //
46
41
  //--------------------------------------------------------------------------
47
- connectedCallback() {
48
- this.childElType = this.href ? "a" : "span";
49
- }
50
42
  render() {
51
43
  const { download, el } = this;
52
44
  const dir = getElementDir(el);
45
+ const childElType = this.href ? "a" : "span";
53
46
  const iconStartEl = (h("calcite-icon", { class: "calcite-link--icon icon-start", flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
54
47
  const iconEndEl = (h("calcite-icon", { class: "calcite-link--icon icon-end", flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
55
- const Tag = this.childElType;
56
- const role = this.childElType === "span" ? "link" : null;
57
- const tabIndex = this.disabled ? -1 : this.childElType === "span" ? 0 : null;
48
+ const Tag = childElType;
49
+ const role = childElType === "span" ? "link" : null;
50
+ const tabIndex = this.disabled ? -1 : childElType === "span" ? 0 : null;
58
51
  return (h(Host, { role: "presentation" }, h(Tag, { class: { [CSS_UTILITY.rtl]: dir === "rtl" },
59
52
  /*
60
53
  When the 'download' property of type 'boolean | string' is set to true, the value is "".
@@ -72,9 +65,6 @@ let Link = class extends HTMLElement {
72
65
  focusElement(this.childEl);
73
66
  }
74
67
  get el() { return this; }
75
- static get watchers() { return {
76
- "href": ["hrefHandler"]
77
- }; }
78
68
  static get style() { return linkCss; }
79
69
  };
80
70
  Link = /*@__PURE__*/ proxyCustomElement(Link, [1, "calcite-link", {
@@ -86,7 +76,6 @@ Link = /*@__PURE__*/ proxyCustomElement(Link, [1, "calcite-link", {
86
76
  "iconStart": [513, "icon-start"],
87
77
  "rel": [1],
88
78
  "target": [1],
89
- "childElType": [32],
90
79
  "setFocus": [64]
91
80
  }]);
92
81
  function defineCustomElement() {
@@ -5,7 +5,7 @@
5
5
  import { HTMLElement as HTMLElement$1, createEvent, h, Host, Build, forceUpdate, Fragment, getAssetPath, proxyCustomElement } from '@stencil/core/internal/client';
6
6
  export { setAssetPath, setPlatformOptions } from '@stencil/core/internal/client';
7
7
 
8
- const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2);line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{border-color:transparent;--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0;border-color:transparent}";
8
+ const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0}.accordion{border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2)}";
9
9
 
10
10
  let Accordion = class extends HTMLElement$1 {
11
11
  constructor() {
@@ -54,7 +54,8 @@ let Accordion = class extends HTMLElement$1 {
54
54
  render() {
55
55
  return (h("div", { class: {
56
56
  "accordion--transparent": this.appearance === "transparent",
57
- "accordion--minimal": this.appearance === "minimal"
57
+ "accordion--minimal": this.appearance === "minimal",
58
+ accordion: this.appearance === "default"
58
59
  } }, h("slot", null)));
59
60
  }
60
61
  //--------------------------------------------------------------------------
@@ -3550,17 +3551,15 @@ let Button = class extends HTMLElement$1 {
3550
3551
  this.width = "auto";
3551
3552
  /** watches for changing text content **/
3552
3553
  this.mutationObserver = createObserver("mutation", () => this.updateHasContent());
3553
- /** the node type of the rendered child element */
3554
- this.childElType = "button";
3555
3554
  /** determine if there is slotted content for styling purposes */
3556
3555
  this.hasContent = false;
3557
3556
  /** determine if loader present for styling purposes */
3558
3557
  this.hasLoader = false;
3559
3558
  // act on a requested or nearby form based on type
3560
3559
  this.handleClick = () => {
3561
- const { childElType, formEl, type } = this;
3560
+ const { formEl, type } = this;
3562
3561
  // this.type refers to type attribute, not child element type
3563
- if (childElType === "button" && type !== "button") {
3562
+ if (!this.href && type !== "button") {
3564
3563
  if (type === "submit") {
3565
3564
  formEl === null || formEl === void 0 ? void 0 : formEl.requestSubmit();
3566
3565
  }
@@ -3570,9 +3569,6 @@ let Button = class extends HTMLElement$1 {
3570
3569
  }
3571
3570
  };
3572
3571
  }
3573
- hrefHandler(href) {
3574
- this.childElType = href ? "a" : "button";
3575
- }
3576
3572
  loadingChanged(newValue, oldValue) {
3577
3573
  if (!!newValue && !oldValue) {
3578
3574
  this.hasLoader = true;
@@ -3589,7 +3585,6 @@ let Button = class extends HTMLElement$1 {
3589
3585
  //
3590
3586
  //--------------------------------------------------------------------------
3591
3587
  connectedCallback() {
3592
- this.childElType = this.href ? "a" : "button";
3593
3588
  this.hasLoader = this.loading;
3594
3589
  this.setupTextContentObserver();
3595
3590
  connectLabel(this);
@@ -3604,13 +3599,14 @@ let Button = class extends HTMLElement$1 {
3604
3599
  componentWillLoad() {
3605
3600
  if (Build.isBrowser) {
3606
3601
  this.updateHasContent();
3607
- if (this.childElType === "button" && !this.type) {
3602
+ if (!this.href && !this.type) {
3608
3603
  this.type = "submit";
3609
3604
  }
3610
3605
  }
3611
3606
  }
3612
3607
  render() {
3613
- const Tag = this.childElType;
3608
+ const childElType = this.href ? "a" : "button";
3609
+ const Tag = childElType;
3614
3610
  const loaderNode = this.hasLoader ? (h("div", { class: CSS$J.buttonLoader }, h("calcite-loader", { active: true, class: this.loading ? CSS$J.loadingIn : CSS$J.loadingOut, inline: true, label: this.intlLoading, scale: "m" }))) : null;
3615
3611
  const iconStartEl = (h("calcite-icon", { class: { [CSS$J.icon]: true, [CSS$J.iconStart]: true }, flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
3616
3612
  const iconEndEl = (h("calcite-icon", { class: { [CSS$J.icon]: true, [CSS$J.iconEnd]: true }, flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
@@ -3619,7 +3615,7 @@ let Button = class extends HTMLElement$1 {
3619
3615
  [CSS$J.contentSlotted]: this.hasContent,
3620
3616
  [CSS$J.iconStartEmpty]: !this.iconStart,
3621
3617
  [CSS$J.iconEndEmpty]: !this.iconEnd
3622
- }, disabled: this.disabled || this.loading, href: this.childElType === "a" && this.href, name: this.childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: this.childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: this.childElType === "a" && this.target, type: this.childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
3618
+ }, disabled: this.disabled || this.loading, href: childElType === "a" && this.href, name: childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: childElType === "a" && this.target, type: childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
3623
3619
  }
3624
3620
  //--------------------------------------------------------------------------
3625
3621
  //
@@ -3653,7 +3649,6 @@ let Button = class extends HTMLElement$1 {
3653
3649
  }
3654
3650
  get el() { return this; }
3655
3651
  static get watchers() { return {
3656
- "href": ["hrefHandler"],
3657
3652
  "loading": ["loadingChanged"]
3658
3653
  }; }
3659
3654
  static get style() { return buttonCss; }
@@ -14501,8 +14496,6 @@ let Link = class extends HTMLElement$1 {
14501
14496
  * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download
14502
14497
  */
14503
14498
  this.download = false;
14504
- /** the node type of the rendered child element */
14505
- this.childElType = "span";
14506
14499
  //--------------------------------------------------------------------------
14507
14500
  //
14508
14501
  // Private Methods
@@ -14512,25 +14505,20 @@ let Link = class extends HTMLElement$1 {
14512
14505
  this.childEl = el;
14513
14506
  };
14514
14507
  }
14515
- hrefHandler(href) {
14516
- this.childElType = href ? "a" : "span";
14517
- }
14518
14508
  //--------------------------------------------------------------------------
14519
14509
  //
14520
14510
  // Lifecycle
14521
14511
  //
14522
14512
  //--------------------------------------------------------------------------
14523
- connectedCallback() {
14524
- this.childElType = this.href ? "a" : "span";
14525
- }
14526
14513
  render() {
14527
14514
  const { download, el } = this;
14528
14515
  const dir = getElementDir(el);
14516
+ const childElType = this.href ? "a" : "span";
14529
14517
  const iconStartEl = (h("calcite-icon", { class: "calcite-link--icon icon-start", flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
14530
14518
  const iconEndEl = (h("calcite-icon", { class: "calcite-link--icon icon-end", flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
14531
- const Tag = this.childElType;
14532
- const role = this.childElType === "span" ? "link" : null;
14533
- const tabIndex = this.disabled ? -1 : this.childElType === "span" ? 0 : null;
14519
+ const Tag = childElType;
14520
+ const role = childElType === "span" ? "link" : null;
14521
+ const tabIndex = this.disabled ? -1 : childElType === "span" ? 0 : null;
14534
14522
  return (h(Host, { role: "presentation" }, h(Tag, { class: { [CSS_UTILITY.rtl]: dir === "rtl" },
14535
14523
  /*
14536
14524
  When the 'download' property of type 'boolean | string' is set to true, the value is "".
@@ -14548,9 +14536,6 @@ let Link = class extends HTMLElement$1 {
14548
14536
  focusElement(this.childEl);
14549
14537
  }
14550
14538
  get el() { return this; }
14551
- static get watchers() { return {
14552
- "href": ["hrefHandler"]
14553
- }; }
14554
14539
  static get style() { return linkCss; }
14555
14540
  };
14556
14541
 
@@ -25597,7 +25582,7 @@ const CalciteAlert = /*@__PURE__*/proxyCustomElement(Alert, [1,"calcite-alert",{
25597
25582
  const CalciteAvatar = /*@__PURE__*/proxyCustomElement(Avatar, [1,"calcite-avatar",{"scale":[513],"thumbnail":[1],"fullName":[1,"full-name"],"username":[1],"userId":[1,"user-id"],"error":[32]}]);
25598
25583
  const CalciteBlock = /*@__PURE__*/proxyCustomElement(Block, [1,"calcite-block",{"collapsible":[4],"disabled":[516],"dragHandle":[516,"drag-handle"],"heading":[1],"headingLevel":[2,"heading-level"],"intlCollapse":[1,"intl-collapse"],"intlExpand":[1,"intl-expand"],"intlLoading":[1,"intl-loading"],"intlOptions":[1,"intl-options"],"loading":[516],"open":[1540],"status":[513],"summary":[1]}]);
25599
25584
  const CalciteBlockSection = /*@__PURE__*/proxyCustomElement(BlockSection, [1,"calcite-block-section",{"intlCollapse":[1,"intl-collapse"],"intlExpand":[1,"intl-expand"],"open":[1540],"status":[513],"text":[1],"toggleDisplay":[513,"toggle-display"]}]);
25600
- const CalciteButton = /*@__PURE__*/proxyCustomElement(Button, [1,"calcite-button",{"alignment":[513],"appearance":[513],"label":[1],"color":[513],"disabled":[516],"href":[513],"iconEnd":[513,"icon-end"],"iconFlipRtl":[513,"icon-flip-rtl"],"iconStart":[513,"icon-start"],"intlLoading":[1,"intl-loading"],"loading":[516],"name":[1],"rel":[1],"form":[1],"round":[516],"scale":[513],"splitChild":[520,"split-child"],"target":[1],"type":[1025],"width":[513],"childElType":[32],"hasContent":[32],"hasLoader":[32]}]);
25585
+ const CalciteButton = /*@__PURE__*/proxyCustomElement(Button, [1,"calcite-button",{"alignment":[513],"appearance":[513],"label":[1],"color":[513],"disabled":[516],"href":[513],"iconEnd":[513,"icon-end"],"iconFlipRtl":[513,"icon-flip-rtl"],"iconStart":[513,"icon-start"],"intlLoading":[1,"intl-loading"],"loading":[516],"name":[1],"rel":[1],"form":[1],"round":[516],"scale":[513],"splitChild":[520,"split-child"],"target":[1],"type":[1025],"width":[513],"hasContent":[32],"hasLoader":[32]}]);
25601
25586
  const CalciteCard = /*@__PURE__*/proxyCustomElement(Card, [1,"calcite-card",{"loading":[516],"selected":[1540],"selectable":[516],"intlLoading":[1,"intl-loading"],"intlSelect":[1,"intl-select"],"intlDeselect":[1,"intl-deselect"]}]);
25602
25587
  const CalciteCheckbox = /*@__PURE__*/proxyCustomElement(Checkbox, [1,"calcite-checkbox",{"checked":[1540],"disabled":[516],"guid":[1537],"hovered":[1540],"indeterminate":[1540],"label":[1],"name":[520],"required":[516],"scale":[513],"value":[8]}]);
25603
25588
  const CalciteChip = /*@__PURE__*/proxyCustomElement(Chip, [1,"calcite-chip",{"appearance":[513],"color":[513],"dismissible":[516],"dismissLabel":[1,"dismiss-label"],"icon":[513],"iconFlipRtl":[516,"icon-flip-rtl"],"scale":[513],"value":[8]}]);
@@ -25626,7 +25611,7 @@ const CalciteInputDatePicker = /*@__PURE__*/proxyCustomElement(InputDatePicker,
25626
25611
  const CalciteInputMessage = /*@__PURE__*/proxyCustomElement(InputMessage, [1,"calcite-input-message",{"active":[516],"icon":[520],"scale":[1537],"status":[1537],"type":[513]}]);
25627
25612
  const CalciteInputTimePicker = /*@__PURE__*/proxyCustomElement(InputTimePicker, [1,"calcite-input-time-picker",{"active":[1540],"disabled":[516],"intlHour":[1,"intl-hour"],"intlHourDown":[1,"intl-hour-down"],"intlHourUp":[1,"intl-hour-up"],"intlMeridiem":[1,"intl-meridiem"],"intlMeridiemDown":[1,"intl-meridiem-down"],"intlMeridiemUp":[1,"intl-meridiem-up"],"intlMinute":[1,"intl-minute"],"intlMinuteDown":[1,"intl-minute-down"],"intlMinuteUp":[1,"intl-minute-up"],"intlSecond":[1,"intl-second"],"intlSecondDown":[1,"intl-second-down"],"intlSecondUp":[1,"intl-second-up"],"locale":[1025,"lang"],"name":[1],"required":[516],"scale":[513],"step":[2],"value":[1025],"localizedValue":[32]},[[0,"click","clickHandler"],[0,"keyup","keyUpHandler"],[0,"calciteTimePickerBlur","timePickerBlurHandler"],[0,"calciteTimePickerFocus","timePickerFocusHandler"]]]);
25628
25613
  const CalciteLabel = /*@__PURE__*/proxyCustomElement(Label, [1,"calcite-label",{"alignment":[513],"status":[513],"for":[513],"scale":[513],"layout":[513],"disableSpacing":[4,"disable-spacing"],"disabled":[516]}]);
25629
- const CalciteLink = /*@__PURE__*/proxyCustomElement(Link, [1,"calcite-link",{"disabled":[516],"download":[520],"href":[513],"iconEnd":[513,"icon-end"],"iconFlipRtl":[513,"icon-flip-rtl"],"iconStart":[513,"icon-start"],"rel":[1],"target":[1],"childElType":[32]}]);
25614
+ const CalciteLink = /*@__PURE__*/proxyCustomElement(Link, [1,"calcite-link",{"disabled":[516],"download":[520],"href":[513],"iconEnd":[513,"icon-end"],"iconFlipRtl":[513,"icon-flip-rtl"],"iconStart":[513,"icon-start"],"rel":[1],"target":[1]}]);
25630
25615
  const CalciteList = /*@__PURE__*/proxyCustomElement(List$1, [1,"calcite-list",{"headingLevel":[2,"heading-level"]}]);
25631
25616
  const CalciteListItem = /*@__PURE__*/proxyCustomElement(ListItem, [1,"calcite-list-item",{"nonInteractive":[516,"non-interactive"],"description":[1],"disabled":[516],"label":[1]}]);
25632
25617
  const CalciteListItemGroup = /*@__PURE__*/proxyCustomElement(ListItemGroup, [1,"calcite-list-item-group",{"heading":[513],"headingLevel":[2,"heading-level"]}]);
@@ -6,7 +6,7 @@ import { r as registerInstance, c as createEvent, h, g as getElement, H as Host
6
6
  import { d as getElementProp, a as getElementDir, C as CSS_UTILITY } from './dom-e7fa77b9.js';
7
7
  import { g as guid } from './guid-196bd5ea.js';
8
8
 
9
- const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2);line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{border-color:transparent;--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0;border-color:transparent}";
9
+ const accordionCss = "@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-accordion-item-spacing-unit:0.25rem;--calcite-accordion-icon-margin:0.5rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]){--calcite-accordion-item-spacing-unit:0.5rem;--calcite-accordion-icon-margin:0.75rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]){--calcite-accordion-item-spacing-unit:0.75rem;--calcite-accordion-icon-margin:1rem;--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host{position:relative;display:block;max-width:100%;line-height:1.5rem;--calcite-accordion-item-border:var(--calcite-ui-border-2);--calcite-accordion-item-background:var(--calcite-ui-foreground-1)}.accordion--transparent{--calcite-accordion-item-border:transparent;--calcite-accordion-item-background:transparent}.accordion--minimal{--calcite-accordion-item-padding:var(--calcite-accordion-item-spacing-unit) 0}.accordion{border-width:1px;border-bottom-width:0px;border-style:solid;border-color:var(--calcite-ui-border-2)}";
10
10
 
11
11
  let Accordion = class {
12
12
  constructor(hostRef) {
@@ -53,7 +53,8 @@ let Accordion = class {
53
53
  render() {
54
54
  return (h("div", { class: {
55
55
  "accordion--transparent": this.appearance === "transparent",
56
- "accordion--minimal": this.appearance === "minimal"
56
+ "accordion--minimal": this.appearance === "minimal",
57
+ accordion: this.appearance === "default"
57
58
  } }, h("slot", null)));
58
59
  }
59
60
  //--------------------------------------------------------------------------
@@ -86,17 +86,15 @@ let Button = class {
86
86
  this.width = "auto";
87
87
  /** watches for changing text content **/
88
88
  this.mutationObserver = createObserver("mutation", () => this.updateHasContent());
89
- /** the node type of the rendered child element */
90
- this.childElType = "button";
91
89
  /** determine if there is slotted content for styling purposes */
92
90
  this.hasContent = false;
93
91
  /** determine if loader present for styling purposes */
94
92
  this.hasLoader = false;
95
93
  // act on a requested or nearby form based on type
96
94
  this.handleClick = () => {
97
- const { childElType, formEl, type } = this;
95
+ const { formEl, type } = this;
98
96
  // this.type refers to type attribute, not child element type
99
- if (childElType === "button" && type !== "button") {
97
+ if (!this.href && type !== "button") {
100
98
  if (type === "submit") {
101
99
  formEl === null || formEl === void 0 ? void 0 : formEl.requestSubmit();
102
100
  }
@@ -106,9 +104,6 @@ let Button = class {
106
104
  }
107
105
  };
108
106
  }
109
- hrefHandler(href) {
110
- this.childElType = href ? "a" : "button";
111
- }
112
107
  loadingChanged(newValue, oldValue) {
113
108
  if (!!newValue && !oldValue) {
114
109
  this.hasLoader = true;
@@ -125,7 +120,6 @@ let Button = class {
125
120
  //
126
121
  //--------------------------------------------------------------------------
127
122
  connectedCallback() {
128
- this.childElType = this.href ? "a" : "button";
129
123
  this.hasLoader = this.loading;
130
124
  this.setupTextContentObserver();
131
125
  connectLabel(this);
@@ -140,13 +134,14 @@ let Button = class {
140
134
  componentWillLoad() {
141
135
  {
142
136
  this.updateHasContent();
143
- if (this.childElType === "button" && !this.type) {
137
+ if (!this.href && !this.type) {
144
138
  this.type = "submit";
145
139
  }
146
140
  }
147
141
  }
148
142
  render() {
149
- const Tag = this.childElType;
143
+ const childElType = this.href ? "a" : "button";
144
+ const Tag = childElType;
150
145
  const loaderNode = this.hasLoader ? (h("div", { class: CSS.buttonLoader }, h("calcite-loader", { active: true, class: this.loading ? CSS.loadingIn : CSS.loadingOut, inline: true, label: this.intlLoading, scale: "m" }))) : null;
151
146
  const iconStartEl = (h("calcite-icon", { class: { [CSS.icon]: true, [CSS.iconStart]: true }, flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
152
147
  const iconEndEl = (h("calcite-icon", { class: { [CSS.icon]: true, [CSS.iconEnd]: true }, flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
@@ -155,7 +150,7 @@ let Button = class {
155
150
  [CSS.contentSlotted]: this.hasContent,
156
151
  [CSS.iconStartEmpty]: !this.iconStart,
157
152
  [CSS.iconEndEmpty]: !this.iconEnd
158
- }, disabled: this.disabled || this.loading, href: this.childElType === "a" && this.href, name: this.childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: this.childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: this.childElType === "a" && this.target, type: this.childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
153
+ }, disabled: this.disabled || this.loading, href: childElType === "a" && this.href, name: childElType === "button" && this.name, onClick: this.handleClick, ref: (el) => (this.childEl = el), rel: childElType === "a" && this.rel, tabIndex: this.disabled || this.loading ? -1 : null, target: childElType === "a" && this.target, type: childElType === "button" && this.type }, loaderNode, this.iconStart ? iconStartEl : null, this.hasContent ? contentEl : null, this.iconEnd ? iconEndEl : null));
159
154
  }
160
155
  //--------------------------------------------------------------------------
161
156
  //
@@ -189,7 +184,6 @@ let Button = class {
189
184
  }
190
185
  get el() { return getElement(this); }
191
186
  static get watchers() { return {
192
- "href": ["hrefHandler"],
193
187
  "loading": ["loadingChanged"]
194
188
  }; }
195
189
  };
@@ -23,8 +23,6 @@ let Link = class {
23
23
  * See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download
24
24
  */
25
25
  this.download = false;
26
- /** the node type of the rendered child element */
27
- this.childElType = "span";
28
26
  //--------------------------------------------------------------------------
29
27
  //
30
28
  // Private Methods
@@ -34,25 +32,20 @@ let Link = class {
34
32
  this.childEl = el;
35
33
  };
36
34
  }
37
- hrefHandler(href) {
38
- this.childElType = href ? "a" : "span";
39
- }
40
35
  //--------------------------------------------------------------------------
41
36
  //
42
37
  // Lifecycle
43
38
  //
44
39
  //--------------------------------------------------------------------------
45
- connectedCallback() {
46
- this.childElType = this.href ? "a" : "span";
47
- }
48
40
  render() {
49
41
  const { download, el } = this;
50
42
  const dir = getElementDir(el);
43
+ const childElType = this.href ? "a" : "span";
51
44
  const iconStartEl = (h("calcite-icon", { class: "calcite-link--icon icon-start", flipRtl: this.iconFlipRtl === "start" || this.iconFlipRtl === "both", icon: this.iconStart, scale: "s" }));
52
45
  const iconEndEl = (h("calcite-icon", { class: "calcite-link--icon icon-end", flipRtl: this.iconFlipRtl === "end" || this.iconFlipRtl === "both", icon: this.iconEnd, scale: "s" }));
53
- const Tag = this.childElType;
54
- const role = this.childElType === "span" ? "link" : null;
55
- const tabIndex = this.disabled ? -1 : this.childElType === "span" ? 0 : null;
46
+ const Tag = childElType;
47
+ const role = childElType === "span" ? "link" : null;
48
+ const tabIndex = this.disabled ? -1 : childElType === "span" ? 0 : null;
56
49
  return (h(Host, { role: "presentation" }, h(Tag, { class: { [CSS_UTILITY.rtl]: dir === "rtl" },
57
50
  /*
58
51
  When the 'download' property of type 'boolean | string' is set to true, the value is "".
@@ -70,9 +63,6 @@ let Link = class {
70
63
  focusElement(this.childEl);
71
64
  }
72
65
  get el() { return getElement(this); }
73
- static get watchers() { return {
74
- "href": ["hrefHandler"]
75
- }; }
76
66
  };
77
67
  Link.style = linkCss;
78
68