@vonage/vivid 4.30.0 → 4.30.1

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.
@@ -1,7 +1,7 @@
1
1
  import type { Appearance, Connotation, Shape, Size } from '../enums.js';
2
2
  import { VividElement } from '../../shared/foundation/vivid-element/vivid-element';
3
3
  import type { ExtractFromEnum } from '../../shared/utils/enums';
4
- export type BadgeConnotation = ExtractFromEnum<Connotation, Connotation.Accent | Connotation.CTA | Connotation.Success | Connotation.Alert | Connotation.Warning | Connotation.Information>;
4
+ export type BadgeConnotation = ExtractFromEnum<Connotation, Connotation.Accent | Connotation.CTA | Connotation.Success | Connotation.Alert | Connotation.Warning | Connotation.Information | Connotation.Announcement>;
5
5
  export type BadgeAppearance = ExtractFromEnum<Appearance, Appearance.Filled | Appearance.Duotone | Appearance.Subtle | Appearance.SubtleLight>;
6
6
  export type BadgeShape = ExtractFromEnum<Shape, Shape.Rounded | Shape.Pill>;
7
7
  export type BadgeSize = ExtractFromEnum<Size, Size.Normal | Size.Expanded>;
@@ -812,7 +812,7 @@ declare const DatePicker_base: (abstract new (...args: any[]) => {
812
812
  _toPresentationValue(value: string): string;
813
813
  _parsePresentationValue(presentationValue: string): string;
814
814
  _isInternalValueUpdate: boolean;
815
- _updateValueDueToUserInteraction(newValue: string): void;
815
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
816
816
  _isPresentationValueInvalid(): boolean;
817
817
  }) & (abstract new (...args: any[]) => {
818
818
  _isValidValue(value: string): boolean;
@@ -821,7 +821,7 @@ declare const DatePicker_base: (abstract new (...args: any[]) => {
821
821
  _isInternalValueUpdate: boolean;
822
822
  valueChanged(previous: string, next: string): void;
823
823
  _updatePresentationValue(): void;
824
- _updateValueDueToUserInteraction(newValue: string): void;
824
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
825
825
  _onTextFieldChange(): void;
826
826
  _onTextFieldInput(event: Event): void;
827
827
  _isPresentationValueInvalid(): boolean;
@@ -28,7 +28,7 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
28
28
  _isInternalValueUpdate: boolean;
29
29
  valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
30
30
  _updatePresentationValue: (() => void) & (() => void);
31
- _updateValueDueToUserInteraction(newValue: string): void;
31
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
32
32
  _onTextFieldChange: (() => void) & (() => void);
33
33
  _onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
34
34
  _isPresentationValueInvalid(): boolean;
@@ -1602,7 +1602,7 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
1602
1602
  _toPresentationValue(value: string): string;
1603
1603
  _parsePresentationValue(presentationValue: string): string;
1604
1604
  _isInternalValueUpdate: boolean;
1605
- _updateValueDueToUserInteraction(newValue: string): void;
1605
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
1606
1606
  _isPresentationValueInvalid(): boolean;
1607
1607
  }) & (abstract new (...args: any[]) => {
1608
1608
  _isValidValue(value: string): boolean;
@@ -1611,7 +1611,7 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
1611
1611
  _isInternalValueUpdate: boolean;
1612
1612
  valueChanged(previous: string, next: string): void;
1613
1613
  _updatePresentationValue(): void;
1614
- _updateValueDueToUserInteraction(newValue: string): void;
1614
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
1615
1615
  _onTextFieldChange(): void;
1616
1616
  _onTextFieldInput(event: Event): void;
1617
1617
  _isPresentationValueInvalid(): boolean;
@@ -30,7 +30,7 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
30
30
  _isInternalValueUpdate: boolean;
31
31
  valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
32
32
  _updatePresentationValue: (() => void) & (() => void);
33
- _updateValueDueToUserInteraction(newValue: string): void;
33
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
34
34
  _onTextFieldChange: (() => void) & (() => void);
35
35
  _onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
36
36
  _isPresentationValueInvalid(): boolean;
@@ -798,7 +798,7 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
798
798
  _isInternalValueUpdate: boolean;
799
799
  valueChanged(previous: string, next: string): void;
800
800
  _updatePresentationValue(): void;
801
- _updateValueDueToUserInteraction(newValue: string): void;
801
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
802
802
  _onTextFieldChange(): void;
803
803
  _onTextFieldInput(event: Event): void;
804
804
  _isPresentationValueInvalid(): boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vonage/vivid",
3
- "version": "4.30.0",
3
+ "version": "4.30.1",
4
4
  "type": "module",
5
5
  "module": "./index.js",
6
6
  "main": "./index.cjs",
@@ -78,7 +78,7 @@ __decorateClass([
78
78
  vividElement.attr({ mode: "boolean" })
79
79
  ], Tag.prototype, "selected");
80
80
 
81
- const styles = ".base.connotation-cta{--_connotation-color-primary: var(--vvd-tag-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-tag-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-tag-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-tag-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-tag-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm: var(--vvd-tag-cta-firm, var(--vvd-color-cta-600));--_connotation-color-firm-all: var(--vvd-tag-cta-firm-all, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-tag-cta-faint, var(--vvd-color-cta-50));--_connotation-color-dim: var(--vvd-tag-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-tag-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-tag-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-tag-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-tag-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-tag-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm: var(--vvd-tag-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-firm-all: var(--vvd-tag-accent-firm-all, var(--vvd-color-neutral-600));--_connotation-color-faint: var(--vvd-tag-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-dim: var(--vvd-tag-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 85%);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-firm-all)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 75%);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 65%);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled).appearance-duotone{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--vvd-color-neutral-100)}.base:where(.disabled,:disabled).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-pale);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-canvas);--_appearance-color-fill: var(--_connotation-color-firm);--_appearance-color-outline: transparent}.base{--tag-block-size: calc(1px*(24 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;position:relative;display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--tag-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-bold);max-inline-size:100%;padding-inline:8px;vertical-align:middle}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}.base:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{cursor:not-allowed;pointer-events:none}.base.removable{cursor:auto}.label{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}slot[name=icon]{font-size:calc(var(--tag-block-size) / 1.5);line-height:1}.dismiss-button{display:flex;align-items:center;padding:0;border:none;border-radius:inherit;background-color:var(--_appearance-color-fill);cursor:pointer}.dismiss-button:focus{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}";
81
+ const styles = ".base.connotation-cta{--_connotation-color-primary: var(--vvd-tag-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-tag-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-tag-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-tag-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-tag-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm: var(--vvd-tag-cta-firm, var(--vvd-color-cta-600));--_connotation-color-firm-all: var(--vvd-tag-cta-firm-all, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-tag-cta-faint, var(--vvd-color-cta-50));--_connotation-color-dim: var(--vvd-tag-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-tag-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-tag-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-tag-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-tag-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-tag-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm: var(--vvd-tag-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-firm-all: var(--vvd-tag-accent-firm-all, var(--vvd-color-neutral-600));--_connotation-color-faint: var(--vvd-tag-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-dim: var(--vvd-tag-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 85%);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-firm-all)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 75%);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 65%);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled).appearance-duotone{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--vvd-color-neutral-100)}.base:where(.disabled,:disabled).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-pale);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-canvas);--_appearance-color-fill: var(--_connotation-color-firm);--_appearance-color-outline: transparent}.base{--tag-block-size: calc(1px*(24 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;position:relative;display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--tag-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-bold);max-inline-size:100%;padding-inline:8px;vertical-align:middle}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}.base:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{cursor:not-allowed;pointer-events:none}.base.removable{cursor:auto;padding-inline:8px 1px}.label{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}slot[name=icon]{font-size:calc(var(--tag-block-size) / 1.5);line-height:1}.dismiss-button{position:relative;display:flex;align-items:center;padding:4px;border:none;border-radius:inherit;background-color:var(--_appearance-color-fill);cursor:pointer;inset-inline-start:-4px}.dismiss-button:focus{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}";
82
82
 
83
83
  const getClasses = ({
84
84
  connotation,
@@ -100,12 +100,13 @@ const getClasses = ({
100
100
  );
101
101
  function renderDismissButton(iconTag) {
102
102
  return vividElement.html`
103
- <span
103
+ <button
104
104
  class="dismiss-button"
105
105
  aria-label="${(x) => x.locale.tag.remove(x.label)}"
106
+ ?disabled="${(x) => x.disabled}"
106
107
  @click="${(x) => x.remove()}">
107
108
  <${iconTag} name="close-line"></${iconTag}>
108
- </span>`;
109
+ </button>`;
109
110
  }
110
111
  const tagTemplate = (context) => {
111
112
  const affixIconTemplate = affix.affixIconTemplateFactory(context);
@@ -115,7 +116,7 @@ const tagTemplate = (context) => {
115
116
  ${delegatesAria.delegateAria({
116
117
  role: "option",
117
118
  ariaDisabled: (x) => x.disabled,
118
- ariaSelected: (x) => x.selectable
119
+ ariaSelected: (x) => x.selected && x.selectable
119
120
  })}
120
121
  tabindex="${(x) => x.disabled || x.removable ? null : 0}"
121
122
  @keydown="${(x, c) => x.handleKeydown(c.event)}"
@@ -76,7 +76,7 @@ __decorateClass([
76
76
  attr({ mode: "boolean" })
77
77
  ], Tag.prototype, "selected");
78
78
 
79
- const styles = ".base.connotation-cta{--_connotation-color-primary: var(--vvd-tag-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-tag-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-tag-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-tag-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-tag-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm: var(--vvd-tag-cta-firm, var(--vvd-color-cta-600));--_connotation-color-firm-all: var(--vvd-tag-cta-firm-all, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-tag-cta-faint, var(--vvd-color-cta-50));--_connotation-color-dim: var(--vvd-tag-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-tag-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-tag-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-tag-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-tag-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-tag-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm: var(--vvd-tag-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-firm-all: var(--vvd-tag-accent-firm-all, var(--vvd-color-neutral-600));--_connotation-color-faint: var(--vvd-tag-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-dim: var(--vvd-tag-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 85%);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-firm-all)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 75%);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 65%);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled).appearance-duotone{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--vvd-color-neutral-100)}.base:where(.disabled,:disabled).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-pale);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-canvas);--_appearance-color-fill: var(--_connotation-color-firm);--_appearance-color-outline: transparent}.base{--tag-block-size: calc(1px*(24 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;position:relative;display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--tag-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-bold);max-inline-size:100%;padding-inline:8px;vertical-align:middle}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}.base:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{cursor:not-allowed;pointer-events:none}.base.removable{cursor:auto}.label{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}slot[name=icon]{font-size:calc(var(--tag-block-size) / 1.5);line-height:1}.dismiss-button{display:flex;align-items:center;padding:0;border:none;border-radius:inherit;background-color:var(--_appearance-color-fill);cursor:pointer}.dismiss-button:focus{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}";
79
+ const styles = ".base.connotation-cta{--_connotation-color-primary: var(--vvd-tag-cta-primary, var(--vvd-color-cta-500));--_connotation-color-primary-text: var(--vvd-tag-cta-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-cta-soft, var(--vvd-color-cta-100));--_connotation-color-contrast: var(--vvd-tag-cta-contrast, var(--vvd-color-cta-800));--_connotation-color-pale: var(--vvd-tag-cta-pale, var(--vvd-color-cta-300));--_connotation-color-fierce: var(--vvd-tag-cta-fierce, var(--vvd-color-cta-700));--_connotation-color-firm: var(--vvd-tag-cta-firm, var(--vvd-color-cta-600));--_connotation-color-firm-all: var(--vvd-tag-cta-firm-all, var(--vvd-color-cta-600));--_connotation-color-faint: var(--vvd-tag-cta-faint, var(--vvd-color-cta-50));--_connotation-color-dim: var(--vvd-tag-cta-dim, var(--vvd-color-cta-200))}.base:not(.connotation-cta){--_connotation-color-primary: var(--vvd-tag-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-primary-text: var(--vvd-tag-accent-primary-text, var(--vvd-color-canvas));--_connotation-color-soft: var(--vvd-tag-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-contrast: var(--vvd-tag-accent-contrast, var(--vvd-color-neutral-800));--_connotation-color-pale: var(--vvd-tag-accent-pale, var(--vvd-color-neutral-300));--_connotation-color-fierce: var(--vvd-tag-accent-fierce, var(--vvd-color-neutral-700));--_connotation-color-firm: var(--vvd-tag-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-firm-all: var(--vvd-tag-accent-firm-all, var(--vvd-color-neutral-600));--_connotation-color-faint: var(--vvd-tag-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-dim: var(--vvd-tag-accent-dim, var(--vvd-color-neutral-200))}.base{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.base.appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-pale)}.base.appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 85%);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--_connotation-color-firm-all)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 75%);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.active,:active):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: color-mix(in srgb, var(--_connotation-color-primary), transparent 65%);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled).appearance-duotone{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: var(--vvd-color-neutral-100)}.base:where(.disabled,:disabled).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-contrast);--_appearance-color-fill: var(--_connotation-color-pale);--_appearance-color-outline: transparent}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-duotone{--_appearance-color-text: var(--_connotation-color-firm-all);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: var(--_connotation-color-pale)}.base:where(.selected):where(:not(.disabled,:disabled)).appearance-subtle-light{--_appearance-color-text: var(--vvd-color-canvas);--_appearance-color-fill: var(--_connotation-color-firm);--_appearance-color-outline: transparent}.base{--tag-block-size: calc(1px*(24 + 4*clamp(-1, var(--vvd-size-density, 0), 2))) ;position:relative;display:inline-flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);block-size:var(--tag-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);column-gap:8px;font:var(--vvd-typography-base-bold);max-inline-size:100%;padding-inline:8px;vertical-align:middle}.base:not(.shape-pill){border-radius:4px}.base.shape-pill{border-radius:16px}.base:focus-visible{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}@supports (user-select: none){.base{user-select:none}}.base:not(.disabled){cursor:pointer}.base.disabled{cursor:not-allowed;pointer-events:none}.base.removable{cursor:auto;padding-inline:8px 1px}.label{overflow:hidden;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}slot[name=icon]{font-size:calc(var(--tag-block-size) / 1.5);line-height:1}.dismiss-button{position:relative;display:flex;align-items:center;padding:4px;border:none;border-radius:inherit;background-color:var(--_appearance-color-fill);cursor:pointer;inset-inline-start:-4px}.dismiss-button:focus{--focus-stroke-gap-color: transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--vvd-color-cta-500),transparent 85%),inset 0 0 0 3px var(--focus-stroke-gap-color, currentColor);outline:1px solid var(--focus-stroke-color, var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset, 0px))}";
80
80
 
81
81
  const getClasses = ({
82
82
  connotation,
@@ -98,12 +98,13 @@ const getClasses = ({
98
98
  );
99
99
  function renderDismissButton(iconTag) {
100
100
  return html`
101
- <span
101
+ <button
102
102
  class="dismiss-button"
103
103
  aria-label="${(x) => x.locale.tag.remove(x.label)}"
104
+ ?disabled="${(x) => x.disabled}"
104
105
  @click="${(x) => x.remove()}">
105
106
  <${iconTag} name="close-line"></${iconTag}>
106
- </span>`;
107
+ </button>`;
107
108
  }
108
109
  const tagTemplate = (context) => {
109
110
  const affixIconTemplate = affixIconTemplateFactory(context);
@@ -113,7 +114,7 @@ const tagTemplate = (context) => {
113
114
  ${delegateAria({
114
115
  role: "option",
115
116
  ariaDisabled: (x) => x.disabled,
116
- ariaSelected: (x) => x.selectable
117
+ ariaSelected: (x) => x.selected && x.selectable
117
118
  })}
118
119
  tabindex="${(x) => x.disabled || x.removable ? null : 0}"
119
120
  @keydown="${(x, c) => x.handleKeydown(c.event)}"
@@ -814,7 +814,7 @@ export declare const SingleDatePickerMixin: <T_6 extends AbstractConstructor<{
814
814
  _isInternalValueUpdate: boolean;
815
815
  valueChanged(previous: string, next: string): void;
816
816
  _updatePresentationValue(): void;
817
- _updateValueDueToUserInteraction(newValue: string): void;
817
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
818
818
  _onTextFieldChange(): void;
819
819
  _onTextFieldInput(event: Event): void;
820
820
  _isPresentationValueInvalid(): boolean;
@@ -2391,6 +2391,6 @@ export declare const SingleDatePickerMixin: <T_6 extends AbstractConstructor<{
2391
2391
  _toPresentationValue(value: string): string;
2392
2392
  _parsePresentationValue(presentationValue: string): string;
2393
2393
  _isInternalValueUpdate: boolean;
2394
- _updateValueDueToUserInteraction(newValue: string): void;
2394
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
2395
2395
  _isPresentationValueInvalid(): boolean;
2396
2396
  }) & T_6;
@@ -7,7 +7,7 @@ export declare const SingleValuePicker: <T extends AbstractConstructor<PickerFie
7
7
  _isInternalValueUpdate: boolean;
8
8
  valueChanged(previous: string, next: string): void;
9
9
  _updatePresentationValue(): void;
10
- _updateValueDueToUserInteraction(newValue: string): void;
10
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
11
11
  _onTextFieldChange(): void;
12
12
  _onTextFieldInput(event: Event): void;
13
13
  _isPresentationValueInvalid(): boolean;
@@ -9,7 +9,7 @@ export declare const TimeSelectionPicker: <T_5 extends AbstractConstructor<{
9
9
  _isInternalValueUpdate: boolean;
10
10
  valueChanged(previous: string, next: string): void;
11
11
  _updatePresentationValue(): void;
12
- _updateValueDueToUserInteraction(newValue: string): void;
12
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
13
13
  _onTextFieldChange(): void;
14
14
  _onTextFieldInput(event: Event): void;
15
15
  _isPresentationValueInvalid(): boolean;
@@ -802,7 +802,7 @@ export declare const TimeSelectionPicker: <T_5 extends AbstractConstructor<{
802
802
  _isInternalValueUpdate: boolean;
803
803
  valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
804
804
  _updatePresentationValue: (() => void) & (() => void);
805
- _updateValueDueToUserInteraction(newValue: string): void;
805
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
806
806
  _onTextFieldChange: (() => void) & (() => void);
807
807
  _onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
808
808
  _isPresentationValueInvalid(): boolean;
@@ -29,7 +29,7 @@ export declare const TimeSelectionPickerTemplate: (context: VividElementDefiniti
29
29
  _isInternalValueUpdate: boolean;
30
30
  valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
31
31
  _updatePresentationValue: (() => void) & (() => void);
32
- _updateValueDueToUserInteraction(newValue: string): void;
32
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
33
33
  _onTextFieldChange: (() => void) & (() => void);
34
34
  _onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
35
35
  _isPresentationValueInvalid(): boolean;
@@ -797,7 +797,7 @@ export declare const TimeSelectionPickerTemplate: (context: VividElementDefiniti
797
797
  _isInternalValueUpdate: boolean;
798
798
  valueChanged(previous: string, next: string): void;
799
799
  _updatePresentationValue(): void;
800
- _updateValueDueToUserInteraction(newValue: string): void;
800
+ _updateValueDueToUserInteraction(newValue: string, isIntermediateUpdate: boolean): void;
801
801
  _onTextFieldChange(): void;
802
802
  _onTextFieldInput(event: Event): void;
803
803
  _isPresentationValueInvalid(): boolean;
@@ -15,7 +15,7 @@ const SingleDatePickerMixin = (Base) => {
15
15
  * @internal
16
16
  */
17
17
  _onDateClick(date) {
18
- this._updateValueDueToUserInteraction(this._withUpdatedDate(date));
18
+ this._updateValueDueToUserInteraction(this._withUpdatedDate(date), false);
19
19
  }
20
20
  /**
21
21
  * @internal
@@ -13,7 +13,7 @@ const SingleDatePickerMixin = (Base) => {
13
13
  * @internal
14
14
  */
15
15
  _onDateClick(date) {
16
- this._updateValueDueToUserInteraction(this._withUpdatedDate(date));
16
+ this._updateValueDueToUserInteraction(this._withUpdatedDate(date), false);
17
17
  }
18
18
  /**
19
19
  * @internal
@@ -37,27 +37,34 @@ const SingleValuePicker = (Base) => {
37
37
  /**
38
38
  * @internal
39
39
  */
40
- _updateValueDueToUserInteraction(newValue) {
41
- this.value = newValue;
42
- this.$emit("change");
43
- this.$emit("input");
40
+ _updateValueDueToUserInteraction(newValue, isIntermediateUpdate) {
41
+ if (this.value !== newValue) {
42
+ this._isInternalValueUpdate = true;
43
+ this.value = newValue;
44
+ this._isInternalValueUpdate = false;
45
+ this.$emit("input");
46
+ }
47
+ if (!isIntermediateUpdate) {
48
+ this._updatePresentationValue();
49
+ this.$emit("change");
50
+ }
44
51
  }
45
52
  /**
46
53
  * @internal
47
54
  */
48
55
  _onTextFieldChange() {
49
56
  if (this._presentationValue === "") {
50
- this.value = "";
51
- this.$emit("change");
57
+ this._updateValueDueToUserInteraction("", false);
52
58
  return;
53
59
  }
54
60
  try {
55
- this.value = this._parsePresentationValue(this._presentationValue);
56
- this.$emit("change");
61
+ this._updateValueDueToUserInteraction(
62
+ this._parsePresentationValue(this._presentationValue),
63
+ false
64
+ );
57
65
  } catch (_) {
58
66
  const invalidPresentationValue = this._presentationValue;
59
- this.value = "";
60
- this.$emit("change");
67
+ this._updateValueDueToUserInteraction("", false);
61
68
  this._presentationValue = invalidPresentationValue;
62
69
  return;
63
70
  }
@@ -67,24 +74,18 @@ const SingleValuePicker = (Base) => {
67
74
  */
68
75
  _onTextFieldInput(event) {
69
76
  super._onTextFieldInput(event);
70
- this._isInternalValueUpdate = true;
71
77
  if (this._presentationValue === "") {
72
- this.value = "";
73
- this.$emit("input");
78
+ this._updateValueDueToUserInteraction("", true);
74
79
  return;
75
80
  }
76
81
  try {
77
- const parsedValue = this._parsePresentationValue(
78
- this._presentationValue
82
+ this._updateValueDueToUserInteraction(
83
+ this._parsePresentationValue(this._presentationValue),
84
+ true
79
85
  );
80
- if (this.value !== parsedValue) {
81
- this.value = parsedValue;
82
- this.$emit("input");
83
- }
84
86
  } catch (_) {
85
87
  return;
86
88
  }
87
- this._isInternalValueUpdate = false;
88
89
  }
89
90
  /**
90
91
  * @internal
@@ -104,7 +105,7 @@ const SingleValuePicker = (Base) => {
104
105
  * @internal
105
106
  */
106
107
  _onClearClick() {
107
- this._updateValueDueToUserInteraction("");
108
+ this._updateValueDueToUserInteraction("", false);
108
109
  super._onClearClick();
109
110
  }
110
111
  }
@@ -35,27 +35,34 @@ const SingleValuePicker = (Base) => {
35
35
  /**
36
36
  * @internal
37
37
  */
38
- _updateValueDueToUserInteraction(newValue) {
39
- this.value = newValue;
40
- this.$emit("change");
41
- this.$emit("input");
38
+ _updateValueDueToUserInteraction(newValue, isIntermediateUpdate) {
39
+ if (this.value !== newValue) {
40
+ this._isInternalValueUpdate = true;
41
+ this.value = newValue;
42
+ this._isInternalValueUpdate = false;
43
+ this.$emit("input");
44
+ }
45
+ if (!isIntermediateUpdate) {
46
+ this._updatePresentationValue();
47
+ this.$emit("change");
48
+ }
42
49
  }
43
50
  /**
44
51
  * @internal
45
52
  */
46
53
  _onTextFieldChange() {
47
54
  if (this._presentationValue === "") {
48
- this.value = "";
49
- this.$emit("change");
55
+ this._updateValueDueToUserInteraction("", false);
50
56
  return;
51
57
  }
52
58
  try {
53
- this.value = this._parsePresentationValue(this._presentationValue);
54
- this.$emit("change");
59
+ this._updateValueDueToUserInteraction(
60
+ this._parsePresentationValue(this._presentationValue),
61
+ false
62
+ );
55
63
  } catch (_) {
56
64
  const invalidPresentationValue = this._presentationValue;
57
- this.value = "";
58
- this.$emit("change");
65
+ this._updateValueDueToUserInteraction("", false);
59
66
  this._presentationValue = invalidPresentationValue;
60
67
  return;
61
68
  }
@@ -65,24 +72,18 @@ const SingleValuePicker = (Base) => {
65
72
  */
66
73
  _onTextFieldInput(event) {
67
74
  super._onTextFieldInput(event);
68
- this._isInternalValueUpdate = true;
69
75
  if (this._presentationValue === "") {
70
- this.value = "";
71
- this.$emit("input");
76
+ this._updateValueDueToUserInteraction("", true);
72
77
  return;
73
78
  }
74
79
  try {
75
- const parsedValue = this._parsePresentationValue(
76
- this._presentationValue
80
+ this._updateValueDueToUserInteraction(
81
+ this._parsePresentationValue(this._presentationValue),
82
+ true
77
83
  );
78
- if (this.value !== parsedValue) {
79
- this.value = parsedValue;
80
- this.$emit("input");
81
- }
82
84
  } catch (_) {
83
85
  return;
84
86
  }
85
- this._isInternalValueUpdate = false;
86
87
  }
87
88
  /**
88
89
  * @internal
@@ -102,7 +103,7 @@ const SingleValuePicker = (Base) => {
102
103
  * @internal
103
104
  */
104
105
  _onClearClick() {
105
- this._updateValueDueToUserInteraction("");
106
+ this._updateValueDueToUserInteraction("", false);
106
107
  super._onClearClick();
107
108
  }
108
109
  }
@@ -600,7 +600,8 @@ const TimeSelectionPicker = (Base) => {
600
600
  */
601
601
  _onInlineTimePickerChange(event) {
602
602
  this._updateValueDueToUserInteraction(
603
- this._withUpdatedTime(event.detail)
603
+ this._withUpdatedTime(event.detail),
604
+ false
604
605
  );
605
606
  }
606
607
  /**
@@ -598,7 +598,8 @@ const TimeSelectionPicker = (Base) => {
598
598
  */
599
599
  _onInlineTimePickerChange(event) {
600
600
  this._updateValueDueToUserInteraction(
601
- this._withUpdatedTime(event.detail)
601
+ this._withUpdatedTime(event.detail),
602
+ false
602
603
  );
603
604
  }
604
605
  /**
@@ -2734,7 +2734,7 @@ const ReplacedPropHandling = (Base) => {
2734
2734
 
2735
2735
  class VividElement extends AriaMixin(ReplacedPropHandling(FASTElement)) {
2736
2736
  static {
2737
- this.VIVID_VERSION = "4.30.0";
2737
+ this.VIVID_VERSION = "4.30.1";
2738
2738
  }
2739
2739
  /**
2740
2740
  * Add data-vvd-component attribute with component name globally,
@@ -2732,7 +2732,7 @@ const ReplacedPropHandling = (Base) => {
2732
2732
 
2733
2733
  class VividElement extends AriaMixin(ReplacedPropHandling(FASTElement)) {
2734
2734
  static {
2735
- this.VIVID_VERSION = "4.30.0";
2735
+ this.VIVID_VERSION = "4.30.1";
2736
2736
  }
2737
2737
  /**
2738
2738
  * Add data-vvd-component attribute with component name globally,
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  .vvd-root {
6
6
  background-color: var(--vvd-color-canvas);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  .vvd-root {
6
6
  background-color: var(--vvd-color-canvas);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  .vvd-root:root {
6
6
  --vvd-size-font-scale-base: 1rem;
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  /**
6
6
  * Do not edit directly
7
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
7
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
8
8
  */
9
9
  /**
10
10
  * Do not edit directly
11
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
11
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
12
12
  */
13
13
  /**
14
14
  * Do not edit directly
15
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
15
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
16
16
  */
17
17
  @property --vvd-size-density {
18
18
  syntax: "<integer>";
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  /**
6
6
  * Do not edit directly
7
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
7
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
8
8
  */
9
9
  /**
10
10
  * Do not edit directly
11
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
11
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
12
12
  */
13
13
  /**
14
14
  * Do not edit directly
15
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
15
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
16
16
  */
17
17
  @property --vvd-size-density {
18
18
  syntax: "<integer>";
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Thu, 14 Aug 2025 08:21:38 GMT
3
+ * Generated on Thu, 14 Aug 2025 08:21:43 GMT
4
4
  */
5
5
  .vvd-root, ::part(vvd-root),
6
6
  .vvd-theme-alternate, ::part(vvd-theme-alternate) {
package/vivid.api.json CHANGED
@@ -1286,6 +1286,15 @@
1286
1286
  "text": "Connotation.Information",
1287
1287
  "canonicalReference": "@vonage/vivid!Connotation.Information:member"
1288
1288
  },
1289
+ {
1290
+ "kind": "Content",
1291
+ "text": " | "
1292
+ },
1293
+ {
1294
+ "kind": "Reference",
1295
+ "text": "Connotation.Announcement",
1296
+ "canonicalReference": "@vonage/vivid!Connotation.Announcement:member"
1297
+ },
1289
1298
  {
1290
1299
  "kind": "Content",
1291
1300
  "text": ">"
@@ -1300,7 +1309,7 @@
1300
1309
  "name": "BadgeConnotation",
1301
1310
  "typeTokenRange": {
1302
1311
  "startIndex": 1,
1303
- "endIndex": 17
1312
+ "endIndex": 19
1304
1313
  }
1305
1314
  },
1306
1315
  {