@descope/web-components-ui 1.0.54 → 1.0.56
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.
- package/dist/index.esm.js +1319 -878
- package/dist/index.esm.js.map +1 -1
- package/dist/umd/descope-loader-linear-index-js.js +1 -0
- package/dist/umd/descope-loader-radial-index-js.js +1 -0
- package/dist/umd/index.js +1 -1
- package/package.json +1 -1
- package/src/components/descope-loader-linear/LoaderLinear.js +72 -0
- package/src/components/descope-loader-linear/index.js +5 -0
- package/src/components/descope-loader-radial/LoaderRadial.js +66 -0
- package/src/components/descope-loader-radial/index.js +5 -0
- package/src/index.js +13 -9
- package/src/theme/components/index.js +4 -1
- package/src/theme/components/loader/index.js +2 -0
- package/src/theme/components/loader/loaderLinear.js +49 -0
- package/src/theme/components/loader/loaderRadial.js +62 -0
- package/src/theme/components/textArea.js +0 -4
- package/src/theme/components/textField.js +0 -4
package/dist/index.esm.js
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
import '@vaadin/button';
|
2
|
+
import '@vaadin/checkbox';
|
2
3
|
import '@vaadin/text-field';
|
3
|
-
import '@vaadin/
|
4
|
+
import '@vaadin/date-picker';
|
4
5
|
import '@vaadin/email-field';
|
6
|
+
import '@vaadin/number-field';
|
5
7
|
import '@vaadin/password-field';
|
6
8
|
import '@vaadin/text-area';
|
7
|
-
import '@vaadin/date-picker';
|
8
|
-
import '@vaadin/checkbox';
|
9
9
|
import merge from 'lodash.merge';
|
10
10
|
import set from 'lodash.set';
|
11
11
|
import Color from 'color';
|
@@ -535,7 +535,7 @@ const compose =
|
|
535
535
|
(val) =>
|
536
536
|
fns.reduceRight((res, fn) => fn(res), val);
|
537
537
|
|
538
|
-
const componentName$
|
538
|
+
const componentName$i = getComponentName('button');
|
539
539
|
|
540
540
|
const editorOverrides = `vaadin-button::part(label) { pointer-events: none; }`;
|
541
541
|
const resetStyles = `
|
@@ -558,7 +558,7 @@ const iconStyles = `
|
|
558
558
|
}
|
559
559
|
`;
|
560
560
|
|
561
|
-
const selectors$
|
561
|
+
const selectors$5 = {
|
562
562
|
label: '::part(label)'
|
563
563
|
};
|
564
564
|
|
@@ -567,7 +567,7 @@ const Button = compose(
|
|
567
567
|
mappings: {
|
568
568
|
backgroundColor: {},
|
569
569
|
borderRadius: {},
|
570
|
-
color: { selector: selectors$
|
570
|
+
color: { selector: selectors$5.label },
|
571
571
|
borderColor: {},
|
572
572
|
borderStyle: {},
|
573
573
|
borderWidth: {},
|
@@ -575,8 +575,8 @@ const Button = compose(
|
|
575
575
|
height: {},
|
576
576
|
width: matchHostStyle(),
|
577
577
|
cursor: {},
|
578
|
-
padding: [{ selector: selectors$
|
579
|
-
textDecoration: { selector: selectors$
|
578
|
+
padding: [{ selector: selectors$5.label }],
|
579
|
+
textDecoration: { selector: selectors$5.label }
|
580
580
|
}
|
581
581
|
}),
|
582
582
|
draggableMixin,
|
@@ -588,7 +588,7 @@ const Button = compose(
|
|
588
588
|
style: () =>
|
589
589
|
`${resetStyles} ${editorOverrides} ${iconStyles} ${loadingIndicatorStyles}`,
|
590
590
|
excludeAttrsSync: ['tabindex'],
|
591
|
-
componentName: componentName$
|
591
|
+
componentName: componentName$i
|
592
592
|
})
|
593
593
|
);
|
594
594
|
|
@@ -621,7 +621,155 @@ const loadingIndicatorStyles = `
|
|
621
621
|
}
|
622
622
|
`;
|
623
623
|
|
624
|
-
customElements.define(componentName$
|
624
|
+
customElements.define(componentName$i, Button);
|
625
|
+
|
626
|
+
const componentName$h = getComponentName('checkbox');
|
627
|
+
|
628
|
+
const Checkbox = compose(
|
629
|
+
createStyleMixin({
|
630
|
+
mappings: {
|
631
|
+
width: matchHostStyle(),
|
632
|
+
cursor: [{}, { selector: '> label' }]
|
633
|
+
}
|
634
|
+
}),
|
635
|
+
draggableMixin,
|
636
|
+
inputMixin,
|
637
|
+
componentNameValidationMixin
|
638
|
+
)(
|
639
|
+
createProxy({
|
640
|
+
slots: [],
|
641
|
+
wrappedEleName: 'vaadin-checkbox',
|
642
|
+
style: `
|
643
|
+
:host {
|
644
|
+
display: inline-block;
|
645
|
+
}
|
646
|
+
`,
|
647
|
+
excludeAttrsSync: ['tabindex'],
|
648
|
+
componentName: componentName$h
|
649
|
+
})
|
650
|
+
);
|
651
|
+
|
652
|
+
customElements.define(componentName$h, Checkbox);
|
653
|
+
|
654
|
+
const componentName$g = getComponentName('loader-linear');
|
655
|
+
|
656
|
+
class RawLoaderLinear extends DescopeBaseClass {
|
657
|
+
static get componentName() {
|
658
|
+
return componentName$g;
|
659
|
+
}
|
660
|
+
constructor() {
|
661
|
+
super();
|
662
|
+
const template = document.createElement('template');
|
663
|
+
template.innerHTML = `
|
664
|
+
<style>
|
665
|
+
@keyframes tilt {
|
666
|
+
0% { transform: translateX(0); }
|
667
|
+
50% { transform: translateX(400%); }
|
668
|
+
}
|
669
|
+
:host {
|
670
|
+
position: relative;
|
671
|
+
}
|
672
|
+
div::after {
|
673
|
+
content: '';
|
674
|
+
animation-name: tilt;
|
675
|
+
position: absolute;
|
676
|
+
left: 0;
|
677
|
+
}
|
678
|
+
</style>
|
679
|
+
<div></div>
|
680
|
+
`;
|
681
|
+
|
682
|
+
this.attachShadow({ mode: 'open' });
|
683
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
684
|
+
|
685
|
+
this.baseSelector = ':host > div';
|
686
|
+
}
|
687
|
+
}
|
688
|
+
|
689
|
+
const selectors$4 = {
|
690
|
+
root: {},
|
691
|
+
after: { selector: '::after' }
|
692
|
+
};
|
693
|
+
|
694
|
+
const { root: root$1, after: after$1 } = selectors$4;
|
695
|
+
|
696
|
+
const LoaderLinear = compose(
|
697
|
+
createStyleMixin({
|
698
|
+
mappings: {
|
699
|
+
display: root$1,
|
700
|
+
width: matchHostStyle(root$1),
|
701
|
+
height: [root$1, after$1],
|
702
|
+
borderRadius: [root$1, after$1],
|
703
|
+
surfaceColor: [{ property: 'background-color' }],
|
704
|
+
barColor: [{ ...after$1, property: 'background-color' }],
|
705
|
+
barWidth: { ...after$1, property: 'width' },
|
706
|
+
animationDuration: [root$1, after$1],
|
707
|
+
animationTimingFunction: [root$1, after$1],
|
708
|
+
animationIterationCount: [root$1, after$1]
|
709
|
+
}
|
710
|
+
}),
|
711
|
+
draggableMixin,
|
712
|
+
componentNameValidationMixin
|
713
|
+
)(RawLoaderLinear);
|
714
|
+
|
715
|
+
customElements.define(componentName$g, LoaderLinear);
|
716
|
+
|
717
|
+
const componentName$f = getComponentName('loader-radial');
|
718
|
+
|
719
|
+
class RawLoaderRadial extends DescopeBaseClass {
|
720
|
+
static get componentName() {
|
721
|
+
return componentName$f;
|
722
|
+
}
|
723
|
+
constructor() {
|
724
|
+
super();
|
725
|
+
const template = document.createElement('template');
|
726
|
+
template.innerHTML = `
|
727
|
+
<style>
|
728
|
+
@keyframes spin {
|
729
|
+
0% { transform: rotate(0deg); }
|
730
|
+
100% { transform: rotate(360deg); }
|
731
|
+
}
|
732
|
+
:host {
|
733
|
+
position: relative;
|
734
|
+
}
|
735
|
+
:host > div {
|
736
|
+
animation-name: spin;
|
737
|
+
}
|
738
|
+
</style>
|
739
|
+
<div></div>
|
740
|
+
`;
|
741
|
+
|
742
|
+
this.attachShadow({ mode: 'open' });
|
743
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
744
|
+
|
745
|
+
this.baseSelector = ':host > div';
|
746
|
+
}
|
747
|
+
}
|
748
|
+
|
749
|
+
const LoaderRadial = compose(
|
750
|
+
createStyleMixin({
|
751
|
+
mappings: {
|
752
|
+
display: {},
|
753
|
+
width: matchHostStyle({}),
|
754
|
+
height: {},
|
755
|
+
spinnerWidth: { property: 'border-width' },
|
756
|
+
spinnerStyle: { property: 'border-style' },
|
757
|
+
spinnerRadius: { property: 'border-radius' },
|
758
|
+
spinnerTopColor: { property: 'border-top-color' },
|
759
|
+
spinnerBottomColor: { property: 'border-bottom-color' },
|
760
|
+
spinnerRightColor: { property: 'border-right-color' },
|
761
|
+
spinnerLeftColor: { property: 'border-left-color' },
|
762
|
+
color: {},
|
763
|
+
animationDuration: {},
|
764
|
+
animationTimingFunction: {},
|
765
|
+
animationIterationCount: {}
|
766
|
+
}
|
767
|
+
}),
|
768
|
+
draggableMixin,
|
769
|
+
componentNameValidationMixin
|
770
|
+
)(RawLoaderRadial);
|
771
|
+
|
772
|
+
customElements.define(componentName$f, LoaderRadial);
|
625
773
|
|
626
774
|
const selectors$3 = {
|
627
775
|
label: '::part(label)',
|
@@ -658,7 +806,7 @@ var textFieldMappings = {
|
|
658
806
|
placeholderColor: { selector: selectors$3.placeholder, property: 'color' }
|
659
807
|
};
|
660
808
|
|
661
|
-
const componentName$
|
809
|
+
const componentName$e = getComponentName('text-field');
|
662
810
|
|
663
811
|
let overrides$6 = ``;
|
664
812
|
|
@@ -675,7 +823,7 @@ const TextField = compose(
|
|
675
823
|
wrappedEleName: 'vaadin-text-field',
|
676
824
|
style: () => overrides$6,
|
677
825
|
excludeAttrsSync: ['tabindex'],
|
678
|
-
componentName: componentName$
|
826
|
+
componentName: componentName$e
|
679
827
|
})
|
680
828
|
);
|
681
829
|
|
@@ -720,11 +868,11 @@ overrides$6 = `
|
|
720
868
|
}
|
721
869
|
`;
|
722
870
|
|
723
|
-
customElements.define(componentName$
|
871
|
+
customElements.define(componentName$e, TextField);
|
724
872
|
|
725
873
|
const template = document.createElement('template');
|
726
874
|
|
727
|
-
const componentName$
|
875
|
+
const componentName$d = getComponentName('combo');
|
728
876
|
|
729
877
|
template.innerHTML = `
|
730
878
|
<descope-button></descope-button>
|
@@ -741,392 +889,85 @@ class Combo extends DescopeBaseClass {
|
|
741
889
|
}
|
742
890
|
}
|
743
891
|
|
744
|
-
customElements.define(componentName$
|
892
|
+
customElements.define(componentName$d, Combo);
|
745
893
|
|
746
|
-
const componentName$
|
894
|
+
const componentName$c = getComponentName('container');
|
747
895
|
|
748
|
-
|
896
|
+
class RawContainer extends DescopeBaseClass {
|
897
|
+
static get componentName() {
|
898
|
+
return componentName$c;
|
899
|
+
}
|
900
|
+
constructor() {
|
901
|
+
super();
|
902
|
+
const template = document.createElement('template');
|
903
|
+
template.innerHTML = `
|
904
|
+
<style>
|
905
|
+
:host > slot {
|
906
|
+
box-sizing: border-box;
|
907
|
+
}
|
908
|
+
</style>
|
909
|
+
<slot></slot>
|
910
|
+
`;
|
749
911
|
|
750
|
-
|
912
|
+
this.attachShadow({ mode: 'open' });
|
913
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
914
|
+
|
915
|
+
this.baseSelector = ':host > slot';
|
916
|
+
}
|
917
|
+
}
|
918
|
+
|
919
|
+
const Container = compose(
|
751
920
|
createStyleMixin({
|
752
921
|
mappings: {
|
753
|
-
|
754
|
-
|
755
|
-
}),
|
756
|
-
draggableMixin,
|
757
|
-
inputMixin,
|
758
|
-
componentNameValidationMixin
|
759
|
-
)(
|
760
|
-
createProxy({
|
761
|
-
slots: ['prefix', 'suffix'],
|
762
|
-
wrappedEleName: 'vaadin-number-field',
|
763
|
-
style: () => overrides$5,
|
764
|
-
excludeAttrsSync: ['tabindex'],
|
765
|
-
componentName: componentName$d
|
766
|
-
})
|
767
|
-
);
|
922
|
+
height: matchHostStyle(),
|
923
|
+
width: matchHostStyle(),
|
768
924
|
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
vaadin-number-field::part(input-field) {
|
778
|
-
overflow: hidden;
|
779
|
-
}
|
780
|
-
vaadin-number-field[readonly] > input:placeholder-shown {
|
781
|
-
opacity: 1;
|
782
|
-
}
|
783
|
-
vaadin-number-field input:-webkit-autofill,
|
784
|
-
vaadin-number-field input:-webkit-autofill::first-line,
|
785
|
-
vaadin-number-field input:-webkit-autofill:hover,
|
786
|
-
vaadin-number-field input:-webkit-autofill:active,
|
787
|
-
vaadin-number-field input:-webkit-autofill:focus {
|
788
|
-
-webkit-text-fill-color: var(${NumberField.cssVarList.color});
|
789
|
-
box-shadow: 0 0 0 var(${NumberField.cssVarList.height}) var(${NumberField.cssVarList.backgroundColor}) inset;
|
790
|
-
}
|
791
|
-
vaadin-number-field > label,
|
792
|
-
vaadin-number-field::part(input-field) {
|
793
|
-
cursor: pointer;
|
794
|
-
color: var(${NumberField.cssVarList.color});
|
795
|
-
}
|
796
|
-
vaadin-number-field::part(input-field):focus {
|
797
|
-
cursor: text;
|
798
|
-
}
|
799
|
-
vaadin-number-field[required]::part(required-indicator)::after {
|
800
|
-
font-size: "12px";
|
801
|
-
content: "*";
|
802
|
-
color: var(${NumberField.cssVarList.color});
|
803
|
-
}
|
804
|
-
vaadin-number-field[readonly]::part(input-field)::after {
|
805
|
-
border: 0 solid;
|
806
|
-
}
|
807
|
-
`;
|
925
|
+
verticalPadding: [
|
926
|
+
{ property: 'padding-top' },
|
927
|
+
{ property: 'padding-bottom' }
|
928
|
+
],
|
929
|
+
horizontalPadding: [
|
930
|
+
{ property: 'padding-left' },
|
931
|
+
{ property: 'padding-right' }
|
932
|
+
],
|
808
933
|
|
809
|
-
|
934
|
+
display: {}, // maybe this should be hardcoded to flex
|
935
|
+
flexDirection: {},
|
936
|
+
justifyContent: {},
|
937
|
+
alignItems: {},
|
938
|
+
gap: {},
|
810
939
|
|
811
|
-
|
940
|
+
backgroundColor: {},
|
941
|
+
borderRadius: {},
|
812
942
|
|
813
|
-
|
943
|
+
borderColor: {},
|
944
|
+
borderStyle: {},
|
945
|
+
borderWidth: {},
|
814
946
|
|
815
|
-
|
816
|
-
createStyleMixin({
|
817
|
-
mappings: {
|
818
|
-
...textFieldMappings
|
947
|
+
boxShadow: {}
|
819
948
|
}
|
820
949
|
}),
|
821
950
|
draggableMixin,
|
822
|
-
|
951
|
+
componentNameValidationMixin
|
952
|
+
)(RawContainer);
|
953
|
+
|
954
|
+
customElements.define(componentName$c, Container);
|
955
|
+
|
956
|
+
const componentName$b = getComponentName('date-picker');
|
957
|
+
|
958
|
+
const DatePicker = compose(
|
959
|
+
draggableMixin,
|
823
960
|
componentNameValidationMixin
|
824
961
|
)(
|
825
962
|
createProxy({
|
826
|
-
|
827
|
-
|
828
|
-
|
829
|
-
|
830
|
-
componentName: componentName$c
|
963
|
+
componentName: componentName$b,
|
964
|
+
slots: ['prefix', 'suffix'],
|
965
|
+
wrappedEleName: 'vaadin-date-picker',
|
966
|
+
style: ``
|
831
967
|
})
|
832
968
|
);
|
833
969
|
|
834
|
-
|
835
|
-
:host {
|
836
|
-
display: inline-block;
|
837
|
-
}
|
838
|
-
vaadin-email-field {
|
839
|
-
margin: 0;
|
840
|
-
padding: 0;
|
841
|
-
}
|
842
|
-
vaadin-email-field::part(input-field) {
|
843
|
-
overflow: hidden;
|
844
|
-
}
|
845
|
-
vaadin-email-field[readonly] > input:placeholder-shown {
|
846
|
-
opacity: 1;
|
847
|
-
}
|
848
|
-
vaadin-email-field input:-webkit-autofill,
|
849
|
-
vaadin-email-field input:-webkit-autofill::first-line,
|
850
|
-
vaadin-email-field input:-webkit-autofill:hover,
|
851
|
-
vaadin-email-field input:-webkit-autofill:active,
|
852
|
-
vaadin-email-field input:-webkit-autofill:focus {
|
853
|
-
-webkit-text-fill-color: var(${EmailField.cssVarList.color});
|
854
|
-
box-shadow: 0 0 0 var(${EmailField.cssVarList.height}) var(${EmailField.cssVarList.backgroundColor}) inset;
|
855
|
-
}
|
856
|
-
vaadin-email-field > label,
|
857
|
-
vaadin-email-field::part(input-field) {
|
858
|
-
cursor: pointer;
|
859
|
-
color: var(${EmailField.cssVarList.color});
|
860
|
-
}
|
861
|
-
vaadin-email-field::part(input-field):focus {
|
862
|
-
cursor: text;
|
863
|
-
}
|
864
|
-
vaadin-email-field[required]::part(required-indicator)::after {
|
865
|
-
font-size: "12px";
|
866
|
-
content: "*";
|
867
|
-
color: var(${EmailField.cssVarList.color});
|
868
|
-
}
|
869
|
-
vaadin-email-field[readonly]::part(input-field)::after {
|
870
|
-
border: 0 solid;
|
871
|
-
}
|
872
|
-
`;
|
873
|
-
|
874
|
-
customElements.define(componentName$c, EmailField);
|
875
|
-
|
876
|
-
const componentName$b = getComponentName('password-field');
|
877
|
-
|
878
|
-
let overrides$3 = ``;
|
879
|
-
|
880
|
-
const PasswordField = compose(
|
881
|
-
createStyleMixin({
|
882
|
-
mappings: {
|
883
|
-
...textFieldMappings,
|
884
|
-
revealCursor: [
|
885
|
-
{
|
886
|
-
selector: '::part(reveal-button)::before',
|
887
|
-
property: 'cursor'
|
888
|
-
}
|
889
|
-
]
|
890
|
-
}
|
891
|
-
}),
|
892
|
-
draggableMixin,
|
893
|
-
inputMixin,
|
894
|
-
componentNameValidationMixin
|
895
|
-
)(
|
896
|
-
createProxy({
|
897
|
-
slots: ['suffix'],
|
898
|
-
wrappedEleName: 'vaadin-password-field',
|
899
|
-
style: () => overrides$3,
|
900
|
-
excludeAttrsSync: ['tabindex'],
|
901
|
-
componentName: componentName$b
|
902
|
-
})
|
903
|
-
);
|
904
|
-
|
905
|
-
overrides$3 = `
|
906
|
-
:host {
|
907
|
-
display: inline-block;
|
908
|
-
}
|
909
|
-
vaadin-password-field {
|
910
|
-
margin: 0;
|
911
|
-
padding: 0;
|
912
|
-
}
|
913
|
-
vaadin-password-field::part(input-field) {
|
914
|
-
overflow: hidden;
|
915
|
-
}
|
916
|
-
vaadin-password-field[readonly] > input:placeholder-shown {
|
917
|
-
opacity: 1;
|
918
|
-
}
|
919
|
-
vaadin-password-field input:-webkit-autofill,
|
920
|
-
vaadin-password-field input:-webkit-autofill::first-line,
|
921
|
-
vaadin-password-field input:-webkit-autofill:hover,
|
922
|
-
vaadin-password-field input:-webkit-autofill:active,
|
923
|
-
vaadin-password-field input:-webkit-autofill:focus {
|
924
|
-
-webkit-text-fill-color: var(${PasswordField.cssVarList.color});
|
925
|
-
box-shadow: 0 0 0 var(${PasswordField.cssVarList.height}) var(${PasswordField.cssVarList.backgroundColor}) inset;
|
926
|
-
}
|
927
|
-
vaadin-password-field > label,
|
928
|
-
vaadin-password-field::part(input-field) {
|
929
|
-
cursor: pointer;
|
930
|
-
color: var(${PasswordField.cssVarList.color});
|
931
|
-
}
|
932
|
-
vaadin-password-field::part(input-field):focus {
|
933
|
-
cursor: text;
|
934
|
-
}
|
935
|
-
vaadin-password-field[required]::part(required-indicator)::after {
|
936
|
-
font-size: "12px";
|
937
|
-
content: "*";
|
938
|
-
color: var(${PasswordField.cssVarList.color});
|
939
|
-
}
|
940
|
-
vaadin-password-field[readonly]::part(input-field)::after {
|
941
|
-
border: 0 solid;
|
942
|
-
}
|
943
|
-
`;
|
944
|
-
|
945
|
-
customElements.define(componentName$b, PasswordField);
|
946
|
-
|
947
|
-
const componentName$a = getComponentName('text-area');
|
948
|
-
|
949
|
-
const selectors$2 = {
|
950
|
-
label: '::part(label)',
|
951
|
-
input: '::part(input-field)',
|
952
|
-
required: '::part(required-indicator)::after'
|
953
|
-
};
|
954
|
-
|
955
|
-
let overrides$2 = ``;
|
956
|
-
|
957
|
-
const TextArea = compose(
|
958
|
-
createStyleMixin({
|
959
|
-
mappings: {
|
960
|
-
resize: { selector: '> textarea' },
|
961
|
-
color: { selector: selectors$2.label },
|
962
|
-
cursor: {},
|
963
|
-
width: matchHostStyle(),
|
964
|
-
backgroundColor: { selector: selectors$2.input },
|
965
|
-
borderWidth: { selector: selectors$2.input },
|
966
|
-
borderStyle: { selector: selectors$2.input },
|
967
|
-
borderColor: { selector: selectors$2.input },
|
968
|
-
borderRadius: { selector: selectors$2.input },
|
969
|
-
outline: { selector: selectors$2.input },
|
970
|
-
outlineOffset: { selector: selectors$2.input }
|
971
|
-
}
|
972
|
-
}),
|
973
|
-
draggableMixin,
|
974
|
-
inputMixin,
|
975
|
-
componentNameValidationMixin
|
976
|
-
)(
|
977
|
-
createProxy({
|
978
|
-
slots: [],
|
979
|
-
wrappedEleName: 'vaadin-text-area',
|
980
|
-
style: () => overrides$2,
|
981
|
-
excludeAttrsSync: ['tabindex'],
|
982
|
-
componentName: componentName$a
|
983
|
-
})
|
984
|
-
);
|
985
|
-
|
986
|
-
overrides$2 = `
|
987
|
-
:host {
|
988
|
-
display: inline-block;
|
989
|
-
}
|
990
|
-
|
991
|
-
vaadin-text-area {
|
992
|
-
margin: 0;
|
993
|
-
}
|
994
|
-
vaadin-text-area > label,
|
995
|
-
vaadin-text-area::part(input-field) {
|
996
|
-
cursor: pointer;
|
997
|
-
}
|
998
|
-
vaadin-text-area[focused]::part(input-field) {
|
999
|
-
cursor: text;
|
1000
|
-
}
|
1001
|
-
vaadin-text-area::part(required-indicator)::after {
|
1002
|
-
font-size: "12px";
|
1003
|
-
content: "*";
|
1004
|
-
}
|
1005
|
-
`;
|
1006
|
-
|
1007
|
-
customElements.define(componentName$a, TextArea);
|
1008
|
-
|
1009
|
-
const componentName$9 = getComponentName('date-picker');
|
1010
|
-
|
1011
|
-
const DatePicker = compose(
|
1012
|
-
draggableMixin,
|
1013
|
-
componentNameValidationMixin
|
1014
|
-
)(
|
1015
|
-
createProxy({
|
1016
|
-
componentName: componentName$9,
|
1017
|
-
slots: ['prefix', 'suffix'],
|
1018
|
-
wrappedEleName: 'vaadin-date-picker',
|
1019
|
-
style: ``
|
1020
|
-
})
|
1021
|
-
);
|
1022
|
-
|
1023
|
-
customElements.define(componentName$9, DatePicker);
|
1024
|
-
|
1025
|
-
const componentName$8 = getComponentName('container');
|
1026
|
-
|
1027
|
-
class RawContainer extends DescopeBaseClass {
|
1028
|
-
static get componentName() {
|
1029
|
-
return componentName$8;
|
1030
|
-
}
|
1031
|
-
constructor() {
|
1032
|
-
super();
|
1033
|
-
const template = document.createElement('template');
|
1034
|
-
template.innerHTML = `
|
1035
|
-
<style>
|
1036
|
-
:host > slot {
|
1037
|
-
box-sizing: border-box;
|
1038
|
-
}
|
1039
|
-
</style>
|
1040
|
-
<slot></slot>
|
1041
|
-
`;
|
1042
|
-
|
1043
|
-
this.attachShadow({ mode: 'open' });
|
1044
|
-
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
1045
|
-
|
1046
|
-
this.baseSelector = ':host > slot';
|
1047
|
-
}
|
1048
|
-
}
|
1049
|
-
|
1050
|
-
const Container = compose(
|
1051
|
-
createStyleMixin({
|
1052
|
-
mappings: {
|
1053
|
-
height: matchHostStyle(),
|
1054
|
-
width: matchHostStyle(),
|
1055
|
-
|
1056
|
-
verticalPadding: [
|
1057
|
-
{ property: 'padding-top' },
|
1058
|
-
{ property: 'padding-bottom' }
|
1059
|
-
],
|
1060
|
-
horizontalPadding: [
|
1061
|
-
{ property: 'padding-left' },
|
1062
|
-
{ property: 'padding-right' }
|
1063
|
-
],
|
1064
|
-
|
1065
|
-
display: {}, // maybe this should be hardcoded to flex
|
1066
|
-
flexDirection: {},
|
1067
|
-
justifyContent: {},
|
1068
|
-
alignItems: {},
|
1069
|
-
gap: {},
|
1070
|
-
|
1071
|
-
backgroundColor: {},
|
1072
|
-
borderRadius: {},
|
1073
|
-
|
1074
|
-
borderColor: {},
|
1075
|
-
borderStyle: {},
|
1076
|
-
borderWidth: {},
|
1077
|
-
|
1078
|
-
boxShadow: {}
|
1079
|
-
}
|
1080
|
-
}),
|
1081
|
-
draggableMixin,
|
1082
|
-
componentNameValidationMixin
|
1083
|
-
)(RawContainer);
|
1084
|
-
|
1085
|
-
customElements.define(componentName$8, Container);
|
1086
|
-
|
1087
|
-
const componentName$7 = getComponentName('text');
|
1088
|
-
|
1089
|
-
class RawText extends DescopeBaseClass {
|
1090
|
-
static get componentName() {
|
1091
|
-
return componentName$7;
|
1092
|
-
}
|
1093
|
-
constructor() {
|
1094
|
-
super();
|
1095
|
-
const template = document.createElement('template');
|
1096
|
-
template.innerHTML = `<slot></slot>`;
|
1097
|
-
|
1098
|
-
this.attachShadow({ mode: 'open' });
|
1099
|
-
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
1100
|
-
|
1101
|
-
this.baseSelector = ':host > slot';
|
1102
|
-
}
|
1103
|
-
}
|
1104
|
-
|
1105
|
-
const Text = compose(
|
1106
|
-
createStyleMixin({
|
1107
|
-
mappings: {
|
1108
|
-
fontFamily: {},
|
1109
|
-
lineHeight: {},
|
1110
|
-
fontStyle: {},
|
1111
|
-
fontSize: {},
|
1112
|
-
fontWeight: {},
|
1113
|
-
width: {},
|
1114
|
-
color: {},
|
1115
|
-
letterSpacing: {},
|
1116
|
-
textShadow: {},
|
1117
|
-
borderWidth: {},
|
1118
|
-
borderStyle: {},
|
1119
|
-
borderColor: {},
|
1120
|
-
textTransform: {},
|
1121
|
-
textAlign: matchHostStyle(),
|
1122
|
-
display: matchHostStyle()
|
1123
|
-
}
|
1124
|
-
}),
|
1125
|
-
draggableMixin,
|
1126
|
-
componentNameValidationMixin
|
1127
|
-
)(RawText);
|
1128
|
-
|
1129
|
-
customElements.define(componentName$7, Text);
|
970
|
+
customElements.define(componentName$b, DatePicker);
|
1130
971
|
|
1131
972
|
const getChildObserver = (callback) => {
|
1132
973
|
return new MutationObserver((mutationsList) => {
|
@@ -1222,87 +1063,10 @@ const enforceNestingElementsStylesMixin =
|
|
1222
1063
|
};
|
1223
1064
|
};
|
1224
1065
|
|
1225
|
-
const componentName$
|
1226
|
-
class
|
1066
|
+
const componentName$a = getComponentName('divider');
|
1067
|
+
class RawDivider extends DescopeBaseClass {
|
1227
1068
|
static get componentName() {
|
1228
|
-
return componentName$
|
1229
|
-
}
|
1230
|
-
constructor() {
|
1231
|
-
super();
|
1232
|
-
const template = document.createElement('template');
|
1233
|
-
|
1234
|
-
template.innerHTML = `
|
1235
|
-
<style>
|
1236
|
-
:host {
|
1237
|
-
display: inline-block;
|
1238
|
-
}
|
1239
|
-
:host a {
|
1240
|
-
display: inline-block;
|
1241
|
-
}
|
1242
|
-
</style>
|
1243
|
-
<div>
|
1244
|
-
<a>
|
1245
|
-
<slot name="text"></slot>
|
1246
|
-
</a>
|
1247
|
-
</div>
|
1248
|
-
`;
|
1249
|
-
|
1250
|
-
this.attachShadow({ mode: 'open' });
|
1251
|
-
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
1252
|
-
|
1253
|
-
forwardAttrs(this.shadowRoot.host, this.shadowRoot.querySelector('a'), {
|
1254
|
-
includeAttrs: ['href', 'target', 'tooltip'],
|
1255
|
-
mapAttrs: {
|
1256
|
-
tooltip: 'title'
|
1257
|
-
}
|
1258
|
-
});
|
1259
|
-
|
1260
|
-
this.baseSelector = ':host > div';
|
1261
|
-
}
|
1262
|
-
}
|
1263
|
-
|
1264
|
-
const selectors$1 = {
|
1265
|
-
anchor: { selector: '> a' }
|
1266
|
-
};
|
1267
|
-
|
1268
|
-
const { anchor } = selectors$1;
|
1269
|
-
|
1270
|
-
const Link = compose(
|
1271
|
-
enforceNestingElementsStylesMixin({
|
1272
|
-
nestingElementTagName: 'descope-text',
|
1273
|
-
nestingElementDestSlotName: 'text',
|
1274
|
-
forwardAttrOptions: {
|
1275
|
-
includeAttrs: ['variant', 'italic', 'uppercase', 'lowercase']
|
1276
|
-
}
|
1277
|
-
}),
|
1278
|
-
createStyleMixin({
|
1279
|
-
mappings: {
|
1280
|
-
width: matchHostStyle(),
|
1281
|
-
textAlign: {},
|
1282
|
-
color: anchor,
|
1283
|
-
cursor: anchor,
|
1284
|
-
borderBottomWidth: anchor,
|
1285
|
-
borderBottomStyle: anchor,
|
1286
|
-
borderBottomColor: anchor
|
1287
|
-
},
|
1288
|
-
nestedMappings: {
|
1289
|
-
color: {
|
1290
|
-
selector: ` ${Text.componentName}`,
|
1291
|
-
property: Text.cssVarList.color
|
1292
|
-
}
|
1293
|
-
}
|
1294
|
-
}),
|
1295
|
-
hoverableMixin(anchor.selector),
|
1296
|
-
draggableMixin,
|
1297
|
-
componentNameValidationMixin
|
1298
|
-
)(RawLink);
|
1299
|
-
|
1300
|
-
customElements.define(componentName$6, Link);
|
1301
|
-
|
1302
|
-
const componentName$5 = getComponentName('divider');
|
1303
|
-
class RawDivider extends DescopeBaseClass {
|
1304
|
-
static get componentName() {
|
1305
|
-
return componentName$5;
|
1069
|
+
return componentName$a;
|
1306
1070
|
}
|
1307
1071
|
constructor() {
|
1308
1072
|
super();
|
@@ -1336,14 +1100,14 @@ class RawDivider extends DescopeBaseClass {
|
|
1336
1100
|
}
|
1337
1101
|
}
|
1338
1102
|
|
1339
|
-
const selectors = {
|
1103
|
+
const selectors$2 = {
|
1340
1104
|
root: { selector: '' },
|
1341
1105
|
before: { selector: '::before' },
|
1342
1106
|
after: { selector: '::after' },
|
1343
1107
|
slotted: { selector: () => '::slotted(*)' }
|
1344
1108
|
};
|
1345
1109
|
|
1346
|
-
const { root, before, after, slotted } = selectors;
|
1110
|
+
const { root, before, after, slotted } = selectors$2;
|
1347
1111
|
|
1348
1112
|
const Divider = compose(
|
1349
1113
|
enforceNestingElementsStylesMixin({
|
@@ -1372,16 +1136,202 @@ const Divider = compose(
|
|
1372
1136
|
componentNameValidationMixin
|
1373
1137
|
)(RawDivider);
|
1374
1138
|
|
1375
|
-
|
1139
|
+
const componentName$9 = getComponentName('text');
|
1140
|
+
|
1141
|
+
class RawText extends DescopeBaseClass {
|
1142
|
+
static get componentName() {
|
1143
|
+
return componentName$9;
|
1144
|
+
}
|
1145
|
+
constructor() {
|
1146
|
+
super();
|
1147
|
+
const template = document.createElement('template');
|
1148
|
+
template.innerHTML = `<slot></slot>`;
|
1149
|
+
|
1150
|
+
this.attachShadow({ mode: 'open' });
|
1151
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
1152
|
+
|
1153
|
+
this.baseSelector = ':host > slot';
|
1154
|
+
}
|
1155
|
+
}
|
1156
|
+
|
1157
|
+
const Text = compose(
|
1158
|
+
createStyleMixin({
|
1159
|
+
mappings: {
|
1160
|
+
fontFamily: {},
|
1161
|
+
lineHeight: {},
|
1162
|
+
fontStyle: {},
|
1163
|
+
fontSize: {},
|
1164
|
+
fontWeight: {},
|
1165
|
+
width: {},
|
1166
|
+
color: {},
|
1167
|
+
letterSpacing: {},
|
1168
|
+
textShadow: {},
|
1169
|
+
borderWidth: {},
|
1170
|
+
borderStyle: {},
|
1171
|
+
borderColor: {},
|
1172
|
+
textTransform: {},
|
1173
|
+
textAlign: matchHostStyle(),
|
1174
|
+
display: matchHostStyle()
|
1175
|
+
}
|
1176
|
+
}),
|
1177
|
+
draggableMixin,
|
1178
|
+
componentNameValidationMixin
|
1179
|
+
)(RawText);
|
1180
|
+
|
1181
|
+
customElements.define(componentName$9, Text);
|
1182
|
+
|
1183
|
+
customElements.define(componentName$a, Divider);
|
1184
|
+
|
1185
|
+
const componentName$8 = getComponentName('email-field');
|
1186
|
+
|
1187
|
+
let overrides$5 = ``;
|
1188
|
+
|
1189
|
+
const EmailField = compose(
|
1190
|
+
createStyleMixin({
|
1191
|
+
mappings: {
|
1192
|
+
...textFieldMappings
|
1193
|
+
}
|
1194
|
+
}),
|
1195
|
+
draggableMixin,
|
1196
|
+
inputMixin,
|
1197
|
+
componentNameValidationMixin
|
1198
|
+
)(
|
1199
|
+
createProxy({
|
1200
|
+
slots: ['suffix'],
|
1201
|
+
wrappedEleName: 'vaadin-email-field',
|
1202
|
+
style: () => overrides$5,
|
1203
|
+
excludeAttrsSync: ['tabindex'],
|
1204
|
+
componentName: componentName$8
|
1205
|
+
})
|
1206
|
+
);
|
1207
|
+
|
1208
|
+
overrides$5 = `
|
1209
|
+
:host {
|
1210
|
+
display: inline-block;
|
1211
|
+
}
|
1212
|
+
vaadin-email-field {
|
1213
|
+
margin: 0;
|
1214
|
+
padding: 0;
|
1215
|
+
}
|
1216
|
+
vaadin-email-field::part(input-field) {
|
1217
|
+
overflow: hidden;
|
1218
|
+
}
|
1219
|
+
vaadin-email-field[readonly] > input:placeholder-shown {
|
1220
|
+
opacity: 1;
|
1221
|
+
}
|
1222
|
+
vaadin-email-field input:-webkit-autofill,
|
1223
|
+
vaadin-email-field input:-webkit-autofill::first-line,
|
1224
|
+
vaadin-email-field input:-webkit-autofill:hover,
|
1225
|
+
vaadin-email-field input:-webkit-autofill:active,
|
1226
|
+
vaadin-email-field input:-webkit-autofill:focus {
|
1227
|
+
-webkit-text-fill-color: var(${EmailField.cssVarList.color});
|
1228
|
+
box-shadow: 0 0 0 var(${EmailField.cssVarList.height}) var(${EmailField.cssVarList.backgroundColor}) inset;
|
1229
|
+
}
|
1230
|
+
vaadin-email-field > label,
|
1231
|
+
vaadin-email-field::part(input-field) {
|
1232
|
+
cursor: pointer;
|
1233
|
+
color: var(${EmailField.cssVarList.color});
|
1234
|
+
}
|
1235
|
+
vaadin-email-field::part(input-field):focus {
|
1236
|
+
cursor: text;
|
1237
|
+
}
|
1238
|
+
vaadin-email-field[required]::part(required-indicator)::after {
|
1239
|
+
font-size: "12px";
|
1240
|
+
content: "*";
|
1241
|
+
color: var(${EmailField.cssVarList.color});
|
1242
|
+
}
|
1243
|
+
vaadin-email-field[readonly]::part(input-field)::after {
|
1244
|
+
border: 0 solid;
|
1245
|
+
}
|
1246
|
+
`;
|
1247
|
+
|
1248
|
+
customElements.define(componentName$8, EmailField);
|
1249
|
+
|
1250
|
+
const componentName$7 = getComponentName('link');
|
1251
|
+
class RawLink extends DescopeBaseClass {
|
1252
|
+
static get componentName() {
|
1253
|
+
return componentName$7;
|
1254
|
+
}
|
1255
|
+
constructor() {
|
1256
|
+
super();
|
1257
|
+
const template = document.createElement('template');
|
1258
|
+
|
1259
|
+
template.innerHTML = `
|
1260
|
+
<style>
|
1261
|
+
:host {
|
1262
|
+
display: inline-block;
|
1263
|
+
}
|
1264
|
+
:host a {
|
1265
|
+
display: inline-block;
|
1266
|
+
}
|
1267
|
+
</style>
|
1268
|
+
<div>
|
1269
|
+
<a>
|
1270
|
+
<slot name="text"></slot>
|
1271
|
+
</a>
|
1272
|
+
</div>
|
1273
|
+
`;
|
1274
|
+
|
1275
|
+
this.attachShadow({ mode: 'open' });
|
1276
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
1277
|
+
|
1278
|
+
forwardAttrs(this.shadowRoot.host, this.shadowRoot.querySelector('a'), {
|
1279
|
+
includeAttrs: ['href', 'target', 'tooltip'],
|
1280
|
+
mapAttrs: {
|
1281
|
+
tooltip: 'title'
|
1282
|
+
}
|
1283
|
+
});
|
1284
|
+
|
1285
|
+
this.baseSelector = ':host > div';
|
1286
|
+
}
|
1287
|
+
}
|
1288
|
+
|
1289
|
+
const selectors$1 = {
|
1290
|
+
anchor: { selector: '> a' }
|
1291
|
+
};
|
1292
|
+
|
1293
|
+
const { anchor } = selectors$1;
|
1294
|
+
|
1295
|
+
const Link = compose(
|
1296
|
+
enforceNestingElementsStylesMixin({
|
1297
|
+
nestingElementTagName: 'descope-text',
|
1298
|
+
nestingElementDestSlotName: 'text',
|
1299
|
+
forwardAttrOptions: {
|
1300
|
+
includeAttrs: ['variant', 'italic', 'uppercase', 'lowercase']
|
1301
|
+
}
|
1302
|
+
}),
|
1303
|
+
createStyleMixin({
|
1304
|
+
mappings: {
|
1305
|
+
width: matchHostStyle(),
|
1306
|
+
textAlign: {},
|
1307
|
+
color: anchor,
|
1308
|
+
cursor: anchor,
|
1309
|
+
borderBottomWidth: anchor,
|
1310
|
+
borderBottomStyle: anchor,
|
1311
|
+
borderBottomColor: anchor
|
1312
|
+
},
|
1313
|
+
nestedMappings: {
|
1314
|
+
color: {
|
1315
|
+
selector: ` ${Text.componentName}`,
|
1316
|
+
property: Text.cssVarList.color
|
1317
|
+
}
|
1318
|
+
}
|
1319
|
+
}),
|
1320
|
+
hoverableMixin(anchor.selector),
|
1321
|
+
draggableMixin,
|
1322
|
+
componentNameValidationMixin
|
1323
|
+
)(RawLink);
|
1324
|
+
|
1325
|
+
customElements.define(componentName$7, Link);
|
1376
1326
|
|
1377
|
-
const componentName$
|
1327
|
+
const componentName$6 = getComponentName('logo');
|
1378
1328
|
|
1379
1329
|
let style;
|
1380
1330
|
const getStyle = () => style;
|
1381
1331
|
|
1382
1332
|
class RawLogo extends DescopeBaseClass {
|
1383
1333
|
static get componentName() {
|
1384
|
-
return componentName$
|
1334
|
+
return componentName$6;
|
1385
1335
|
}
|
1386
1336
|
constructor() {
|
1387
1337
|
super();
|
@@ -1422,15 +1372,16 @@ style = `
|
|
1422
1372
|
}
|
1423
1373
|
`;
|
1424
1374
|
|
1425
|
-
customElements.define(componentName$
|
1375
|
+
customElements.define(componentName$6, Logo);
|
1426
1376
|
|
1427
|
-
const componentName$
|
1377
|
+
const componentName$5 = getComponentName('number-field');
|
1428
1378
|
|
1429
|
-
|
1379
|
+
let overrides$4 = ``;
|
1380
|
+
|
1381
|
+
const NumberField = compose(
|
1430
1382
|
createStyleMixin({
|
1431
1383
|
mappings: {
|
1432
|
-
|
1433
|
-
cursor: [{}, { selector: '> label' }]
|
1384
|
+
...textFieldMappings
|
1434
1385
|
}
|
1435
1386
|
}),
|
1436
1387
|
draggableMixin,
|
@@ -1438,19 +1389,617 @@ const Checkbox = compose(
|
|
1438
1389
|
componentNameValidationMixin
|
1439
1390
|
)(
|
1440
1391
|
createProxy({
|
1441
|
-
slots: [],
|
1442
|
-
wrappedEleName: 'vaadin-
|
1443
|
-
style:
|
1444
|
-
:host {
|
1445
|
-
display: inline-block;
|
1446
|
-
}
|
1447
|
-
`,
|
1392
|
+
slots: ['prefix', 'suffix'],
|
1393
|
+
wrappedEleName: 'vaadin-number-field',
|
1394
|
+
style: () => overrides$4,
|
1448
1395
|
excludeAttrsSync: ['tabindex'],
|
1449
|
-
componentName: componentName$
|
1396
|
+
componentName: componentName$5
|
1450
1397
|
})
|
1451
1398
|
);
|
1452
1399
|
|
1453
|
-
|
1400
|
+
overrides$4 = `
|
1401
|
+
:host {
|
1402
|
+
display: inline-block;
|
1403
|
+
}
|
1404
|
+
vaadin-number-field {
|
1405
|
+
margin: 0;
|
1406
|
+
padding: 0;
|
1407
|
+
}
|
1408
|
+
vaadin-number-field::part(input-field) {
|
1409
|
+
overflow: hidden;
|
1410
|
+
}
|
1411
|
+
vaadin-number-field[readonly] > input:placeholder-shown {
|
1412
|
+
opacity: 1;
|
1413
|
+
}
|
1414
|
+
vaadin-number-field input:-webkit-autofill,
|
1415
|
+
vaadin-number-field input:-webkit-autofill::first-line,
|
1416
|
+
vaadin-number-field input:-webkit-autofill:hover,
|
1417
|
+
vaadin-number-field input:-webkit-autofill:active,
|
1418
|
+
vaadin-number-field input:-webkit-autofill:focus {
|
1419
|
+
-webkit-text-fill-color: var(${NumberField.cssVarList.color});
|
1420
|
+
box-shadow: 0 0 0 var(${NumberField.cssVarList.height}) var(${NumberField.cssVarList.backgroundColor}) inset;
|
1421
|
+
}
|
1422
|
+
vaadin-number-field > label,
|
1423
|
+
vaadin-number-field::part(input-field) {
|
1424
|
+
cursor: pointer;
|
1425
|
+
color: var(${NumberField.cssVarList.color});
|
1426
|
+
}
|
1427
|
+
vaadin-number-field::part(input-field):focus {
|
1428
|
+
cursor: text;
|
1429
|
+
}
|
1430
|
+
vaadin-number-field[required]::part(required-indicator)::after {
|
1431
|
+
font-size: "12px";
|
1432
|
+
content: "*";
|
1433
|
+
color: var(${NumberField.cssVarList.color});
|
1434
|
+
}
|
1435
|
+
vaadin-number-field[readonly]::part(input-field)::after {
|
1436
|
+
border: 0 solid;
|
1437
|
+
}
|
1438
|
+
`;
|
1439
|
+
|
1440
|
+
customElements.define(componentName$5, NumberField);
|
1441
|
+
|
1442
|
+
const focusElement = (ele) => {
|
1443
|
+
ele?.focus();
|
1444
|
+
ele?.setSelectionRange(1, 1);
|
1445
|
+
};
|
1446
|
+
|
1447
|
+
const getSanitizedCharacters = (str) => {
|
1448
|
+
const pin = str.replace(/\s/g, ''); // sanitize string
|
1449
|
+
|
1450
|
+
// accept only numbers
|
1451
|
+
if (!pin.match(/^\d+$/)) return [];
|
1452
|
+
|
1453
|
+
return [...pin]; // creating array of chars
|
1454
|
+
};
|
1455
|
+
|
1456
|
+
const componentName$4 = getComponentName('passcode-internal');
|
1457
|
+
|
1458
|
+
class PasscodeInternal extends HTMLElement {
|
1459
|
+
static get observedAttributes() {
|
1460
|
+
return [
|
1461
|
+
'disabled',
|
1462
|
+
'bordered',
|
1463
|
+
'size'
|
1464
|
+
];
|
1465
|
+
}
|
1466
|
+
|
1467
|
+
static get componentName() {
|
1468
|
+
return componentName$4;
|
1469
|
+
}
|
1470
|
+
|
1471
|
+
static get formAssociated() {
|
1472
|
+
return true;
|
1473
|
+
}
|
1474
|
+
|
1475
|
+
#internals
|
1476
|
+
|
1477
|
+
constructor() {
|
1478
|
+
super();
|
1479
|
+
const template = document.createElement('template');
|
1480
|
+
|
1481
|
+
const inputs = [...Array(this.digits).keys()].map((idx) => `
|
1482
|
+
<descope-text-field
|
1483
|
+
st-width="35px"
|
1484
|
+
data-id=${idx}
|
1485
|
+
type="tel"
|
1486
|
+
autocomplete="none"
|
1487
|
+
></descope-text-field>
|
1488
|
+
`);
|
1489
|
+
|
1490
|
+
template.innerHTML = `
|
1491
|
+
<div>
|
1492
|
+
${inputs.join('')}
|
1493
|
+
</div>
|
1494
|
+
`;
|
1495
|
+
|
1496
|
+
this.appendChild(template.content.cloneNode(true));
|
1497
|
+
|
1498
|
+
this.baseSelector = ':host > div';
|
1499
|
+
|
1500
|
+
this.#internals = this.attachInternals();
|
1501
|
+
|
1502
|
+
this.inputs = Array.from(this.querySelectorAll('descope-text-field'));
|
1503
|
+
}
|
1504
|
+
|
1505
|
+
checkValidity() {
|
1506
|
+
// we need to toggle the has-error-message so the text inside the digits will become red when there is an error
|
1507
|
+
if (this.#internals.validity.valid) {
|
1508
|
+
this.inputs.forEach(input => input.removeAttribute('has-error-message'));
|
1509
|
+
} else {
|
1510
|
+
this.inputs.forEach(input => input.setAttribute('has-error-message', 'true'));
|
1511
|
+
// we need to call it so the has-error-message with have the correct format (="true")
|
1512
|
+
this.oninvalid?.();
|
1513
|
+
}
|
1514
|
+
return this.#internals.validity.valid
|
1515
|
+
}
|
1516
|
+
|
1517
|
+
get digits() {
|
1518
|
+
return Number.parseInt(this.getAttribute('digits')) || 6
|
1519
|
+
}
|
1520
|
+
|
1521
|
+
get value() {
|
1522
|
+
return this.inputs.map(({ value }) => value).join('')
|
1523
|
+
}
|
1524
|
+
|
1525
|
+
set value(val) { }
|
1526
|
+
|
1527
|
+
get isRequired() {
|
1528
|
+
return this.hasAttribute('required') && this.getAttribute('required') !== 'false'
|
1529
|
+
}
|
1530
|
+
|
1531
|
+
get pattern() {
|
1532
|
+
return `^$|^\\d{${this.digits},}$`
|
1533
|
+
}
|
1534
|
+
|
1535
|
+
get valueMissingErrMsg() {
|
1536
|
+
return 'Please fill out this field.'
|
1537
|
+
}
|
1538
|
+
|
1539
|
+
get patternMismatchErrMsg() {
|
1540
|
+
return `Must be a ${this.digits} digits number.`
|
1541
|
+
}
|
1542
|
+
|
1543
|
+
get validity() {
|
1544
|
+
return this.#internals.validity;
|
1545
|
+
}
|
1546
|
+
|
1547
|
+
get validationMessage() {
|
1548
|
+
return this.#internals.validationMessage;
|
1549
|
+
}
|
1550
|
+
|
1551
|
+
reportValidity() {
|
1552
|
+
this.#internals.reportValidity();
|
1553
|
+
}
|
1554
|
+
|
1555
|
+
formAssociatedCallback() {
|
1556
|
+
this.setValidity?.();
|
1557
|
+
}
|
1558
|
+
|
1559
|
+
setValidity = () => {
|
1560
|
+
if (this.isRequired && !this.value) {
|
1561
|
+
this.#internals.setValidity({ valueMissing: true }, this.valueMissingErrMsg);
|
1562
|
+
}
|
1563
|
+
else if (this.pattern && !new RegExp(this.pattern).test(this.value)) {
|
1564
|
+
this.#internals.setValidity({ patternMismatch: true }, this.patternMismatchErrMsg);
|
1565
|
+
}
|
1566
|
+
else {
|
1567
|
+
this.#internals.setValidity({});
|
1568
|
+
}
|
1569
|
+
};
|
1570
|
+
|
1571
|
+
async connectedCallback() {
|
1572
|
+
this.setValidity();
|
1573
|
+
this.initInputs();
|
1574
|
+
|
1575
|
+
this.onfocus = () => {
|
1576
|
+
this.inputs[0].focus();
|
1577
|
+
};
|
1578
|
+
}
|
1579
|
+
|
1580
|
+
getInputIdx(inputEle) {
|
1581
|
+
return Number.parseInt(inputEle.getAttribute('data-id'), 10)
|
1582
|
+
}
|
1583
|
+
|
1584
|
+
getNextInput(currInput) {
|
1585
|
+
const currentIdx = this.getInputIdx(currInput);
|
1586
|
+
const newIdx = Math.min(currentIdx + 1, this.inputs.length - 1);
|
1587
|
+
return this.inputs[newIdx]
|
1588
|
+
}
|
1589
|
+
|
1590
|
+
getPrevInput(currInput) {
|
1591
|
+
const currentIdx = this.getInputIdx(currInput);
|
1592
|
+
const newIdx = Math.max(currentIdx - 1, 0);
|
1593
|
+
return this.inputs[newIdx]
|
1594
|
+
}
|
1595
|
+
|
1596
|
+
fillDigits(charArr, currentInput) {
|
1597
|
+
for (let i = 0; i < charArr.length; i += 1) {
|
1598
|
+
currentInput.value = charArr[i] ?? '';
|
1599
|
+
|
1600
|
+
const nextInput = this.getNextInput(currentInput);
|
1601
|
+
if (nextInput === currentInput) break;
|
1602
|
+
currentInput = nextInput;
|
1603
|
+
}
|
1604
|
+
|
1605
|
+
!currentInput.hasAttribute('focused') && focusElement(currentInput);
|
1606
|
+
};
|
1607
|
+
|
1608
|
+
initInputs() {
|
1609
|
+
this.inputs.forEach((input) => {
|
1610
|
+
|
1611
|
+
// in order to simulate blur on the input
|
1612
|
+
// we are checking if focus on one of the digits happened immediately after blur on another digit
|
1613
|
+
// if not, the component is no longer focused and we should simulate blur
|
1614
|
+
input.addEventListener('blur', () => {
|
1615
|
+
const timerId = setTimeout(() => {
|
1616
|
+
this.dispatchEvent(new Event('blur'));
|
1617
|
+
});
|
1618
|
+
|
1619
|
+
this.inputs.forEach((ele) =>
|
1620
|
+
ele.addEventListener('focus', () => clearTimeout(timerId), { once: true })
|
1621
|
+
);
|
1622
|
+
});
|
1623
|
+
|
1624
|
+
input.oninput = (e) => {
|
1625
|
+
const charArr = getSanitizedCharacters(input.value);
|
1626
|
+
|
1627
|
+
if (!charArr.length) input.value = ''; // if we got an invalid value we want to clear the input
|
1628
|
+
else this.fillDigits(charArr, input);
|
1629
|
+
|
1630
|
+
this.setValidity();
|
1631
|
+
};
|
1632
|
+
|
1633
|
+
input.onkeydown = ({ key }) => {
|
1634
|
+
if (key === 'Backspace') {
|
1635
|
+
input.value = '';
|
1636
|
+
|
1637
|
+
// if the user deleted the digit we want to focus the previous digit
|
1638
|
+
const prevInput = this.getPrevInput(input);
|
1639
|
+
|
1640
|
+
!prevInput.hasAttribute('focused') && setTimeout(() => {
|
1641
|
+
focusElement(prevInput);
|
1642
|
+
});
|
1643
|
+
} else if (key.match(/^(\d)$/g)) { // if input is a digit
|
1644
|
+
input.value = ''; // we are clearing the previous value so we can override it with the new value
|
1645
|
+
}
|
1646
|
+
|
1647
|
+
this.setValidity();
|
1648
|
+
};
|
1649
|
+
});
|
1650
|
+
}
|
1651
|
+
|
1652
|
+
attributeChangedCallback(
|
1653
|
+
attrName,
|
1654
|
+
oldValue,
|
1655
|
+
newValue
|
1656
|
+
) {
|
1657
|
+
if (oldValue !== newValue &&
|
1658
|
+
PasscodeInternal.observedAttributes.includes(attrName)) {
|
1659
|
+
this.inputs.forEach((input) => input.setAttribute(attrName, newValue));
|
1660
|
+
}
|
1661
|
+
}
|
1662
|
+
}
|
1663
|
+
|
1664
|
+
const componentName$3 = getComponentName('passcode');
|
1665
|
+
|
1666
|
+
const customMixin = (superclass) =>
|
1667
|
+
class DraggableMixinClass extends superclass {
|
1668
|
+
constructor() {
|
1669
|
+
super();
|
1670
|
+
}
|
1671
|
+
|
1672
|
+
get digits() {
|
1673
|
+
return Number.parseInt(this.getAttribute('digits')) || 6
|
1674
|
+
}
|
1675
|
+
|
1676
|
+
connectedCallback() {
|
1677
|
+
super.connectedCallback?.();
|
1678
|
+
const template = document.createElement('template');
|
1679
|
+
|
1680
|
+
//forward required & pattern TODO use forwardAttrs
|
1681
|
+
template.innerHTML = `
|
1682
|
+
<${componentName$4}
|
1683
|
+
bordered="true"
|
1684
|
+
name="code"
|
1685
|
+
tabindex="0"
|
1686
|
+
slot="input"
|
1687
|
+
required="${this.shadowRoot.host.getAttribute('required')}"
|
1688
|
+
pattern="${this.shadowRoot.host.getAttribute('pattern')}"
|
1689
|
+
></${componentName$4}>
|
1690
|
+
`;
|
1691
|
+
|
1692
|
+
// we are adding a slot under vaadin-text-field, it should reflect all descope-passcode children to be under vaadin-text-field, this is why it has a name & slot
|
1693
|
+
const slotEle = Object.assign(document.createElement('slot'), { name: 'input', slot: 'input', part: 'input' });
|
1694
|
+
this.proxyElement.appendChild(slotEle);
|
1695
|
+
|
1696
|
+
// we want to control when the element is out of focus
|
1697
|
+
// so the validations will be triggered blur event is dispatched from descope-passcode internal (and not every time focusing a digit)
|
1698
|
+
this.proxyElement._setFocused = () => { };
|
1699
|
+
|
1700
|
+
this.shadowRoot.host.appendChild(template.content.cloneNode(true));
|
1701
|
+
this.inputElement = this.querySelector(componentName$4);
|
1702
|
+
|
1703
|
+
// we want to trigger validation only when dispatching a blur event from the descope-passcode-internal
|
1704
|
+
this.inputElement.addEventListener('blur', () => {
|
1705
|
+
this.proxyElement.validate();
|
1706
|
+
});
|
1707
|
+
}
|
1708
|
+
};
|
1709
|
+
|
1710
|
+
const { borderStyle, borderWidth, ...restTextFieldMappings } = textFieldMappings;
|
1711
|
+
|
1712
|
+
const Passcode = compose(
|
1713
|
+
createStyleMixin({
|
1714
|
+
mappings: {
|
1715
|
+
...restTextFieldMappings,
|
1716
|
+
},
|
1717
|
+
nestedMappings: {
|
1718
|
+
borderColor: {
|
1719
|
+
selector: ` ${TextField.componentName}`,
|
1720
|
+
property: TextField.cssVarList.borderColor
|
1721
|
+
}
|
1722
|
+
}
|
1723
|
+
}),
|
1724
|
+
draggableMixin,
|
1725
|
+
inputMixin,
|
1726
|
+
componentNameValidationMixin,
|
1727
|
+
customMixin
|
1728
|
+
)(
|
1729
|
+
createProxy({
|
1730
|
+
slots: [],
|
1731
|
+
wrappedEleName: 'vaadin-text-field',
|
1732
|
+
style: () => `
|
1733
|
+
:host {
|
1734
|
+
--vaadin-field-default-width: auto;
|
1735
|
+
}
|
1736
|
+
|
1737
|
+
::slotted([slot='input']) {
|
1738
|
+
-webkit-mask-image: none;
|
1739
|
+
display: flex;
|
1740
|
+
gap: 2px;
|
1741
|
+
align-items: center;
|
1742
|
+
padding: 0;
|
1743
|
+
}
|
1744
|
+
|
1745
|
+
vaadin-text-field::part(input-field) {
|
1746
|
+
background-color: transparent;
|
1747
|
+
padding: 0;
|
1748
|
+
}
|
1749
|
+
|
1750
|
+
${overrides$3}
|
1751
|
+
`,
|
1752
|
+
excludeAttrsSync: ['tabindex'],
|
1753
|
+
componentName: componentName$3
|
1754
|
+
})
|
1755
|
+
);
|
1756
|
+
|
1757
|
+
const overrides$3 = `
|
1758
|
+
:host {
|
1759
|
+
display: inline-block;
|
1760
|
+
}
|
1761
|
+
|
1762
|
+
vaadin-text-field {
|
1763
|
+
margin: 0;
|
1764
|
+
padding: 0;
|
1765
|
+
}
|
1766
|
+
vaadin-text-field::part(input-field) {
|
1767
|
+
overflow: hidden;
|
1768
|
+
}
|
1769
|
+
vaadin-text-field[readonly] > input:placeholder-shown {
|
1770
|
+
opacity: 1;
|
1771
|
+
}
|
1772
|
+
|
1773
|
+
vaadin-text-field > label,
|
1774
|
+
vaadin-text-field::part(input-field) {
|
1775
|
+
cursor: pointer;
|
1776
|
+
color: var(${Passcode.cssVarList.color});
|
1777
|
+
}
|
1778
|
+
vaadin-text-field::part(input-field):focus {
|
1779
|
+
cursor: text;
|
1780
|
+
}
|
1781
|
+
vaadin-text-field[required]::part(required-indicator)::after {
|
1782
|
+
font-size: "12px";
|
1783
|
+
content: "*";
|
1784
|
+
color: var(${Passcode.cssVarList.color});
|
1785
|
+
}
|
1786
|
+
vaadin-text-field[readonly]::part(input-field)::after {
|
1787
|
+
border: 0 solid;
|
1788
|
+
}
|
1789
|
+
`;
|
1790
|
+
|
1791
|
+
customElements.define(componentName$4, PasscodeInternal);
|
1792
|
+
|
1793
|
+
customElements.define(componentName$3, Passcode);
|
1794
|
+
|
1795
|
+
const componentName$2 = getComponentName('password-field');
|
1796
|
+
|
1797
|
+
let overrides$2 = ``;
|
1798
|
+
|
1799
|
+
const PasswordField = compose(
|
1800
|
+
createStyleMixin({
|
1801
|
+
mappings: {
|
1802
|
+
...textFieldMappings,
|
1803
|
+
revealCursor: [
|
1804
|
+
{
|
1805
|
+
selector: '::part(reveal-button)::before',
|
1806
|
+
property: 'cursor'
|
1807
|
+
}
|
1808
|
+
]
|
1809
|
+
}
|
1810
|
+
}),
|
1811
|
+
draggableMixin,
|
1812
|
+
inputMixin,
|
1813
|
+
componentNameValidationMixin
|
1814
|
+
)(
|
1815
|
+
createProxy({
|
1816
|
+
slots: ['suffix'],
|
1817
|
+
wrappedEleName: 'vaadin-password-field',
|
1818
|
+
style: () => overrides$2,
|
1819
|
+
excludeAttrsSync: ['tabindex'],
|
1820
|
+
componentName: componentName$2
|
1821
|
+
})
|
1822
|
+
);
|
1823
|
+
|
1824
|
+
overrides$2 = `
|
1825
|
+
:host {
|
1826
|
+
display: inline-block;
|
1827
|
+
}
|
1828
|
+
vaadin-password-field {
|
1829
|
+
margin: 0;
|
1830
|
+
padding: 0;
|
1831
|
+
}
|
1832
|
+
vaadin-password-field::part(input-field) {
|
1833
|
+
overflow: hidden;
|
1834
|
+
}
|
1835
|
+
vaadin-password-field[readonly] > input:placeholder-shown {
|
1836
|
+
opacity: 1;
|
1837
|
+
}
|
1838
|
+
vaadin-password-field input:-webkit-autofill,
|
1839
|
+
vaadin-password-field input:-webkit-autofill::first-line,
|
1840
|
+
vaadin-password-field input:-webkit-autofill:hover,
|
1841
|
+
vaadin-password-field input:-webkit-autofill:active,
|
1842
|
+
vaadin-password-field input:-webkit-autofill:focus {
|
1843
|
+
-webkit-text-fill-color: var(${PasswordField.cssVarList.color});
|
1844
|
+
box-shadow: 0 0 0 var(${PasswordField.cssVarList.height}) var(${PasswordField.cssVarList.backgroundColor}) inset;
|
1845
|
+
}
|
1846
|
+
vaadin-password-field > label,
|
1847
|
+
vaadin-password-field::part(input-field) {
|
1848
|
+
cursor: pointer;
|
1849
|
+
color: var(${PasswordField.cssVarList.color});
|
1850
|
+
}
|
1851
|
+
vaadin-password-field::part(input-field):focus {
|
1852
|
+
cursor: text;
|
1853
|
+
}
|
1854
|
+
vaadin-password-field[required]::part(required-indicator)::after {
|
1855
|
+
font-size: "12px";
|
1856
|
+
content: "*";
|
1857
|
+
color: var(${PasswordField.cssVarList.color});
|
1858
|
+
}
|
1859
|
+
vaadin-password-field[readonly]::part(input-field)::after {
|
1860
|
+
border: 0 solid;
|
1861
|
+
}
|
1862
|
+
`;
|
1863
|
+
|
1864
|
+
customElements.define(componentName$2, PasswordField);
|
1865
|
+
|
1866
|
+
const componentName$1 = getComponentName('switch-toggle');
|
1867
|
+
|
1868
|
+
let overrides$1 = ``;
|
1869
|
+
|
1870
|
+
const SwitchToggle = compose(
|
1871
|
+
createStyleMixin({
|
1872
|
+
mappings: {
|
1873
|
+
width: matchHostStyle(),
|
1874
|
+
cursor: [{}, { selector: '> label' }]
|
1875
|
+
}
|
1876
|
+
}),
|
1877
|
+
draggableMixin,
|
1878
|
+
inputMixin,
|
1879
|
+
componentNameValidationMixin
|
1880
|
+
)(
|
1881
|
+
createProxy({
|
1882
|
+
slots: [],
|
1883
|
+
wrappedEleName: 'vaadin-checkbox',
|
1884
|
+
style: () => overrides$1,
|
1885
|
+
excludeAttrsSync: ['tabindex'],
|
1886
|
+
componentName: componentName$1
|
1887
|
+
})
|
1888
|
+
);
|
1889
|
+
|
1890
|
+
overrides$1 = `
|
1891
|
+
:host {
|
1892
|
+
display: inline-block;
|
1893
|
+
}
|
1894
|
+
|
1895
|
+
:host {
|
1896
|
+
--margin: 7px;
|
1897
|
+
--width: var(${SwitchToggle.cssVarList.width});
|
1898
|
+
--height: calc(var(--width) / 2);
|
1899
|
+
--radius: var(--height);
|
1900
|
+
--knobSize: calc(var(--height) - 5px);
|
1901
|
+
--bgColor: #fff;
|
1902
|
+
--knobBgColor: #000;
|
1903
|
+
}
|
1904
|
+
vaadin-checkbox>label {
|
1905
|
+
cursor: pointer;
|
1906
|
+
border: 1px solid;
|
1907
|
+
text-indent: -99999px;
|
1908
|
+
display: block;
|
1909
|
+
position: relative;
|
1910
|
+
width: var(--width);
|
1911
|
+
height: var(--height);
|
1912
|
+
background: var(--bgColor);
|
1913
|
+
border-radius: var(--radius);
|
1914
|
+
}
|
1915
|
+
vaadin-checkbox>label::after {
|
1916
|
+
content: '';
|
1917
|
+
position: absolute;
|
1918
|
+
transition: 0.3s;
|
1919
|
+
top: var(--margin);
|
1920
|
+
left: var(--margin);
|
1921
|
+
width: var(--knobSize);
|
1922
|
+
height: var(--knobSize);
|
1923
|
+
background: var(--knobBgColor);
|
1924
|
+
border-radius: var(--knobSize);
|
1925
|
+
}
|
1926
|
+
vaadin-checkbox::part(checkbox) {
|
1927
|
+
height: 0;
|
1928
|
+
width: 0;
|
1929
|
+
visibility: hidden;
|
1930
|
+
}
|
1931
|
+
vaadin-checkbox[checked]>label::after {
|
1932
|
+
transform: translateX(-100%);
|
1933
|
+
left: calc(100% - var(--margin));
|
1934
|
+
}
|
1935
|
+
vaadin-checkbox[active]>label::after {
|
1936
|
+
width: calc(var(--knobSize) + 15px);
|
1937
|
+
}
|
1938
|
+
`;
|
1939
|
+
|
1940
|
+
customElements.define(componentName$1, SwitchToggle);
|
1941
|
+
|
1942
|
+
const componentName = getComponentName('text-area');
|
1943
|
+
|
1944
|
+
const selectors = {
|
1945
|
+
label: '::part(label)',
|
1946
|
+
input: '::part(input-field)',
|
1947
|
+
required: '::part(required-indicator)::after'
|
1948
|
+
};
|
1949
|
+
|
1950
|
+
let overrides = ``;
|
1951
|
+
|
1952
|
+
const TextArea = compose(
|
1953
|
+
createStyleMixin({
|
1954
|
+
mappings: {
|
1955
|
+
resize: { selector: '> textarea' },
|
1956
|
+
color: { selector: selectors.label },
|
1957
|
+
cursor: {},
|
1958
|
+
width: matchHostStyle(),
|
1959
|
+
backgroundColor: { selector: selectors.input },
|
1960
|
+
borderWidth: { selector: selectors.input },
|
1961
|
+
borderStyle: { selector: selectors.input },
|
1962
|
+
borderColor: { selector: selectors.input },
|
1963
|
+
borderRadius: { selector: selectors.input },
|
1964
|
+
outline: { selector: selectors.input },
|
1965
|
+
outlineOffset: { selector: selectors.input }
|
1966
|
+
}
|
1967
|
+
}),
|
1968
|
+
draggableMixin,
|
1969
|
+
inputMixin,
|
1970
|
+
componentNameValidationMixin
|
1971
|
+
)(
|
1972
|
+
createProxy({
|
1973
|
+
slots: [],
|
1974
|
+
wrappedEleName: 'vaadin-text-area',
|
1975
|
+
style: () => overrides,
|
1976
|
+
excludeAttrsSync: ['tabindex'],
|
1977
|
+
componentName
|
1978
|
+
})
|
1979
|
+
);
|
1980
|
+
|
1981
|
+
overrides = `
|
1982
|
+
:host {
|
1983
|
+
display: inline-block;
|
1984
|
+
}
|
1985
|
+
|
1986
|
+
vaadin-text-area {
|
1987
|
+
margin: 0;
|
1988
|
+
}
|
1989
|
+
vaadin-text-area > label,
|
1990
|
+
vaadin-text-area::part(input-field) {
|
1991
|
+
cursor: pointer;
|
1992
|
+
}
|
1993
|
+
vaadin-text-area[focused]::part(input-field) {
|
1994
|
+
cursor: text;
|
1995
|
+
}
|
1996
|
+
vaadin-text-area::part(required-indicator)::after {
|
1997
|
+
font-size: "12px";
|
1998
|
+
content: "*";
|
1999
|
+
}
|
2000
|
+
`;
|
2001
|
+
|
2002
|
+
customElements.define(componentName, TextArea);
|
1454
2003
|
|
1455
2004
|
const getVarName = (path) => getCssVarName(DESCOPE_PREFIX, ...path);
|
1456
2005
|
|
@@ -1690,150 +2239,146 @@ var globals = {
|
|
1690
2239
|
fonts
|
1691
2240
|
};
|
1692
2241
|
|
1693
|
-
const globalRefs$
|
1694
|
-
const vars$
|
2242
|
+
const globalRefs$7 = getThemeRefs(globals);
|
2243
|
+
const vars$c = Button.cssVarList;
|
1695
2244
|
|
1696
2245
|
const mode = {
|
1697
|
-
primary: globalRefs$
|
1698
|
-
secondary: globalRefs$
|
1699
|
-
success: globalRefs$
|
1700
|
-
error: globalRefs$
|
1701
|
-
surface: globalRefs$
|
2246
|
+
primary: globalRefs$7.colors.primary,
|
2247
|
+
secondary: globalRefs$7.colors.secondary,
|
2248
|
+
success: globalRefs$7.colors.success,
|
2249
|
+
error: globalRefs$7.colors.error,
|
2250
|
+
surface: globalRefs$7.colors.surface
|
1702
2251
|
};
|
1703
2252
|
|
1704
|
-
const [helperTheme$1, helperRefs$1] = createHelperVars({ mode }, componentName$
|
2253
|
+
const [helperTheme$1, helperRefs$1] = createHelperVars({ mode }, componentName$i);
|
1705
2254
|
|
1706
2255
|
const button = {
|
1707
2256
|
...helperTheme$1,
|
1708
2257
|
|
1709
2258
|
size: {
|
1710
2259
|
xs: {
|
1711
|
-
[vars$
|
1712
|
-
[vars$
|
1713
|
-
[vars$
|
2260
|
+
[vars$c.height]: '10px',
|
2261
|
+
[vars$c.fontSize]: '10px',
|
2262
|
+
[vars$c.padding]: `0 ${globalRefs$7.spacing.xs}`
|
1714
2263
|
},
|
1715
2264
|
sm: {
|
1716
|
-
[vars$
|
1717
|
-
[vars$
|
1718
|
-
[vars$
|
2265
|
+
[vars$c.height]: '20px',
|
2266
|
+
[vars$c.fontSize]: '10px',
|
2267
|
+
[vars$c.padding]: `0 ${globalRefs$7.spacing.sm}`
|
1719
2268
|
},
|
1720
2269
|
md: {
|
1721
|
-
[vars$
|
1722
|
-
[vars$
|
1723
|
-
[vars$
|
2270
|
+
[vars$c.height]: '30px',
|
2271
|
+
[vars$c.fontSize]: '14px',
|
2272
|
+
[vars$c.padding]: `0 ${globalRefs$7.spacing.md}`
|
1724
2273
|
},
|
1725
2274
|
lg: {
|
1726
|
-
[vars$
|
1727
|
-
[vars$
|
1728
|
-
[vars$
|
2275
|
+
[vars$c.height]: '40px',
|
2276
|
+
[vars$c.fontSize]: '20px',
|
2277
|
+
[vars$c.padding]: `0 ${globalRefs$7.spacing.lg}`
|
1729
2278
|
},
|
1730
2279
|
xl: {
|
1731
|
-
[vars$
|
1732
|
-
[vars$
|
1733
|
-
[vars$
|
2280
|
+
[vars$c.height]: '50px',
|
2281
|
+
[vars$c.fontSize]: '25px',
|
2282
|
+
[vars$c.padding]: `0 ${globalRefs$7.spacing.xl}`
|
1734
2283
|
}
|
1735
2284
|
},
|
1736
2285
|
|
1737
|
-
[vars$
|
1738
|
-
[vars$
|
1739
|
-
[vars$
|
1740
|
-
[vars$
|
1741
|
-
[vars$
|
2286
|
+
[vars$c.borderRadius]: globalRefs$7.radius.lg,
|
2287
|
+
[vars$c.cursor]: 'pointer',
|
2288
|
+
[vars$c.borderWidth]: '2px',
|
2289
|
+
[vars$c.borderStyle]: 'solid',
|
2290
|
+
[vars$c.borderColor]: 'transparent',
|
1742
2291
|
|
1743
2292
|
_fullWidth: {
|
1744
|
-
[vars$
|
2293
|
+
[vars$c.width]: '100%'
|
1745
2294
|
},
|
1746
2295
|
_loading: {
|
1747
|
-
[vars$
|
2296
|
+
[vars$c.cursor]: 'wait'
|
1748
2297
|
},
|
1749
2298
|
|
1750
2299
|
variant: {
|
1751
2300
|
contained: {
|
1752
|
-
[vars$
|
1753
|
-
[vars$
|
2301
|
+
[vars$c.color]: helperRefs$1.contrast,
|
2302
|
+
[vars$c.backgroundColor]: helperRefs$1.main,
|
1754
2303
|
_hover: {
|
1755
|
-
[vars$
|
2304
|
+
[vars$c.backgroundColor]: helperRefs$1.dark
|
1756
2305
|
},
|
1757
2306
|
_loading: {
|
1758
|
-
[vars$
|
2307
|
+
[vars$c.backgroundColor]: helperRefs$1.main
|
1759
2308
|
}
|
1760
2309
|
},
|
1761
2310
|
outline: {
|
1762
|
-
[vars$
|
1763
|
-
[vars$
|
2311
|
+
[vars$c.color]: helperRefs$1.main,
|
2312
|
+
[vars$c.borderColor]: helperRefs$1.main,
|
1764
2313
|
_hover: {
|
1765
|
-
[vars$
|
1766
|
-
[vars$
|
2314
|
+
[vars$c.color]: helperRefs$1.dark,
|
2315
|
+
[vars$c.borderColor]: helperRefs$1.dark,
|
1767
2316
|
_error: {
|
1768
|
-
[vars$
|
2317
|
+
[vars$c.color]: helperRefs$1.error
|
1769
2318
|
}
|
1770
2319
|
}
|
1771
2320
|
},
|
1772
2321
|
link: {
|
1773
|
-
[vars$
|
1774
|
-
[vars$
|
1775
|
-
[vars$
|
1776
|
-
[vars$
|
1777
|
-
[vars$
|
2322
|
+
[vars$c.color]: helperRefs$1.main,
|
2323
|
+
[vars$c.padding]: 0,
|
2324
|
+
[vars$c.margin]: 0,
|
2325
|
+
[vars$c.lineHeight]: helperRefs$1.height,
|
2326
|
+
[vars$c.borderRadius]: 0,
|
1778
2327
|
_hover: {
|
1779
|
-
[vars$
|
1780
|
-
[vars$
|
2328
|
+
[vars$c.color]: helperRefs$1.main,
|
2329
|
+
[vars$c.textDecoration]: 'underline'
|
1781
2330
|
}
|
1782
2331
|
}
|
1783
2332
|
}
|
1784
2333
|
};
|
1785
2334
|
|
1786
|
-
const globalRefs$
|
2335
|
+
const globalRefs$6 = getThemeRefs(globals);
|
1787
2336
|
|
1788
|
-
const vars$
|
2337
|
+
const vars$b = TextField.cssVarList;
|
1789
2338
|
|
1790
2339
|
const textField = (vars) => ({
|
1791
2340
|
size: {
|
1792
2341
|
xs: {
|
1793
2342
|
[vars.height]: '14px',
|
1794
2343
|
[vars.fontSize]: '8px',
|
1795
|
-
[vars.padding]: `0 ${globalRefs$
|
2344
|
+
[vars.padding]: `0 ${globalRefs$6.spacing.xs}`
|
1796
2345
|
},
|
1797
2346
|
sm: {
|
1798
2347
|
[vars.height]: '20px',
|
1799
2348
|
[vars.fontSize]: '10px',
|
1800
|
-
[vars.padding]: `0 ${globalRefs$
|
2349
|
+
[vars.padding]: `0 ${globalRefs$6.spacing.sm}`
|
1801
2350
|
},
|
1802
2351
|
md: {
|
1803
2352
|
[vars.height]: '30px',
|
1804
2353
|
[vars.fontSize]: '14px',
|
1805
|
-
[vars.padding]: `0 ${globalRefs$
|
2354
|
+
[vars.padding]: `0 ${globalRefs$6.spacing.md}`
|
1806
2355
|
},
|
1807
2356
|
lg: {
|
1808
2357
|
[vars.height]: '40px',
|
1809
2358
|
[vars.fontSize]: '16px',
|
1810
|
-
[vars.padding]: `0 ${globalRefs$
|
2359
|
+
[vars.padding]: `0 ${globalRefs$6.spacing.lg}`
|
1811
2360
|
},
|
1812
2361
|
xl: {
|
1813
2362
|
[vars.height]: '50px',
|
1814
2363
|
[vars.fontSize]: '25px',
|
1815
|
-
[vars.padding]: `0 ${globalRefs$
|
2364
|
+
[vars.padding]: `0 ${globalRefs$6.spacing.xl}`
|
1816
2365
|
}
|
1817
2366
|
},
|
1818
2367
|
|
1819
|
-
[vars.color]: globalRefs$
|
1820
|
-
[vars.placeholderColor]: globalRefs$
|
2368
|
+
[vars.color]: globalRefs$6.colors.surface.contrast,
|
2369
|
+
[vars.placeholderColor]: globalRefs$6.colors.surface.contrast,
|
1821
2370
|
|
1822
|
-
[vars.backgroundColor]: globalRefs$
|
2371
|
+
[vars.backgroundColor]: globalRefs$6.colors.surface.light,
|
1823
2372
|
|
1824
2373
|
[vars.borderWidth]: '1px',
|
1825
2374
|
[vars.borderStyle]: 'solid',
|
1826
2375
|
[vars.borderColor]: 'transparent',
|
1827
|
-
[vars.borderRadius]: globalRefs$
|
1828
|
-
|
1829
|
-
_borderOffset: {
|
1830
|
-
[vars.outlineOffset]: '2px'
|
1831
|
-
},
|
2376
|
+
[vars.borderRadius]: globalRefs$6.radius.sm,
|
1832
2377
|
|
1833
2378
|
_disabled: {
|
1834
|
-
[vars.color]: globalRefs$
|
1835
|
-
[vars.placeholderColor]: globalRefs$
|
1836
|
-
[vars.backgroundColor]: globalRefs$
|
2379
|
+
[vars.color]: globalRefs$6.colors.surface.dark,
|
2380
|
+
[vars.placeholderColor]: globalRefs$6.colors.surface.light,
|
2381
|
+
[vars.backgroundColor]: globalRefs$6.colors.surface.main
|
1837
2382
|
},
|
1838
2383
|
|
1839
2384
|
_fullWidth: {
|
@@ -1841,27 +2386,27 @@ const textField = (vars) => ({
|
|
1841
2386
|
},
|
1842
2387
|
|
1843
2388
|
_focused: {
|
1844
|
-
[vars.outline]: `2px solid ${globalRefs$
|
2389
|
+
[vars.outline]: `2px solid ${globalRefs$6.colors.surface.main}`
|
1845
2390
|
},
|
1846
2391
|
|
1847
2392
|
_bordered: {
|
1848
|
-
[vars.borderColor]: globalRefs$
|
2393
|
+
[vars.borderColor]: globalRefs$6.colors.surface.main
|
1849
2394
|
},
|
1850
2395
|
|
1851
2396
|
_hasErrorMessage: {
|
1852
|
-
[vars.borderColor]: globalRefs$
|
1853
|
-
[vars.color]: globalRefs$
|
1854
|
-
[vars.placeholderColor]: globalRefs$
|
2397
|
+
[vars.borderColor]: globalRefs$6.colors.error.main,
|
2398
|
+
[vars.color]: globalRefs$6.colors.error.main,
|
2399
|
+
[vars.placeholderColor]: globalRefs$6.colors.error.light
|
1855
2400
|
}
|
1856
2401
|
});
|
1857
2402
|
|
1858
|
-
var textField$1 = textField(vars$
|
2403
|
+
var textField$1 = textField(vars$b);
|
1859
2404
|
|
1860
|
-
const vars$
|
2405
|
+
const vars$a = PasswordField.cssVarList;
|
1861
2406
|
|
1862
2407
|
const passwordField = {
|
1863
|
-
...textField(vars$
|
1864
|
-
[vars$
|
2408
|
+
...textField(vars$a),
|
2409
|
+
[vars$a.revealCursor]: 'pointer'
|
1865
2410
|
};
|
1866
2411
|
|
1867
2412
|
const numberField = {
|
@@ -1872,134 +2417,56 @@ const emailField = {
|
|
1872
2417
|
...textField(EmailField.cssVarList)
|
1873
2418
|
};
|
1874
2419
|
|
1875
|
-
const globalRefs$
|
1876
|
-
const vars$
|
2420
|
+
const globalRefs$5 = getThemeRefs(globals);
|
2421
|
+
const vars$9 = TextArea.cssVarList;
|
1877
2422
|
|
1878
2423
|
const textArea = {
|
1879
|
-
[vars$
|
1880
|
-
[vars$
|
1881
|
-
[vars$
|
1882
|
-
|
1883
|
-
[vars$7.borderRadius]: globalRefs$3.radius.sm,
|
1884
|
-
[vars$7.borderWidth]: '1px',
|
1885
|
-
[vars$7.borderStyle]: 'solid',
|
1886
|
-
[vars$7.borderColor]: 'transparent',
|
2424
|
+
[vars$9.color]: globalRefs$5.colors.primary.main,
|
2425
|
+
[vars$9.backgroundColor]: globalRefs$5.colors.surface.light,
|
2426
|
+
[vars$9.resize]: 'vertical',
|
1887
2427
|
|
1888
|
-
|
1889
|
-
|
1890
|
-
|
2428
|
+
[vars$9.borderRadius]: globalRefs$5.radius.sm,
|
2429
|
+
[vars$9.borderWidth]: '1px',
|
2430
|
+
[vars$9.borderStyle]: 'solid',
|
2431
|
+
[vars$9.borderColor]: 'transparent',
|
1891
2432
|
|
1892
2433
|
_bordered: {
|
1893
|
-
[vars$
|
2434
|
+
[vars$9.borderColor]: globalRefs$5.colors.surface.main
|
1894
2435
|
},
|
1895
2436
|
|
1896
2437
|
_focused: {
|
1897
|
-
[vars$
|
2438
|
+
[vars$9.outline]: `2px solid ${globalRefs$5.colors.surface.main}`
|
1898
2439
|
},
|
1899
2440
|
|
1900
2441
|
_fullWidth: {
|
1901
|
-
[vars$
|
2442
|
+
[vars$9.width]: '100%'
|
1902
2443
|
},
|
1903
2444
|
|
1904
2445
|
_disabled: {
|
1905
|
-
[vars$
|
2446
|
+
[vars$9.cursor]: 'not-allowed'
|
1906
2447
|
},
|
1907
2448
|
|
1908
2449
|
_invalid: {
|
1909
|
-
[vars$
|
2450
|
+
[vars$9.outline]: `2px solid ${globalRefs$5.colors.error.main}`
|
1910
2451
|
}
|
1911
2452
|
};
|
1912
2453
|
|
1913
|
-
const vars$
|
2454
|
+
const vars$8 = Checkbox.cssVarList;
|
1914
2455
|
|
1915
2456
|
const checkbox = {
|
1916
|
-
[vars$
|
2457
|
+
[vars$8.cursor]: 'pointer'
|
1917
2458
|
};
|
1918
2459
|
|
1919
|
-
const
|
1920
|
-
|
1921
|
-
let overrides$1 = ``;
|
1922
|
-
|
1923
|
-
const SwitchToggle = compose(
|
1924
|
-
createStyleMixin({
|
1925
|
-
mappings: {
|
1926
|
-
width: matchHostStyle(),
|
1927
|
-
cursor: [{}, { selector: '> label' }]
|
1928
|
-
}
|
1929
|
-
}),
|
1930
|
-
draggableMixin,
|
1931
|
-
inputMixin,
|
1932
|
-
componentNameValidationMixin
|
1933
|
-
)(
|
1934
|
-
createProxy({
|
1935
|
-
slots: [],
|
1936
|
-
wrappedEleName: 'vaadin-checkbox',
|
1937
|
-
style: () => overrides$1,
|
1938
|
-
excludeAttrsSync: ['tabindex'],
|
1939
|
-
componentName: componentName$2
|
1940
|
-
})
|
1941
|
-
);
|
1942
|
-
|
1943
|
-
overrides$1 = `
|
1944
|
-
:host {
|
1945
|
-
display: inline-block;
|
1946
|
-
}
|
1947
|
-
|
1948
|
-
:host {
|
1949
|
-
--margin: 7px;
|
1950
|
-
--width: var(${SwitchToggle.cssVarList.width});
|
1951
|
-
--height: calc(var(--width) / 2);
|
1952
|
-
--radius: var(--height);
|
1953
|
-
--knobSize: calc(var(--height) - 5px);
|
1954
|
-
--bgColor: #fff;
|
1955
|
-
--knobBgColor: #000;
|
1956
|
-
}
|
1957
|
-
vaadin-checkbox>label {
|
1958
|
-
cursor: pointer;
|
1959
|
-
border: 1px solid;
|
1960
|
-
text-indent: -99999px;
|
1961
|
-
display: block;
|
1962
|
-
position: relative;
|
1963
|
-
width: var(--width);
|
1964
|
-
height: var(--height);
|
1965
|
-
background: var(--bgColor);
|
1966
|
-
border-radius: var(--radius);
|
1967
|
-
}
|
1968
|
-
vaadin-checkbox>label::after {
|
1969
|
-
content: '';
|
1970
|
-
position: absolute;
|
1971
|
-
transition: 0.3s;
|
1972
|
-
top: var(--margin);
|
1973
|
-
left: var(--margin);
|
1974
|
-
width: var(--knobSize);
|
1975
|
-
height: var(--knobSize);
|
1976
|
-
background: var(--knobBgColor);
|
1977
|
-
border-radius: var(--knobSize);
|
1978
|
-
}
|
1979
|
-
vaadin-checkbox::part(checkbox) {
|
1980
|
-
height: 0;
|
1981
|
-
width: 0;
|
1982
|
-
visibility: hidden;
|
1983
|
-
}
|
1984
|
-
vaadin-checkbox[checked]>label::after {
|
1985
|
-
transform: translateX(-100%);
|
1986
|
-
left: calc(100% - var(--margin));
|
1987
|
-
}
|
1988
|
-
vaadin-checkbox[active]>label::after {
|
1989
|
-
width: calc(var(--knobSize) + 15px);
|
1990
|
-
}
|
1991
|
-
`;
|
1992
|
-
|
1993
|
-
const vars$5 = SwitchToggle.cssVarList;
|
2460
|
+
const vars$7 = SwitchToggle.cssVarList;
|
1994
2461
|
|
1995
2462
|
const swtichToggle = {
|
1996
|
-
[vars$
|
1997
|
-
[vars$
|
2463
|
+
[vars$7.width]: '70px',
|
2464
|
+
[vars$7.cursor]: [{}, { selector: '> label' }]
|
1998
2465
|
};
|
1999
2466
|
|
2000
|
-
const globalRefs$
|
2467
|
+
const globalRefs$4 = getThemeRefs(globals);
|
2001
2468
|
|
2002
|
-
const vars$
|
2469
|
+
const vars$6 = Container.cssVarList;
|
2003
2470
|
|
2004
2471
|
const verticalAlignment = {
|
2005
2472
|
start: { verticalAlignment: 'start' },
|
@@ -2022,31 +2489,31 @@ const [helperTheme, helperRefs, helperVars] =
|
|
2022
2489
|
|
2023
2490
|
const container = {
|
2024
2491
|
...helperTheme,
|
2025
|
-
[vars$
|
2492
|
+
[vars$6.display]: 'flex',
|
2026
2493
|
verticalPadding: {
|
2027
|
-
sm: { [vars$
|
2028
|
-
md: { [vars$
|
2029
|
-
lg: { [vars$
|
2494
|
+
sm: { [vars$6.verticalPadding]: '5px' },
|
2495
|
+
md: { [vars$6.verticalPadding]: '10px' },
|
2496
|
+
lg: { [vars$6.verticalPadding]: '20px' },
|
2030
2497
|
},
|
2031
2498
|
horizontalPadding: {
|
2032
|
-
sm: { [vars$
|
2033
|
-
md: { [vars$
|
2034
|
-
lg: { [vars$
|
2499
|
+
sm: { [vars$6.horizontalPadding]: '5px' },
|
2500
|
+
md: { [vars$6.horizontalPadding]: '10px' },
|
2501
|
+
lg: { [vars$6.horizontalPadding]: '20px' },
|
2035
2502
|
},
|
2036
2503
|
direction: {
|
2037
2504
|
row: {
|
2038
|
-
[vars$
|
2039
|
-
[vars$
|
2040
|
-
[vars$
|
2505
|
+
[vars$6.flexDirection]: 'row',
|
2506
|
+
[vars$6.alignItems]: helperRefs.verticalAlignment,
|
2507
|
+
[vars$6.justifyContent]: helperRefs.horizontalAlignment,
|
2041
2508
|
horizontalAlignment: {
|
2042
2509
|
spaceBetween: { [helperVars.horizontalAlignment]: 'space-between' },
|
2043
2510
|
}
|
2044
2511
|
},
|
2045
2512
|
|
2046
2513
|
column: {
|
2047
|
-
[vars$
|
2048
|
-
[vars$
|
2049
|
-
[vars$
|
2514
|
+
[vars$6.flexDirection]: 'column',
|
2515
|
+
[vars$6.alignItems]: helperRefs.horizontalAlignment,
|
2516
|
+
[vars$6.justifyContent]: helperRefs.verticalAlignment,
|
2050
2517
|
verticalAlignment: {
|
2051
2518
|
spaceBetween: { [helperVars.verticalAlignment]: 'space-between' }
|
2052
2519
|
}
|
@@ -2055,338 +2522,310 @@ const container = {
|
|
2055
2522
|
|
2056
2523
|
spaceBetween: {
|
2057
2524
|
sm: {
|
2058
|
-
[vars$
|
2525
|
+
[vars$6.gap]: '10px'
|
2059
2526
|
},
|
2060
2527
|
md: {
|
2061
|
-
[vars$
|
2528
|
+
[vars$6.gap]: '20px'
|
2062
2529
|
},
|
2063
2530
|
lg: {
|
2064
|
-
[vars$
|
2531
|
+
[vars$6.gap]: '30px'
|
2065
2532
|
}
|
2066
2533
|
},
|
2067
2534
|
|
2068
2535
|
shadow: {
|
2069
2536
|
sm: {
|
2070
|
-
[vars$
|
2537
|
+
[vars$6.boxShadow]: `${globalRefs$4.shadow.wide.sm} ${helperRefs.shadowColor}, ${globalRefs$4.shadow.narrow.sm} ${helperRefs.shadowColor}`
|
2071
2538
|
},
|
2072
2539
|
md: {
|
2073
|
-
[vars$
|
2540
|
+
[vars$6.boxShadow]: `${globalRefs$4.shadow.wide.md} ${helperRefs.shadowColor}, ${globalRefs$4.shadow.narrow.md} ${helperRefs.shadowColor}`
|
2074
2541
|
},
|
2075
2542
|
lg: {
|
2076
|
-
[vars$
|
2543
|
+
[vars$6.boxShadow]: `${globalRefs$4.shadow.wide.lg} ${helperRefs.shadowColor}, ${globalRefs$4.shadow.narrow.lg} ${helperRefs.shadowColor}`
|
2077
2544
|
},
|
2078
2545
|
xl: {
|
2079
|
-
[vars$
|
2546
|
+
[vars$6.boxShadow]: `${globalRefs$4.shadow.wide.xl} ${helperRefs.shadowColor}, ${globalRefs$4.shadow.narrow.xl} ${helperRefs.shadowColor}`
|
2080
2547
|
},
|
2081
2548
|
'2xl': {
|
2082
2549
|
[helperVars.shadowColor]: '#00000050',
|
2083
|
-
[vars$
|
2550
|
+
[vars$6.boxShadow]: `${globalRefs$4.shadow.wide['2xl']} ${helperRefs.shadowColor}`
|
2084
2551
|
},
|
2085
2552
|
},
|
2086
2553
|
|
2087
2554
|
borderRadius: {
|
2088
2555
|
sm: {
|
2089
|
-
[vars$
|
2556
|
+
[vars$6.borderRadius]: globalRefs$4.radius.sm
|
2090
2557
|
},
|
2091
2558
|
md: {
|
2092
|
-
[vars$
|
2559
|
+
[vars$6.borderRadius]: globalRefs$4.radius.md
|
2093
2560
|
},
|
2094
2561
|
lg: {
|
2095
|
-
[vars$
|
2562
|
+
[vars$6.borderRadius]: globalRefs$4.radius.lg
|
2096
2563
|
},
|
2097
2564
|
}
|
2098
2565
|
};
|
2099
2566
|
|
2100
|
-
const vars$
|
2567
|
+
const vars$5 = Logo.cssVarList;
|
2101
2568
|
|
2102
2569
|
const logo = {
|
2103
|
-
[vars$
|
2570
|
+
[vars$5.fallbackUrl]: 'url(https://content.app.descope.com/assets/flows/noLogoPlaceholder.svg)'
|
2104
2571
|
};
|
2105
2572
|
|
2106
|
-
const globalRefs$
|
2573
|
+
const globalRefs$3 = getThemeRefs(globals);
|
2107
2574
|
|
2108
|
-
const vars$
|
2575
|
+
const vars$4 = Text.cssVarList;
|
2109
2576
|
|
2110
2577
|
const text = {
|
2111
|
-
[vars$
|
2112
|
-
[vars$
|
2113
|
-
[vars$
|
2114
|
-
[vars$
|
2578
|
+
[vars$4.lineHeight]: '1em',
|
2579
|
+
[vars$4.display]: 'inline-block',
|
2580
|
+
[vars$4.textAlign]: 'left',
|
2581
|
+
[vars$4.color]: globalRefs$3.colors.surface.dark,
|
2115
2582
|
variant: {
|
2116
2583
|
h1: {
|
2117
|
-
[vars$
|
2118
|
-
[vars$
|
2119
|
-
[vars$
|
2584
|
+
[vars$4.fontSize]: globalRefs$3.typography.h1.size,
|
2585
|
+
[vars$4.fontWeight]: globalRefs$3.typography.h1.weight,
|
2586
|
+
[vars$4.fontFamily]: globalRefs$3.typography.h1.font
|
2120
2587
|
},
|
2121
2588
|
h2: {
|
2122
|
-
[vars$
|
2123
|
-
[vars$
|
2124
|
-
[vars$
|
2589
|
+
[vars$4.fontSize]: globalRefs$3.typography.h2.size,
|
2590
|
+
[vars$4.fontWeight]: globalRefs$3.typography.h2.weight,
|
2591
|
+
[vars$4.fontFamily]: globalRefs$3.typography.h2.font
|
2125
2592
|
},
|
2126
2593
|
h3: {
|
2127
|
-
[vars$
|
2128
|
-
[vars$
|
2129
|
-
[vars$
|
2594
|
+
[vars$4.fontSize]: globalRefs$3.typography.h3.size,
|
2595
|
+
[vars$4.fontWeight]: globalRefs$3.typography.h3.weight,
|
2596
|
+
[vars$4.fontFamily]: globalRefs$3.typography.h3.font
|
2130
2597
|
},
|
2131
2598
|
subtitle1: {
|
2132
|
-
[vars$
|
2133
|
-
[vars$
|
2134
|
-
[vars$
|
2599
|
+
[vars$4.fontSize]: globalRefs$3.typography.subtitle1.size,
|
2600
|
+
[vars$4.fontWeight]: globalRefs$3.typography.subtitle1.weight,
|
2601
|
+
[vars$4.fontFamily]: globalRefs$3.typography.subtitle1.font
|
2135
2602
|
},
|
2136
2603
|
subtitle2: {
|
2137
|
-
[vars$
|
2138
|
-
[vars$
|
2139
|
-
[vars$
|
2604
|
+
[vars$4.fontSize]: globalRefs$3.typography.subtitle2.size,
|
2605
|
+
[vars$4.fontWeight]: globalRefs$3.typography.subtitle2.weight,
|
2606
|
+
[vars$4.fontFamily]: globalRefs$3.typography.subtitle2.font
|
2140
2607
|
},
|
2141
2608
|
body1: {
|
2142
|
-
[vars$
|
2143
|
-
[vars$
|
2144
|
-
[vars$
|
2609
|
+
[vars$4.fontSize]: globalRefs$3.typography.body1.size,
|
2610
|
+
[vars$4.fontWeight]: globalRefs$3.typography.body1.weight,
|
2611
|
+
[vars$4.fontFamily]: globalRefs$3.typography.body1.font
|
2145
2612
|
},
|
2146
2613
|
body2: {
|
2147
|
-
[vars$
|
2148
|
-
[vars$
|
2149
|
-
[vars$
|
2614
|
+
[vars$4.fontSize]: globalRefs$3.typography.body2.size,
|
2615
|
+
[vars$4.fontWeight]: globalRefs$3.typography.body2.weight,
|
2616
|
+
[vars$4.fontFamily]: globalRefs$3.typography.body2.font
|
2150
2617
|
}
|
2151
2618
|
},
|
2152
2619
|
mode: {
|
2153
2620
|
primary: {
|
2154
|
-
[vars$
|
2621
|
+
[vars$4.color]: globalRefs$3.colors.primary.main
|
2155
2622
|
},
|
2156
2623
|
secondary: {
|
2157
|
-
[vars$
|
2624
|
+
[vars$4.color]: globalRefs$3.colors.secondary.main
|
2158
2625
|
},
|
2159
2626
|
error: {
|
2160
|
-
[vars$
|
2627
|
+
[vars$4.color]: globalRefs$3.colors.error.main
|
2161
2628
|
},
|
2162
2629
|
success: {
|
2163
|
-
[vars$
|
2630
|
+
[vars$4.color]: globalRefs$3.colors.success.main
|
2164
2631
|
}
|
2165
2632
|
},
|
2166
2633
|
textAlign: {
|
2167
|
-
right: { [vars$
|
2168
|
-
left: { [vars$
|
2169
|
-
center: { [vars$
|
2634
|
+
right: { [vars$4.textAlign]: 'right' },
|
2635
|
+
left: { [vars$4.textAlign]: 'left' },
|
2636
|
+
center: { [vars$4.textAlign]: 'center' }
|
2170
2637
|
},
|
2171
2638
|
_fullWidth: {
|
2172
|
-
[vars$
|
2173
|
-
[vars$
|
2639
|
+
[vars$4.width]: '100%',
|
2640
|
+
[vars$4.display]: 'block'
|
2174
2641
|
},
|
2175
2642
|
_italic: {
|
2176
|
-
[vars$
|
2643
|
+
[vars$4.fontStyle]: 'italic'
|
2177
2644
|
},
|
2178
2645
|
_uppercase: {
|
2179
|
-
[vars$
|
2646
|
+
[vars$4.textTransform]: 'uppercase'
|
2180
2647
|
},
|
2181
2648
|
_lowercase: {
|
2182
|
-
[vars$
|
2649
|
+
[vars$4.textTransform]: 'lowercase'
|
2183
2650
|
}
|
2184
2651
|
};
|
2185
2652
|
|
2186
|
-
const globalRefs = getThemeRefs(globals);
|
2187
|
-
const vars$
|
2653
|
+
const globalRefs$2 = getThemeRefs(globals);
|
2654
|
+
const vars$3 = Link.cssVarList;
|
2188
2655
|
|
2189
2656
|
const link = {
|
2190
|
-
[vars$
|
2191
|
-
[vars$
|
2192
|
-
[vars$
|
2193
|
-
[vars$
|
2194
|
-
[vars$
|
2657
|
+
[vars$3.cursor]: 'pointer',
|
2658
|
+
[vars$3.borderBottomWidth]: '2px',
|
2659
|
+
[vars$3.borderBottomStyle]: 'solid',
|
2660
|
+
[vars$3.borderBottomColor]: 'transparent',
|
2661
|
+
[vars$3.color]: globalRefs$2.colors.primary.main,
|
2195
2662
|
|
2196
2663
|
_hover: {
|
2197
|
-
[vars$
|
2664
|
+
[vars$3.borderBottomColor]: globalRefs$2.colors.primary.main
|
2198
2665
|
},
|
2199
2666
|
|
2200
2667
|
textAlign: {
|
2201
|
-
right: { [vars$
|
2202
|
-
left: { [vars$
|
2203
|
-
center: { [vars$
|
2668
|
+
right: { [vars$3.textAlign]: 'right' },
|
2669
|
+
left: { [vars$3.textAlign]: 'left' },
|
2670
|
+
center: { [vars$3.textAlign]: 'center' }
|
2204
2671
|
},
|
2205
2672
|
|
2206
2673
|
_fullWidth: {
|
2207
|
-
[vars$
|
2674
|
+
[vars$3.width]: '100%'
|
2208
2675
|
},
|
2209
2676
|
|
2210
2677
|
mode: {
|
2211
2678
|
primary: {
|
2212
|
-
[vars$
|
2679
|
+
[vars$3.color]: globalRefs$2.colors.primary.main,
|
2213
2680
|
_hover: {
|
2214
|
-
[vars$
|
2681
|
+
[vars$3.borderBottomColor]: globalRefs$2.colors.primary.main
|
2215
2682
|
}
|
2216
2683
|
},
|
2217
2684
|
secondary: {
|
2218
|
-
[vars$
|
2685
|
+
[vars$3.color]: globalRefs$2.colors.secondary.main,
|
2219
2686
|
_hover: {
|
2220
|
-
[vars$
|
2687
|
+
[vars$3.borderBottomColor]: globalRefs$2.colors.secondary.main
|
2221
2688
|
}
|
2222
2689
|
},
|
2223
2690
|
error: {
|
2224
|
-
[vars$
|
2691
|
+
[vars$3.color]: globalRefs$2.colors.error.main,
|
2225
2692
|
_hover: {
|
2226
|
-
[vars$
|
2693
|
+
[vars$3.borderBottomColor]: globalRefs$2.colors.error.main
|
2227
2694
|
}
|
2228
2695
|
},
|
2229
2696
|
success: {
|
2230
|
-
[vars$
|
2697
|
+
[vars$3.color]: globalRefs$2.colors.success.main,
|
2231
2698
|
_hover: {
|
2232
|
-
[vars$
|
2699
|
+
[vars$3.borderBottomColor]: globalRefs$2.colors.success.main
|
2233
2700
|
}
|
2234
2701
|
}
|
2235
2702
|
}
|
2236
2703
|
};
|
2237
2704
|
|
2238
|
-
const vars = Divider.cssVarList;
|
2705
|
+
const vars$2 = Divider.cssVarList;
|
2239
2706
|
|
2240
2707
|
const divider = {
|
2241
|
-
[vars.alignItems]: 'center',
|
2242
|
-
[vars.height]: '2px',
|
2243
|
-
[vars.backgroundColor]: 'currentColor',
|
2244
|
-
[vars.opacity]: '0.2',
|
2245
|
-
[vars.padding]: '0 10px',
|
2246
|
-
[vars.width]: '100%',
|
2247
|
-
[vars.flexDirection]: 'row',
|
2248
|
-
[vars.alignSelf]: 'strech',
|
2249
|
-
[vars.textWidth]: 'fit-content',
|
2708
|
+
[vars$2.alignItems]: 'center',
|
2709
|
+
[vars$2.height]: '2px',
|
2710
|
+
[vars$2.backgroundColor]: 'currentColor',
|
2711
|
+
[vars$2.opacity]: '0.2',
|
2712
|
+
[vars$2.padding]: '0 10px',
|
2713
|
+
[vars$2.width]: '100%',
|
2714
|
+
[vars$2.flexDirection]: 'row',
|
2715
|
+
[vars$2.alignSelf]: 'strech',
|
2716
|
+
[vars$2.textWidth]: 'fit-content',
|
2250
2717
|
_vertical: {
|
2251
|
-
[vars.width]: '2px',
|
2252
|
-
[vars.padding]: '10px 0',
|
2253
|
-
[vars.flexDirection]: 'column',
|
2254
|
-
[vars.minHeight]: '200px',
|
2255
|
-
[vars.textWidth]: 'max-content'
|
2718
|
+
[vars$2.width]: '2px',
|
2719
|
+
[vars$2.padding]: '10px 0',
|
2720
|
+
[vars$2.flexDirection]: 'column',
|
2721
|
+
[vars$2.minHeight]: '200px',
|
2722
|
+
[vars$2.textWidth]: 'max-content'
|
2256
2723
|
}
|
2257
2724
|
};
|
2258
2725
|
|
2259
|
-
const
|
2260
|
-
|
2261
|
-
|
2262
|
-
|
2263
|
-
const customMixin = (superclass) =>
|
2264
|
-
class DraggableMixinClass extends superclass {
|
2265
|
-
constructor() {
|
2266
|
-
super();
|
2267
|
-
}
|
2268
|
-
|
2269
|
-
get digits() {
|
2270
|
-
return Number.parseInt(this.getAttribute('digits')) || 6
|
2271
|
-
}
|
2272
|
-
|
2273
|
-
connectedCallback() {
|
2274
|
-
super.connectedCallback?.();
|
2275
|
-
const template = document.createElement('template');
|
2276
|
-
|
2277
|
-
//forward required & pattern TODO use forwardAttrs
|
2278
|
-
template.innerHTML = `
|
2279
|
-
<${componentName$1}
|
2280
|
-
bordered="true"
|
2281
|
-
name="code"
|
2282
|
-
tabindex="0"
|
2283
|
-
slot="input"
|
2284
|
-
required="${this.shadowRoot.host.getAttribute('required')}"
|
2285
|
-
pattern="${this.shadowRoot.host.getAttribute('pattern')}"
|
2286
|
-
></${componentName$1}>
|
2287
|
-
`;
|
2288
|
-
|
2289
|
-
// we are adding a slot under vaadin-text-field, it should reflect all descope-passcode children to be under vaadin-text-field, this is why it has a name & slot
|
2290
|
-
const slotEle = Object.assign(document.createElement('slot'), { name: 'input', slot: 'input', part: 'input' });
|
2291
|
-
this.proxyElement.appendChild(slotEle);
|
2292
|
-
|
2293
|
-
// we want to control when the element is out of focus
|
2294
|
-
// so the validations will be triggered blur event is dispatched from descope-passcode internal (and not every time focusing a digit)
|
2295
|
-
this.proxyElement._setFocused = () => { };
|
2296
|
-
|
2297
|
-
this.shadowRoot.host.appendChild(template.content.cloneNode(true));
|
2298
|
-
this.inputElement = this.querySelector(componentName$1);
|
2299
|
-
|
2300
|
-
// we want to trigger validation only when dispatching a blur event from the descope-passcode-internal
|
2301
|
-
this.inputElement.addEventListener('blur', () => {
|
2302
|
-
this.proxyElement.validate();
|
2303
|
-
});
|
2304
|
-
}
|
2305
|
-
};
|
2306
|
-
|
2307
|
-
const { borderStyle, borderWidth, ...restTextFieldMappings } = textFieldMappings;
|
2308
|
-
|
2309
|
-
const Passcode = compose(
|
2310
|
-
createStyleMixin({
|
2311
|
-
mappings: {
|
2312
|
-
...restTextFieldMappings,
|
2313
|
-
},
|
2314
|
-
nestedMappings: {
|
2315
|
-
borderColor: {
|
2316
|
-
selector: ` ${TextField.componentName}`,
|
2317
|
-
property: TextField.cssVarList.borderColor
|
2318
|
-
}
|
2319
|
-
}
|
2320
|
-
}),
|
2321
|
-
draggableMixin,
|
2322
|
-
inputMixin,
|
2323
|
-
componentNameValidationMixin,
|
2324
|
-
customMixin
|
2325
|
-
)(
|
2326
|
-
createProxy({
|
2327
|
-
slots: [],
|
2328
|
-
wrappedEleName: 'vaadin-text-field',
|
2329
|
-
style: () => `
|
2330
|
-
:host {
|
2331
|
-
--vaadin-field-default-width: auto;
|
2332
|
-
}
|
2333
|
-
|
2334
|
-
::slotted([slot='input']) {
|
2335
|
-
-webkit-mask-image: none;
|
2336
|
-
display: flex;
|
2337
|
-
gap: 2px;
|
2338
|
-
align-items: center;
|
2339
|
-
padding: 0;
|
2340
|
-
}
|
2341
|
-
|
2342
|
-
vaadin-text-field::part(input-field) {
|
2343
|
-
background-color: transparent;
|
2344
|
-
padding: 0;
|
2345
|
-
}
|
2726
|
+
const passcode = {
|
2727
|
+
...textField(Passcode.cssVarList),
|
2728
|
+
};
|
2346
2729
|
|
2347
|
-
|
2348
|
-
`,
|
2349
|
-
excludeAttrsSync: ['tabindex'],
|
2350
|
-
componentName
|
2351
|
-
})
|
2352
|
-
);
|
2730
|
+
const globalRefs$1 = getThemeRefs(globals);
|
2353
2731
|
|
2354
|
-
const
|
2355
|
-
|
2356
|
-
|
2732
|
+
const vars$1 = LoaderLinear.cssVarList;
|
2733
|
+
|
2734
|
+
const loaderLinear = {
|
2735
|
+
[vars$1.display]: 'inline-block',
|
2736
|
+
[vars$1.barColor]: globalRefs$1.colors.surface.contrast,
|
2737
|
+
[vars$1.barWidth]: '20%',
|
2738
|
+
[vars$1.surfaceColor]: globalRefs$1.colors.surface.main,
|
2739
|
+
[vars$1.borderRadius]: '4px',
|
2740
|
+
[vars$1.animationDuration]: '2s',
|
2741
|
+
[vars$1.animationTimingFunction]: 'linear',
|
2742
|
+
[vars$1.animationIterationCount]: 'infinite',
|
2743
|
+
[vars$1.width]: '100%',
|
2744
|
+
size: {
|
2745
|
+
xs: {
|
2746
|
+
[vars$1.height]: '6px'
|
2747
|
+
},
|
2748
|
+
sm: {
|
2749
|
+
[vars$1.height]: '8px'
|
2750
|
+
},
|
2751
|
+
md: {
|
2752
|
+
[vars$1.height]: '10px'
|
2753
|
+
},
|
2754
|
+
lg: {
|
2755
|
+
[vars$1.height]: '12px'
|
2756
|
+
},
|
2757
|
+
xl: {
|
2758
|
+
[vars$1.height]: '14px'
|
2759
|
+
}
|
2760
|
+
},
|
2761
|
+
mode: {
|
2762
|
+
primary: {
|
2763
|
+
[vars$1.barColor]: globalRefs$1.colors.primary.main
|
2764
|
+
},
|
2765
|
+
secondary: {
|
2766
|
+
[vars$1.barColor]: globalRefs$1.colors.secondary.main
|
2767
|
+
}
|
2768
|
+
},
|
2769
|
+
_hidden: {
|
2770
|
+
[vars$1.display]: 'none'
|
2357
2771
|
}
|
2772
|
+
};
|
2358
2773
|
|
2359
|
-
|
2360
|
-
margin: 0;
|
2361
|
-
padding: 0;
|
2362
|
-
}
|
2363
|
-
vaadin-text-field::part(input-field) {
|
2364
|
-
overflow: hidden;
|
2365
|
-
}
|
2366
|
-
vaadin-text-field[readonly] > input:placeholder-shown {
|
2367
|
-
opacity: 1;
|
2368
|
-
}
|
2774
|
+
const globalRefs = getThemeRefs(globals);
|
2369
2775
|
|
2370
|
-
|
2371
|
-
|
2372
|
-
|
2373
|
-
|
2374
|
-
|
2375
|
-
|
2376
|
-
|
2377
|
-
|
2378
|
-
|
2379
|
-
|
2380
|
-
|
2381
|
-
|
2382
|
-
|
2383
|
-
|
2384
|
-
|
2776
|
+
const vars = LoaderRadial.cssVarList;
|
2777
|
+
|
2778
|
+
const loaderRadial = {
|
2779
|
+
[vars.display]: 'inline-block',
|
2780
|
+
[vars.color]: globalRefs.colors.surface.contrast,
|
2781
|
+
[vars.animationDuration]: '2s',
|
2782
|
+
[vars.animationTimingFunction]: 'linear',
|
2783
|
+
[vars.animationIterationCount]: 'infinite',
|
2784
|
+
[vars.spinnerStyle]: 'solid',
|
2785
|
+
[vars.spinnerWidth]: '4px',
|
2786
|
+
[vars.spinnerRadius]: '50%',
|
2787
|
+
[vars.spinnerTopColor]: 'currentColor',
|
2788
|
+
[vars.spinnerBottomColor]: 'transparent',
|
2789
|
+
[vars.spinnerRightColor]: 'currentColor',
|
2790
|
+
[vars.spinnerLeftColor]: 'transparent',
|
2791
|
+
size: {
|
2792
|
+
xs: {
|
2793
|
+
[vars.width]: '20px',
|
2794
|
+
[vars.height]: '20px',
|
2795
|
+
[vars.spinnerWidth]: '2px'
|
2796
|
+
},
|
2797
|
+
sm: {
|
2798
|
+
[vars.width]: '30px',
|
2799
|
+
[vars.height]: '30px',
|
2800
|
+
[vars.spinnerWidth]: '3px'
|
2801
|
+
},
|
2802
|
+
md: {
|
2803
|
+
[vars.width]: '40px',
|
2804
|
+
[vars.height]: '40px',
|
2805
|
+
[vars.spinnerWidth]: '4px'
|
2806
|
+
},
|
2807
|
+
lg: {
|
2808
|
+
[vars.width]: '60px',
|
2809
|
+
[vars.height]: '60px',
|
2810
|
+
[vars.spinnerWidth]: '5px'
|
2811
|
+
},
|
2812
|
+
xl: {
|
2813
|
+
[vars.width]: '80px',
|
2814
|
+
[vars.height]: '80px',
|
2815
|
+
[vars.spinnerWidth]: '6px'
|
2816
|
+
}
|
2817
|
+
},
|
2818
|
+
mode: {
|
2819
|
+
primary: {
|
2820
|
+
[vars.color]: globalRefs.colors.primary.main
|
2821
|
+
},
|
2822
|
+
secondary: {
|
2823
|
+
[vars.color]: globalRefs.colors.secondary.main
|
2824
|
+
}
|
2825
|
+
},
|
2826
|
+
_hidden: {
|
2827
|
+
[vars.display]: 'none'
|
2385
2828
|
}
|
2386
|
-
`;
|
2387
|
-
|
2388
|
-
const passcode = {
|
2389
|
-
...textField(Passcode.cssVarList),
|
2390
2829
|
};
|
2391
2830
|
|
2392
2831
|
var components = {
|
@@ -2403,7 +2842,9 @@ var components = {
|
|
2403
2842
|
text,
|
2404
2843
|
link,
|
2405
2844
|
divider,
|
2406
|
-
passcode
|
2845
|
+
passcode,
|
2846
|
+
loaderRadial,
|
2847
|
+
loaderLinear
|
2407
2848
|
};
|
2408
2849
|
|
2409
2850
|
var index = { globals, components };
|