@eturnity/eturnity_reusable_components 7.24.3-EPDM-11320.3 → 7.24.3-qa-elisee-7.32.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.
Files changed (83) hide show
  1. package/.prettierrc +6 -8
  2. package/package.json +21 -9
  3. package/public/favicon.ico +0 -0
  4. package/public/index.html +17 -0
  5. package/src/App.vue +78 -79
  6. package/src/assets/svgIcons/adjust_roof.svg +6 -0
  7. package/src/assets/svgIcons/copy.svg +10 -0
  8. package/src/assets/theme.js +3 -3
  9. package/src/components/addNewButton/AddNewButton.stories.js +2 -2
  10. package/src/components/addNewButton/index.vue +51 -48
  11. package/src/components/banner/actionBanner/index.vue +55 -54
  12. package/src/components/banner/banner/banner.stories.js +5 -5
  13. package/src/components/banner/banner/index.vue +159 -159
  14. package/src/components/banner/infoBanner/index.vue +53 -41
  15. package/src/components/buttons/buttonIcon/index.vue +122 -125
  16. package/src/components/buttons/closeButton/CloseButton.stories.js +3 -3
  17. package/src/components/buttons/closeButton/index.vue +49 -49
  18. package/src/components/buttons/mainButton/index.vue +119 -119
  19. package/src/components/card/index.vue +70 -70
  20. package/src/components/collapsableInfoText/index.vue +94 -96
  21. package/src/components/deleteIcon/DeleteIcon.stories.js +4 -4
  22. package/src/components/deleteIcon/index.vue +54 -54
  23. package/src/components/draggableInputHandle/index.vue +37 -37
  24. package/src/components/dropdown/Dropdown.stories.js +10 -9
  25. package/src/components/dropdown/index.vue +106 -106
  26. package/src/components/errorMessage/index.vue +52 -52
  27. package/src/components/filter/filterSettings.vue +433 -439
  28. package/src/components/filter/index.vue +135 -135
  29. package/src/components/filter/parentDropdown.vue +73 -73
  30. package/src/components/icon/Icons.stories.js +7 -7
  31. package/src/components/icon/iconCollection.vue +53 -53
  32. package/src/components/icon/index.vue +121 -121
  33. package/src/components/iconWrapper/index.vue +156 -156
  34. package/src/components/infoCard/index.vue +26 -26
  35. package/src/components/infoText/index.vue +132 -133
  36. package/src/components/inputs/checkbox/Checkbox.stories.js +8 -8
  37. package/src/components/inputs/checkbox/index.vue +180 -190
  38. package/src/components/inputs/inputNumber/InputNumber.stories.js +41 -41
  39. package/src/components/inputs/inputNumber/index.vue +644 -647
  40. package/src/components/inputs/inputNumberQuestion/index.vue +182 -185
  41. package/src/components/inputs/inputText/InputText.stories.js +22 -22
  42. package/src/components/inputs/inputText/index.vue +336 -337
  43. package/src/components/inputs/radioButton/RadioButton.stories.js +16 -16
  44. package/src/components/inputs/radioButton/index.vue +219 -221
  45. package/src/components/inputs/searchInput/SearchInput.stories.js +8 -8
  46. package/src/components/inputs/searchInput/index.vue +126 -127
  47. package/src/components/inputs/select/index.vue +776 -778
  48. package/src/components/inputs/select/option/index.vue +124 -124
  49. package/src/components/inputs/select/select.stories.js +32 -31
  50. package/src/components/inputs/slider/index.vue +99 -99
  51. package/src/components/inputs/switchField/index.vue +222 -220
  52. package/src/components/inputs/textAreaInput/TextAreaInput.stories.js +57 -57
  53. package/src/components/inputs/textAreaInput/index.vue +173 -171
  54. package/src/components/inputs/toggle/Toggle.stories.js +14 -14
  55. package/src/components/inputs/toggle/index.vue +217 -214
  56. package/src/components/label/index.vue +82 -82
  57. package/src/components/markerItem/index.vue +66 -68
  58. package/src/components/modals/actionModal/index.vue +54 -54
  59. package/src/components/modals/infoModal/index.vue +36 -39
  60. package/src/components/modals/modal/index.vue +134 -134
  61. package/src/components/modals/modal/modal.stories.js +5 -5
  62. package/src/components/navigationTabs/index.vue +94 -96
  63. package/src/components/pageSubtitle/index.vue +49 -55
  64. package/src/components/pageTitle/index.vue +56 -56
  65. package/src/components/pagination/index.vue +89 -92
  66. package/src/components/progressBar/index.vue +107 -107
  67. package/src/components/projectMarker/index.vue +244 -246
  68. package/src/components/rangeSlider/Slider.vue +465 -491
  69. package/src/components/rangeSlider/index.vue +410 -410
  70. package/src/components/rangeSlider/utils/dom.js +5 -5
  71. package/src/components/selectedOptions/index.vue +119 -119
  72. package/src/components/sideMenu/index.vue +199 -199
  73. package/src/components/spinner/index.vue +57 -57
  74. package/src/components/tableDropdown/index.vue +520 -520
  75. package/src/components/tables/mainTable/index.vue +362 -366
  76. package/src/components/tables/viewTable/index.vue +171 -171
  77. package/src/components/threeDots/index.vue +334 -340
  78. package/src/components/videoThumbnail/index.vue +86 -86
  79. package/src/components/videoThumbnail/videoThumbnail.stories.js +16 -14
  80. package/src/helpers/numberConverter.js +2 -2
  81. package/src/helpers/translateLang.js +9 -9
  82. package/src/mixins/inputValidations.js +5 -5
  83. package/.eslintrc.js +0 -184
@@ -1,300 +1,298 @@
1
1
  <template>
2
- <PageContainer>
3
- <MarkerContainer
2
+ <page-container>
3
+ <marker-container
4
4
  v-if="markerData && markerData.translations[activeLanguage]"
5
- :background-color="markerData.color"
5
+ :hasBorderRadius="hasBorderRadius"
6
+ :withDate="!!date"
7
+ :backgroundColor="markerData.color"
8
+ :hasIcon="!!iconName"
9
+ :isEditionAllowed="editionAllowed"
10
+ :isActive="activated"
6
11
  :cursor="cursor"
7
- :has-border-radius="hasBorderRadius"
8
- :has-icon="!!iconName"
9
- :is-active="activated"
10
- :is-edition-allowed="editionAllowed"
11
- :with-date="!!date"
12
12
  @click="editionAllowed ? (activated = !activated) : ''"
13
13
  >
14
- <Icon
14
+ <icon
15
15
  v-if="!!iconName"
16
- color="white"
17
- :cursor="cursor"
18
16
  :name="iconName"
17
+ color="white"
19
18
  size="10px"
19
+ :cursor="cursor"
20
20
  />
21
21
  <span>{{
22
22
  markerData.translations[activeLanguage]
23
23
  ? markerData.translations[activeLanguage].name
24
24
  : '-'
25
25
  }}</span>
26
- <DotWrapper v-if="editionAllowed" class="dotContainer">
27
- <DotIcon />
28
- <DotIcon />
29
- <DotIcon />
30
- </DotWrapper>
31
- <EditContainer
26
+ <dot-wrapper v-if="editionAllowed" class="dotContainer">
27
+ <dot-icon />
28
+ <dot-icon />
29
+ <dot-icon />
30
+ </dot-wrapper>
31
+ <edit-container
32
32
  v-if="activated"
33
33
  v-click-outside="clickOutsideActionHandler"
34
34
  >
35
- <EditItem @click="deleteModalOpened = !deleteModalOpened">
36
- <DeleteIcon />
35
+ <edit-item @click="deleteModalOpened = !deleteModalOpened">
36
+ <delete-icon />
37
37
  <div>{{ $gettext('Delete') }}</div>
38
- </EditItem>
39
- <EditItem @click="onEditClick">
40
- <IconContainer>
41
- <Icon name="edit_button" size="14px" />
42
- </IconContainer>
38
+ </edit-item>
39
+ <edit-item @click="onEditClick">
40
+ <icon-container>
41
+ <icon name="edit_button" size="14px" />
42
+ </icon-container>
43
43
  <div>{{ $gettext('Edit') }}</div>
44
- </EditItem>
45
- </EditContainer>
46
- </MarkerContainer>
47
- <Date v-if="!!date">
44
+ </edit-item>
45
+ </edit-container>
46
+ </marker-container>
47
+ <date v-if="!!date">
48
48
  {{ date }}
49
- </Date>
50
- <Modal
51
- :is-open="deleteModalOpened"
52
- :prevent-outside-close="true"
49
+ </date>
50
+ <modal
51
+ :isOpen="deleteModalOpened"
53
52
  @on-close="closeDeleteModal"
53
+ :preventOutsideClose="true"
54
54
  >
55
- <ModalContainer>
56
- <PageTitle :text="$gettext('delete_confirm_text')" />
57
- <PageSubtitle :text="$gettext('delete_confirm_subtext')" />
58
- <CtaContainer>
59
- <MainButton :text="$gettext('Delete')" @click="onDelete" />
60
- <MainButton
61
- :text="$gettext('Cancel')"
55
+ <modal-container>
56
+ <page-title :text="$gettext('delete_confirm_text')" />
57
+ <page-subtitle :text="$gettext('delete_confirm_subtext')" />
58
+ <cta-container>
59
+ <main-button @click="onDelete" :text="$gettext('Delete')" />
60
+ <main-button
62
61
  type="cancel"
63
62
  @click="closeDeleteModal"
63
+ :text="$gettext('Cancel')"
64
64
  />
65
- </CtaContainer>
66
- </ModalContainer>
67
- </Modal>
68
- </PageContainer>
65
+ </cta-container>
66
+ </modal-container>
67
+ </modal>
68
+ </page-container>
69
69
  </template>
70
70
 
71
71
  <script>
72
- // import ProjectMarker from "@eturnity/eturnity_reusable_components/src/components/projectMarker"
73
- // To use:
74
- // <project-marker
75
- // :activeLanguage="'en-us'"
76
- // :markerData="{"choice":"sold","translations":{"en-us":{"name":"Sold"}}","color":"#000"}"
77
- // :isLimitedPartner="false"
78
- // :isGroupSupport="false"
79
- // :isEditable='false'
80
- // :date="'23.07.2022'"
81
- // @editHandler="onMarkerEdit($event)"
82
- // @deleteHandler="onMarkerDelete($event)"
83
- // />
72
+ // import ProjectMarker from "@eturnity/eturnity_reusable_components/src/components/projectMarker"
73
+ // To use:
74
+ // <project-marker
75
+ // :activeLanguage="'en-us'"
76
+ // :markerData="{"choice":"sold","translations":{"en-us":{"name":"Sold"}}","color":"#000"}"
77
+ // :isLimitedPartner="false"
78
+ // :isGroupSupport="false"
79
+ // :isEditable='false'
80
+ // :date="'23.07.2022'"
81
+ // @editHandler="onMarkerEdit($event)"
82
+ // @deleteHandler="onMarkerDelete($event)"
83
+ // />
84
84
 
85
- import styled from 'vue3-styled-components'
86
- import vClickOutside from 'click-outside-vue3'
87
- import Icon from '../icon'
88
- import Modal from '../modals/modal'
89
- import PageTitle from '../pageTitle'
90
- import DeleteIcon from '../deleteIcon'
91
- import PageSubtitle from '../pageSubtitle'
92
- import MainButton from '../buttons/mainButton'
85
+ import styled from 'vue3-styled-components'
86
+ import vClickOutside from 'click-outside-vue3'
87
+ import Icon from '../icon'
88
+ import Modal from '../modals/modal'
89
+ import PageTitle from '../pageTitle'
90
+ import DeleteIcon from '../deleteIcon'
91
+ import PageSubtitle from '../pageSubtitle'
92
+ import MainButton from '../buttons/mainButton'
93
93
 
94
- const PageContainer = styled.div`
95
- display: flex;
96
- align-items: center;
97
- font-size: 12px;
98
- line-height: 14px;
99
- `
94
+ const PageContainer = styled.div`
95
+ display: flex;
96
+ align-items: center;
97
+ font-size: 12px;
98
+ line-height: 14px;
99
+ `
100
100
 
101
- const ModalContainer = styled.div`
102
- padding: 40px;
103
- min-width: 500px;
104
- `
101
+ const ModalContainer = styled.div`
102
+ padding: 40px;
103
+ min-width: 500px;
104
+ `
105
105
 
106
- const CtaContainer = styled.div`
107
- display: flex;
108
- gap: 20px;
109
- margin-top: 30px;
110
- `
106
+ const CtaContainer = styled.div`
107
+ display: flex;
108
+ gap: 20px;
109
+ margin-top: 30px;
110
+ `
111
111
 
112
- const MarkerAttrs = {
113
- hasBorderRadius: Boolean,
114
- backgroundColor: String,
115
- withDate: Boolean,
116
- hasIcon: Boolean,
117
- isEditionAllowed: Boolean,
118
- isActive: Boolean,
119
- cursor: String,
120
- }
121
- const MarkerContainer = styled('div', MarkerAttrs)`
122
- display: grid;
123
- grid-template-columns: ${(props) =>
124
- props.hasIcon || props.isEditionAllowed ? 'auto 1fr' : '1fr'};
125
- grid-gap: 5px;
126
- position: relative;
127
- align-items: center;
128
- padding: 2px 7px;
129
- color: ${(props) => props.theme.colors.white};
130
- background-color: ${(props) =>
112
+ const MarkerAttrs = {
113
+ hasBorderRadius: Boolean,
114
+ backgroundColor: String,
115
+ withDate: Boolean,
116
+ hasIcon: Boolean,
117
+ isEditionAllowed: Boolean,
118
+ isActive: Boolean,
119
+ cursor: String
120
+ }
121
+ const MarkerContainer = styled('div', MarkerAttrs)`
122
+ display: grid;
123
+ grid-template-columns: ${(props) =>
124
+ props.hasIcon || props.isEditionAllowed ? 'auto 1fr' : '1fr'};
125
+ grid-gap: 5px;
126
+ position: relative;
127
+ align-items: center;
128
+ padding: 2px 7px;
129
+ color: ${(props) => props.theme.colors.white};
130
+ background-color: ${(props) =>
131
+ props.backgroundColor ? props.backgroundColor : props.theme.colors.grey3};
132
+ border: 1px solid
133
+ ${(props) =>
131
134
  props.backgroundColor ? props.backgroundColor : props.theme.colors.grey3};
132
- border: 1px solid
133
- ${(props) =>
134
- props.backgroundColor
135
- ? props.backgroundColor
136
- : props.theme.colors.grey3};
137
- border-radius: ${(props) =>
138
- props.hasBorderRadius ? (props.withDate ? '4px 0 0 4px' : '4px') : '0'};
139
- white-space: nowrap;
140
- cursor: ${(props) => (props.isEditionAllowed ? 'pointer' : props.cursor)};
135
+ border-radius: ${(props) =>
136
+ props.hasBorderRadius ? (props.withDate ? '4px 0 0 4px' : '4px') : '0'};
137
+ white-space: nowrap;
138
+ cursor: ${(props) => (props.isEditionAllowed ? 'pointer' : props.cursor)};
141
139
 
142
- .dotContainer {
143
- display: ${(props) => (props.isActive ? 'flex' : 'none')};
144
- }
140
+ .dotContainer {
141
+ display: ${(props) => (props.isActive ? 'flex' : 'none')};
142
+ }
145
143
 
146
- &:hover {
147
- .dotContainer {
148
- display: flex;
149
- }
144
+ &:hover {
145
+ .dotContainer {
146
+ display: flex;
150
147
  }
151
- `
148
+ }
149
+ `
152
150
 
153
- const DotWrapper = styled.div`
154
- display: flex;
155
- gap: 2px;
156
- cursor: pointer;
157
- `
151
+ const DotWrapper = styled.div`
152
+ display: flex;
153
+ gap: 2px;
154
+ cursor: pointer;
155
+ `
158
156
 
159
- const DotIcon = styled.div`
160
- width: 4px;
161
- height: 4px;
162
- border-radius: 100%;
163
- background-color: ${(props) => props.theme.colors.white};
164
- `
157
+ const DotIcon = styled.div`
158
+ width: 4px;
159
+ height: 4px;
160
+ border-radius: 100%;
161
+ background-color: ${(props) => props.theme.colors.white};
162
+ `
165
163
 
166
- const EditContainer = styled.div`
167
- position: absolute;
168
- z-index: 99;
169
- top: 22px;
170
- display: grid;
171
- background-color: ${(props) => props.theme.colors.white};
172
- border: 1px solid ${(props) => props.theme.colors.grey4};
173
- border-radius: 4px;
174
- cursor: pointer;
175
- overflow: hidden;
176
- `
164
+ const EditContainer = styled.div`
165
+ position: absolute;
166
+ z-index: 99;
167
+ top: 22px;
168
+ display: grid;
169
+ background-color: ${(props) => props.theme.colors.white};
170
+ border: 1px solid ${(props) => props.theme.colors.grey4};
171
+ border-radius: 4px;
172
+ cursor: pointer;
173
+ overflow: hidden;
174
+ `
177
175
 
178
- const EditItem = styled.div`
179
- display: flex;
180
- align-items: center;
181
- gap: 12px;
182
- color: ${(props) => props.theme.colors.black};
183
- font-size: 13px;
184
- padding: 4px 18px;
176
+ const EditItem = styled.div`
177
+ display: flex;
178
+ align-items: center;
179
+ gap: 12px;
180
+ color: ${(props) => props.theme.colors.black};
181
+ font-size: 13px;
182
+ padding: 4px 18px;
185
183
 
186
- &:hover {
187
- background-color: ${(props) => props.theme.colors.grey5};
188
- }
189
- `
184
+ &:hover {
185
+ background-color: ${(props) => props.theme.colors.grey5};
186
+ }
187
+ `
190
188
 
191
- const IconContainer = styled.div`
192
- padding: 8px;
193
- line-height: 0;
194
- `
189
+ const IconContainer = styled.div`
190
+ padding: 8px;
191
+ line-height: 0;
192
+ `
195
193
 
196
- const Date = styled.div`
197
- padding: 2px 5px;
198
- border: 1px solid ${(props) => props.theme.colors.grey4};
199
- border-left: none;
200
- border-radius: 0 4px 4px 0;
201
- `
194
+ const Date = styled.div`
195
+ padding: 2px 5px;
196
+ border: 1px solid ${(props) => props.theme.colors.grey4};
197
+ border-left: none;
198
+ border-radius: 0 4px 4px 0;
199
+ `
202
200
 
203
- export default {
204
- name: 'ProjectMarker',
205
- directives: {
206
- clickOutside: vClickOutside.directive,
201
+ export default {
202
+ name: 'project-marker',
203
+ directives: {
204
+ clickOutside: vClickOutside.directive
205
+ },
206
+ components: {
207
+ PageContainer,
208
+ MarkerContainer,
209
+ DotWrapper,
210
+ DotIcon,
211
+ EditContainer,
212
+ EditItem,
213
+ DeleteIcon,
214
+ IconContainer,
215
+ Icon,
216
+ Modal,
217
+ ModalContainer,
218
+ CtaContainer,
219
+ PageTitle,
220
+ PageSubtitle,
221
+ MainButton,
222
+ Date
223
+ },
224
+ props: {
225
+ markerData: {
226
+ required: true
227
+ },
228
+ activeLanguage: {
229
+ required: true
230
+ },
231
+ date: {
232
+ required: false,
233
+ default: null
234
+ },
235
+ isEditable: {
236
+ required: false,
237
+ default: false
207
238
  },
208
- components: {
209
- PageContainer,
210
- MarkerContainer,
211
- DotWrapper,
212
- DotIcon,
213
- EditContainer,
214
- EditItem,
215
- DeleteIcon,
216
- IconContainer,
217
- Icon,
218
- Modal,
219
- ModalContainer,
220
- CtaContainer,
221
- PageTitle,
222
- PageSubtitle,
223
- MainButton,
224
- Date,
239
+ isGroupSupport: {
240
+ required: false,
241
+ default: false
225
242
  },
226
- props: {
227
- markerData: {
228
- required: true,
229
- },
230
- activeLanguage: {
231
- required: true,
232
- },
233
- date: {
234
- required: false,
235
- default: null,
236
- },
237
- isEditable: {
238
- required: false,
239
- default: false,
240
- },
241
- isGroupSupport: {
242
- required: false,
243
- default: false,
244
- },
245
- isLimitedPartner: {
246
- required: false,
247
- default: false,
248
- },
249
- cursor: {
250
- required: false,
251
- default: 'default',
252
- },
253
- hasBorderRadius: {
254
- required: false,
255
- default: true,
256
- },
243
+ isLimitedPartner: {
244
+ required: false,
245
+ default: false
257
246
  },
258
- data() {
259
- return {
260
- activated: false,
261
- deleteModalOpened: false,
247
+ cursor: {
248
+ required: false,
249
+ default: 'default'
250
+ },
251
+ hasBorderRadius: {
252
+ required: false,
253
+ default: true
254
+ }
255
+ },
256
+ data() {
257
+ return {
258
+ activated: false,
259
+ deleteModalOpened: false
260
+ }
261
+ },
262
+ computed: {
263
+ editionAllowed() {
264
+ return (
265
+ this.markerData.can_be_deleted &&
266
+ (!this.isLimitedPartner || this.isGroupSupport) &&
267
+ this.isEditable
268
+ )
269
+ },
270
+ iconName() {
271
+ if (this.markerData.choice === 'sold') {
272
+ return 'all_good'
273
+ } else if (this.markerData.choice === 'lost') {
274
+ return 'cross'
275
+ } else if (this.markerData.choice === 'transferred') {
276
+ return 'transfer'
277
+ } else {
278
+ return ''
262
279
  }
280
+ }
281
+ },
282
+ methods: {
283
+ clickOutsideActionHandler() {
284
+ this.activated = false
263
285
  },
264
- computed: {
265
- editionAllowed() {
266
- return (
267
- this.markerData.can_be_deleted &&
268
- (!this.isLimitedPartner || this.isGroupSupport) &&
269
- this.isEditable
270
- )
271
- },
272
- iconName() {
273
- if (this.markerData.choice === 'sold') {
274
- return 'all_good'
275
- } else if (this.markerData.choice === 'lost') {
276
- return 'cross'
277
- } else if (this.markerData.choice === 'transferred') {
278
- return 'transfer'
279
- } else {
280
- return ''
281
- }
282
- },
286
+ closeDeleteModal() {
287
+ this.deleteModalOpened = false
283
288
  },
284
- methods: {
285
- clickOutsideActionHandler() {
286
- this.activated = false
287
- },
288
- closeDeleteModal() {
289
- this.deleteModalOpened = false
290
- },
291
- onEditClick() {
292
- this.$emit('editHandler')
293
- },
294
- onDelete() {
295
- this.closeDeleteModal()
296
- this.$emit('deleteHandler')
297
- },
289
+ onEditClick() {
290
+ this.$emit('editHandler')
298
291
  },
292
+ onDelete() {
293
+ this.closeDeleteModal()
294
+ this.$emit('deleteHandler')
295
+ }
299
296
  }
297
+ }
300
298
  </script>