@vonage/vivid 3.0.0-next.41 → 3.0.0-next.44

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.
@@ -6,7 +6,7 @@ import '../shared/export.js';
6
6
  import '../shared/object-keys.js';
7
7
  import '../shared/iterators.js';
8
8
 
9
- var css_248z = ":host {\n display: inline-block;\n}\n\n.base {\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n color: var(--_appearance-color-text);\n inline-size: inherit;\n vertical-align: middle;\n}\n.base {\n --_appearance-color-text: var(--vvd-color-on-canvas);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-neutral-50);\n}\n.base.appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base::before {\n position: absolute;\n z-index: 1;\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n content: \"\";\n inset: 0;\n pointer-events: none;\n}\n.base:not(.tight) {\n padding: 4px;\n column-gap: 4px;\n}\n\n/* Shape */\n.base:not(.shape-pill) {\n border-radius: 6px;\n}\n\n.base.shape-pill {\n border-radius: 24px;\n}\n\n::slotted([role=separator]) {\n width: 1px;\n align-self: stretch;\n background-color: var(--vvd-color-neutral-30);\n margin-block: 4px;\n}\n\n::slotted([vwc-divider]) {\n align-self: stretch;\n margin-block: 4px;\n}";
9
+ var css_248z = ":host {\n display: inline-block;\n}\n\n.base {\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n color: var(--_appearance-color-text);\n inline-size: inherit;\n vertical-align: middle;\n}\n.base {\n --_appearance-color-text: var(--vvd-color-on-canvas);\n --_appearance-color-fill: var(--vvd-color-canvas);\n --_appearance-color-outline: var(--vvd-color-neutral-50);\n}\n.base.appearance-ghost {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base::before {\n position: absolute;\n z-index: 1;\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n content: \"\";\n inset: 0;\n pointer-events: none;\n}\n.base:not(.tight) {\n padding: 4px;\n column-gap: 4px;\n}\n\n/* Shape */\n.base:not(.shape-pill) {\n border-radius: 6px;\n}\n\n.base.shape-pill {\n border-radius: 24px;\n}\n\n/* Separator */\n::slotted(vwc-divider) {\n align-self: stretch;\n margin-block: 4px;\n}";
10
10
  styleInject(css_248z);
11
11
 
12
12
  class ActionGroup extends FoundationElement {
package/banner/index.js CHANGED
@@ -18,6 +18,7 @@ import '../shared/focus.js';
18
18
  import '../shared/button.js';
19
19
  import '../shared/form-associated.js';
20
20
  import '../shared/aria-global.js';
21
+ import '../shared/ref.js';
21
22
  import '../shared/focus2.js';
22
23
  import '../shared/object-keys.js';
23
24
 
@@ -5,6 +5,7 @@ import { B as BreadcrumbItem } from '../shared/breadcrumb-item.js';
5
5
  import '../shared/anchor.js';
6
6
  import '../shared/apply-mixins.js';
7
7
  import '../shared/aria-global.js';
8
+ import '../shared/ref.js';
8
9
 
9
10
  /**
10
11
  * A Breadcrumb Custom HTML Element.
@@ -15,6 +15,7 @@ import '../shared/focus.js';
15
15
  import '../shared/anchor.js';
16
16
  import '../shared/apply-mixins.js';
17
17
  import '../shared/aria-global.js';
18
+ import '../shared/ref.js';
18
19
  import '../shared/affix.js';
19
20
  import '../shared/web.dom-collections.iterator.js';
20
21
  import '../shared/object-keys.js';
package/button/index.js CHANGED
@@ -7,7 +7,7 @@ import { B as Button$1 } from '../shared/button.js';
7
7
  import { a as applyMixins } from '../shared/apply-mixins.js';
8
8
  import { s as styleInject } from '../shared/style-inject.es.js';
9
9
  import { f as focusTemplateFactory } from '../shared/focus2.js';
10
- import { r as ref } from '../shared/aria-global.js';
10
+ import { r as ref } from '../shared/ref.js';
11
11
  import { c as classNames } from '../shared/class-names.js';
12
12
  import '../shared/icon.js';
13
13
  import '../shared/export.js';
@@ -18,6 +18,7 @@ import '../shared/when.js';
18
18
  import '../shared/focus.js';
19
19
  import '../shared/object-keys.js';
20
20
  import '../shared/form-associated.js';
21
+ import '../shared/aria-global.js';
21
22
 
22
23
  class Button extends Button$1 {
23
24
  constructor() {
package/dialog/index.js CHANGED
@@ -18,6 +18,7 @@ import '../shared/button.js';
18
18
  import '../shared/apply-mixins.js';
19
19
  import '../shared/form-associated.js';
20
20
  import '../shared/aria-global.js';
21
+ import '../shared/ref.js';
21
22
  import '../shared/focus2.js';
22
23
  import '../shared/object-keys.js';
23
24
 
@@ -242,31 +243,33 @@ function content() {
242
243
 
243
244
  const DialogTemplate = () => html(_t5 || (_t5 = _2`
244
245
  <vwc-elevation dp="12">
245
- <dialog class="${0}"
246
- @keydown="${0}"
247
- returnValue="${0}"
248
- aria-labelledby="${0}"
249
- aria-label="${0}"
250
- aria-describedby="${0}"
251
- >
252
- <slot name="main">
253
- <div class="main-wrapper">
254
- <div class="header">
255
- <div class="headline-wrapper">
256
- <slot name="graphic">
246
+ <div>
247
+ <dialog class="${0}"
248
+ @keydown="${0}"
249
+ returnValue="${0}"
250
+ aria-labelledby="${0}"
251
+ aria-label="${0}"
252
+ aria-describedby="${0}"
253
+ >
254
+ <slot name="main">
255
+ <div class="main-wrapper">
256
+ <div class="header">
257
+ <div class="headline-wrapper">
258
+ <slot name="graphic">
259
+ ${0}
260
+ </slot>
257
261
  ${0}
258
- </slot>
259
- ${0}
262
+ </div>
263
+ ${0}
260
264
  </div>
261
- ${0}
265
+ <slot name="content">
266
+ ${0}
267
+ </slot>
268
+ <slot name="footer"></slot>
262
269
  </div>
263
- <slot name="content">
264
- ${0}
265
- </slot>
266
- <slot name="footer"></slot>
267
- </div>
268
- </slot>
269
- </dialog>
270
+ </slot>
271
+ </dialog>
272
+ </div>
270
273
  </vwc-elevation>`), getClasses, (x, c) => handleEscapeKey(x, c.event), x => x.returnValue, x => x.ariaLabelledBy, x => x.ariaLabel, x => x.ariaDescribedBy, when(x => x.icon, icon()), when(x => x.headline, headline()), renderDismissButton(), when(x => x.text, content()));
271
274
 
272
275
  const vividDialog = Dialog.compose({
package/fab/index.js CHANGED
@@ -6,7 +6,7 @@ import { A as AffixIconWithTrailing, a as affixIconTemplateFactory } from '../sh
6
6
  import { B as Button } from '../shared/button.js';
7
7
  import { a as applyMixins } from '../shared/apply-mixins.js';
8
8
  import { f as focusTemplateFactory } from '../shared/focus2.js';
9
- import { r as ref } from '../shared/aria-global.js';
9
+ import { r as ref } from '../shared/ref.js';
10
10
  import { c as classNames } from '../shared/class-names.js';
11
11
  import '../shared/icon.js';
12
12
  import '../shared/export.js';
@@ -18,6 +18,7 @@ import '../shared/focus.js';
18
18
  import '../shared/web.dom-collections.iterator.js';
19
19
  import '../shared/object-keys.js';
20
20
  import '../shared/form-associated.js';
21
+ import '../shared/aria-global.js';
21
22
 
22
23
  var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 600 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n background-color: var(--_appearance-color-fill, var(--_elevation-fill));\n block-size: var(--_fab-block-size);\n border-radius: var(--_fab-border-radius);\n color: var(--_appearance-color-text, var(--vvd-color-on-canvas));\n column-gap: var(--fab-icon-gap);\n filter: var(--_elevation-shadow);\n transition: background-color 0.15s linear, filter 0.15s linear;\n vertical-align: middle;\n /* Size */\n}\n.control.connotation-accent {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n --_connotation-color-on-primary: var(--vvd-color-canvas);\n --_connotation-color-primary-increment: var(--vvd-color-neutral-90);\n --_connotation-color-contrast: var(--vvd-color-neutral-90);\n --_connotation-color-fierce: var(--vvd-color-neutral-80);\n --_connotation-color-firm: var(--vvd-color-on-canvas);\n}\n.control.connotation-cta {\n --_connotation-color-primary: var(--vvd-color-cta);\n --_connotation-color-on-primary: var(--vvd-color-on-cta);\n --_connotation-color-primary-increment: var(--vvd-color-cta-70);\n --_connotation-color-contrast: var(--vvd-color-cta-90);\n --_connotation-color-fierce: var(--vvd-color-cta-80);\n --_connotation-color-firm: var(--vvd-color-cta-70);\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-on-primary);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-on-primary);\n --_appearance-color-fill: var(--_connotation-color-primary-increment);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: var(--vvd-color-neutral-30);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-on-primary);\n --_appearance-color-fill: var(--_connotation-color-fierce);\n --_appearance-color-outline: transaprent;\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports ((-webkit-user-select: none) or (user-select: none)) {\n .control {\n -webkit-user-select: none;\n user-select: none;\n }\n}\n.control.density-extended {\n --_fab-border-radius: 30px;\n --_fab-block-size: 56px;\n}\n.control:not(.density-extended) {\n --_fab-border-radius: 24px;\n --_fab-block-size: 40px;\n}\n.control.icon-only {\n border-radius: 50%;\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .control.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .control.icon-only {\n inline-size: var(--_fab-block-size);\n }\n}\n.control:not(.icon-only) {\n --fab-icon-gap: 10px;\n padding-inline: 20px;\n}\n.control:disabled {\n --_elevation-fill: var(--vvd-color-surface-0dp);\n --_elevation-shadow: var(--vvd-shadow-surface-0dp);\n cursor: not-allowed;\n}\n.control:not(:disabled) {\n --_elevation-fill: var(--vvd-color-surface-4dp);\n --_elevation-shadow: var(--vvd-shadow-surface-4dp);\n cursor: pointer;\n}\n.control:not(:disabled):hover {\n --_elevation-fill: var(--vvd-color-surface-12dp);\n --_elevation-shadow: var(--vvd-shadow-surface-12dp);\n}\n.control:not(:disabled):active {\n --_elevation-fill: var(--vvd-color-surface-24dp);\n --_elevation-shadow: var(--vvd-shadow-surface-24dp);\n}\n\n/* Icon */\n.icon {\n font-size: 20px;\n}\n.icon-trailing .icon {\n order: 1;\n}\n\n:not(:focus-visible) .focus-indicator {\n display: none;\n}";
23
24
  styleInject(css_248z);
package/index.js CHANGED
@@ -45,6 +45,7 @@ import './shared/enums.js';
45
45
  import './shared/button.js';
46
46
  import './shared/form-associated.js';
47
47
  import './shared/aria-global.js';
48
+ import './shared/ref.js';
48
49
  import './shared/slotted.js';
49
50
  import './shared/breadcrumb-item.js';
50
51
  import './shared/anchor.js';
@@ -8,7 +8,7 @@ export declare class Popup extends FoundationElement {
8
8
  dismissible: boolean;
9
9
  arrow: boolean;
10
10
  alternate: boolean;
11
- corner?: Placement;
11
+ placement?: Placement;
12
12
  anchor: string;
13
13
  constructor();
14
14
  disconnectedCallback(): void;
@@ -1,6 +1,8 @@
1
1
  import { FoundationElement } from '@microsoft/fast-foundation';
2
2
  import { AffixIcon } from '../../shared/patterns/affix';
3
3
  export declare class SidenavDisclosure extends FoundationElement {
4
+ #private;
5
+ details: HTMLDetailsElement;
4
6
  label?: string;
5
7
  open: boolean;
6
8
  }
@@ -3,6 +3,6 @@ import type { Placement } from '@floating-ui/dom';
3
3
  export declare class Tooltip extends FoundationElement {
4
4
  text?: string;
5
5
  open: boolean;
6
- corner?: Placement;
6
+ placement?: Placement;
7
7
  anchor?: string;
8
8
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vonage/vivid",
3
- "version": "3.0.0-next.41",
3
+ "version": "3.0.0-next.44",
4
4
  "type": "module",
5
5
  "module": "./index.esm.js",
6
6
  "main": "./index.js",
package/popup/index.js CHANGED
@@ -9,7 +9,7 @@ import { t as toString$3 } from '../shared/to-string.js';
9
9
  import { a as keyEscape } from '../shared/form-associated.js';
10
10
  import { s as styleInject } from '../shared/style-inject.es.js';
11
11
  import { w as when } from '../shared/when.js';
12
- import { r as ref } from '../shared/aria-global.js';
12
+ import { r as ref } from '../shared/ref.js';
13
13
  import { c as classNames } from '../shared/class-names.js';
14
14
  import '../icon/index.js';
15
15
  import '../shared/iterators.js';
@@ -19,6 +19,7 @@ import '../shared/focus.js';
19
19
  import '../shared/affix.js';
20
20
  import '../shared/button.js';
21
21
  import '../shared/apply-mixins.js';
22
+ import '../shared/aria-global.js';
22
23
  import '../shared/focus2.js';
23
24
  import '../shared/object-keys.js';
24
25
 
@@ -1942,28 +1943,36 @@ class Popup extends FoundationElement {
1942
1943
  this.dismissible = false;
1943
1944
  this.arrow = false;
1944
1945
  this.alternate = false;
1945
- this.corner = 'left';
1946
+ this.placement = 'left';
1947
+
1948
+ _Popup_handleKeydown.set(this, event => {
1949
+ if (event.key === keyEscape) {
1950
+ this.open = false;
1951
+ }
1952
+ });
1946
1953
  }
1947
1954
 
1948
1955
  disconnectedCallback() {
1949
1956
  var _a, _b;
1950
1957
 
1951
1958
  super.disconnectedCallback();
1952
- (_a = __classPrivateFieldGet(this, _Popup_anchorEl, "f")) === null || _a === void 0 ? void 0 : _a.removeEventListener('keydown', e => __classPrivateFieldGet(this, _Popup_instances, "m", _Popup_handleKeydown).call(this, e));
1959
+ (_a = __classPrivateFieldGet(this, _Popup_anchorEl, "f")) === null || _a === void 0 ? void 0 : _a.removeEventListener('keydown', __classPrivateFieldGet(this, _Popup_handleKeydown, "f"));
1953
1960
  (_b = __classPrivateFieldGet(this, _Popup_cleanup, "f")) === null || _b === void 0 ? void 0 : _b.call(this);
1954
1961
  }
1955
1962
 
1956
1963
  attributeChangedCallback(name, oldValue, newValue) {
1957
- var _a, _b;
1964
+ var _a, _b, _c;
1958
1965
 
1959
1966
  super.attributeChangedCallback(name, oldValue, newValue);
1960
1967
 
1961
1968
  switch (name) {
1962
1969
  case 'anchor':
1963
1970
  {
1971
+ (_a = __classPrivateFieldGet(this, _Popup_anchorEl, "f")) === null || _a === void 0 ? void 0 : _a.removeEventListener('keydown', __classPrivateFieldGet(this, _Popup_handleKeydown, "f"));
1972
+
1964
1973
  __classPrivateFieldSet(this, _Popup_anchorEl, __classPrivateFieldGet(this, _Popup_instances, "m", _Popup_getAnchorById).call(this), "f");
1965
1974
 
1966
- (_a = __classPrivateFieldGet(this, _Popup_anchorEl, "f")) === null || _a === void 0 ? void 0 : _a.addEventListener('keydown', e => __classPrivateFieldGet(this, _Popup_instances, "m", _Popup_handleKeydown).call(this, e));
1975
+ (_b = __classPrivateFieldGet(this, _Popup_anchorEl, "f")) === null || _b === void 0 ? void 0 : _b.addEventListener('keydown', __classPrivateFieldGet(this, _Popup_handleKeydown, "f"));
1967
1976
  break;
1968
1977
  }
1969
1978
  }
@@ -1971,7 +1980,7 @@ class Popup extends FoundationElement {
1971
1980
  if (__classPrivateFieldGet(this, _Popup_anchorEl, "f") && this.popupEl) {
1972
1981
  __classPrivateFieldSet(this, _Popup_cleanup, autoUpdate(__classPrivateFieldGet(this, _Popup_anchorEl, "f"), this.popupEl, () => this.updatePosition()), "f");
1973
1982
  } else {
1974
- (_b = __classPrivateFieldGet(this, _Popup_cleanup, "f")) === null || _b === void 0 ? void 0 : _b.call(this);
1983
+ (_c = __classPrivateFieldGet(this, _Popup_cleanup, "f")) === null || _c === void 0 ? void 0 : _c.call(this);
1975
1984
  }
1976
1985
  }
1977
1986
 
@@ -1981,7 +1990,7 @@ class Popup extends FoundationElement {
1981
1990
  }
1982
1991
 
1983
1992
  const positionData = await computePosition(__classPrivateFieldGet(this, _Popup_anchorEl, "f"), this.popupEl, {
1984
- placement: this.corner,
1993
+ placement: this.placement,
1985
1994
  strategy: __classPrivateFieldGet(this, _Popup_instances, "a", _Popup_strategy_get),
1986
1995
  middleware: __classPrivateFieldGet(this, _Popup_instances, "a", _Popup_middleware_get)
1987
1996
  });
@@ -1994,7 +2003,7 @@ class Popup extends FoundationElement {
1994
2003
  }
1995
2004
 
1996
2005
  }
1997
- _Popup_cleanup = new WeakMap(), _Popup_anchorEl = new WeakMap(), _Popup_instances = new WeakSet(), _Popup_arrowPosition_get = function _Popup_arrowPosition_get() {
2006
+ _Popup_cleanup = new WeakMap(), _Popup_anchorEl = new WeakMap(), _Popup_handleKeydown = new WeakMap(), _Popup_instances = new WeakSet(), _Popup_arrowPosition_get = function _Popup_arrowPosition_get() {
1998
2007
  return {
1999
2008
  top: 'bottom',
2000
2009
  right: 'left',
@@ -2048,12 +2057,6 @@ _Popup_cleanup = new WeakMap(), _Popup_anchorEl = new WeakMap(), _Popup_instance
2048
2057
  });
2049
2058
  }, _Popup_getAnchorById = function _Popup_getAnchorById() {
2050
2059
  return document.getElementById(this.anchor);
2051
- }, _Popup_handleKeydown = function _Popup_handleKeydown({
2052
- key
2053
- }) {
2054
- if (key === keyEscape) {
2055
- this.open = false;
2056
- }
2057
2060
  };
2058
2061
 
2059
2062
  __decorate([attr({
@@ -2074,7 +2077,7 @@ __decorate([attr({
2074
2077
 
2075
2078
  __decorate([attr({
2076
2079
  mode: 'fromView'
2077
- }), __metadata("design:type", String)], Popup.prototype, "corner", void 0);
2080
+ }), __metadata("design:type", String)], Popup.prototype, "placement", void 0);
2078
2081
 
2079
2082
  __decorate([attr, __metadata("design:type", String)], Popup.prototype, "anchor", void 0);
2080
2083
 
@@ -4,7 +4,7 @@ import { B as BaseProgress } from '../shared/base-progress.js';
4
4
  import { w as when } from '../shared/when.js';
5
5
  import { c as classNames } from '../shared/class-names.js';
6
6
 
7
- var css_248z = ".base {\n align-items: center;\n block-size: var(--_density);\n color: var(--_appearance-color-text);\n inline-size: var(--_density);\n outline: none;\n}\n.base.connotation-cta {\n --_connotation-color-primary: var(--vvd-color-cta);\n}\n.base.connotation-alert {\n --_connotation-color-primary: var(--vvd-color-alert);\n}\n.base.connotation-success {\n --_connotation-color-primary: var(--vvd-color-success);\n}\n.base:not(.connotation-cta, .connotation-alert, .connotation-success) {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n}\n.base {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base.density-4 {\n --_density: calc(4 * 4px);\n}\n.base.density-5 {\n --_density: calc(5 * 4px);\n}\n.base.density-6 {\n --_density: calc(6 * 4px);\n}\n.base.density-7 {\n --_density: calc(7 * 4px);\n}\n.base.density-8 {\n --_density: calc(8 * 4px);\n}\n.base.density-10 {\n --_density: calc(10 * 4px);\n}\n.base.density-11 {\n --_density: calc(11 * 4px);\n}\n.base.density-12 {\n --_density: calc(12 * 4px);\n}\n.base:not(.density-4, .density-5, .density-6, .density-7, .density-8, .density-10, .density-11, .density-12) {\n --_density: calc(9 * 4px);\n}\n\n.progress {\n width: 100%;\n height: 100%;\n}\n\n.background {\n fill: none;\n stroke: transparent;\n stroke-width: 2px;\n}\n\n.determinate {\n fill: none;\n stroke: currentColor;\n stroke-linecap: round;\n stroke-width: 2px;\n transform: rotate(-90deg);\n transform-origin: 50% 50%;\n transition: all 0.2s ease-in-out;\n}\n\n.indeterminate-indicator-1 {\n animation: spin-infinite 2s linear infinite;\n fill: none;\n stroke: currentColor;\n stroke-linecap: round;\n stroke-width: 2px;\n transform: rotate(-90deg);\n transform-origin: 50% 50%;\n transition: all 0.2s ease-in-out;\n}\n\n.base.paused .indeterminate-indicator-1 {\n animation-play-state: paused;\n}\n\n@keyframes spin-infinite {\n 0% {\n stroke-dasharray: 0.01px 43.97px;\n transform: rotate(0deg);\n }\n 50% {\n stroke-dasharray: 21.99px 21.99px;\n transform: rotate(450deg);\n }\n 100% {\n stroke-dasharray: 0.01px 43.97px;\n transform: rotate(1080deg);\n }\n}";
7
+ var css_248z = ".base {\n align-items: center;\n block-size: var(--_density);\n color: var(--_appearance-color-text);\n inline-size: var(--_density);\n outline: none;\n}\n.base.connotation-cta {\n --_connotation-color-primary: var(--vvd-color-cta);\n}\n.base.connotation-alert {\n --_connotation-color-primary: var(--vvd-color-alert);\n}\n.base.connotation-success {\n --_connotation-color-primary: var(--vvd-color-success);\n}\n.base:not(.connotation-cta, .connotation-alert, .connotation-success) {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n}\n.base {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base:where(:disabled, .disabled) {\n --_appearance-color-text: var(--vvd-color-neutral-50);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.base.density-5 {\n --_density: calc(5 * 4px);\n}\n.base.density-6 {\n --_density: calc(6 * 4px);\n}\n.base.density-7 {\n --_density: calc(7 * 4px);\n}\n.base.density-8 {\n --_density: calc(8 * 4px);\n}\n.base.density-9 {\n --_density: calc(9 * 4px);\n}\n.base.density-11 {\n --_density: calc(11 * 4px);\n}\n.base.density-12 {\n --_density: calc(12 * 4px);\n}\n.base.density-13 {\n --_density: calc(13 * 4px);\n}\n.base:not(.density-5, .density-6, .density-7, .density-8, .density-9, .density-11, .density-12, .density-13) {\n --_density: calc(10 * 4px);\n}\n\n.progress {\n width: 100%;\n height: 100%;\n}\n\n.background {\n fill: none;\n stroke: transparent;\n stroke-width: 2px;\n}\n\n.determinate {\n fill: none;\n stroke: currentColor;\n stroke-linecap: round;\n stroke-width: 2px;\n transform: rotate(-90deg);\n transform-origin: 50% 50%;\n transition: all 0.2s ease-in-out;\n}\n\n.indeterminate-indicator-1 {\n animation: spin-infinite 2s linear infinite;\n fill: none;\n stroke: currentColor;\n stroke-linecap: round;\n stroke-width: 2px;\n transform: rotate(-90deg);\n transform-origin: 50% 50%;\n transition: all 0.2s ease-in-out;\n}\n\n.base.paused .indeterminate-indicator-1 {\n animation-play-state: paused;\n}\n\n@keyframes spin-infinite {\n 0% {\n stroke-dasharray: 0.01px 43.97px;\n transform: rotate(0deg);\n }\n 50% {\n stroke-dasharray: 21.99px 21.99px;\n transform: rotate(450deg);\n }\n 100% {\n stroke-dasharray: 0.01px 43.97px;\n transform: rotate(1080deg);\n }\n}";
8
8
  styleInject(css_248z);
9
9
 
10
10
  class ProgressRing extends BaseProgress {}
@@ -22,7 +22,7 @@ const getClasses = ({
22
22
  connotation,
23
23
  density,
24
24
  paused
25
- }) => classNames('base', ['disabled', !!paused], [`connotation-${connotation}`, !!connotation], [`density-${(density ? Number(density) : 0) + 9}`, !!density]);
25
+ }) => classNames('base', ['disabled', !!paused], [`connotation-${connotation}`, !!connotation], [`density-${(density ? Number(density) : 0) + 10}`, !!density]);
26
26
 
27
27
  const progressSegments = 44;
28
28
  const ProgressRingTemplate = _ => html(_t || (_t = _2`
@@ -1,42 +1,5 @@
1
- import { A as AttachedBehaviorHTMLDirective, h as html, _ as __decorate, a as attr } from './index.js';
2
-
3
- /**
4
- * The runtime behavior for template references.
5
- * @public
6
- */
7
- class RefBehavior {
8
- /**
9
- * Creates an instance of RefBehavior.
10
- * @param target - The element to reference.
11
- * @param propertyName - The name of the property to assign the reference to.
12
- */
13
- constructor(target, propertyName) {
14
- this.target = target;
15
- this.propertyName = propertyName;
16
- }
17
- /**
18
- * Bind this behavior to the source.
19
- * @param source - The source to bind to.
20
- * @param context - The execution context that the binding is operating within.
21
- */
22
- bind(source) {
23
- source[this.propertyName] = this.target;
24
- }
25
- /**
26
- * Unbinds this behavior from the source.
27
- * @param source - The source to unbind from.
28
- */
29
- /* eslint-disable-next-line @typescript-eslint/no-empty-function */
30
- unbind() { }
31
- }
32
- /**
33
- * A directive that observes the updates a property with a reference to the element.
34
- * @param propertyName - The name of the property to assign the reference to.
35
- * @public
36
- */
37
- function ref(propertyName) {
38
- return new AttachedBehaviorHTMLDirective("fast-ref", RefBehavior, propertyName);
39
- }
1
+ import { h as html, _ as __decorate, a as attr } from './index.js';
2
+ import { r as ref } from './ref.js';
40
3
 
41
4
  /**
42
5
  * A mixin class implementing start and end elements.
@@ -153,4 +116,4 @@ __decorate([
153
116
  attr({ attribute: "aria-roledescription" })
154
117
  ], ARIAGlobalStatesAndProperties.prototype, "ariaRoledescription", void 0);
155
118
 
156
- export { ARIAGlobalStatesAndProperties as A, StartEnd as S, ref as r };
119
+ export { ARIAGlobalStatesAndProperties as A, StartEnd as S };
package/shared/ref.js ADDED
@@ -0,0 +1,41 @@
1
+ import { A as AttachedBehaviorHTMLDirective } from './index.js';
2
+
3
+ /**
4
+ * The runtime behavior for template references.
5
+ * @public
6
+ */
7
+ class RefBehavior {
8
+ /**
9
+ * Creates an instance of RefBehavior.
10
+ * @param target - The element to reference.
11
+ * @param propertyName - The name of the property to assign the reference to.
12
+ */
13
+ constructor(target, propertyName) {
14
+ this.target = target;
15
+ this.propertyName = propertyName;
16
+ }
17
+ /**
18
+ * Bind this behavior to the source.
19
+ * @param source - The source to bind to.
20
+ * @param context - The execution context that the binding is operating within.
21
+ */
22
+ bind(source) {
23
+ source[this.propertyName] = this.target;
24
+ }
25
+ /**
26
+ * Unbinds this behavior from the source.
27
+ * @param source - The source to unbind from.
28
+ */
29
+ /* eslint-disable-next-line @typescript-eslint/no-empty-function */
30
+ unbind() { }
31
+ }
32
+ /**
33
+ * A directive that observes the updates a property with a reference to the element.
34
+ * @param propertyName - The name of the property to assign the reference to.
35
+ * @public
36
+ */
37
+ function ref(propertyName) {
38
+ return new AttachedBehaviorHTMLDirective("fast-ref", RefBehavior, propertyName);
39
+ }
40
+
41
+ export { ref as r };
@@ -1,7 +1,7 @@
1
1
  import { a as affixIconTemplateFactory } from './affix.js';
2
2
  import { f as focusTemplateFactory } from './focus2.js';
3
3
  import { h as html } from './index.js';
4
- import { r as ref } from './aria-global.js';
4
+ import { r as ref } from './ref.js';
5
5
  import { c as classNames } from './class-names.js';
6
6
 
7
7
  let _ = t => t,
@@ -1,12 +1,13 @@
1
1
  import '../icon/index.js';
2
2
  import '../focus/index.js';
3
- import { F as FoundationElement, _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
3
+ import { F as FoundationElement, c as __classPrivateFieldGet, _ as __decorate, a as attr, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
4
4
  import { s as styleInject } from '../shared/style-inject.es.js';
5
5
  import '../shared/web.dom-collections.iterator.js';
6
6
  import { b as AffixIcon, a as affixIconTemplateFactory } from '../shared/affix.js';
7
7
  import { a as applyMixins } from '../shared/apply-mixins.js';
8
8
  import { f as focusTemplateFactory } from '../shared/focus2.js';
9
9
  import { w as when } from '../shared/when.js';
10
+ import { r as ref } from '../shared/ref.js';
10
11
  import '../shared/icon.js';
11
12
  import '../shared/export.js';
12
13
  import '../shared/iterators.js';
@@ -16,16 +17,34 @@ import '../shared/class-names.js';
16
17
  import '../shared/focus.js';
17
18
  import '../shared/object-keys.js';
18
19
 
19
- var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n cursor: pointer;\n gap: 8px;\n -webkit-hyphens: auto;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-10);\n --_connotation-color-soft: var(--vvd-color-neutral-20);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports ((-webkit-user-select: none) or (user-select: none)) {\n .control {\n -webkit-user-select: none;\n user-select: none;\n }\n}\n.control .toggleIcon {\n margin-inline-start: auto;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}\n\n.content {\n border-inline-start: 1px solid var(--vvd-color-neutral-30);\n margin-inline-start: 32px;\n}\n\ndetails > summary {\n list-style: none;\n}\n\ndetails > summary::-webkit-details-marker {\n display: none;\n}";
20
+ var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n position: relative;\n display: flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n cursor: pointer;\n gap: 8px;\n -webkit-hyphens: auto;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-10);\n --_connotation-color-soft: var(--vvd-color-neutral-20);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n@supports ((-webkit-user-select: none) or (user-select: none)) {\n .control {\n -webkit-user-select: none;\n user-select: none;\n }\n}\n.control .toggleIcon {\n margin-inline-start: auto;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}\n\n.content {\n border-inline-start: 1px solid var(--vvd-color-neutral-30);\n margin-inline-start: 20px;\n padding-inline-start: 12px;\n}\n\ndetails > summary {\n list-style: none;\n}\n\ndetails > summary::-webkit-details-marker {\n display: none;\n}";
20
21
  styleInject(css_248z);
21
22
 
23
+ var _SidenavDisclosure_onToggle;
22
24
  class SidenavDisclosure extends FoundationElement {
23
25
  constructor() {
24
26
  super(...arguments);
25
27
  this.open = false;
28
+
29
+ _SidenavDisclosure_onToggle.set(this, () => {
30
+ this.open = this.details.open;
31
+ this.$emit('toggle');
32
+ });
33
+ }
34
+
35
+ connectedCallback() {
36
+ super.connectedCallback();
37
+ this.details.addEventListener('toggle', __classPrivateFieldGet(this, _SidenavDisclosure_onToggle, "f"));
38
+ this.details.open = this.open;
39
+ }
40
+
41
+ disconnectedCallback() {
42
+ super.disconnectedCallback();
43
+ this.details.removeEventListener('toggle', __classPrivateFieldGet(this, _SidenavDisclosure_onToggle, "f"));
26
44
  }
27
45
 
28
46
  }
47
+ _SidenavDisclosure_onToggle = new WeakMap();
29
48
 
30
49
  __decorate([attr, __metadata("design:type", String)], SidenavDisclosure.prototype, "label", void 0);
31
50
 
@@ -42,7 +61,7 @@ let _ = t => t,
42
61
  const SidenavDisclosureTemplate = context => {
43
62
  const affixIconTemplate = affixIconTemplateFactory(context);
44
63
  const focusTemplate = focusTemplateFactory(context);
45
- return html(_t || (_t = _`<details class="base" ?open="${0}">
64
+ return html(_t || (_t = _`<details class="base" ${0} ?open=${0}>
46
65
  <summary class="control"
47
66
  role="button"
48
67
  aria-controls="disclosure-content"
@@ -54,9 +73,11 @@ const SidenavDisclosureTemplate = context => {
54
73
  ${0}
55
74
  ${0}
56
75
  </summary>
57
- <div class="content" id="disclosure-content"><slot></slot></div>
76
+ <div class="content" id="disclosure-content">
77
+ <slot></slot>
78
+ </div>
58
79
  </details>
59
- `), x => x.open, x => x.open, x => affixIconTemplate(x.icon), x => x.label, when(x => x.open, html(_t2 || (_t2 = _`<vwc-icon class="toggleIcon" type='chevron-up-solid'></vwc-icon>`))), when(x => !x.open, html(_t3 || (_t3 = _`<vwc-icon class="toggleIcon" type='chevron-down-solid'></vwc-icon>`))), () => focusTemplate);
80
+ `), ref('details'), x => x.open, x => x.open, x => affixIconTemplate(x.icon), x => x.label, when(x => x.open, html(_t2 || (_t2 = _`<vwc-icon class="toggleIcon" type='chevron-up-solid'></vwc-icon>`))), when(x => !x.open, html(_t3 || (_t3 = _`<vwc-icon class="toggleIcon" type='chevron-down-solid'></vwc-icon>`))), () => focusTemplate);
60
81
  };
61
82
 
62
83
  const vividSidenavDisclosure = SidenavDisclosure.compose({
@@ -18,6 +18,7 @@ import '../shared/web.dom-collections.iterator.js';
18
18
  import '../shared/object-keys.js';
19
19
  import '../shared/anchor.js';
20
20
  import '../shared/aria-global.js';
21
+ import '../shared/ref.js';
21
22
  import '../shared/focus2.js';
22
23
 
23
24
  var css_248z = "/*\n Do not edit directly\n Generated on Wed, 27 Apr 2022 11:58:36 GMT\n*/\n.control {\n font: 400 ultra-condensed 14px / 20px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n border-radius: 6px;\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n gap: 8px;\n -webkit-hyphens: auto;\n hyphens: auto;\n inline-size: 100%;\n min-block-size: 40px;\n padding-block: 10px;\n padding-inline: 8px;\n text-decoration: none;\n vertical-align: middle;\n word-break: break-word;\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:where(:hover, .hover):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-faint);\n --_appearance-color-outline: transaprent;\n}\n.control:where(:active, .active):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control:where(.selected, [aria-current]):where(:not(:disabled, .disabled)) {\n --_appearance-color-text: var(--_connotation-color-primary);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transaprent;\n}\n.control {\n --_connotation-color-primary: var(--vvd-color-on-canvas);\n --_connotation-color-faint: var(--vvd-color-neutral-10);\n --_connotation-color-soft: var(--vvd-color-neutral-20);\n}\n@supports selector(:focus-visible) {\n .control:focus {\n outline: none;\n }\n}\n.control.icon-only {\n display: flex;\n block-size: 40px;\n inline-size: 40px;\n place-content: center;\n}\n\n.control:not(:focus-visible) .focus-indicator {\n display: none;\n}\n\n.icon {\n font-size: 20px;\n}";
@@ -12,6 +12,7 @@ import '../shared/_has.js';
12
12
  import '../shared/anchor.js';
13
13
  import '../shared/apply-mixins.js';
14
14
  import '../shared/aria-global.js';
15
+ import '../shared/ref.js';
15
16
  import '../shared/focus2.js';
16
17
  import '../shared/focus.js';
17
18
  import '../shared/class-names.js';
@@ -6,10 +6,11 @@ import { b as AffixIcon, a as affixIconTemplateFactory } from '../shared/affix.j
6
6
  import '../shared/focus.js';
7
7
  import { a as applyMixins } from '../shared/apply-mixins.js';
8
8
  import { F as FormAssociated } from '../shared/form-associated.js';
9
- import { A as ARIAGlobalStatesAndProperties, S as StartEnd, r as ref } from '../shared/aria-global.js';
9
+ import { A as ARIAGlobalStatesAndProperties, S as StartEnd } from '../shared/aria-global.js';
10
10
  import { s as styleInject } from '../shared/style-inject.es.js';
11
11
  import { f as focusTemplateFactory } from '../shared/focus2.js';
12
12
  import { w as when } from '../shared/when.js';
13
+ import { r as ref } from '../shared/ref.js';
13
14
  import { c as classNames } from '../shared/class-names.js';
14
15
  import '../shared/icon.js';
15
16
  import '../shared/export.js';
package/tooltip/index.js CHANGED
@@ -19,6 +19,7 @@ import '../shared/button.js';
19
19
  import '../shared/apply-mixins.js';
20
20
  import '../shared/form-associated.js';
21
21
  import '../shared/aria-global.js';
22
+ import '../shared/ref.js';
22
23
  import '../shared/focus2.js';
23
24
  import '../shared/object-keys.js';
24
25
  import '../shared/es.object.assign.js';
@@ -40,7 +41,7 @@ __decorate([attr({
40
41
  mode: 'boolean'
41
42
  }), __metadata("design:type", Object)], Tooltip.prototype, "open", void 0);
42
43
 
43
- __decorate([attr, __metadata("design:type", String)], Tooltip.prototype, "corner", void 0);
44
+ __decorate([attr, __metadata("design:type", String)], Tooltip.prototype, "placement", void 0);
44
45
 
45
46
  __decorate([attr, __metadata("design:type", String)], Tooltip.prototype, "anchor", void 0);
46
47
 
@@ -51,14 +52,14 @@ const getClasses = _ => classNames('control');
51
52
 
52
53
  const TooltipTemplate = () => html(_t || (_t = _2`
53
54
  <vwc-popup class="${0}" arrow alternate
54
- corner=${0} open=${0} anchor=${0}
55
+ placement=${0} open=${0} anchor=${0}
55
56
  exportparts="vvd-theme-alternate" role="tooltip">
56
57
  <div class="tooltip">
57
58
  <header part="vvd-theme-alternate" class="tooltip-header">
58
59
  <div class="tooltip-text">${0}</div>
59
60
  </header>
60
61
  </div>
61
- </vwc-popup>`), getClasses, x => x.corner, x => x.open, x => x.anchor, x => x.text);
62
+ </vwc-popup>`), getClasses, x => x.placement, x => x.open, x => x.anchor, x => x.text);
62
63
 
63
64
  const vividTooltip = Tooltip.compose({
64
65
  baseName: 'tooltip',