@descope/web-components-ui 1.0.334 → 1.0.336

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. package/dist/cjs/index.cjs.js +186 -550
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +189 -556
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/umd/4392.js +1 -1
  6. package/dist/umd/4978.js +1 -1
  7. package/dist/umd/DescopeDev.js +1 -1
  8. package/dist/umd/descope-email-field-index-js.js +4 -4
  9. package/dist/umd/descope-new-password-descope-new-password-internal-index-js.js +1 -1
  10. package/dist/umd/descope-new-password-index-js.js +1 -1
  11. package/dist/umd/descope-number-field-index-js.js +1 -1
  12. package/dist/umd/descope-passcode-index-js.js +1 -1
  13. package/dist/umd/descope-password-index-js.js +1 -1
  14. package/dist/umd/descope-radio-group-index-js.js +1 -1
  15. package/dist/umd/descope-text-field-index-js.js +2 -2
  16. package/dist/umd/index.js +1 -1
  17. package/dist/umd/mapping-fields-descope-mappings-field-index-js.js +1 -1
  18. package/dist/umd/phone-fields-descope-phone-field-descope-phone-field-internal-index-js.js +1 -1
  19. package/dist/umd/phone-fields-descope-phone-field-index-js.js +1 -1
  20. package/dist/umd/phone-fields-descope-phone-input-box-field-descope-phone-input-box-internal-index-js.js +2 -2
  21. package/dist/umd/phone-fields-descope-phone-input-box-field-index-js.js +1 -1
  22. package/package.json +1 -1
  23. package/src/components/descope-email-field/EmailFieldClass.js +3 -103
  24. package/src/components/descope-new-password/NewPasswordClass.js +0 -24
  25. package/src/components/descope-password/PasswordClass.js +1 -126
  26. package/src/components/descope-text-field/TextFieldClass.js +51 -29
  27. package/src/components/descope-text-field/index.js +2 -0
  28. package/src/components/descope-text-field/textFieldMappings.js +14 -36
  29. package/src/components/phone-fields/descope-phone-field/PhoneFieldClass.js +2 -11
  30. package/src/components/phone-fields/descope-phone-field/descope-phone-field-internal/PhoneFieldInternal.js +2 -5
  31. package/src/components/phone-fields/descope-phone-input-box-field/descope-phone-input-box-internal/PhoneFieldInternalInputBox.js +1 -1
  32. package/src/mixins/proxyInputMixin.js +2 -5
  33. package/src/theme/components/comboBox.js +10 -15
  34. package/src/theme/components/emailField.js +10 -15
  35. package/src/theme/components/inputWrapper.js +1 -0
  36. package/src/theme/components/multiSelectComboBox.js +9 -10
  37. package/src/theme/components/newPassword.js +1 -6
  38. package/src/theme/components/numberField.js +10 -15
  39. package/src/theme/components/password.js +9 -14
  40. package/src/theme/components/phoneField.js +3 -8
  41. package/src/theme/components/phoneInputBoxField.js +9 -14
  42. package/src/theme/components/textField.js +16 -15
  43. package/src/helpers/externalInputs.js +0 -76
package/dist/index.esm.js CHANGED
@@ -4,6 +4,7 @@ import '@vaadin/checkbox';
4
4
  import '@vaadin/text-field';
5
5
  import '@vaadin/email-field';
6
6
  import '@vaadin/number-field';
7
+ import '@vaadin/icon';
7
8
  import '@vaadin/password-field';
8
9
  import MarkdownIt from 'markdown-it';
9
10
  import '@vaadin/text-area';
@@ -15,7 +16,6 @@ import '@vaadin/multi-select-combo-box';
15
16
  import '@vaadin/dialog';
16
17
  import '@vaadin/notification';
17
18
  import '@vaadin/avatar';
18
- import '@vaadin/icon';
19
19
  import '@vaadin/icons';
20
20
  import '@vaadin/custom-field';
21
21
  import hljs from 'highlight.js';
@@ -985,7 +985,7 @@ const proxyInputMixin =
985
985
  ({
986
986
  proxyProps = [],
987
987
  // useProxyTargets flag allows to forwardProps to other targets, other than
988
- // `this.inputElement`. It's to be used within `external-input` components,
988
+ // `this.inputElement`.
989
989
  // if needed
990
990
  useProxyTargets = false,
991
991
  // allows us to set the event that should trigger validation
@@ -1114,10 +1114,7 @@ const proxyInputMixin =
1114
1114
 
1115
1115
  // sync properties
1116
1116
  proxyProps.forEach((prop) => {
1117
- const externalInput = this.querySelector('input[slot="external-input"]') || null;
1118
- const proxyTargets = useProxyTargets
1119
- ? [this.baseElement, externalInput].filter(Boolean)
1120
- : [];
1117
+ const proxyTargets = useProxyTargets ? [this.baseElement].filter(Boolean) : [];
1121
1118
  forwardProps(this, [this.inputElement, ...proxyTargets], prop);
1122
1119
  });
1123
1120
 
@@ -2496,10 +2493,7 @@ const {
2496
2493
  errorMessage: errorMessage$a,
2497
2494
  disabledPlaceholder,
2498
2495
  inputDisabled,
2499
- externalInput,
2500
- externalInputDisabled,
2501
- externalPlaceholder,
2502
- externalDisabledPlaceholder,
2496
+ inputIcon,
2503
2497
  } = {
2504
2498
  host: { selector: () => ':host' },
2505
2499
  label: { selector: '::part(label)' },
@@ -2514,10 +2508,7 @@ const {
2514
2508
  inputDisabled: { selector: 'input:disabled' },
2515
2509
  helperText: { selector: '::part(helper-text)' },
2516
2510
  errorMessage: { selector: '::part(error-message)' },
2517
- externalInput: { selector: () => '::slotted(input)' },
2518
- externalInputDisabled: { selector: () => '::slotted(input:disabled)' },
2519
- externalPlaceholder: { selector: () => '::slotted(input:placeholder-shown)' },
2520
- externalDisabledPlaceholder: { selector: () => '::slotted(input:disabled::placeholder)' },
2511
+ inputIcon: { selector: 'vaadin-icon' },
2521
2512
  };
2522
2513
 
2523
2514
  var textFieldMappings = {
@@ -2547,12 +2538,8 @@ var textFieldMappings = {
2547
2538
  inputValueTextColor: [
2548
2539
  { ...inputField$6, property: 'color' },
2549
2540
  { ...inputDisabled, property: '-webkit-text-fill-color' },
2550
- { ...externalInputDisabled, property: '-webkit-text-fill-color' },
2551
- ],
2552
- inputCaretTextColor: [
2553
- { ...input, property: 'color' },
2554
- { ...externalInput, property: 'color' },
2555
2541
  ],
2542
+ inputCaretTextColor: [{ ...input, property: 'color' }],
2556
2543
 
2557
2544
  labelRequiredIndicator: { ...requiredIndicator$9, property: 'content' },
2558
2545
 
@@ -2565,8 +2552,6 @@ var textFieldMappings = {
2565
2552
  inputHorizontalPadding: [
2566
2553
  { ...input, property: 'padding-left' },
2567
2554
  { ...input, property: 'padding-right' },
2568
- { ...externalInput, property: 'padding-left' },
2569
- { ...externalInput, property: 'padding-right' },
2570
2555
  ],
2571
2556
 
2572
2557
  inputOutlineColor: { ...inputField$6, property: 'outline-color' },
@@ -2574,17 +2559,12 @@ var textFieldMappings = {
2574
2559
  inputOutlineWidth: { ...inputField$6, property: 'outline-width' },
2575
2560
  inputOutlineOffset: { ...inputField$6, property: 'outline-offset' },
2576
2561
 
2577
- inputTextAlign: [
2578
- { ...input, property: 'text-align' },
2579
- { ...externalInput, property: 'text-align' },
2580
- ],
2562
+ inputTextAlign: [{ ...input, property: 'text-align' }],
2581
2563
 
2582
2564
  inputPlaceholderColor: [
2583
2565
  { selector: () => ':host input:placeholder-shown', property: 'color' },
2584
2566
  { ...placeholder$3, property: 'color' },
2585
- { ...externalPlaceholder, property: 'color' },
2586
2567
  { ...disabledPlaceholder, property: '-webkit-text-fill-color' },
2587
- { ...externalDisabledPlaceholder, property: '-webkit-text-fill-color' },
2588
2568
  ],
2589
2569
 
2590
2570
  labelPosition: { ...label$9, property: 'position' },
@@ -2596,99 +2576,17 @@ var textFieldMappings = {
2596
2576
  inputTransformY: { ...label$9, property: 'transform' },
2597
2577
  inputTransition: { ...label$9, property: 'transition' },
2598
2578
  marginInlineStart: { ...label$9, property: 'margin-inline-start' },
2599
- placeholderOpacity: [
2600
- { selector: '> input:placeholder-shown', property: 'opacity' },
2601
- { ...externalPlaceholder, property: 'opacity' },
2602
- ],
2603
- inputVerticalAlignment: [
2604
- { ...inputField$6, property: 'align-items' },
2605
- { ...externalInput, property: 'align-items' },
2606
- ],
2607
- valueInputHeight: [
2608
- { ...input, property: 'height' },
2609
- { ...externalInput, property: 'height' },
2610
- ],
2611
- valueInputMarginBottom: [
2612
- { ...input, property: 'margin-bottom' },
2613
- { ...externalInput, property: 'margin-bottom' },
2579
+ placeholderOpacity: [{ selector: '> input:placeholder-shown', property: 'opacity' }],
2580
+ inputVerticalAlignment: [{ ...inputField$6, property: 'align-items' }],
2581
+ valueInputHeight: [{ ...input, property: 'height' }],
2582
+ valueInputMarginBottom: [{ ...input, property: 'margin-bottom' }],
2583
+
2584
+ inputIconOffset: [
2585
+ { ...inputIcon, property: 'margin-right' },
2586
+ { ...inputIcon, property: 'margin-left' },
2614
2587
  ],
2615
- };
2616
-
2617
- // since on load we can only sample the color of the placeholder,
2618
- // we need to temporarily populate the input in order to sample the value color
2619
- const getValueColor = (ele, computedStyle) => {
2620
- // eslint-disable-next-line no-param-reassign
2621
- ele.value = '_';
2622
-
2623
- const valueColor = computedStyle.getPropertyValue('color');
2624
-
2625
- // eslint-disable-next-line no-param-reassign
2626
- ele.value = '';
2627
-
2628
- return valueColor;
2629
- };
2630
-
2631
- const createExternalInputSlot = (slotName, targetSlotName) => {
2632
- const slotEle = document.createElement('slot');
2633
-
2634
- slotEle.setAttribute('name', slotName);
2635
- slotEle.setAttribute('slot', targetSlotName);
2636
-
2637
- return slotEle;
2638
- };
2639
-
2640
- const createExternalInputEle = (targetSlotName, type, autocompleteType) => {
2641
- const inputEle = document.createElement('input');
2642
-
2643
- inputEle.setAttribute('slot', targetSlotName);
2644
- inputEle.setAttribute('type', type);
2645
- inputEle.setAttribute('data-hidden-input', 'true');
2646
- inputEle.setAttribute('autocomplete', autocompleteType);
2647
-
2648
- return inputEle;
2649
- };
2650
-
2651
- // We apply the original input's style to the external-input.
2652
- // Eventually, the user should interact directly with the external input.
2653
- // We keep the original input
2654
- const applyExternalInputStyles = (sourceInputEle, targetInputEle, labelType) => {
2655
- const computedStyle = getComputedStyle(sourceInputEle);
2656
-
2657
- // Get minimal set of computed theme properties to set on external input
2658
- const height = computedStyle.getPropertyValue('height');
2659
- const paddingLeft = computedStyle.getPropertyValue('padding-left');
2660
- const paddingRight = computedStyle.getPropertyValue('padding-right');
2661
- const fontSize = computedStyle.getPropertyValue('font-size');
2662
- const fontFamily = computedStyle.getPropertyValue('font-family');
2663
- const letterSpacing = computedStyle.getPropertyValue('letter-spacing');
2664
- const caretColor = computedStyle.getPropertyValue('caret-color');
2665
-
2666
- const valueColor = getValueColor(sourceInputEle, computedStyle);
2667
-
2668
- const commonThemeStyles = [
2669
- ['all', 'unset'],
2670
- ['position', 'absolute'],
2671
- ['background-color', 'transparent'],
2672
- ['height', height],
2673
- ['left', paddingLeft],
2674
- ['right', paddingRight],
2675
- ['font-size', fontSize],
2676
- ['font-family', fontFamily],
2677
- ['letter-spacing', letterSpacing],
2678
- ['width', `calc(100% - ${paddingLeft} - ${paddingRight}`],
2679
- ['caret-color', caretColor], // this is for seeing caret when focusing on external input
2680
- ['color', valueColor],
2681
- ];
2682
-
2683
- commonThemeStyles.forEach(([key, val]) =>
2684
- targetInputEle.style.setProperty(key, val, 'important')
2685
- );
2686
-
2687
- // Handle floating label theme properties
2688
- if (labelType === 'floating') {
2689
- const marginBottom = computedStyle.getPropertyValue('margin-bottom');
2690
- targetInputEle.style.setProperty('margin-bottom', marginBottom, 'important');
2691
- }
2588
+ inputIconSize: { ...inputIcon, property: 'font-size' },
2589
+ inputIconColor: { ...inputIcon, property: 'color' },
2692
2590
  };
2693
2591
 
2694
2592
  const componentName$M = getComponentName('email-field');
@@ -2700,103 +2598,12 @@ const customMixin$a = (superclass) =>
2700
2598
 
2701
2599
  this.baseElement.setAttribute('pattern', '^[\\w\\.\\%\\+\\-]+@[\\w\\.\\-]+\\.[A-Za-z]{2,}$');
2702
2600
 
2703
- if (!this.isNoExternalInput) {
2704
- this.externalInput = this.handleExternalInput();
2705
-
2706
- this.addEventListener('focus', () => {
2707
- this.externalInput.focus();
2708
- });
2709
- } else {
2710
- this.setAttribute('autocomplete', this.getAutocompleteType());
2711
- }
2712
- }
2713
-
2714
- get isNoExternalInput() {
2715
- return this.getAttribute('no-external-input') === 'true';
2716
- }
2717
-
2718
- forwardInputValue(source, target) {
2719
- // set internal sync events
2720
- const valueDescriptor = Object.getOwnPropertyDescriptor(
2721
- this.inputElement.constructor.prototype,
2722
- 'value'
2723
- );
2724
-
2725
- Object.defineProperty(source, 'value', {
2726
- ...valueDescriptor,
2727
-
2728
- set(v) {
2729
- valueDescriptor.set.call(this, v);
2730
- // eslint-disable-next-line no-param-reassign
2731
- target.value = v;
2732
- },
2733
- configurable: true,
2734
- });
2735
- }
2736
-
2737
- handleExternalInput() {
2738
- // set safety attribute `external-input`
2739
- this.setAttribute('external-input', 'true');
2740
-
2741
- // use original input element as reference
2742
- const origInput = this.baseElement.querySelector('input');
2743
-
2744
- // to avoid focus loop between external-input and origInput
2745
- // we set origInput's tabindex to -1
2746
- // otherwise, shift-tab will never leave the component focus
2747
- origInput.setAttribute('tabindex', '-1');
2748
-
2749
- // create external slot
2750
- const externalInputSlot = createExternalInputSlot('external-input', 'suffix');
2751
- // append external slot to base element
2752
- this.baseElement.appendChild(externalInputSlot);
2753
-
2754
- const externalInput = createExternalInputEle(
2755
- 'external-input',
2756
- 'text',
2757
- this.getAutocompleteType()
2758
- );
2759
-
2760
- // apply original input's styles to external input
2761
- setTimeout(() => {
2762
- applyExternalInputStyles(origInput, externalInput, this.getAttribute('label-type'));
2763
- });
2764
-
2765
- // set external input events
2766
- this.handleExternalInputEvents(externalInput);
2767
-
2768
- // 1Password catches the internal input, so we forward the value to the external input
2769
- this.forwardInputValue(origInput, externalInput);
2770
-
2771
- syncAttrs(origInput, externalInput, {
2772
- includeAttrs: ['disabled', 'readonly', 'pattern'],
2773
- });
2774
-
2775
- // append external input to component's DOM
2776
- this.appendChild(externalInput);
2777
-
2778
- return externalInput;
2601
+ this.setAttribute('autocomplete', this.getAutocompleteType());
2779
2602
  }
2780
2603
 
2781
2604
  getAutocompleteType() {
2782
2605
  return this.getAttribute('autocomplete') || 'username';
2783
2606
  }
2784
-
2785
- handleExternalInputEvents(externalInput) {
2786
- // sync value of insible input back to original input
2787
- externalInput.addEventListener('input', (e) => {
2788
- this.value = e.target.value;
2789
- });
2790
-
2791
- // sync `focused` attribute on host when focusing on external input
2792
- externalInput.addEventListener('focus', () => {
2793
- this.setAttribute('focused', 'true');
2794
- });
2795
-
2796
- externalInput.addEventListener('blur', () => {
2797
- this.removeAttribute('focused');
2798
- });
2799
- }
2800
2607
  };
2801
2608
 
2802
2609
  const EmailFieldClass = compose(
@@ -2804,7 +2611,7 @@ const EmailFieldClass = compose(
2804
2611
  mappings: textFieldMappings,
2805
2612
  }),
2806
2613
  draggableMixin,
2807
- composedProxyInputMixin({ proxyProps: ['value', 'selectionStart'], useProxyTargets: true }),
2614
+ composedProxyInputMixin({ proxyProps: ['value', 'selectionStart'] }),
2808
2615
  componentNameValidationMixin,
2809
2616
  customMixin$a
2810
2617
  )(
@@ -2832,10 +2639,6 @@ const EmailFieldClass = compose(
2832
2639
  opacity: 0;
2833
2640
  }
2834
2641
 
2835
- vaadin-email-field:not([no-external-input="true"]) > input:not(:placeholder-shown) {
2836
- opacity: 0;
2837
- }
2838
-
2839
2642
  :host ::slotted(*) {
2840
2643
  -webkit-mask-image: none;
2841
2644
  }
@@ -3287,7 +3090,7 @@ class PasscodeInternal extends BaseInputClass$7 {
3287
3090
 
3288
3091
  const componentName$F = getComponentName('text-field');
3289
3092
 
3290
- const observedAttrs = ['type', 'label-type'];
3093
+ const observedAttrs = ['type', 'label-type', 'copy-to-clipboard'];
3291
3094
 
3292
3095
  const customMixin$9 = (superclass) =>
3293
3096
  class TextFieldClass extends superclass {
@@ -3295,6 +3098,47 @@ const customMixin$9 = (superclass) =>
3295
3098
  return observedAttrs.concat(superclass.observedAttributes || []);
3296
3099
  }
3297
3100
 
3101
+ icon;
3102
+
3103
+ init() {
3104
+ super.init?.();
3105
+ }
3106
+
3107
+ renderCopyToClipboard(shouldRender) {
3108
+ if (!shouldRender) {
3109
+ this.icon?.remove();
3110
+ return;
3111
+ }
3112
+
3113
+ const iconInitConfig = {
3114
+ icon: 'vaadin:copy-o',
3115
+ title: 'Copy',
3116
+ style: 'cursor: pointer',
3117
+ };
3118
+
3119
+ const iconCopiedConfig = {
3120
+ icon: 'vaadin:check-circle-o',
3121
+ title: 'Copied',
3122
+ style: 'cursor: initial',
3123
+ };
3124
+
3125
+ this.icon = Object.assign(document.createElement('vaadin-icon'), {
3126
+ slot: 'suffix',
3127
+ ...iconInitConfig,
3128
+ });
3129
+
3130
+ this.baseElement.appendChild(this.icon);
3131
+ this.icon.addEventListener('click', () => {
3132
+ navigator.clipboard.writeText(this.value);
3133
+ Object.assign(this.icon, iconCopiedConfig);
3134
+
3135
+ // we want the icon to go back to the initial state after 5 seconds
3136
+ setTimeout(() => {
3137
+ Object.assign(this.icon, iconInitConfig);
3138
+ }, 5000);
3139
+ });
3140
+ }
3141
+
3298
3142
  onLabelClick() {
3299
3143
  this.focus();
3300
3144
  }
@@ -3318,34 +3162,11 @@ const customMixin$9 = (superclass) =>
3318
3162
  } else {
3319
3163
  this.removeEventListener('click', this.onLabelClick);
3320
3164
  }
3165
+ } else if (attrName === 'copy-to-clipboard') {
3166
+ this.renderCopyToClipboard(newVal === 'true');
3321
3167
  }
3322
3168
  }
3323
3169
  }
3324
-
3325
- // webauthn is not working when the native input element is nested inside multiple shadow roots
3326
- // so we need to be able move the input outside the shadow root for some cases
3327
- get isExternalInput() {
3328
- return this.getAttribute('external-input') === 'true';
3329
- }
3330
-
3331
- constructor() {
3332
- super();
3333
-
3334
- if (this.isExternalInput) {
3335
- const origInput = this.baseElement.querySelector('input');
3336
- this.inputSlot = document.createElement('slot');
3337
-
3338
- this.focus = () => {
3339
- origInput.focus();
3340
- };
3341
-
3342
- this.inputSlot.setAttribute('name', 'input');
3343
- this.inputSlot.setAttribute('slot', 'input');
3344
- this.baseElement.appendChild(this.inputSlot);
3345
-
3346
- this.appendChild(origInput);
3347
- }
3348
- }
3349
3170
  };
3350
3171
 
3351
3172
  const TextFieldClass = compose(
@@ -3353,7 +3174,7 @@ const TextFieldClass = compose(
3353
3174
  mappings: textFieldMappings,
3354
3175
  }),
3355
3176
  draggableMixin,
3356
- composedProxyInputMixin({ proxyProps: ['value', 'selectionStart'], useProxyTargets: true }),
3177
+ composedProxyInputMixin({ proxyProps: ['value', 'selectionStart'] }),
3357
3178
  componentNameValidationMixin,
3358
3179
  customMixin$9
3359
3180
  )(
@@ -3375,14 +3196,18 @@ const TextFieldClass = compose(
3375
3196
 
3376
3197
  vaadin-text-field[label-type="floating"]:not([focused])[readonly] > input:placeholder-shown {
3377
3198
  opacity: 0;
3378
- }
3199
+ }
3379
3200
  vaadin-text-field[label-type="floating"]:not([focused])[disabled] > input:placeholder-shown {
3380
3201
  opacity: 0;
3381
- }
3202
+ }
3382
3203
  ${resetInputLabelPosition('vaadin-text-field')}
3383
3204
  ${useHostExternalPadding(TextFieldClass.cssVarList)}
3384
3205
  ${resetInputOverrides('vaadin-text-field', TextFieldClass.cssVarList)}
3385
3206
  ${inputFloatingLabelStyle()}
3207
+
3208
+ vaadin-text-field vaadin-icon {
3209
+ align-self: center;
3210
+ }
3386
3211
  `,
3387
3212
  excludeAttrsSync: ['tabindex'],
3388
3213
  componentName: componentName$F,
@@ -3618,106 +3443,6 @@ const componentName$D = getComponentName('password');
3618
3443
 
3619
3444
  const customMixin$7 = (superclass) =>
3620
3445
  class PasswordFieldMixinClass extends superclass {
3621
- init() {
3622
- super.init?.();
3623
-
3624
- // reset vaadin's checkValidity
3625
- this.baseElement.checkValidity = () => {};
3626
- // set safety attribute `external-input`
3627
- this.setAttribute('external-input', 'true');
3628
-
3629
- // use original input element as reference
3630
- const origInput = this.baseElement.querySelector('input');
3631
-
3632
- // to avoid focus loop between external-input and origInput
3633
- // we set origInput's tabindex to -1
3634
- // otherwise, shift-tab will never leave the component focus
3635
- origInput.setAttribute('tabindex', '-1');
3636
-
3637
- // create external slot
3638
- const externalInputSlot = createExternalInputSlot('external-input', 'suffix');
3639
- // append external slot to base element
3640
- this.baseElement.appendChild(externalInputSlot);
3641
-
3642
- // create external input
3643
- const externalInput = createExternalInputEle(
3644
- 'external-input',
3645
- 'password',
3646
- this.getAutocompleteType()
3647
- );
3648
-
3649
- this.handlePasswordVisibility(externalInput);
3650
-
3651
- // apply original input's styles to external input
3652
- setTimeout(() => {
3653
- applyExternalInputStyles(origInput, externalInput, this.getAttribute('label-type'));
3654
- });
3655
-
3656
- // set external input events
3657
- this.handleExternalInputEvents(externalInput);
3658
-
3659
- // sync input stateful attributes: `type` (for visibility state change) and `readonly`
3660
- syncAttrs(origInput, externalInput, { includeAttrs: ['type', 'readonly'] });
3661
- syncAttrs(this, externalInput, { includeAttrs: ['focused'] });
3662
-
3663
- origInput.addEventListener('focus', (e) => {
3664
- e.preventDefault();
3665
- if (e.isTrusted) {
3666
- externalInput.focus();
3667
- }
3668
- });
3669
-
3670
- externalInput.addEventListener('input', (e) => {
3671
- if (!e.target.value) {
3672
- this.removeAttribute('has-value');
3673
- } else {
3674
- this.setAttribute('has-value', 'true');
3675
- }
3676
- });
3677
-
3678
- // append external input to component's DOM
3679
- this.appendChild(externalInput);
3680
- }
3681
-
3682
- // override vaadin's password visibility toggle.
3683
- // we need this override in order to to resolve the external input `focus` race condition,
3684
- // which is caused due to the focus sync between the two inputs.
3685
- handlePasswordVisibility(externalInput) {
3686
- // disable vaadin's `__boundRevealButtonMouseDown` mouse-down event lisetener
3687
- const origBoundRevealButtonMouseDown = this.baseElement.__boundRevealButtonMouseDown;
3688
- this.baseElement
3689
- .querySelector('vaadin-password-field-button')
3690
- .removeEventListener('mousedown', origBoundRevealButtonMouseDown);
3691
-
3692
- // disable vaadin's `_passwordVisibleChanged` observer
3693
- this.baseElement._passwordVisibleChanged = () => {};
3694
-
3695
- // override vaadin's `_togglePasswordVisibility`
3696
- this.baseElement._togglePasswordVisibility = () => {
3697
- const currVisibility = externalInput.getAttribute('type');
3698
- if (currVisibility === 'password') {
3699
- this.showPasswordVisibility(externalInput);
3700
- } else {
3701
- this.hidePasswordVisibility(externalInput);
3702
- }
3703
- };
3704
-
3705
- // on component blur, if password is revealed - hide it
3706
- // this behaves differently from vaadin's focus handling, and checks if the blur takes the component out of focus
3707
- // (which menas the click was made outside the component) or if the blur was called due to clicking the Reveal Button
3708
- // and then focusing in the input again
3709
- this.addEventListener('blur', () => {
3710
- setTimeout(() => {
3711
- const isHiddenAndFocused =
3712
- externalInput.getAttribute('type') !== 'password' &&
3713
- externalInput.getAttribute('focused') !== 'true';
3714
- if (isHiddenAndFocused) {
3715
- this.hidePasswordVisibility(externalInput);
3716
- }
3717
- });
3718
- });
3719
- }
3720
-
3721
3446
  hidePasswordVisibility(input) {
3722
3447
  // handle input element's type
3723
3448
  input.setAttribute('type', 'password');
@@ -3735,22 +3460,6 @@ const customMixin$7 = (superclass) =>
3735
3460
  getAutocompleteType() {
3736
3461
  return this.getAttribute('autocomplete') || 'current-password';
3737
3462
  }
3738
-
3739
- handleExternalInputEvents(inputEle) {
3740
- // sync value of insible input back to original input
3741
- inputEle.addEventListener('input', (e) => {
3742
- this.value = e.target.value;
3743
- });
3744
-
3745
- // sync `focused` attribute on host when focusing on external input
3746
- inputEle.addEventListener('focus', () => {
3747
- this.setAttribute('focused', 'true');
3748
- });
3749
-
3750
- inputEle.addEventListener('blur', () => {
3751
- this.removeAttribute('focused');
3752
- });
3753
- }
3754
3463
  };
3755
3464
 
3756
3465
  const {
@@ -3909,10 +3618,6 @@ const PasswordClass = compose(
3909
3618
  ::part(reveal-button) {
3910
3619
  align-self: center;
3911
3620
  }
3912
-
3913
- vaadin-password-field > input:not(:placeholder-shown) {
3914
- opacity: 0;
3915
- }
3916
3621
  `,
3917
3622
  excludeAttrsSync: ['tabindex'],
3918
3623
  componentName: componentName$D,
@@ -5948,7 +5653,7 @@ let PhoneFieldInternal$1 = class PhoneFieldInternal extends BaseInputClass$6 {
5948
5653
  ${CountryCodes.map((item) => comboBoxItem(item)).join('')}
5949
5654
  </descope-combo-box>
5950
5655
  <div class="separator"></div>
5951
- <descope-text-field type="tel" external-input="true"></descope-text-field>
5656
+ <descope-text-field type="tel"></descope-text-field>
5952
5657
  </div>
5953
5658
  `;
5954
5659
 
@@ -5959,9 +5664,6 @@ let PhoneFieldInternal$1 = class PhoneFieldInternal extends BaseInputClass$6 {
5959
5664
  forwardAttrs(this, this.countryCodeInput, { includeAttrs: ['label-type'] });
5960
5665
  forwardAttrs(this, this.phoneNumberInput, { includeAttrs: ['label-type'] });
5961
5666
 
5962
- const externalInput = this.phoneNumberInput.querySelector('input');
5963
- syncAttrs(this.phoneNumberInput, externalInput, { includeAttrs: ['focused'] });
5964
-
5965
5667
  // override combo box setter to display dialCode value in input
5966
5668
  this.countryCodeInput.customValueTransformFn = (val) => {
5967
5669
  const [, dialCode] = val?.split?.(' ') || [];
@@ -6206,7 +5908,6 @@ const {
6206
5908
  inputField: inputField$2,
6207
5909
  countryCodeInput,
6208
5910
  phoneInput: phoneInput$1,
6209
- phoneExternalInput,
6210
5911
  separator: separator$1,
6211
5912
  errorMessage: errorMessage$5,
6212
5913
  helperText: helperText$4,
@@ -6216,7 +5917,6 @@ const {
6216
5917
  requiredIndicator: { selector: '[required]::part(required-indicator)::after' },
6217
5918
  inputField: { selector: '::part(input-field)' },
6218
5919
  phoneInput: { selector: () => 'descope-text-field' },
6219
- phoneExternalInput: { selector: () => '::slotted(input)' },
6220
5920
  countryCodeInput: { selector: () => 'descope-combo-box' },
6221
5921
  separator: { selector: 'descope-phone-field-internal .separator' },
6222
5922
  helperText: { selector: '::part(helper-text)' },
@@ -6306,17 +6006,10 @@ const PhoneFieldClass = compose(
6306
6006
  inputOutlineWidth: { ...inputField$2, property: 'outline-width' },
6307
6007
  inputOutlineOffset: { ...inputField$2, property: 'outline-offset' },
6308
6008
 
6309
- valueInputHeight: [
6310
- { ...phoneExternalInput, property: textVars$1.valueInputHeight },
6311
- { ...countryCodeInput, property: comboVars.valueInputHeight },
6312
- ],
6313
- valueInputMarginBottom: [
6314
- { ...phoneInput$1, property: textVars$1.valueInputMarginBottom },
6315
- { ...phoneExternalInput, property: 'margin-bottom' },
6316
- ],
6009
+ valueInputHeight: [{ ...countryCodeInput, property: comboVars.valueInputHeight }],
6010
+ valueInputMarginBottom: [{ ...phoneInput$1, property: textVars$1.valueInputMarginBottom }],
6317
6011
  marginInlineStart: [
6318
6012
  { ...phoneInput$1, property: textVars$1.marginInlineStart },
6319
- { ...phoneExternalInput, property: 'margin-inline-start' },
6320
6013
  { ...countryCodeInput, property: comboVars.marginInlineStart },
6321
6014
  ],
6322
6015
  },
@@ -6446,7 +6139,7 @@ class PhoneFieldInternal extends BaseInputClass$5 {
6446
6139
 
6447
6140
  this.innerHTML = `
6448
6141
  <div>
6449
- <descope-text-field tabindex="1" external-input="true"></descope-text-field>
6142
+ <descope-text-field tabindex="1"></descope-text-field>
6450
6143
  </div>
6451
6144
  `;
6452
6145
 
@@ -7023,20 +6716,10 @@ const customMixin$4 = (superclass) =>
7023
6716
  </${componentName$u}>
7024
6717
  `;
7025
6718
 
7026
- this.setAttribute('external-input', 'true');
7027
-
7028
6719
  this.baseElement.appendChild(template.content.cloneNode(true));
7029
6720
 
7030
6721
  this.inputElement = this.shadowRoot.querySelector(componentName$u);
7031
6722
 
7032
- // get descope input components
7033
- this.passwordInput = this.inputElement.querySelector('[data-id="password"]');
7034
- this.confirmInput = this.inputElement.querySelector('[data-id="confirm"]');
7035
-
7036
- // create slots for external password input
7037
- this.createExternalInput(this.passwordInput, 'external-password-input');
7038
- this.createExternalInput(this.confirmInput, 'external-confirm-input');
7039
-
7040
6723
  forwardAttrs(this, this.inputElement, {
7041
6724
  includeAttrs: [
7042
6725
  'password-label',
@@ -7060,20 +6743,6 @@ const customMixin$4 = (superclass) =>
7060
6743
  ],
7061
6744
  });
7062
6745
  }
7063
-
7064
- createExternalInput(node, slotName) {
7065
- const externalInput = node.querySelector('input');
7066
- const slotEle = document.createElement('slot');
7067
- const targetSlot = externalInput.getAttribute('slot');
7068
- slotEle.setAttribute('name', slotName);
7069
- slotEle.setAttribute('slot', targetSlot);
7070
- node.appendChild(slotEle);
7071
-
7072
- // move external input
7073
- externalInput.setAttribute('slot', slotName);
7074
- externalInput.setAttribute('data-hidden-input', 'true');
7075
- this.appendChild(externalInput);
7076
- }
7077
6746
  };
7078
6747
 
7079
6748
  const {
@@ -12171,15 +11840,15 @@ const globals = {
12171
11840
  };
12172
11841
  const vars$J = getThemeVars(globals);
12173
11842
 
12174
- const globalRefs$r = getThemeRefs(globals);
11843
+ const globalRefs$s = getThemeRefs(globals);
12175
11844
  const compVars$5 = ButtonClass.cssVarList;
12176
11845
 
12177
11846
  const mode = {
12178
- primary: globalRefs$r.colors.primary,
12179
- secondary: globalRefs$r.colors.secondary,
12180
- success: globalRefs$r.colors.success,
12181
- error: globalRefs$r.colors.error,
12182
- surface: globalRefs$r.colors.surface,
11847
+ primary: globalRefs$s.colors.primary,
11848
+ secondary: globalRefs$s.colors.secondary,
11849
+ success: globalRefs$s.colors.success,
11850
+ error: globalRefs$s.colors.error,
11851
+ surface: globalRefs$s.colors.surface,
12183
11852
  };
12184
11853
 
12185
11854
  const [helperTheme$3, helperRefs$3, helperVars$3] = createHelperVars({ mode }, componentName$V);
@@ -12187,15 +11856,15 @@ const [helperTheme$3, helperRefs$3, helperVars$3] = createHelperVars({ mode }, c
12187
11856
  const button = {
12188
11857
  ...helperTheme$3,
12189
11858
 
12190
- [compVars$5.fontFamily]: globalRefs$r.fonts.font1.family,
11859
+ [compVars$5.fontFamily]: globalRefs$s.fonts.font1.family,
12191
11860
 
12192
11861
  [compVars$5.cursor]: 'pointer',
12193
11862
  [compVars$5.hostHeight]: '3em',
12194
11863
  [compVars$5.hostWidth]: 'auto',
12195
- [compVars$5.hostDirection]: globalRefs$r.direction,
11864
+ [compVars$5.hostDirection]: globalRefs$s.direction,
12196
11865
 
12197
- [compVars$5.borderRadius]: globalRefs$r.radius.sm,
12198
- [compVars$5.borderWidth]: globalRefs$r.border.xs,
11866
+ [compVars$5.borderRadius]: globalRefs$s.radius.sm,
11867
+ [compVars$5.borderWidth]: globalRefs$s.border.xs,
12199
11868
  [compVars$5.borderStyle]: 'solid',
12200
11869
  [compVars$5.borderColor]: 'transparent',
12201
11870
 
@@ -12239,11 +11908,11 @@ const button = {
12239
11908
  },
12240
11909
 
12241
11910
  _disabled: {
12242
- [helperVars$3.main]: globalRefs$r.colors.surface.light,
12243
- [helperVars$3.dark]: globalRefs$r.colors.surface.dark,
12244
- [helperVars$3.light]: globalRefs$r.colors.surface.light,
12245
- [helperVars$3.contrast]: globalRefs$r.colors.surface.main,
12246
- [compVars$5.iconColor]: globalRefs$r.colors.surface.main,
11911
+ [helperVars$3.main]: globalRefs$s.colors.surface.light,
11912
+ [helperVars$3.dark]: globalRefs$s.colors.surface.dark,
11913
+ [helperVars$3.light]: globalRefs$s.colors.surface.light,
11914
+ [helperVars$3.contrast]: globalRefs$s.colors.surface.main,
11915
+ [compVars$5.iconColor]: globalRefs$s.colors.surface.main,
12247
11916
  },
12248
11917
 
12249
11918
  variant: {
@@ -12304,40 +11973,41 @@ var button$1 = /*#__PURE__*/Object.freeze({
12304
11973
  });
12305
11974
 
12306
11975
  const componentName = getComponentName('input-wrapper');
12307
- const globalRefs$q = getThemeRefs(globals);
11976
+ const globalRefs$r = getThemeRefs(globals);
12308
11977
 
12309
11978
  const [theme$1, refs, vars$H] = createHelperVars(
12310
11979
  {
12311
- labelTextColor: globalRefs$q.colors.surface.dark,
11980
+ labelTextColor: globalRefs$r.colors.surface.dark,
12312
11981
  labelFontSize: '14px', // not taken from globals as it is fixed in all inputs
12313
11982
  labelFontWeight: '500', // not taken from globals as it is fixed in all inputs
12314
- valueTextColor: globalRefs$q.colors.surface.contrast,
12315
- placeholderTextColor: globalRefs$q.colors.surface.dark,
11983
+ valueTextColor: globalRefs$r.colors.surface.contrast,
11984
+ placeholderTextColor: globalRefs$r.colors.surface.dark,
12316
11985
  requiredIndicator: "'*'",
12317
- helperTextColor: globalRefs$q.colors.surface.dark,
12318
- errorMessageTextColor: globalRefs$q.colors.error.main,
12319
- successMessageTextColor: globalRefs$q.colors.success.main,
11986
+ helperTextColor: globalRefs$r.colors.surface.dark,
11987
+ errorMessageTextColor: globalRefs$r.colors.error.main,
11988
+ successMessageTextColor: globalRefs$r.colors.success.main,
12320
11989
 
12321
- borderWidth: globalRefs$q.border.xs,
12322
- borderRadius: globalRefs$q.radius.xs,
11990
+ borderWidth: globalRefs$r.border.xs,
11991
+ borderRadius: globalRefs$r.radius.xs,
12323
11992
  borderColor: 'transparent',
12324
11993
 
12325
- outlineWidth: globalRefs$q.border.sm,
11994
+ outlineWidth: globalRefs$r.border.sm,
12326
11995
  outlineStyle: 'solid',
12327
11996
  outlineColor: 'transparent',
12328
11997
  outlineOffset: '0px', // we need to keep the px unit even for 0 value, as this var is used for calc in different component classes
12329
11998
 
12330
11999
  minWidth: '10em',
12331
12000
  toggleButtonSize: '1.5em',
12001
+ inputIconSize: '1em',
12332
12002
  inputHeight: '3em',
12333
12003
  horizontalPadding: '0.5em',
12334
12004
  verticalPadding: '0.5em',
12335
12005
 
12336
- backgroundColor: globalRefs$q.colors.surface.main,
12006
+ backgroundColor: globalRefs$r.colors.surface.main,
12337
12007
 
12338
- fontFamily: globalRefs$q.fonts.font1.family,
12008
+ fontFamily: globalRefs$r.fonts.font1.family,
12339
12009
 
12340
- direction: globalRefs$q.direction,
12010
+ direction: globalRefs$r.direction,
12341
12011
 
12342
12012
  overlayOpacity: '0.3',
12343
12013
 
@@ -12387,28 +12057,28 @@ const [theme$1, refs, vars$H] = createHelperVars(
12387
12057
  },
12388
12058
 
12389
12059
  _focused: {
12390
- outlineColor: globalRefs$q.colors.surface.light,
12060
+ outlineColor: globalRefs$r.colors.surface.light,
12391
12061
  _invalid: {
12392
- outlineColor: globalRefs$q.colors.error.main,
12062
+ outlineColor: globalRefs$r.colors.error.main,
12393
12063
  },
12394
12064
  },
12395
12065
 
12396
12066
  _bordered: {
12397
- outlineWidth: globalRefs$q.border.xs,
12398
- borderColor: globalRefs$q.colors.surface.light,
12067
+ outlineWidth: globalRefs$r.border.xs,
12068
+ borderColor: globalRefs$r.colors.surface.light,
12399
12069
  borderStyle: 'solid',
12400
12070
  _invalid: {
12401
- borderColor: globalRefs$q.colors.error.main,
12071
+ borderColor: globalRefs$r.colors.error.main,
12402
12072
  },
12403
12073
  },
12404
12074
 
12405
12075
  _disabled: {
12406
- labelTextColor: globalRefs$q.colors.surface.light,
12407
- borderColor: globalRefs$q.colors.surface.light,
12408
- valueTextColor: globalRefs$q.colors.surface.light,
12409
- placeholderTextColor: globalRefs$q.colors.surface.light,
12410
- helperTextColor: globalRefs$q.colors.surface.light,
12411
- backgroundColor: globalRefs$q.colors.surface.main,
12076
+ labelTextColor: globalRefs$r.colors.surface.light,
12077
+ borderColor: globalRefs$r.colors.surface.light,
12078
+ valueTextColor: globalRefs$r.colors.surface.light,
12079
+ placeholderTextColor: globalRefs$r.colors.surface.light,
12080
+ helperTextColor: globalRefs$r.colors.surface.light,
12081
+ backgroundColor: globalRefs$r.colors.surface.main,
12412
12082
  },
12413
12083
  },
12414
12084
  componentName
@@ -12421,6 +12091,7 @@ var inputWrapper = /*#__PURE__*/Object.freeze({
12421
12091
  vars: vars$H
12422
12092
  });
12423
12093
 
12094
+ const globalRefs$q = getThemeRefs(globals);
12424
12095
  const vars$G = TextFieldClass.cssVarList;
12425
12096
 
12426
12097
  const textField = {
@@ -12453,21 +12124,19 @@ const textField = {
12453
12124
  left: { [vars$G.inputTextAlign]: 'left' },
12454
12125
  center: { [vars$G.inputTextAlign]: 'center' },
12455
12126
  },
12456
-
12457
- labelType: {
12458
- floating: {
12459
- [vars$G.labelPosition]: refs.labelPosition,
12460
- [vars$G.labelTopPosition]: refs.labelTopPosition,
12461
- [vars$G.labelHorizontalPosition]: refs.labelHorizontalPosition,
12462
- [vars$G.inputTransformY]: refs.inputTransformY,
12463
- [vars$G.inputTransition]: refs.inputTransition,
12464
- [vars$G.marginInlineStart]: refs.marginInlineStart,
12465
- [vars$G.placeholderOpacity]: refs.placeholderOpacity,
12466
- [vars$G.inputVerticalAlignment]: refs.inputVerticalAlignment,
12467
- [vars$G.valueInputHeight]: refs.valueInputHeight,
12468
- [vars$G.valueInputMarginBottom]: refs.valueInputMarginBottom,
12469
- },
12470
- },
12127
+ [vars$G.labelPosition]: refs.labelPosition,
12128
+ [vars$G.labelTopPosition]: refs.labelTopPosition,
12129
+ [vars$G.labelHorizontalPosition]: refs.labelHorizontalPosition,
12130
+ [vars$G.inputTransformY]: refs.inputTransformY,
12131
+ [vars$G.inputTransition]: refs.inputTransition,
12132
+ [vars$G.marginInlineStart]: refs.marginInlineStart,
12133
+ [vars$G.placeholderOpacity]: refs.placeholderOpacity,
12134
+ [vars$G.inputVerticalAlignment]: refs.inputVerticalAlignment,
12135
+ [vars$G.valueInputHeight]: refs.valueInputHeight,
12136
+ [vars$G.valueInputMarginBottom]: refs.valueInputMarginBottom,
12137
+ [vars$G.inputIconOffset]: globalRefs$q.spacing.md,
12138
+ [vars$G.inputIconSize]: refs.inputIconSize,
12139
+ [vars$G.inputIconColor]: refs.placeholderTextColor,
12471
12140
  };
12472
12141
 
12473
12142
  var textField$1 = /*#__PURE__*/Object.freeze({
@@ -12507,20 +12176,15 @@ const password = {
12507
12176
  [vars$F.revealButtonOffset]: globalRefs$p.spacing.md,
12508
12177
  [vars$F.revealButtonSize]: refs.toggleButtonSize,
12509
12178
  [vars$F.revealButtonColor]: refs.placeholderTextColor,
12510
-
12511
- labelType: {
12512
- floating: {
12513
- [vars$F.labelPosition]: refs.labelPosition,
12514
- [vars$F.labelTopPosition]: refs.labelTopPosition,
12515
- [vars$F.labelHorizontalPosition]: refs.labelHorizontalPosition,
12516
- [vars$F.inputTransformY]: refs.inputTransformY,
12517
- [vars$F.inputTransition]: refs.inputTransition,
12518
- [vars$F.marginInlineStart]: refs.marginInlineStart,
12519
- [vars$F.placeholderOpacity]: refs.placeholderOpacity,
12520
- [vars$F.inputVerticalAlignment]: refs.inputVerticalAlignment,
12521
- [vars$F.valueInputHeight]: refs.valueInputHeight,
12522
- },
12523
- },
12179
+ [vars$F.labelPosition]: refs.labelPosition,
12180
+ [vars$F.labelTopPosition]: refs.labelTopPosition,
12181
+ [vars$F.labelHorizontalPosition]: refs.labelHorizontalPosition,
12182
+ [vars$F.inputTransformY]: refs.inputTransformY,
12183
+ [vars$F.inputTransition]: refs.inputTransition,
12184
+ [vars$F.marginInlineStart]: refs.marginInlineStart,
12185
+ [vars$F.placeholderOpacity]: refs.placeholderOpacity,
12186
+ [vars$F.inputVerticalAlignment]: refs.inputVerticalAlignment,
12187
+ [vars$F.valueInputHeight]: refs.valueInputHeight,
12524
12188
  };
12525
12189
 
12526
12190
  var password$1 = /*#__PURE__*/Object.freeze({
@@ -12555,21 +12219,16 @@ const numberField = {
12555
12219
  [vars$E.labelRequiredIndicator]: refs.requiredIndicator,
12556
12220
  [vars$E.inputHorizontalPadding]: refs.horizontalPadding,
12557
12221
  [vars$E.inputHeight]: refs.inputHeight,
12558
-
12559
- labelType: {
12560
- floating: {
12561
- [vars$E.labelPosition]: refs.labelPosition,
12562
- [vars$E.labelTopPosition]: refs.labelTopPosition,
12563
- [vars$E.labelHorizontalPosition]: refs.labelHorizontalPosition,
12564
- [vars$E.inputTransformY]: refs.inputTransformY,
12565
- [vars$E.inputTransition]: refs.inputTransition,
12566
- [vars$E.marginInlineStart]: refs.marginInlineStart,
12567
- [vars$E.placeholderOpacity]: refs.placeholderOpacity,
12568
- [vars$E.inputVerticalAlignment]: refs.inputVerticalAlignment,
12569
- [vars$E.valueInputHeight]: refs.valueInputHeight,
12570
- [vars$E.valueInputMarginBottom]: refs.valueInputMarginBottom,
12571
- },
12572
- },
12222
+ [vars$E.labelPosition]: refs.labelPosition,
12223
+ [vars$E.labelTopPosition]: refs.labelTopPosition,
12224
+ [vars$E.labelHorizontalPosition]: refs.labelHorizontalPosition,
12225
+ [vars$E.inputTransformY]: refs.inputTransformY,
12226
+ [vars$E.inputTransition]: refs.inputTransition,
12227
+ [vars$E.marginInlineStart]: refs.marginInlineStart,
12228
+ [vars$E.placeholderOpacity]: refs.placeholderOpacity,
12229
+ [vars$E.inputVerticalAlignment]: refs.inputVerticalAlignment,
12230
+ [vars$E.valueInputHeight]: refs.valueInputHeight,
12231
+ [vars$E.valueInputMarginBottom]: refs.valueInputMarginBottom,
12573
12232
  };
12574
12233
 
12575
12234
  var numberField$1 = /*#__PURE__*/Object.freeze({
@@ -12604,21 +12263,16 @@ const emailField = {
12604
12263
  [vars$D.inputBackgroundColor]: refs.backgroundColor,
12605
12264
  [vars$D.inputHorizontalPadding]: refs.horizontalPadding,
12606
12265
  [vars$D.inputHeight]: refs.inputHeight,
12607
-
12608
- labelType: {
12609
- floating: {
12610
- [vars$D.labelPosition]: refs.labelPosition,
12611
- [vars$D.labelTopPosition]: refs.labelTopPosition,
12612
- [vars$D.labelHorizontalPosition]: refs.labelHorizontalPosition,
12613
- [vars$D.inputTransformY]: refs.inputTransformY,
12614
- [vars$D.inputTransition]: refs.inputTransition,
12615
- [vars$D.marginInlineStart]: refs.marginInlineStart,
12616
- [vars$D.placeholderOpacity]: refs.placeholderOpacity,
12617
- [vars$D.inputVerticalAlignment]: refs.inputVerticalAlignment,
12618
- [vars$D.valueInputHeight]: refs.valueInputHeight,
12619
- [vars$D.valueInputMarginBottom]: refs.valueInputMarginBottom,
12620
- },
12621
- },
12266
+ [vars$D.labelPosition]: refs.labelPosition,
12267
+ [vars$D.labelTopPosition]: refs.labelTopPosition,
12268
+ [vars$D.labelHorizontalPosition]: refs.labelHorizontalPosition,
12269
+ [vars$D.inputTransformY]: refs.inputTransformY,
12270
+ [vars$D.inputTransition]: refs.inputTransition,
12271
+ [vars$D.marginInlineStart]: refs.marginInlineStart,
12272
+ [vars$D.placeholderOpacity]: refs.placeholderOpacity,
12273
+ [vars$D.inputVerticalAlignment]: refs.inputVerticalAlignment,
12274
+ [vars$D.valueInputHeight]: refs.valueInputHeight,
12275
+ [vars$D.valueInputMarginBottom]: refs.valueInputMarginBottom,
12622
12276
  };
12623
12277
 
12624
12278
  var emailField$1 = /*#__PURE__*/Object.freeze({
@@ -13369,21 +13023,16 @@ const comboBox = {
13369
13023
  [vars$o.inputDropdownButtonOffset]: globalRefs$g.spacing.xs,
13370
13024
  [vars$o.overlayItemPaddingInlineStart]: globalRefs$g.spacing.xs,
13371
13025
  [vars$o.overlayItemPaddingInlineEnd]: globalRefs$g.spacing.lg,
13372
-
13373
- labelType: {
13374
- floating: {
13375
- [vars$o.labelPosition]: refs.labelPosition,
13376
- [vars$o.labelTopPosition]: refs.labelTopPosition,
13377
- [vars$o.labelHorizontalPosition]: refs.labelHorizontalPosition,
13378
- [vars$o.inputTransformY]: refs.inputTransformY,
13379
- [vars$o.inputTransition]: refs.inputTransition,
13380
- [vars$o.marginInlineStart]: refs.marginInlineStart,
13381
- [vars$o.placeholderOpacity]: refs.placeholderOpacity,
13382
- [vars$o.inputVerticalAlignment]: refs.inputVerticalAlignment,
13383
- [vars$o.valueInputHeight]: refs.valueInputHeight,
13384
- [vars$o.valueInputMarginBottom]: refs.valueInputMarginBottom,
13385
- },
13386
- },
13026
+ [vars$o.labelPosition]: refs.labelPosition,
13027
+ [vars$o.labelTopPosition]: refs.labelTopPosition,
13028
+ [vars$o.labelHorizontalPosition]: refs.labelHorizontalPosition,
13029
+ [vars$o.inputTransformY]: refs.inputTransformY,
13030
+ [vars$o.inputTransition]: refs.inputTransition,
13031
+ [vars$o.marginInlineStart]: refs.marginInlineStart,
13032
+ [vars$o.placeholderOpacity]: refs.placeholderOpacity,
13033
+ [vars$o.inputVerticalAlignment]: refs.inputVerticalAlignment,
13034
+ [vars$o.valueInputHeight]: refs.valueInputHeight,
13035
+ [vars$o.valueInputMarginBottom]: refs.valueInputMarginBottom,
13387
13036
 
13388
13037
  _readonly: {
13389
13038
  [vars$o.inputDropdownButtonCursor]: 'default',
@@ -13442,14 +13091,9 @@ const phoneField = {
13442
13091
  [vars$m.phoneInputWidth]: refs.minWidth,
13443
13092
  [vars$m.countryCodeInputWidth]: '5em',
13444
13093
  [vars$m.countryCodeDropdownWidth]: '20em',
13445
-
13446
- labelType: {
13447
- floating: {
13448
- [vars$m.marginInlineStart]: '-0.25em',
13449
- [vars$m.valueInputHeight]: '1.65em',
13450
- [vars$m.valueInputMarginBottom]: '0.25em',
13451
- },
13452
- },
13094
+ [vars$m.marginInlineStart]: '-0.25em',
13095
+ [vars$m.valueInputHeight]: refs.valueInputHeight,
13096
+ [vars$m.valueInputMarginBottom]: refs.valueInputMarginBottom,
13453
13097
 
13454
13098
  // '@overlay': {
13455
13099
  // overlayItemBackgroundColor: 'red'
@@ -13485,20 +13129,15 @@ const phoneInputBoxField = {
13485
13129
  [vars$l.inputOutlineWidth]: refs.outlineWidth,
13486
13130
  [vars$l.inputOutlineColor]: refs.outlineColor,
13487
13131
  [vars$l.inputOutlineOffset]: refs.outlineOffset,
13488
-
13489
- labelType: {
13490
- floating: {
13491
- [vars$l.labelPosition]: refs.labelPosition,
13492
- [vars$l.labelTopPosition]: refs.labelTopPosition,
13493
- [vars$l.labelHorizontalPosition]: refs.labelHorizontalPosition,
13494
- [vars$l.inputTransformY]: refs.inputTransformY,
13495
- [vars$l.inputTransition]: refs.inputTransition,
13496
- [vars$l.marginInlineStart]: refs.marginInlineStart,
13497
- [vars$l.valueInputHeight]: refs.valueInputHeight,
13498
- [vars$l.valueInputMarginBottom]: '0.25em',
13499
- [vars$l.inputHorizontalPadding]: '0',
13500
- },
13501
- },
13132
+ [vars$l.labelPosition]: refs.labelPosition,
13133
+ [vars$l.labelTopPosition]: refs.labelTopPosition,
13134
+ [vars$l.labelHorizontalPosition]: refs.labelHorizontalPosition,
13135
+ [vars$l.inputTransformY]: refs.inputTransformY,
13136
+ [vars$l.inputTransition]: refs.inputTransition,
13137
+ [vars$l.marginInlineStart]: refs.marginInlineStart,
13138
+ [vars$l.valueInputHeight]: refs.valueInputHeight,
13139
+ [vars$l.valueInputMarginBottom]: refs.valueInputMarginBottom,
13140
+ [vars$l.inputHorizontalPadding]: '0',
13502
13141
 
13503
13142
  _fullWidth: {
13504
13143
  [vars$l.hostWidth]: refs.width,
@@ -13527,12 +13166,7 @@ const newPassword = {
13527
13166
  [vars$k.errorMessageTextColor]: refs.errorMessageTextColor,
13528
13167
  [vars$k.policyPreviewBackgroundColor]: 'none',
13529
13168
  [vars$k.policyPreviewPadding]: globalRefs$f.spacing.lg,
13530
-
13531
- labelType: {
13532
- floating: {
13533
- [vars$k.valueInputHeight]: refs.valueInputHeight,
13534
- },
13535
- },
13169
+ [vars$k.valueInputHeight]: refs.valueInputHeight,
13536
13170
 
13537
13171
  _required: {
13538
13172
  // NewPassword doesn't pass `required` attribute to its Password components.
@@ -13837,20 +13471,19 @@ const multiSelectComboBox = {
13837
13471
  [vars$c.chipFontSize]: refs.chipFontSize,
13838
13472
  [vars$c.chipTextColor]: globalRefs$9.colors.surface.contrast,
13839
13473
  [vars$c.chipBackgroundColor]: globalRefs$9.colors.surface.light,
13474
+ [vars$c.labelPosition]: refs.labelPosition,
13475
+ [vars$c.labelTopPosition]: refs.labelTopPosition,
13476
+ [vars$c.labelLeftPosition]: refs.labelLeftPosition,
13477
+ [vars$c.labelHorizontalPosition]: refs.labelHorizontalPosition,
13478
+ [vars$c.inputTransformY]: refs.inputTransformY,
13479
+ [vars$c.inputTransition]: refs.inputTransition,
13480
+ [vars$c.marginInlineStart]: refs.marginInlineStart,
13481
+ [vars$c.placeholderOpacity]: refs.placeholderOpacity,
13482
+ [vars$c.inputVerticalAlignment]: refs.inputVerticalAlignment,
13840
13483
 
13841
13484
  labelType: {
13842
13485
  floating: {
13843
- [vars$c.labelPosition]: refs.labelPosition,
13844
- [vars$c.labelTopPosition]: refs.labelTopPosition,
13845
- [vars$c.labelLeftPosition]: refs.labelLeftPosition,
13846
- [vars$c.labelHorizontalPosition]: refs.labelHorizontalPosition,
13847
- [vars$c.inputTransformY]: refs.inputTransformY,
13848
- [vars$c.inputTransition]: refs.inputTransition,
13849
- [vars$c.marginInlineStart]: refs.marginInlineStart,
13850
- [vars$c.placeholderOpacity]: refs.placeholderOpacity,
13851
- [vars$c.inputVerticalAlignment]: refs.inputVerticalAlignment,
13852
13486
  [vars$c.inputHorizontalPadding]: '0.25em',
13853
-
13854
13487
  _hasValue: {
13855
13488
  [vars$c.inputHorizontalPadding]: '0.45em',
13856
13489
  },