@eturnity/eturnity_reusable_components 6.46.5-EPDM-8891.1 → 6.46.5-EPDM-8599.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
package/src/App.vue
CHANGED
@@ -114,6 +114,7 @@ import iconCollection from '@/components/icon/iconCollection'
|
|
114
114
|
import dropdownComponent from '@/components/dropdown'
|
115
115
|
import videoThumbnail from '@/components/videoThumbnail'
|
116
116
|
import icon from '@/components/icon'
|
117
|
+
import infoCard from '@/components/infoCard'
|
117
118
|
// import TableDropdown from "@/components/tableDropdown"
|
118
119
|
|
119
120
|
const PageContainer = styled.div`
|
@@ -138,7 +139,8 @@ export default {
|
|
138
139
|
iconCollection,
|
139
140
|
dropdownComponent,
|
140
141
|
videoThumbnail,
|
141
|
-
icon
|
142
|
+
icon,
|
143
|
+
infoCard
|
142
144
|
},
|
143
145
|
data() {
|
144
146
|
return {
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<template>
|
2
|
+
<info-container>
|
3
|
+
<icon name="info" size="24px" />
|
4
|
+
<InfoTextContainer>
|
5
|
+
<slot />
|
6
|
+
</InfoTextContainer>
|
7
|
+
</info-container>
|
8
|
+
</template>
|
9
|
+
|
10
|
+
<script>
|
11
|
+
import styled from 'vue-styled-components'
|
12
|
+
import icon from '../icon'
|
13
|
+
const InfoContainer = styled('div')`
|
14
|
+
display: flex;
|
15
|
+
align-items: flex-start;
|
16
|
+
gap: 15px;
|
17
|
+
padding: 20px;
|
18
|
+
width: 500px;
|
19
|
+
min-width: 450px;
|
20
|
+
border: 1px dashed #dee2eb;
|
21
|
+
border-radius: 4px;
|
22
|
+
margin:20px 0;
|
23
|
+
`
|
24
|
+
|
25
|
+
const InfoTextContainer = styled('div')`
|
26
|
+
font-size: 13px;
|
27
|
+
`
|
28
|
+
|
29
|
+
|
30
|
+
export default {
|
31
|
+
components:{
|
32
|
+
icon,
|
33
|
+
InfoTextContainer,
|
34
|
+
InfoContainer
|
35
|
+
},
|
36
|
+
props:[]
|
37
|
+
}
|
38
|
+
</script>
|
@@ -408,7 +408,7 @@ export default {
|
|
408
408
|
isActive: false,
|
409
409
|
textSearch: '',
|
410
410
|
hoveredIndex: 0,
|
411
|
-
hoveredValue:
|
411
|
+
hoveredValue:null,
|
412
412
|
isClickOutsideActive: false
|
413
413
|
}
|
414
414
|
},
|
@@ -447,7 +447,7 @@ export default {
|
|
447
447
|
this.$emit('input-change', e)
|
448
448
|
},
|
449
449
|
optionHovered(e) {
|
450
|
-
this.hoveredValue
|
450
|
+
this.hoveredValue=e
|
451
451
|
},
|
452
452
|
mouseEnterHandler() {
|
453
453
|
if (this.hoverDropdown) {
|
@@ -502,16 +502,14 @@ export default {
|
|
502
502
|
},
|
503
503
|
onArrowPress(dir) {
|
504
504
|
let newHoveredElem
|
505
|
-
const currentHoveredElem
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
newHoveredElem
|
511
|
-
} else {
|
512
|
-
newHoveredElem = currentHoveredElem.previousElementSibling
|
505
|
+
const currentHoveredElem=this.$refs.dropdown.$el.querySelector(`[data-value="${this.hoveredValue}"]`);
|
506
|
+
if(currentHoveredElem){
|
507
|
+
if(dir>0){
|
508
|
+
newHoveredElem=currentHoveredElem.nextElementSibling
|
509
|
+
}else{
|
510
|
+
newHoveredElem=currentHoveredElem.previousElementSibling
|
513
511
|
}
|
514
|
-
if
|
512
|
+
if(newHoveredElem){
|
515
513
|
this.hoveredValue = newHoveredElem.getAttribute('data-value')
|
516
514
|
const topPos = newHoveredElem.offsetTop
|
517
515
|
this.$refs.dropdown.$el.scrollTop = topPos
|
@@ -522,20 +520,12 @@ export default {
|
|
522
520
|
computed: {
|
523
521
|
optionLength() {
|
524
522
|
if (this.isDropdownOpen) {
|
525
|
-
|
526
|
-
const filterRef =
|
527
|
-
this.$refs.dropdown.$children &&
|
528
|
-
this.$refs.dropdown.$children.length &&
|
529
|
-
this.$refs.dropdown.$children[0].$children
|
530
|
-
? this.$refs.dropdown.$children[0].$children
|
531
|
-
: this.$refs.dropdown.$children
|
532
|
-
return filterRef.length
|
523
|
+
return this.$refs.dropdown.$children.length
|
533
524
|
} else {
|
534
525
|
return 0
|
535
526
|
}
|
536
527
|
},
|
537
528
|
isSearchBarVisible() {
|
538
|
-
console.log('this.optionLength', this.optionLength)
|
539
529
|
return this.isSearchable && this.optionLength >= 5 && this.isDropdownOpen
|
540
530
|
}
|
541
531
|
},
|
@@ -10,6 +10,8 @@
|
|
10
10
|
v-if="label && labelAlign === 'left'"
|
11
11
|
:hasInfoMessage="!!infoTextMessage"
|
12
12
|
:colorMode="colorMode"
|
13
|
+
:primaryColor="primaryColor"
|
14
|
+
:secondaryColor="secondaryColor"
|
13
15
|
>
|
14
16
|
<label-text :size="size">{{ label }}</label-text>
|
15
17
|
<info-text
|
@@ -99,10 +101,12 @@ const toggleAttrs = {
|
|
99
101
|
fontColor: String,
|
100
102
|
disabled: Boolean,
|
101
103
|
backgroundColor: String,
|
102
|
-
isChecked: Boolean
|
104
|
+
isChecked: Boolean,
|
105
|
+
secondaryColor: String,
|
106
|
+
primaryColor: String,
|
103
107
|
}
|
104
108
|
const LabelText = styled('div', toggleAttrs)`
|
105
|
-
color:
|
109
|
+
color: ${(props) => props.primaryColor };
|
106
110
|
font-size: 13px;
|
107
111
|
font-weight: 700;
|
108
112
|
`
|