@dcrackel/hematournamentui 1.0.21 → 1.0.23
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/.eslintrc.js +18 -18
- package/.gitattributes +2 -2
- package/.prettierignore +1 -1
- package/.storybook/main.js +18 -18
- package/.storybook/mockRoutes.js +9 -9
- package/.storybook/preview-head.html +3 -3
- package/.storybook/preview.js +17 -17
- package/LICENSE +21 -21
- package/README.md +83 -83
- package/dist/HemaTouranmentUI-lib.es.js +7060 -6916
- package/dist/HemaTouranmentUI-lib.umd.js +27 -27
- package/dist/style.css +1 -1
- package/index.html +12 -12
- package/package.json +58 -56
- package/postcss.config.js +6 -6
- package/prettier.config.js +10 -10
- package/src/index.js +25 -25
- package/src/main.js +2 -2
- package/src/mocks/fileMock.js +1 -1
- package/src/mocks/tournamentMock.js +34 -34
- package/src/stories/Atoms/Icon/BaseIcon.stories.js +54 -54
- package/src/stories/Atoms/Icon/BaseIcon.test.js +91 -0
- package/src/stories/Atoms/Icon/BaseIcon.vue +48 -47
- package/src/stories/Atoms/Input/BaseInput.stories.js +29 -28
- package/src/stories/Atoms/Input/BaseInput.test.js +87 -87
- package/src/stories/Atoms/Input/BaseInput.vue +85 -73
- package/src/stories/Atoms/RadioGroup/BaseRadioGroup.stories.js +31 -31
- package/src/stories/Atoms/RadioGroup/BaseRadioGroup.test.js +49 -0
- package/src/stories/Atoms/RadioGroup/BaseRadioGroup.vue +49 -49
- package/src/stories/Atoms/Tag/BaseTag.stories.js +29 -29
- package/src/stories/Atoms/Tag/BaseTag.test.js +42 -42
- package/src/stories/Atoms/Tag/BaseTag.vue +57 -57
- package/src/stories/Atoms/Text/BaseText.stories.js +77 -77
- package/src/stories/Atoms/Text/BaseText.test.js +172 -172
- package/src/stories/Atoms/Text/BaseText.vue +170 -170
- package/src/stories/Configure.mdx +320 -320
- package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.stories.js +41 -41
- package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.test.js +80 -0
- package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.vue +31 -31
- package/src/stories/Molecules/Button/BaseButton.stories.js +93 -76
- package/src/stories/Molecules/Button/BaseButton.test.js +147 -147
- package/src/stories/Molecules/Button/BaseButton.vue +116 -125
- package/src/stories/Molecules/Cards/Detail/TournamentCardDetail.stories.js +33 -33
- package/src/stories/Molecules/Cards/Detail/TournamentCardDetail.vue +38 -38
- package/src/stories/Molecules/Cards/Header/TournamentCardHeader.stories.js +48 -48
- package/src/stories/Molecules/Cards/Header/TournamentCardHeader.vue +40 -40
- package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.stories.js +36 -36
- package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.vue +49 -49
- package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.stories.js +32 -32
- package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.vue +46 -46
- package/src/stories/Organisms/AddressAutocomplete/AddressAutocomplete.stories.js +25 -25
- package/src/stories/Organisms/AddressAutocomplete/AddressAutocomplete.vue +51 -51
- package/src/stories/Organisms/DatePicker/DatePicker.stories.js +25 -25
- package/src/stories/Organisms/DatePicker/DatePicker.vue +62 -62
- package/src/stories/Organisms/DropDown/DropDownMenu.stories.js +34 -34
- package/src/stories/Organisms/DropDown/DropDownMenu.vue +51 -51
- package/src/stories/Organisms/Grid/GridContainer.stories.js +47 -47
- package/src/stories/Organisms/Grid/GridContainer.vue +108 -108
- package/src/stories/Organisms/ImageCropper/ImageCropper.stories.js +28 -28
- package/src/stories/Organisms/ImageCropper/ImageCropper.vue +86 -86
- package/src/stories/Organisms/TextBoxEditor/TextBoxEditor.stories.js +28 -28
- package/src/stories/Organisms/TextBoxEditor/TextBoxEditor.vue +97 -97
- package/src/stories/Organisms/TournamentCard/TournamentCard.stories.js +37 -37
- package/src/stories/Organisms/TournamentCard/TournamentCard.vue +35 -35
- package/src/stories/Templates/Forms/AddTournamentPageOne/AddTournamentPageOne.stories.js +25 -25
- package/src/stories/Templates/Forms/AddTournamentPageOne/AddTournamentPageOne.vue +138 -136
- package/src/stories/Templates/Forms/AddTournamentPageTwo/AddTournamentPageTwo.stories.js +35 -0
- package/src/stories/Templates/Forms/AddTournamentPageTwo/AddTournamentPageTwo.vue +121 -0
- package/src/stories/Templates/Menu/Admin/AdminLeftMenu.stories.js +28 -28
- package/src/stories/Templates/Menu/Admin/AdminLeftMenu.vue +57 -57
- package/tailwind/output.css +1247 -1212
- package/tailwind/tailwind.css +4 -4
- package/tailwind.config.js +50 -50
- package/vite.config.js +23 -23
- package/package/.eslintrc.js +0 -18
- package/package/.gitattributes +0 -2
- package/package/.prettierignore +0 -1
- package/package/.storybook/main.js +0 -18
- package/package/.storybook/mockRoutes.js +0 -9
- package/package/.storybook/preview-head.html +0 -1
- package/package/.storybook/preview.js +0 -17
- package/package/LICENSE +0 -21
- package/package/README.md +0 -83
- package/package/index.html +0 -12
- package/package/package.json +0 -49
- package/package/postcss.config.js +0 -6
- package/package/prettier.config.js +0 -10
- package/package/src/assets/default-tournament.png +0 -0
- package/package/src/index.js +0 -15
- package/package/src/main.js +0 -2
- package/package/src/mocks/fileMock.js +0 -1
- package/package/src/mocks/tournamentMock.js +0 -34
- package/package/src/stories/Base/Button/BaseButton.stories.js +0 -69
- package/package/src/stories/Base/Button/BaseButton.test.js +0 -146
- package/package/src/stories/Base/Button/BaseButton.vue +0 -126
- package/package/src/stories/Base/Input/BaseInput.stories.js +0 -28
- package/package/src/stories/Base/Input/BaseInput.test.js +0 -46
- package/package/src/stories/Base/Input/BaseInput.vue +0 -45
- package/package/src/stories/Base/Tag/BaseTag.stories.js +0 -29
- package/package/src/stories/Base/Tag/BaseTag.test.js +0 -42
- package/package/src/stories/Base/Tag/BaseTag.vue +0 -57
- package/package/src/stories/Base/Text/BaseText.stories.js +0 -77
- package/package/src/stories/Base/Text/BaseText.test.js +0 -153
- package/package/src/stories/Base/Text/BaseText.vue +0 -163
- package/package/src/stories/Breadcrumb/Admin/Breadcrumb.stories.js +0 -41
- package/package/src/stories/Breadcrumb/Admin/Breadcrumb.vue +0 -31
- package/package/src/stories/Cards/TournamentCard/Detail/TournamentCardDetail.stories.js +0 -33
- package/package/src/stories/Cards/TournamentCard/Detail/TournamentCardDetail.vue +0 -38
- package/package/src/stories/Cards/TournamentCard/Header/TournamentCardHeader.stories.js +0 -48
- package/package/src/stories/Cards/TournamentCard/Header/TournamentCardHeader.vue +0 -40
- package/package/src/stories/Cards/TournamentCard/TournamentCard.stories.js +0 -37
- package/package/src/stories/Cards/TournamentCard/TournamentCard.vue +0 -35
- package/package/src/stories/Configure.mdx +0 -320
- package/package/src/stories/Containers/Grid/GridContainer.stories.js +0 -47
- package/package/src/stories/Containers/Grid/GridContainer.vue +0 -108
- package/package/src/stories/Filters/FilterAndSortBar/FilterAndSortBar.stories.js +0 -36
- package/package/src/stories/Filters/FilterAndSortBar/FilterAndSortBar.vue +0 -48
- package/package/src/stories/Filters/FilterUpcomingPast/FilterUpcomingPast.stories.js +0 -32
- package/package/src/stories/Filters/FilterUpcomingPast/FilterUpcomingPast.vue +0 -46
- package/package/src/stories/Menu/Admin/AdminLeftMenu.stories.js +0 -28
- package/package/src/stories/Menu/Admin/AdminLeftMenu.vue +0 -57
- package/package/src/stories/Menu/DropDown/DropDownMenu.stories.js +0 -34
- package/package/src/stories/Menu/DropDown/DropDownMenu.vue +0 -51
- package/package/tailwind/output.css +0 -1072
- package/package/tailwind/tailwind.css +0 -4
- package/package/tailwind.config.js +0 -25
- package/package/vite.config.js +0 -23
|
@@ -1,172 +1,172 @@
|
|
|
1
|
-
import {mount} from "@vue/test-utils";
|
|
2
|
-
import {describe, expect, test, it} from "vitest";
|
|
3
|
-
import BaseText from './BaseText.vue';
|
|
4
|
-
|
|
5
|
-
describe('BaseText.vue', () => {
|
|
6
|
-
it('renders correctly with default props', () => {
|
|
7
|
-
const wrapper = mount(BaseText, {
|
|
8
|
-
props: {text: 'Test Text'}
|
|
9
|
-
});
|
|
10
|
-
expect(wrapper.text()).toBe('Test Text');
|
|
11
|
-
expect(wrapper.classes()).toContain('text-sm');
|
|
12
|
-
expect(wrapper.classes()).toContain('font-normal');
|
|
13
|
-
expect(wrapper.classes()).toContain('text-primary');
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
it('renders text, size, weight, and color based on props', () => {
|
|
17
|
-
const wrapper = mount(BaseText, {
|
|
18
|
-
props: {
|
|
19
|
-
text: 'Styled Text',
|
|
20
|
-
size: 'xl',
|
|
21
|
-
weight: 'bold',
|
|
22
|
-
color: 'secondary'
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
expect(wrapper.text()).toBe('Styled Text');
|
|
26
|
-
expect(wrapper.classes()).toContain('text-xl');
|
|
27
|
-
expect(wrapper.classes()).toContain('font-bold');
|
|
28
|
-
expect(wrapper.classes()).toContain('text-secondary');
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
it('computes classes based on multiple props', () => {
|
|
32
|
-
const wrapper = mount(BaseText, {
|
|
33
|
-
props: {
|
|
34
|
-
text: 'Complex Styled Text',
|
|
35
|
-
size: '2xl',
|
|
36
|
-
weight: 'extra-bold',
|
|
37
|
-
color: 'bright',
|
|
38
|
-
hoverColor: 'tertiary'
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
expect(wrapper.classes()).toContain('text-2xl');
|
|
42
|
-
expect(wrapper.classes()).toContain('font-extrabold');
|
|
43
|
-
expect(wrapper.classes()).toContain('text-bright');
|
|
44
|
-
expect(wrapper.classes()).toContain('hover:text-tertiary');
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
it('computes classes for hover primary', () => {
|
|
48
|
-
const wrapper = mount(BaseText, {
|
|
49
|
-
props: {
|
|
50
|
-
text: 'Complex Styled Text',
|
|
51
|
-
size: 'xs',
|
|
52
|
-
hoverColor: 'primary',
|
|
53
|
-
weight: 'light',
|
|
54
|
-
color: 'neutral'
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
expect(wrapper.classes()).toContain('text-xs');
|
|
59
|
-
expect(wrapper.classes()).toContain('font-light');
|
|
60
|
-
expect(wrapper.classes()).toContain('text-neutral');
|
|
61
|
-
expect(wrapper.classes()).toContain('hover:text-primary');
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
it('computes classes for hover secondary', () => {
|
|
65
|
-
const wrapper = mount(BaseText, {
|
|
66
|
-
props: {
|
|
67
|
-
text: 'Complex Styled Text',
|
|
68
|
-
size: 'md',
|
|
69
|
-
hoverColor: 'secondary',
|
|
70
|
-
weight: 'medium',
|
|
71
|
-
color: 'tertiary'
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
expect(wrapper.classes()).toContain('text-tertiary');
|
|
76
|
-
expect(wrapper.classes()).toContain('text-md');
|
|
77
|
-
expect(wrapper.classes()).toContain('font-medium');
|
|
78
|
-
expect(wrapper.classes()).toContain('hover:text-secondary');
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
it('computes classes for hover tertiary', () => {
|
|
82
|
-
const wrapper = mount(BaseText, {
|
|
83
|
-
props: {
|
|
84
|
-
text: 'Complex Styled Text',
|
|
85
|
-
size: 'lg',
|
|
86
|
-
hoverColor: 'tertiary',
|
|
87
|
-
weight: 'light',
|
|
88
|
-
color: 'tertiary'
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
expect(wrapper.classes()).toContain('text-tertiary');
|
|
92
|
-
expect(wrapper.classes()).toContain('text-lg');
|
|
93
|
-
expect(wrapper.classes()).toContain('font-light');
|
|
94
|
-
expect(wrapper.classes()).toContain('hover:text-tertiary');
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
it('computes classes for hover quaternary', () => {
|
|
98
|
-
const wrapper = mount(BaseText, {
|
|
99
|
-
props: {
|
|
100
|
-
text: 'Complex Styled Text',
|
|
101
|
-
weight: 'semi-bold',
|
|
102
|
-
size: '3xl',
|
|
103
|
-
hoverColor: 'quaternary',
|
|
104
|
-
color: 'quaternary'
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
expect(wrapper.classes()).toContain('text-quaternary');
|
|
108
|
-
expect(wrapper.classes()).toContain('text-3xl');
|
|
109
|
-
expect(wrapper.classes()).toContain('font-semibold');
|
|
110
|
-
expect(wrapper.classes()).toContain('hover:text-quaternary');
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
it('computes classes for hover neutral', () => {
|
|
114
|
-
const wrapper = mount(BaseText, {
|
|
115
|
-
props: {
|
|
116
|
-
text: 'Complex Styled Text',
|
|
117
|
-
hoverColor: 'neutral',
|
|
118
|
-
size: 'xs',
|
|
119
|
-
color: 'primary'
|
|
120
|
-
}
|
|
121
|
-
});
|
|
122
|
-
expect(wrapper.classes()).toContain('text-primary');
|
|
123
|
-
expect(wrapper.classes()).toContain('text-xs');
|
|
124
|
-
expect(wrapper.classes()).toContain('font-normal');
|
|
125
|
-
expect(wrapper.classes()).toContain('hover:text-neutral');
|
|
126
|
-
});
|
|
127
|
-
|
|
128
|
-
it('computes classes for hover neutral', () => {
|
|
129
|
-
const wrapper = mount(BaseText, {
|
|
130
|
-
props: {
|
|
131
|
-
text: 'Complex Styled Text',
|
|
132
|
-
hoverColor: 'bright',
|
|
133
|
-
color: 'primaryHighlight'
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
expect(wrapper.classes()).toContain('hover:text-bright');
|
|
137
|
-
expect(wrapper.classes()).toContain('text-primaryHighlight');
|
|
138
|
-
});
|
|
139
|
-
|
|
140
|
-
it('computes classes for hover neutral', () => {
|
|
141
|
-
const wrapper = mount(BaseText, {
|
|
142
|
-
props: {
|
|
143
|
-
text: 'Complex Styled Text',
|
|
144
|
-
hoverColor: 'none'
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
const hasHoverClass = wrapper.classes().some(className => className.startsWith('hover:'));
|
|
148
|
-
expect(hasHoverClass).toBeFalsy();
|
|
149
|
-
});
|
|
150
|
-
|
|
151
|
-
it('applies text-alarmText class when color is alarm', () => {
|
|
152
|
-
const wrapper = mount(BaseText, {
|
|
153
|
-
props: {
|
|
154
|
-
text: 'Alarm Text',
|
|
155
|
-
color: 'alarm'
|
|
156
|
-
}
|
|
157
|
-
});
|
|
158
|
-
expect(wrapper.classes()).toContain('text-alarmText');
|
|
159
|
-
});
|
|
160
|
-
|
|
161
|
-
it('applies text-alarm class when invalid is true', () => {
|
|
162
|
-
const wrapper = mount(BaseText, {
|
|
163
|
-
props: {
|
|
164
|
-
text: 'Invalid Text',
|
|
165
|
-
invalid: true
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
expect(wrapper.classes()).toContain('text-alarm');
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
});
|
|
172
|
-
|
|
1
|
+
import {mount} from "@vue/test-utils";
|
|
2
|
+
import {describe, expect, test, it} from "vitest";
|
|
3
|
+
import BaseText from './BaseText.vue';
|
|
4
|
+
|
|
5
|
+
describe('BaseText.vue', () => {
|
|
6
|
+
it('renders correctly with default props', () => {
|
|
7
|
+
const wrapper = mount(BaseText, {
|
|
8
|
+
props: {text: 'Test Text'}
|
|
9
|
+
});
|
|
10
|
+
expect(wrapper.text()).toBe('Test Text');
|
|
11
|
+
expect(wrapper.classes()).toContain('text-sm');
|
|
12
|
+
expect(wrapper.classes()).toContain('font-normal');
|
|
13
|
+
expect(wrapper.classes()).toContain('text-primary');
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('renders text, size, weight, and color based on props', () => {
|
|
17
|
+
const wrapper = mount(BaseText, {
|
|
18
|
+
props: {
|
|
19
|
+
text: 'Styled Text',
|
|
20
|
+
size: 'xl',
|
|
21
|
+
weight: 'bold',
|
|
22
|
+
color: 'secondary'
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
expect(wrapper.text()).toBe('Styled Text');
|
|
26
|
+
expect(wrapper.classes()).toContain('text-xl');
|
|
27
|
+
expect(wrapper.classes()).toContain('font-bold');
|
|
28
|
+
expect(wrapper.classes()).toContain('text-secondary');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('computes classes based on multiple props', () => {
|
|
32
|
+
const wrapper = mount(BaseText, {
|
|
33
|
+
props: {
|
|
34
|
+
text: 'Complex Styled Text',
|
|
35
|
+
size: '2xl',
|
|
36
|
+
weight: 'extra-bold',
|
|
37
|
+
color: 'bright',
|
|
38
|
+
hoverColor: 'tertiary'
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
expect(wrapper.classes()).toContain('text-2xl');
|
|
42
|
+
expect(wrapper.classes()).toContain('font-extrabold');
|
|
43
|
+
expect(wrapper.classes()).toContain('text-bright');
|
|
44
|
+
expect(wrapper.classes()).toContain('hover:text-tertiary');
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
it('computes classes for hover primary', () => {
|
|
48
|
+
const wrapper = mount(BaseText, {
|
|
49
|
+
props: {
|
|
50
|
+
text: 'Complex Styled Text',
|
|
51
|
+
size: 'xs',
|
|
52
|
+
hoverColor: 'primary',
|
|
53
|
+
weight: 'light',
|
|
54
|
+
color: 'neutral'
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
expect(wrapper.classes()).toContain('text-xs');
|
|
59
|
+
expect(wrapper.classes()).toContain('font-light');
|
|
60
|
+
expect(wrapper.classes()).toContain('text-neutral');
|
|
61
|
+
expect(wrapper.classes()).toContain('hover:text-primary');
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
it('computes classes for hover secondary', () => {
|
|
65
|
+
const wrapper = mount(BaseText, {
|
|
66
|
+
props: {
|
|
67
|
+
text: 'Complex Styled Text',
|
|
68
|
+
size: 'md',
|
|
69
|
+
hoverColor: 'secondary',
|
|
70
|
+
weight: 'medium',
|
|
71
|
+
color: 'tertiary'
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
expect(wrapper.classes()).toContain('text-tertiary');
|
|
76
|
+
expect(wrapper.classes()).toContain('text-md');
|
|
77
|
+
expect(wrapper.classes()).toContain('font-medium');
|
|
78
|
+
expect(wrapper.classes()).toContain('hover:text-secondary');
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
it('computes classes for hover tertiary', () => {
|
|
82
|
+
const wrapper = mount(BaseText, {
|
|
83
|
+
props: {
|
|
84
|
+
text: 'Complex Styled Text',
|
|
85
|
+
size: 'lg',
|
|
86
|
+
hoverColor: 'tertiary',
|
|
87
|
+
weight: 'light',
|
|
88
|
+
color: 'tertiary'
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
expect(wrapper.classes()).toContain('text-tertiary');
|
|
92
|
+
expect(wrapper.classes()).toContain('text-lg');
|
|
93
|
+
expect(wrapper.classes()).toContain('font-light');
|
|
94
|
+
expect(wrapper.classes()).toContain('hover:text-tertiary');
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
it('computes classes for hover quaternary', () => {
|
|
98
|
+
const wrapper = mount(BaseText, {
|
|
99
|
+
props: {
|
|
100
|
+
text: 'Complex Styled Text',
|
|
101
|
+
weight: 'semi-bold',
|
|
102
|
+
size: '3xl',
|
|
103
|
+
hoverColor: 'quaternary',
|
|
104
|
+
color: 'quaternary'
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
expect(wrapper.classes()).toContain('text-quaternary');
|
|
108
|
+
expect(wrapper.classes()).toContain('text-3xl');
|
|
109
|
+
expect(wrapper.classes()).toContain('font-semibold');
|
|
110
|
+
expect(wrapper.classes()).toContain('hover:text-quaternary');
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
it('computes classes for hover neutral', () => {
|
|
114
|
+
const wrapper = mount(BaseText, {
|
|
115
|
+
props: {
|
|
116
|
+
text: 'Complex Styled Text',
|
|
117
|
+
hoverColor: 'neutral',
|
|
118
|
+
size: 'xs',
|
|
119
|
+
color: 'primary'
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
expect(wrapper.classes()).toContain('text-primary');
|
|
123
|
+
expect(wrapper.classes()).toContain('text-xs');
|
|
124
|
+
expect(wrapper.classes()).toContain('font-normal');
|
|
125
|
+
expect(wrapper.classes()).toContain('hover:text-neutral');
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
it('computes classes for hover neutral', () => {
|
|
129
|
+
const wrapper = mount(BaseText, {
|
|
130
|
+
props: {
|
|
131
|
+
text: 'Complex Styled Text',
|
|
132
|
+
hoverColor: 'bright',
|
|
133
|
+
color: 'primaryHighlight'
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
expect(wrapper.classes()).toContain('hover:text-bright');
|
|
137
|
+
expect(wrapper.classes()).toContain('text-primaryHighlight');
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
it('computes classes for hover neutral', () => {
|
|
141
|
+
const wrapper = mount(BaseText, {
|
|
142
|
+
props: {
|
|
143
|
+
text: 'Complex Styled Text',
|
|
144
|
+
hoverColor: 'none'
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
const hasHoverClass = wrapper.classes().some(className => className.startsWith('hover:'));
|
|
148
|
+
expect(hasHoverClass).toBeFalsy();
|
|
149
|
+
});
|
|
150
|
+
|
|
151
|
+
it('applies text-alarmText class when color is alarm', () => {
|
|
152
|
+
const wrapper = mount(BaseText, {
|
|
153
|
+
props: {
|
|
154
|
+
text: 'Alarm Text',
|
|
155
|
+
color: 'alarm'
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
expect(wrapper.classes()).toContain('text-alarmText');
|
|
159
|
+
});
|
|
160
|
+
|
|
161
|
+
it('applies text-alarm class when invalid is true', () => {
|
|
162
|
+
const wrapper = mount(BaseText, {
|
|
163
|
+
props: {
|
|
164
|
+
text: 'Invalid Text',
|
|
165
|
+
invalid: true
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
expect(wrapper.classes()).toContain('text-alarm');
|
|
169
|
+
});
|
|
170
|
+
|
|
171
|
+
});
|
|
172
|
+
|