@eturnity/eturnity_reusable_components 6.42.1 → 6.42.2-EPDM-6921.0
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 +1 -1
- package/src/App.vue +101 -99
- package/src/components/inputs/select/index.vue +22 -10
package/package.json
CHANGED
package/src/App.vue
CHANGED
@@ -1,107 +1,109 @@
|
|
1
1
|
<template>
|
2
2
|
<ThemeProvider :theme="getTheme()" :style="{ height: '100%' }">
|
3
3
|
<page-container>
|
4
|
-
<br />
|
5
4
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
5
|
+
<br/>
|
6
|
+
<input-number
|
7
|
+
:value="value"
|
8
|
+
:minNumber="0"
|
9
|
+
unitName="mm"
|
10
|
+
:numberPrecision="0"
|
11
|
+
backgroundColor="transparent"
|
12
|
+
borderColor="eturnityGrey"
|
13
|
+
inputHeight="34px"
|
14
|
+
inputWidth="420px"
|
15
|
+
textAlign="left"
|
16
|
+
:isInteractive="true"
|
17
|
+
:interactionStep="1"
|
18
|
+
@on-input="value = $event"
|
19
|
+
@input-change="changeHandler"
|
20
|
+
@input-focus="focusHandler"
|
21
|
+
@input-blur="blurHandler"
|
22
|
+
>
|
23
|
+
<template v-slot:label>
|
24
|
+
<div>Interactive Label</div>
|
25
|
+
</template>
|
26
|
+
</input-number>
|
27
|
+
|
28
|
+
<dropdown-component openingMode="hover" gap="30px">
|
29
|
+
<template #trigger><i>Click Me</i></template>
|
30
|
+
<template #dropdown>
|
31
|
+
<div>
|
32
|
+
<a href="">test1</a>
|
33
|
+
<button href="">test2</button>
|
34
|
+
<br>
|
35
|
+
<p>Text</p>
|
36
|
+
</div>
|
37
|
+
</template>
|
38
|
+
</dropdown-component>
|
39
|
+
|
40
|
+
<videoThumbnail
|
41
|
+
src="https://musicart.xboxlive.com/6/cfaf1e9d-0000-0000-0000-000000000009/504/image.jpg?w=1920&h=1080"
|
42
|
+
playIconColor="red"
|
43
|
+
playIconSize="20px"
|
44
|
+
width="400px"
|
45
|
+
height="600px"
|
46
|
+
/>
|
46
47
|
|
47
|
-
|
48
|
-
|
49
|
-
|
48
|
+
<SwitchField
|
49
|
+
@on-switch-change="onInputChange($event)"
|
50
|
+
:options="[
|
50
51
|
{ value: 0, content: 'zero' },
|
51
52
|
{ value: 1, content: 'one' },
|
52
53
|
{ value: 2, content: 'two' }
|
53
54
|
]"
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
55
|
+
:value="value"
|
56
|
+
label="label"
|
57
|
+
toggleColor="red"
|
58
|
+
size="large"
|
59
|
+
backgroundColor="blue"
|
60
|
+
labelAlign="left"
|
61
|
+
fontColor="black"
|
62
|
+
:disabled="false"
|
63
|
+
/>
|
64
|
+
<icon
|
65
|
+
name="opacity"
|
66
|
+
color="red"
|
67
|
+
hoveredColor="blue"
|
68
|
+
size="60px"
|
69
|
+
cursor="default"
|
70
|
+
isStriked="true"
|
71
|
+
/>
|
72
|
+
<Select
|
73
|
+
:value="value"
|
74
|
+
selectWidth="100%"
|
75
|
+
optionWidth="50%"
|
76
|
+
label="that is a label"
|
77
|
+
alignItems="vertical"
|
78
|
+
colorMode="dark"
|
79
|
+
isSearchable="true"
|
80
|
+
@input-change="value = $event"
|
81
|
+
@search-change="searchValue = $event"
|
82
|
+
>
|
83
|
+
<template #selector="{ selectedValue }">
|
84
|
+
value selected: {{ selectedValue }}
|
85
|
+
</template>
|
86
|
+
<template #dropdown>
|
87
|
+
<Option
|
88
|
+
v-for="opt in filteredOptionList"
|
89
|
+
:key="opt.id"
|
90
|
+
:value="opt.val"
|
91
|
+
>{{ opt.lookFor }}
|
92
|
+
</Option
|
81
93
|
>
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
:value="opt.val"
|
90
|
-
>{{ opt.lookFor }}</Option
|
91
|
-
>
|
92
|
-
</template>
|
93
|
-
</Select>
|
94
|
-
|
95
|
-
|
96
|
-
{{ filteredOptionList }}
|
97
|
-
|
98
|
-
<iconCollection color="red" />
|
94
|
+
</template>
|
95
|
+
</Select>
|
96
|
+
|
97
|
+
|
98
|
+
{{ filteredOptionList }}
|
99
|
+
|
100
|
+
<iconCollection color="red"/>
|
99
101
|
</page-container>
|
100
102
|
</ThemeProvider>
|
101
103
|
</template>
|
102
104
|
|
103
105
|
<script>
|
104
|
-
import {
|
106
|
+
import {ThemeProvider} from 'vue-styled-components'
|
105
107
|
import theme from './assets/theme'
|
106
108
|
import styled from 'vue-styled-components'
|
107
109
|
import InputNumber from '@/components/inputs/inputNumber'
|
@@ -144,14 +146,14 @@ export default {
|
|
144
146
|
value2: 42,
|
145
147
|
companyName: 'toto',
|
146
148
|
optionList: [
|
147
|
-
{
|
148
|
-
{
|
149
|
-
{
|
150
|
-
{
|
151
|
-
{
|
152
|
-
{
|
153
|
-
{
|
154
|
-
{
|
149
|
+
{id: 'a', val: 'A', lookFor: 'babababa'},
|
150
|
+
{id: 'b', val: 'B', lookFor: 'abab'},
|
151
|
+
{id: 'c', val: 'C', lookFor: 'ccc'},
|
152
|
+
{id: 'd', val: 'D', lookFor: 'ddd'},
|
153
|
+
{id: 'e', val: 'E', lookFor: 'dddee'},
|
154
|
+
{id: 'f', val: 'F', lookFor: 'ddfff'},
|
155
|
+
{id: 'g', val: 'G', lookFor: 'dggg'},
|
156
|
+
{id: 'h', val: 'H', lookFor: 'dddhhh'},
|
155
157
|
],
|
156
158
|
searchValue: ''
|
157
159
|
}
|
@@ -159,7 +161,7 @@ export default {
|
|
159
161
|
computed: {
|
160
162
|
filteredOptionList() {
|
161
163
|
return this.optionList.filter((opt) =>
|
162
|
-
|
164
|
+
opt.lookFor.includes(this.searchValue)
|
163
165
|
)
|
164
166
|
}
|
165
167
|
},
|
@@ -222,7 +224,7 @@ export default {
|
|
222
224
|
]
|
223
225
|
return items
|
224
226
|
},
|
225
|
-
getComponentInfo({
|
227
|
+
getComponentInfo({row, value}) {
|
226
228
|
let item
|
227
229
|
if (row.selectedValue && row.selectedValue[value]) {
|
228
230
|
item = row.selectedValue[value]
|
@@ -14,9 +14,11 @@
|
|
14
14
|
labelFontColor || colorMode == 'dark' ? 'white' : 'eturnityGrey'
|
15
15
|
"
|
16
16
|
:fontSize="fontSize"
|
17
|
-
>{{ label }}
|
18
|
-
|
19
|
-
|
17
|
+
>{{ label }}
|
18
|
+
<optionalLabel v-if="labelOptional">
|
19
|
+
({{ $gettext('Optional') }})</optionalLabel
|
20
|
+
>
|
21
|
+
</input-label>
|
20
22
|
<info-text
|
21
23
|
v-if="infoTextMessage"
|
22
24
|
:text="infoTextMessage"
|
@@ -30,6 +32,8 @@
|
|
30
32
|
ref="select"
|
31
33
|
@click="toggleDropdown"
|
32
34
|
:selectHeight="selectHeight"
|
35
|
+
:height="height"
|
36
|
+
:selectMinHeight="selectMinHeight"
|
33
37
|
:bgColor="
|
34
38
|
buttonBgColor || colorMode == 'dark' ? 'transparentBlack1' : 'white'
|
35
39
|
"
|
@@ -140,9 +144,7 @@ const Caret = styled.div`
|
|
140
144
|
justify-content: center;
|
141
145
|
width: 30px;
|
142
146
|
min-width: 30px;
|
143
|
-
|
144
|
-
align-items: stretch
|
145
|
-
padding-top: 5px;
|
147
|
+
padding-top: 3px;
|
146
148
|
cursor: pointer;
|
147
149
|
margin-left: auto;
|
148
150
|
`
|
@@ -162,7 +164,6 @@ const InputLabel = styled('div', labelAttrs)`
|
|
162
164
|
`
|
163
165
|
const optionalLabel = styled.span`
|
164
166
|
font-weight: 300;
|
165
|
-
|
166
167
|
`
|
167
168
|
const inputProps = { selectWidth: String, optionWidth: String }
|
168
169
|
const Container = styled('div', inputProps)`
|
@@ -191,6 +192,8 @@ const selectButtonAttrs = {
|
|
191
192
|
hasError: Boolean,
|
192
193
|
disabled: Boolean,
|
193
194
|
selectHeight: String,
|
195
|
+
height: String,
|
196
|
+
selectMinHeight: String,
|
194
197
|
isSearchBarVisible: Boolean,
|
195
198
|
showBorder: Boolean
|
196
199
|
}
|
@@ -198,14 +201,14 @@ const selectButton = styled('div', selectButtonAttrs)`
|
|
198
201
|
position: relative;
|
199
202
|
box-sizing: border-box;
|
200
203
|
border-radius: 4px;
|
201
|
-
padding: ${(props) =>
|
202
|
-
props.isSearchBarVisible ? '0' : '0px 0px 0 15px'};
|
204
|
+
padding: ${(props) => (props.isSearchBarVisible ? '0' : '0px 0px 0 15px')};
|
203
205
|
text-align: left;
|
204
206
|
border-radius: 4px;
|
205
|
-
min-height:
|
207
|
+
min-height: ${(props) => props.selectMinHeight};
|
206
208
|
display: flex;
|
207
209
|
align-items: center;
|
208
210
|
max-height: ${(props) => props.selectHeight};
|
211
|
+
${(props) => (props.height ? `height: ${props.height}` : '')};
|
209
212
|
${({ showBorder, theme, hasError }) =>
|
210
213
|
showBorder &&
|
211
214
|
`
|
@@ -303,9 +306,18 @@ export default {
|
|
303
306
|
default: null
|
304
307
|
},
|
305
308
|
selectHeight: {
|
309
|
+
type: String,
|
310
|
+
required: false,
|
311
|
+
default: null
|
312
|
+
},
|
313
|
+
height: {
|
306
314
|
required: false,
|
307
315
|
default: null
|
308
316
|
},
|
317
|
+
selectMinHeight: {
|
318
|
+
required: false,
|
319
|
+
default: '36px'
|
320
|
+
},
|
309
321
|
optionWidth: {
|
310
322
|
required: false,
|
311
323
|
default: null
|