@descope/web-components-ui 3.3.1 → 3.3.3

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.
@@ -3946,7 +3946,16 @@ const EnrichedTextClass = compose(
3946
3946
 
3947
3947
  const componentName$1f = getComponentName('link');
3948
3948
 
3949
- class RawLink extends createBaseClass$1({ componentName: componentName$1f, baseSelector: ':host a' }) {
3949
+ const observedAttrs$6 = ['href', 'readonly'];
3950
+
3951
+ class RawLink extends createBaseClass$1({
3952
+ componentName: componentName$1f,
3953
+ baseSelector: ':host a',
3954
+ }) {
3955
+ static get observedAttributes() {
3956
+ return observedAttrs$6.concat(super.observedAttributes || []);
3957
+ }
3958
+
3950
3959
  constructor() {
3951
3960
  super();
3952
3961
 
@@ -3979,10 +3988,12 @@ class RawLink extends createBaseClass$1({ componentName: componentName$1f, baseS
3979
3988
  white-space: nowrap;
3980
3989
  }
3981
3990
  `,
3982
- this
3991
+ this,
3983
3992
  );
3984
3993
 
3985
- forwardAttrs(this, this.shadowRoot.querySelector('a'), {
3994
+ this.anchor = this.shadowRoot.querySelector('a');
3995
+
3996
+ forwardAttrs(this, this.anchor, {
3986
3997
  includeAttrs: ['href', 'target', 'tooltip'],
3987
3998
  mapAttrs: {
3988
3999
  tooltip: 'title',
@@ -3992,6 +4003,16 @@ class RawLink extends createBaseClass$1({ componentName: componentName$1f, baseS
3992
4003
  forwardAttrs(this, this.shadowRoot.querySelector('descope-text'), {
3993
4004
  includeAttrs: ['mode', 'variant'],
3994
4005
  });
4006
+
4007
+ this.anchor.addEventListener('click', (e) => {
4008
+ if (this.readOnly) {
4009
+ e.preventDefault();
4010
+ }
4011
+ });
4012
+ }
4013
+
4014
+ get readOnly() {
4015
+ return this.getAttribute('readonly') === 'true';
3995
4016
  }
3996
4017
  }
3997
4018
 
@@ -4011,7 +4032,11 @@ const LinkClass = compose(
4011
4032
  hostWidth: { ...host$v, property: 'width' },
4012
4033
  hostDirection: { ...text$2, property: 'direction' },
4013
4034
  textAlign: wrapper$1,
4014
- textDecoration: { ...link$3, property: 'text-decoration', fallback: 'none' },
4035
+ textDecoration: {
4036
+ ...link$3,
4037
+ property: 'text-decoration',
4038
+ fallback: 'none',
4039
+ },
4015
4040
  textColor: [
4016
4041
  { ...anchor, property: 'color' },
4017
4042
  { ...text$2, property: TextClass.cssVarList.textColor },
@@ -4020,7 +4045,7 @@ const LinkClass = compose(
4020
4045
  },
4021
4046
  }),
4022
4047
  draggableMixin$1,
4023
- componentNameValidationMixin$1
4048
+ componentNameValidationMixin$1,
4024
4049
  )(RawLink);
4025
4050
 
4026
4051
  const globalRefs$F = getThemeRefs$1(globals);
@@ -22699,8 +22724,10 @@ class RawDateFieldClass extends BaseInputClass$1 {
22699
22724
  #adjustPopoverPosition() {
22700
22725
  const popover = this.shadowRoot.querySelector('vaadin-popover').shadowRoot;
22701
22726
 
22702
- // Remove previously added stylesheets
22703
- this.#popoverPosStylesheet?.remove();
22727
+ // Reset any previous transform so getBoundingClientRect measures the natural position
22728
+ this.#popoverPosStylesheet?.replaceSync(
22729
+ `vaadin-popover-overlay::part(overlay) { transform: none; }`
22730
+ );
22704
22731
 
22705
22732
  const windowRect = document.body.getBoundingClientRect();
22706
22733
  const inputRect = this.getBoundingClientRect();
@@ -22718,14 +22745,17 @@ class RawDateFieldClass extends BaseInputClass$1 {
22718
22745
  newOffset = Math.min(Math.abs(offset), availableLeft) * -1;
22719
22746
  }
22720
22747
 
22721
- injectStyle(
22722
- `
22748
+ const css = `
22723
22749
  vaadin-popover-overlay::part(overlay) {
22724
22750
  transform: translateX(${newOffset}px);
22725
22751
  }
22726
- `,
22727
- popover
22728
- );
22752
+ `;
22753
+
22754
+ if (this.#popoverPosStylesheet) {
22755
+ this.#popoverPosStylesheet.replaceSync(css);
22756
+ } else {
22757
+ this.#popoverPosStylesheet = injectStyle(css, popover);
22758
+ }
22729
22759
  }
22730
22760
 
22731
22761
  #getPopoverContent() {