@eturnity/eturnity_reusable_components 7.12.2-EPDM-9012.1 → 7.12.2
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/components/infoText/index.vue +12 -1
- package/src/components/inputs/inputNumber/InputNumber.stories.js +3 -1
- package/src/components/inputs/inputNumber/index.vue +9 -1
- package/src/components/inputs/inputText/InputText.stories.js +1 -0
- package/src/components/inputs/inputText/index.vue +6 -0
- package/src/components/inputs/select/index.vue +5 -0
- package/src/components/inputs/switchField/index.vue +9 -0
- package/src/components/inputs/textAreaInput/TextAreaInput.stories.js +8 -0
- package/src/components/inputs/textAreaInput/index.vue +6 -0
- package/src/components/inputs/toggle/index.vue +11 -1
- package/src/components/label/index.vue +6 -0
- package/src/components/navigationTabs/index.vue +3 -0
- package/src/components/pageSubtitle/index.vue +8 -1
- package/src/components/pageTitle/index.vue +28 -29
package/package.json
CHANGED
@@ -10,6 +10,7 @@
|
|
10
10
|
</icon-img>
|
11
11
|
<text-overlay
|
12
12
|
v-if="showInfo"
|
13
|
+
:borderColor="borderColor"
|
13
14
|
:width="width"
|
14
15
|
:halfComputedTextInfoWidth="halfComputedTextInfoWidth"
|
15
16
|
:alignArrow="alignArrow"
|
@@ -26,6 +27,7 @@
|
|
26
27
|
//To use:
|
27
28
|
// <info-text
|
28
29
|
// text="Veritatis et quasi architecto beatae vitae"
|
30
|
+
// borderColor="#ccc"
|
29
31
|
// size="20"
|
30
32
|
// alignArrow="right" // which side the arrow should be on
|
31
33
|
// />
|
@@ -35,6 +37,7 @@ import icon from '../icon'
|
|
35
37
|
|
36
38
|
const textAttrs = {
|
37
39
|
iconSize: String,
|
40
|
+
borderColor: String,
|
38
41
|
alignArrow: String,
|
39
42
|
width: String,
|
40
43
|
halfComputedTextInfoWidth: Number
|
@@ -109,6 +112,10 @@ export default {
|
|
109
112
|
text: {
|
110
113
|
required: false
|
111
114
|
},
|
115
|
+
borderColor: {
|
116
|
+
required: false,
|
117
|
+
default: null
|
118
|
+
},
|
112
119
|
size: {
|
113
120
|
required: false,
|
114
121
|
default: '14px'
|
@@ -150,7 +157,11 @@ export default {
|
|
150
157
|
},
|
151
158
|
computed: {
|
152
159
|
iconColor() {
|
153
|
-
return
|
160
|
+
return this.isActive
|
161
|
+
? this.borderColor
|
162
|
+
? this.borderColor
|
163
|
+
: theme.colors.secondary
|
164
|
+
: theme.colors.mediumGray
|
154
165
|
},
|
155
166
|
halfComputedTextInfoWidth() {
|
156
167
|
return parseInt(this.width) / 2
|
@@ -32,6 +32,7 @@ const Template = (args, { argTypes }) => ({
|
|
32
32
|
// fontSize="13px"
|
33
33
|
// labelText="Number of Modules"
|
34
34
|
// labelInfoText="Here is some information for you..."
|
35
|
+
// labelInfoAlign="left"
|
35
36
|
// />
|
36
37
|
})
|
37
38
|
|
@@ -128,7 +129,8 @@ WithLabelInfo.args = {
|
|
128
129
|
textAlign: "left",
|
129
130
|
showLinearUnitName: false,
|
130
131
|
labelText: "Number Input",
|
131
|
-
labelInfoText: "Here is some information for you..."
|
132
|
+
labelInfoText: "Here is some information for you...",
|
133
|
+
labelInfoAlign: "right",
|
132
134
|
}
|
133
135
|
|
134
136
|
export const LargerFont = Template.bind({})
|
@@ -16,10 +16,13 @@
|
|
16
16
|
<label-text :labelFontColor="labelFontColor" :data-id="labelDataId">
|
17
17
|
{{ labelText }}
|
18
18
|
</label-text>
|
19
|
-
|
19
|
+
|
20
20
|
<info-text
|
21
21
|
v-if="labelInfoText"
|
22
22
|
:text="labelInfoText"
|
23
|
+
borderColor="#ccc"
|
24
|
+
size="14px"
|
25
|
+
:alignArrow="labelInfoAlign"
|
23
26
|
/>
|
24
27
|
</label-wrapper>
|
25
28
|
<input-wrapper>
|
@@ -94,6 +97,7 @@
|
|
94
97
|
// fontSize="13px"
|
95
98
|
// labelText="Number of Modules"
|
96
99
|
// labelInfoText="Here is some information for you..."
|
100
|
+
// labelInfoAlign="left"
|
97
101
|
// :minNumber="0"
|
98
102
|
// fontColor="blue"
|
99
103
|
// />
|
@@ -402,6 +406,10 @@ export default {
|
|
402
406
|
required: false,
|
403
407
|
default: null
|
404
408
|
},
|
409
|
+
labelInfoAlign: {
|
410
|
+
required: false,
|
411
|
+
default: 'left'
|
412
|
+
},
|
405
413
|
defaultNumber: {
|
406
414
|
required: false,
|
407
415
|
default: null
|
@@ -21,6 +21,7 @@ const Template = (args, { argTypes }) => ({
|
|
21
21
|
// @input-change="onInputChange({ value: $event, type: 'companyName' })"
|
22
22
|
// :isError="checkErrors()"
|
23
23
|
// :errorMessage="This is my error message"
|
24
|
+
// infoTextAlign="right" // left by default
|
24
25
|
// infoTextMessage="My info message"
|
25
26
|
// label="Question 5"
|
26
27
|
// alignItems="horizontal" // horizontal, vertical
|
@@ -17,7 +17,9 @@
|
|
17
17
|
<info-text
|
18
18
|
v-if="infoTextMessage"
|
19
19
|
:text="infoTextMessage"
|
20
|
+
borderColor="#ccc"
|
20
21
|
:size="fontSize ? fontSize : '16px'"
|
22
|
+
:alignArrow="infoTextAlign"
|
21
23
|
/>
|
22
24
|
</label-wrapper>
|
23
25
|
<input-error-wrapper>
|
@@ -205,6 +207,7 @@ export default {
|
|
205
207
|
// @input-blur="onInputBlur($event)"
|
206
208
|
// :isError="checkErrors()"
|
207
209
|
// :errorMessage="This is my error message"
|
210
|
+
// infoTextAlign="right" // left by default
|
208
211
|
// infoTextMessage="My info message"
|
209
212
|
// label="Question 5"
|
210
213
|
// alignItems="horizontal" // horizontal, vertical
|
@@ -268,6 +271,9 @@ export default {
|
|
268
271
|
infoTextMessage: {
|
269
272
|
required: false
|
270
273
|
},
|
274
|
+
infoTextAlign: {
|
275
|
+
required: false
|
276
|
+
},
|
271
277
|
label: {
|
272
278
|
required: false
|
273
279
|
},
|
@@ -22,7 +22,9 @@
|
|
22
22
|
<info-text
|
23
23
|
v-if="infoTextMessage"
|
24
24
|
:text="infoTextMessage"
|
25
|
+
borderColor="#ccc"
|
25
26
|
:size="infoTextSize"
|
27
|
+
:alignText="infoTextAlign"
|
26
28
|
/>
|
27
29
|
</label-wrapper>
|
28
30
|
<select-button-wrapper :disabled="disabled">
|
@@ -325,6 +327,9 @@ export default {
|
|
325
327
|
infoTextMessage: {
|
326
328
|
required: false
|
327
329
|
},
|
330
|
+
infoTextAlign: {
|
331
|
+
required: false
|
332
|
+
},
|
328
333
|
selectWidth: {
|
329
334
|
type: String,
|
330
335
|
required: false,
|
@@ -17,6 +17,9 @@
|
|
17
17
|
<info-text
|
18
18
|
v-if="infoTextMessage"
|
19
19
|
:text="infoTextMessage"
|
20
|
+
borderColor="#ccc"
|
21
|
+
size="14px"
|
22
|
+
:alignText="infoTextAlign"
|
20
23
|
/>
|
21
24
|
</label-container>
|
22
25
|
|
@@ -48,6 +51,9 @@
|
|
48
51
|
@click.native.stop
|
49
52
|
v-if="infoTextMessage"
|
50
53
|
:text="infoTextMessage"
|
54
|
+
borderColor="#ccc"
|
55
|
+
size="14px"
|
56
|
+
:alignText="infoTextAlign"
|
51
57
|
/>
|
52
58
|
</label-container>
|
53
59
|
</flex-wrapper>
|
@@ -201,6 +207,9 @@ export default {
|
|
201
207
|
infoTextMessage: {
|
202
208
|
required: false
|
203
209
|
},
|
210
|
+
infoTextAlign: {
|
211
|
+
required: false
|
212
|
+
},
|
204
213
|
colorMode: {
|
205
214
|
required: false,
|
206
215
|
default: 'light'
|
@@ -22,6 +22,7 @@ const Template = (args, { argTypes }) => ({
|
|
22
22
|
// rowHeight="4" //optional
|
23
23
|
// :isError="false"
|
24
24
|
// :errorText="$gettext('field_required')"
|
25
|
+
// infoTextAlign="right" // left by default
|
25
26
|
// infoTextMessage="My info message"
|
26
27
|
// label="Question 5"
|
27
28
|
// alignItems="horizontal" // horizontal, vertical
|
@@ -36,6 +37,7 @@ Default.args = {
|
|
36
37
|
rowHeight: "2",
|
37
38
|
isError: false,
|
38
39
|
errorText: "This field is required",
|
40
|
+
infoTextAlign: "right",
|
39
41
|
infoTextMessage: "",
|
40
42
|
label: "",
|
41
43
|
value: "",
|
@@ -50,6 +52,7 @@ Disabled.args = {
|
|
50
52
|
rowHeight: "2",
|
51
53
|
isError: false,
|
52
54
|
errorText: "This field is required",
|
55
|
+
infoTextAlign: "right",
|
53
56
|
infoTextMessage: "",
|
54
57
|
label: "",
|
55
58
|
value: "",
|
@@ -64,6 +67,7 @@ Error.args = {
|
|
64
67
|
rowHeight: "2",
|
65
68
|
isError: true,
|
66
69
|
errorText: "This field is required",
|
70
|
+
infoTextAlign: "right",
|
67
71
|
infoTextMessage: "",
|
68
72
|
label: "",
|
69
73
|
value: "",
|
@@ -78,6 +82,7 @@ WithLabel.args = {
|
|
78
82
|
rowHeight: "2",
|
79
83
|
isError: false,
|
80
84
|
errorText: "This field is required",
|
85
|
+
infoTextAlign: "right",
|
81
86
|
infoTextMessage: "Here is some information",
|
82
87
|
label: "Description",
|
83
88
|
value: "Here is my description!",
|
@@ -92,6 +97,7 @@ HorizontalLabel.args = {
|
|
92
97
|
rowHeight: "2",
|
93
98
|
isError: false,
|
94
99
|
errorText: "This field is required",
|
100
|
+
infoTextAlign: "right",
|
95
101
|
infoTextMessage: "Here is some information",
|
96
102
|
label: "Description",
|
97
103
|
value: "Here is my description!",
|
@@ -106,6 +112,7 @@ LargerTextArea.args = {
|
|
106
112
|
rowHeight: "5",
|
107
113
|
isError: false,
|
108
114
|
errorText: "This field is required",
|
115
|
+
infoTextAlign: "right",
|
109
116
|
infoTextMessage: "Here is some information",
|
110
117
|
label: "Description",
|
111
118
|
value: "Here is my description!",
|
@@ -120,6 +127,7 @@ LargerFontSize.args = {
|
|
120
127
|
fontSize: "24px",
|
121
128
|
isError: false,
|
122
129
|
errorText: "This field is required",
|
130
|
+
infoTextAlign: "right",
|
123
131
|
infoTextMessage: "Here is some information",
|
124
132
|
label: "Description",
|
125
133
|
value: "Here is my description!",
|
@@ -11,7 +11,9 @@
|
|
11
11
|
<info-text
|
12
12
|
v-if="infoTextMessage"
|
13
13
|
:text="infoTextMessage"
|
14
|
+
borderColor="#ccc"
|
14
15
|
size="16px"
|
16
|
+
:alignText="infoTextAlign"
|
15
17
|
/>
|
16
18
|
</label-wrapper>
|
17
19
|
<input-container
|
@@ -45,6 +47,7 @@
|
|
45
47
|
// rowHeight="4" //optional
|
46
48
|
// :isError="false"
|
47
49
|
// :errorText="$gettext('field_required')"
|
50
|
+
// infoTextAlign="right" // left by default
|
48
51
|
// infoTextMessage="My info message"
|
49
52
|
// label="Question 5"
|
50
53
|
// alignItems="horizontal" // horizontal, vertical
|
@@ -164,6 +167,9 @@ export default {
|
|
164
167
|
infoTextMessage: {
|
165
168
|
required: false
|
166
169
|
},
|
170
|
+
infoTextAlign: {
|
171
|
+
required: false
|
172
|
+
},
|
167
173
|
label: {
|
168
174
|
required: false
|
169
175
|
},
|
@@ -14,6 +14,9 @@
|
|
14
14
|
<info-text
|
15
15
|
v-if="infoTextMessage"
|
16
16
|
:text="infoTextMessage"
|
17
|
+
borderColor="#ccc"
|
18
|
+
size="14px"
|
19
|
+
:alignText="infoTextAlign"
|
17
20
|
/>
|
18
21
|
</label-container>
|
19
22
|
<toggle-wrapper
|
@@ -47,6 +50,9 @@
|
|
47
50
|
@click.native.stop
|
48
51
|
v-if="infoTextMessage"
|
49
52
|
:text="infoTextMessage"
|
53
|
+
borderColor="#ccc"
|
54
|
+
size="14px"
|
55
|
+
:alignText="infoTextAlign"
|
50
56
|
/>
|
51
57
|
</label-container>
|
52
58
|
</flex-wrapper>
|
@@ -66,6 +72,7 @@
|
|
66
72
|
// labelAlign="right"
|
67
73
|
// fontColor="black"
|
68
74
|
// :disabled="true"
|
75
|
+
// infoTextAlign="right" // left by default
|
69
76
|
// infoTextMessage="My info message"
|
70
77
|
// data-id="test_data_id"
|
71
78
|
// />
|
@@ -186,7 +193,7 @@ const ToggleDot = styled('span', toggleProps)`
|
|
186
193
|
: props.size === 'small'
|
187
194
|
? '10px'
|
188
195
|
: '14px'};
|
189
|
-
left: 3px
|
196
|
+
left: 3px
|
190
197
|
bottom: ${(props) =>
|
191
198
|
props.size === 'medium' ? '5px' : props.size === 'small' ? '2px' : '5px'};
|
192
199
|
background-color: ${(props) =>
|
@@ -271,6 +278,9 @@ export default {
|
|
271
278
|
infoTextMessage: {
|
272
279
|
required: false
|
273
280
|
},
|
281
|
+
infoTextAlign: {
|
282
|
+
required: false
|
283
|
+
},
|
274
284
|
dataId: {
|
275
285
|
type: String,
|
276
286
|
default: ''
|
@@ -13,7 +13,9 @@
|
|
13
13
|
<info-text
|
14
14
|
v-if="infoTextMessage"
|
15
15
|
:text="infoTextMessage"
|
16
|
+
borderColor="#ccc"
|
16
17
|
:size="fontSize ? fontSize : '16px'"
|
18
|
+
:alignArrow="infoTextAlign"
|
17
19
|
/>
|
18
20
|
</label-wrapper>
|
19
21
|
</template>
|
@@ -58,6 +60,7 @@ export default {
|
|
58
60
|
// import labelText from "@eturnity/eturnity_reusable_components/src/components/label"
|
59
61
|
// To use:
|
60
62
|
// <label-text
|
63
|
+
// infoTextAlign="right" // left by default
|
61
64
|
// infoTextMessage="My info message"
|
62
65
|
// label="Question 5"
|
63
66
|
// />
|
@@ -77,6 +80,9 @@ export default {
|
|
77
80
|
infoTextMessage: {
|
78
81
|
required: false
|
79
82
|
},
|
83
|
+
infoTextAlign: {
|
84
|
+
required: false
|
85
|
+
},
|
80
86
|
labelOptional: {
|
81
87
|
required: false,
|
82
88
|
default: false
|
@@ -4,8 +4,11 @@
|
|
4
4
|
{{ text }}
|
5
5
|
</span>
|
6
6
|
<info-text
|
7
|
-
v-if="!!infoText"
|
8
7
|
:text="infoText"
|
8
|
+
v-if="!!infoText"
|
9
|
+
size="14px"
|
10
|
+
borderColor="#ccc"
|
11
|
+
:alignText="alignInfoText"
|
9
12
|
/>
|
10
13
|
</subtitle-text>
|
11
14
|
</template>
|
@@ -52,6 +55,10 @@ export default {
|
|
52
55
|
required: false,
|
53
56
|
default: null,
|
54
57
|
},
|
58
|
+
alignInfoText: {
|
59
|
+
required: false,
|
60
|
+
default: "left",
|
61
|
+
},
|
55
62
|
marginBottom: {
|
56
63
|
required: false,
|
57
64
|
default: "30px",
|
@@ -1,13 +1,14 @@
|
|
1
1
|
<template>
|
2
|
-
<
|
3
|
-
<title-text :color="color" :fontSize="fontSize" :uppercase="uppercase">
|
4
|
-
{{ text }}
|
5
|
-
</title-text>
|
2
|
+
<flex>
|
3
|
+
<title-text :color="color" :fontSize="fontSize" :uppercase="uppercase">{{ text }}</title-text>
|
6
4
|
<info-text
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
5
|
+
v-if="infoText"
|
6
|
+
:text="infoText"
|
7
|
+
borderColor="#ccc"
|
8
|
+
size="14px"
|
9
|
+
:alignArrow="infoAlign"
|
10
|
+
/>
|
11
|
+
</flex>
|
11
12
|
</template>
|
12
13
|
|
13
14
|
<script>
|
@@ -18,41 +19,33 @@
|
|
18
19
|
// color="red"
|
19
20
|
// />
|
20
21
|
import styled from "vue-styled-components"
|
21
|
-
import InfoText from
|
22
|
-
|
23
|
-
const
|
24
|
-
const TitleWrap = styled("div", wrapAttrs)`
|
25
|
-
display: grid;
|
26
|
-
align-items: center;
|
27
|
-
grid-gap: 12px;
|
28
|
-
grid-template-columns: ${(props) =>
|
29
|
-
props.hasInfoText ? "auto auto 1fr" : "1fr"};
|
30
|
-
margin-bottom: 20px;
|
31
|
-
`
|
32
|
-
|
33
|
-
const titleAttrs = { color: String, fontSize: String, uppercase: Boolean }
|
34
|
-
const TitleText = styled('span', titleAttrs)`
|
22
|
+
import InfoText from '../infoText'
|
23
|
+
const textAttrs = { color: String, fontSize: String, uppercase: Boolean }
|
24
|
+
const TitleText = styled("div", textAttrs)`
|
35
25
|
color: ${(props) => (props.color ? props.color : props.theme.colors.black)};
|
36
26
|
font-weight: bold;
|
37
27
|
font-size: ${(props) => (props.fontSize ? props.fontSize : '16px')};
|
38
28
|
text-transform: ${(props) => (props.uppercase ? 'uppercase' : 'none')};
|
29
|
+
|
30
|
+
`
|
31
|
+
const flex = styled("div", textAttrs)`
|
32
|
+
display: flex;
|
33
|
+
gap:10px;
|
34
|
+
margin-bottom: 20px;
|
35
|
+
align-items: center;
|
39
36
|
`
|
40
37
|
|
41
38
|
export default {
|
42
39
|
name: "page-title",
|
43
40
|
components: {
|
44
41
|
TitleText,
|
45
|
-
|
46
|
-
|
42
|
+
InfoText,
|
43
|
+
flex
|
47
44
|
},
|
48
45
|
props: {
|
49
46
|
text: {
|
50
47
|
required: true,
|
51
48
|
},
|
52
|
-
infoText: {
|
53
|
-
required: false,
|
54
|
-
default: null,
|
55
|
-
},
|
56
49
|
color: {
|
57
50
|
required: false,
|
58
51
|
},
|
@@ -63,7 +56,13 @@ export default {
|
|
63
56
|
uppercase: {
|
64
57
|
required: false,
|
65
58
|
default: true
|
66
|
-
}
|
59
|
+
},
|
60
|
+
infoText: {
|
61
|
+
required: false,
|
62
|
+
},
|
63
|
+
infoAlign: {
|
64
|
+
required: false,
|
65
|
+
},
|
67
66
|
},
|
68
67
|
}
|
69
68
|
</script>
|