@eturnity/eturnity_reusable_components 7.48.1-EPDM-12680.11 → 7.48.1-EPDM-10964.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.
@@ -114,7 +114,9 @@ describe('RadioButton.vue', () => {
114
114
  const checkedWrapper = checkedWrapperArray[0]
115
115
  const checkedRadioInput = checkedWrapper.find('input[type="radio"]')
116
116
  const defaultValueFromProps = radioButtons.props('selectedOption')
117
- expect(checkedRadioInput.attributes('value')).toBe(defaultValueFromProps)
117
+ expect(checkedRadioInput.attributes('value')).toBe(
118
+ defaultValueFromProps
119
+ )
118
120
 
119
121
  // Log attributes to see what is rendered (commented out just for reference)
120
122
  // console.log('checkedRadioInput attributes', checkedRadioInput.attributes())
@@ -147,33 +149,25 @@ describe('RadioButton.vue', () => {
147
149
  it('click on disabled element (|| selected element || info icon || image) does not emit anything', async () => {
148
150
  // Remember the number of emitted events before triggering clicks
149
151
  const initialNumberOfEvents =
150
- radioButtons.emitted('on-radio-change')?.length || 0
152
+ radioButtons.emitted('on-radio-change').length
151
153
 
152
154
  // Test RadioWrapper with disabled element
153
155
  const disabledWrapperArray = findRadioWrappersByCriteria(['disabled'])
154
- if (disabledWrapperArray.length > 0) {
155
- const disabledLabelWrapper = disabledWrapperArray[0].find('label')
156
- if (disabledLabelWrapper.exists()) {
157
- await disabledLabelWrapper.trigger('click')
158
- // Check if we still have the same number of emitted events as at the beginning
159
- expect(radioButtons.emitted('on-radio-change')?.length || 0).toBe(
160
- initialNumberOfEvents
161
- )
162
- }
163
- }
156
+ const disabledLabelWrapper = disabledWrapperArray[0].find('label')
157
+ await disabledLabelWrapper.trigger('click')
158
+ // Check if we still have the same number of emitted events as at the beginning
159
+ expect(radioButtons.emitted('on-radio-change')).toHaveLength(
160
+ initialNumberOfEvents
161
+ )
164
162
 
165
163
  // Get RadioWrapper with selected element
166
164
  const checkedWrapperArray = findRadioWrappersByCriteria(['checked'])
167
- if (checkedWrapperArray.length > 0) {
168
- const checkedLabelWrapper = checkedWrapperArray[0].find('label')
169
- if (checkedLabelWrapper.exists()) {
170
- await checkedLabelWrapper.trigger('click')
171
- // Check if we still have the same number of emitted events as at the beginning
172
- expect(radioButtons.emitted('on-radio-change')?.length || 0).toBe(
173
- initialNumberOfEvents
174
- )
175
- }
176
- }
165
+ const checkedLabelWrapper = checkedWrapperArray[0].find('label')
166
+ await checkedLabelWrapper.trigger('click')
167
+ // Check if we still have the same number of emitted events as at the beginning
168
+ expect(radioButtons.emitted('on-radio-change')).toHaveLength(
169
+ initialNumberOfEvents
170
+ )
177
171
 
178
172
  // Get RadioWrapper with info icon
179
173
  const arrayOfWrappersWithInfoIcons = findRadioWrappersByCriteria([
@@ -181,18 +175,14 @@ describe('RadioButton.vue', () => {
181
175
  'unchecked',
182
176
  'hasInfoIcon',
183
177
  ])
184
- if (arrayOfWrappersWithInfoIcons.length > 0) {
185
- const infoIconForClick = arrayOfWrappersWithInfoIcons[0].find(
186
- '[data-test-id="infoText_trigger"]'
187
- )
188
- if (infoIconForClick.exists()) {
189
- await infoIconForClick.trigger('click')
190
- // Check if we still have the same number of emitted events as at the beginning
191
- expect(radioButtons.emitted('on-radio-change')?.length || 0).toBe(
192
- initialNumberOfEvents
193
- )
194
- }
195
- }
178
+ const infoIconForClick = arrayOfWrappersWithInfoIcons[0].find(
179
+ '[data-test-id="infoText_trigger"]'
180
+ )
181
+ await infoIconForClick.trigger('click')
182
+ // Check if we still have the same number of emitted events as at the beginning
183
+ expect(radioButtons.emitted('on-radio-change')).toHaveLength(
184
+ initialNumberOfEvents
185
+ )
196
186
 
197
187
  // Get RadioWrapper with image
198
188
  const arrayOfWrappersWithImage = findRadioWrappersByCriteria([
@@ -200,87 +190,60 @@ describe('RadioButton.vue', () => {
200
190
  'unchecked',
201
191
  'hasImage',
202
192
  ])
203
- if (arrayOfWrappersWithImage.length > 0) {
204
- const testedRadioWrapperWithImage = arrayOfWrappersWithImage[0]
205
- const openImageWrapperTestId = testedRadioWrapperWithImage
206
- .attributes('data-test-id')
207
- .replace('radioWrapper_', 'radioOpenImage_')
208
- const openImageWrapper = testedRadioWrapperWithImage.find(
209
- `[data-test-id="${openImageWrapperTestId}"]`
210
- )
211
- if (openImageWrapper.exists()) {
212
- await openImageWrapper.trigger('click')
213
- // Check if we still have the same number of emitted events as at the beginning
214
- expect(radioButtons.emitted('on-radio-change')?.length || 0).toBe(
215
- initialNumberOfEvents
216
- )
193
+ const testedRadioWrapperWithImage = arrayOfWrappersWithImage[0]
194
+ const openImageWrapperTestId = testedRadioWrapperWithImage
195
+ .attributes('data-test-id')
196
+ .replace('radioWrapper_', 'radioOpenImage_')
197
+ const openImageWrapper = testedRadioWrapperWithImage.find(
198
+ `[data-test-id="${openImageWrapperTestId}"]`
199
+ )
200
+ await openImageWrapper.trigger('click')
201
+ // Check if we still have the same number of emitted events as at the beginning
202
+ expect(radioButtons.emitted('on-radio-change')).toHaveLength(
203
+ initialNumberOfEvents
204
+ )
217
205
 
218
- // Since we just clicked on image miniature
219
- // lets check has the corresponding modal been opened
220
- // and is the correct image displayed
221
- const imageModalWrapperTestId = testedRadioWrapperWithImage
222
- .attributes('data-test-id')
223
- .replace('radioWrapper_', 'radioModal_')
224
- const imageModalWrapper = testedRadioWrapperWithImage.find(
225
- `[data-test-id="${imageModalWrapperTestId}"]`
226
- )
227
- if (imageModalWrapper.exists()) {
228
- expect(imageModalWrapper.attributes('class')).toContain('visible')
229
- const imageWrapperTestId = testedRadioWrapperWithImage
230
- .attributes('data-test-id')
231
- .replace('radioWrapper_', 'radioImage_')
232
- const imageWrapper = testedRadioWrapperWithImage.find(
233
- `[data-test-id="${imageWrapperTestId}"]`
234
- )
235
- if (imageWrapper.exists()) {
236
- const expectedImageSrc = imageWrapper.attributes('src')
237
- const modalImage = imageModalWrapper.find('img')
238
- if (modalImage.exists()) {
239
- const modalImageSrc = modalImage.attributes('src')
240
- expect(modalImageSrc).toBe(expectedImageSrc)
241
- }
242
- }
243
- //Close the modal
244
- const closeButton = radioButtons.find('.visible .close')
245
- if (closeButton.exists()) {
246
- await closeButton.trigger('click')
247
- await radioButtons.vm.$nextTick()
248
- expect(imageModalWrapper.attributes('class')).toContain('hidden')
249
- }
250
- }
251
- }
252
- }
206
+ // Since we just clicked on image miniature
207
+ // lets check has the corresponding modal been opened
208
+ // and is the correct image displayed
209
+ const imageModalWrapperTestId = testedRadioWrapperWithImage
210
+ .attributes('data-test-id')
211
+ .replace('radioWrapper_', 'radioModal_')
212
+ const imageModalWrapper = testedRadioWrapperWithImage.find(
213
+ `[data-test-id="${imageModalWrapperTestId}"]`
214
+ )
215
+ expect(imageModalWrapper.attributes('class')).toContain('visible')
216
+ const imageWrapperTestId = testedRadioWrapperWithImage
217
+ .attributes('data-test-id')
218
+ .replace('radioWrapper_', 'radioImage_')
219
+ const imageWrapper = testedRadioWrapperWithImage.find(
220
+ `[data-test-id="${imageWrapperTestId}"]`
221
+ )
222
+ const expectedImageSrc = imageWrapper.attributes('src')
223
+ const modalImageSrc = imageModalWrapper.find('img').attributes('src')
224
+ expect(modalImageSrc).toBe(expectedImageSrc)
225
+ //Close the modal
226
+ radioButtons.find('.visible .close').trigger('click')
227
+ await radioButtons.vm.$nextTick()
228
+ expect(imageModalWrapper.attributes('class')).toContain('hidden')
253
229
  }),
254
230
  it('test hover on Info Icon', async () => {
255
231
  // Get RadioWrapper with Info Icon
256
232
  const arrayOfWrappersWithInfoIcon = findRadioWrappersByCriteria([
257
233
  'hasInfoIcon',
258
234
  ])
259
-
260
- // Ensure we have at least one wrapper with Info Icon
261
- expect(arrayOfWrappersWithInfoIcon.length).toBeGreaterThan(0)
262
-
263
235
  //Select tested item and get expected text within the info badge
264
236
  const testedRadioWrapper =
265
237
  arrayOfWrappersWithInfoIcon[arrayOfWrappersWithInfoIcon.length - 1]
266
238
  const valueOfTestedRadioWrapper = testedRadioWrapper
267
239
  .attributes('data-test-id')
268
240
  .replace('radioWrapper_', '')
269
- const expectedText = defaultRadioButtonProps.options.find(
270
- (el) => el.value === valueOfTestedRadioWrapper
271
- ).infoText
241
+ const expectedText = defaultRadioButtonProps.options.find((el) => el.value === valueOfTestedRadioWrapper).infoText
272
242
  const iconForHover = testedRadioWrapper.find(
273
243
  '[data-test-id="infoText_trigger"]'
274
244
  )
275
-
276
- // Check if the icon exists before triggering the event
277
- // expect(iconForHover.exists()).toBe(true)
278
-
279
- if (iconForHover.exists()) {
280
- await iconForHover.trigger('mouseenter')
281
- await radioButtons.vm.$nextTick() // Wait for the next tick to ensure reactivity
282
- expect(testedRadioWrapper.text()).toContain(expectedText)
283
- }
245
+ await iconForHover.trigger('mouseenter')
246
+ expect(testedRadioWrapper.text()).toContain(expectedText)
284
247
  }),
285
248
  it('Test the click again after all the manipulations', async () => {
286
249
  const uncheckedWrapperArray = findRadioWrappersByCriteria([
@@ -17,9 +17,7 @@
17
17
  >
18
18
  <InputLabel
19
19
  :font-color="
20
- labelFontColor || colorMode == 'dark' || colorMode == 'transparent'
21
- ? 'white'
22
- : 'eturnityGrey'
20
+ labelFontColor || colorMode == 'dark' ? 'white' : 'eturnityGrey'
23
21
  "
24
22
  :font-size="fontSize"
25
23
  >{{ label }}
@@ -42,26 +40,18 @@
42
40
  <SelectButton
43
41
  ref="select"
44
42
  :bg-color="
45
- buttonBgColor || colorMode == 'dark'
46
- ? 'transparentBlack1'
47
- : colorMode == 'transparent'
48
- ? 'transparent'
49
- : 'white'
43
+ buttonBgColor || colorMode == 'dark' ? 'transparentBlack1' : 'white'
50
44
  "
51
45
  class="select-button"
52
- :color-mode="colorMode"
53
46
  :data-id="dataId"
54
47
  :disabled="disabled"
55
48
  :font-color="
56
- buttonFontColor || colorMode == 'dark' || colorMode == 'transparent'
57
- ? 'white'
58
- : 'black'
49
+ buttonFontColor || colorMode == 'dark' ? 'white' : 'black'
59
50
  "
60
51
  :font-size="fontSize"
61
52
  :has-error="hasError"
62
53
  :has-no-padding="isSearchBarVisible || !hasSelectButtonPadding"
63
54
  :height="height"
64
- :is-search-bar-visible="isSearchBarVisible"
65
55
  :no-relative="noRelative"
66
56
  :padding-left="paddingLeft"
67
57
  :select-height="selectHeight"
@@ -82,11 +72,7 @@
82
72
  ref="searchInput"
83
73
  background-color="transparent"
84
74
  :font-color="
85
- buttonFontColor ||
86
- colorMode == 'dark' ||
87
- colorMode == 'transparent'
88
- ? 'white'
89
- : 'black'
75
+ buttonFontColor || colorMode == 'dark' ? 'white' : 'black'
90
76
  "
91
77
  :font-size="fontSize"
92
78
  input-height="34px"
@@ -106,30 +92,26 @@
106
92
  >
107
93
  <slot name="selector" :selected-value="selectedValue"></slot>
108
94
  </Selector>
109
- <Caret
110
- class="caret_dropdown"
111
- :color-mode="colorMode"
112
- @click.stop="toggleCaretDropdown"
113
- >
95
+ <Caret class="caret_dropdown" @click.stop="toggleCaretDropdown">
114
96
  <Icon
115
97
  v-if="isDropdownOpen"
116
98
  :color="
117
- caretColor || colorMode == 'dark' || colorMode == 'transparent'
99
+ caretColor || colorMode == 'dark'
118
100
  ? 'white'
119
101
  : 'transparentBlack1'
120
102
  "
121
103
  name="arrow_up"
122
- :size="colorMode === 'transparent' ? '8px' : '12px'"
104
+ size="12px"
123
105
  />
124
106
  <Icon
125
107
  v-else
126
108
  :color="
127
- caretColor || colorMode == 'dark' || colorMode == 'transparent'
109
+ caretColor || colorMode == 'dark'
128
110
  ? 'white'
129
111
  : 'transparentBlack1'
130
112
  "
131
113
  name="arrow_down"
132
- :size="colorMode === 'transparent' ? '8px' : '12px'"
114
+ size="12px"
133
115
  />
134
116
  </Caret>
135
117
  </SelectButton>
@@ -139,27 +121,15 @@
139
121
  v-show="isSelectDropdownShown"
140
122
  ref="dropdown"
141
123
  :bg-color="
142
- dropdownBgColor ||
143
- colorMode == 'dark' ||
144
- colorMode == 'transparent'
145
- ? 'black'
146
- : 'white'
124
+ dropdownBgColor || colorMode == 'dark' ? 'black' : 'white'
147
125
  "
148
126
  :dropdown-position="dropdownPosition"
149
127
  :font-color="
150
- dropdownFontColor ||
151
- colorMode == 'dark' ||
152
- colorMode == 'transparent'
153
- ? 'white'
154
- : 'black'
128
+ dropdownFontColor || colorMode == 'dark' ? 'white' : 'black'
155
129
  "
156
130
  :font-size="fontSize"
157
131
  :hovered-bg-color="
158
- colorMode == 'dark'
159
- ? '#000000'
160
- : colorMode == 'transparent'
161
- ? 'grey6'
162
- : dropdownBgColor
132
+ colorMode == 'dark' ? '#000000' : dropdownBgColor
163
133
  "
164
134
  :hovered-index="hoveredIndex"
165
135
  :hovered-value="hoveredValue"
@@ -216,15 +186,12 @@
216
186
  const CARET_WIDTH = '30px'
217
187
  const BORDER_WIDTH = '1px'
218
188
 
219
- const CaretAttrs = { colorMode: String }
220
- const Caret = styled('div', CaretAttrs)`
189
+ const Caret = styled.div`
221
190
  display: flex;
222
191
  align-items: center;
223
192
  justify-content: center;
224
- width: ${(props) =>
225
- props.colorMode === 'transparent' ? '15px' : CARET_WIDTH};
226
- min-width: ${(props) =>
227
- props.colorMode === 'transparent' ? '15px' : CARET_WIDTH};
193
+ width: ${CARET_WIDTH};
194
+ min-width: ${CARET_WIDTH};
228
195
  height: 100%;
229
196
  align-items: center;
230
197
  cursor: pointer;
@@ -263,7 +230,6 @@
263
230
  `
264
231
  const OptionalLabel = styled.span`
265
232
  font-weight: 300;
266
- text-transform: lowercase;
267
233
  `
268
234
  const inputProps = {
269
235
  selectWidth: String,
@@ -308,8 +274,6 @@
308
274
  noRelative: Boolean,
309
275
  tablePaddingLeft: String,
310
276
  showDisabledBackground: Boolean,
311
- colorMode: String,
312
- isSearchBarVisible: Boolean,
313
277
  }
314
278
  const SelectButton = styled('div', selectButtonAttrs)`
315
279
  position: ${(props) => (props.noRelative ? 'static' : 'relative')};
@@ -317,11 +281,7 @@
317
281
  border-radius: 4px;
318
282
  max-width: ${(props) => (props.selectWidth ? props.selectWidth : '100%')};
319
283
  ${(props) =>
320
- props.colorMode === 'transparent'
321
- ? props.isSearchBarVisible
322
- ? 'padding: 10px 15px 10px 5px;'
323
- : 'padding: 10px 15px;'
324
- : props.isSearchBarVisible
284
+ props.isSearchBarVisible
325
285
  ? ''
326
286
  : `padding-left: ${
327
287
  props.hasNoPadding
@@ -349,22 +309,14 @@
349
309
  hasError ? theme.colors.red : theme.colors.grey4
350
310
  }
351
311
  `}
352
- opacity: ${(props) =>
353
- props.colorMode === 'transparent' && props.disabled ? '0.4' : '1'};
354
- background-color: ${(props) =>
355
- props.colorMode === 'transparent'
356
- ? 'transparent'
357
- : props.disabled && props.showDisabledBackground
358
- ? props.theme.colors.disabled
312
+ background-color:${(props) =>
313
+ props.disabled && props.showDisabledBackground
314
+ ? props.theme.colors.grey5
359
315
  : props.theme.colors[props.bgColor]
360
316
  ? props.theme.colors[props.bgColor]
361
317
  : props.bgColor};
362
318
  color: ${(props) =>
363
- props.colorMode === 'transparent'
364
- ? props.theme.colors.white
365
- : props.disabled && props.showDisabledBackground
366
- ? props.theme.colors.black
367
- : props.theme.colors[props.fontColor]
319
+ props.theme.colors[props.fontColor]
368
320
  ? props.theme.colors[props.fontColor]
369
321
  : props.fontColor};
370
322
  ${(props) => (props.disabled ? 'pointer-events: none' : '')};
@@ -661,7 +613,7 @@
661
613
  if (this.isDropdownOpen) {
662
614
  return this.$refs.dropdown.$el.childElementCount > 1
663
615
  ? this.$refs.dropdown.$el.childElementCount
664
- : this.$refs.dropdown.$el.children[0]
616
+ : !!this.$refs.dropdown.$el.children[0]
665
617
  ? this.$refs.dropdown.$el.children[0].childElementCount
666
618
  : 0
667
619
  }
@@ -1,12 +1,6 @@
1
1
  <template>
2
2
  <OptionContainer
3
- :background-color="
4
- colorMode == 'dark'
5
- ? '#000000'
6
- : colorMode == 'transparent'
7
- ? 'black'
8
- : backgroundColor
9
- "
3
+ :background-color="colorMode == 'dark' ? '#000000' : backgroundColor"
10
4
  :cursor-type="cursorType"
11
5
  :data-value="value"
12
6
  :disabled-bg-color="disabledBgColor"
@@ -14,8 +8,6 @@
14
8
  :hovered-bg-color="
15
9
  colorMode == 'dark'
16
10
  ? '#000000'
17
- : colorMode == 'transparent'
18
- ? 'grey6'
19
11
  : hoveredBgColor
20
12
  ? hoveredBgColor
21
13
  : 'grey5'
@@ -138,8 +130,7 @@
138
130
  default: '12px 10px',
139
131
  },
140
132
  textColor: {
141
- type: String,
142
- required: false,
133
+ type: true,
143
134
  default: 'inherit',
144
135
  },
145
136
  },
@@ -12,7 +12,7 @@
12
12
  :name="iconName"
13
13
  size="10px"
14
14
  />
15
- <span :title="label">{{ label }}</span>
15
+ <span>{{ label }}</span>
16
16
  </MarkerContainer>
17
17
  </PageContainer>
18
18
  </template>
@@ -60,13 +60,6 @@
60
60
  border-radius: 4px;
61
61
  white-space: nowrap;
62
62
  cursor: ${(props) => (props.isEditionAllowed ? 'pointer' : props.cursor)};
63
- overflow: hidden;
64
- text-overflow: ellipsis;
65
-
66
- span {
67
- overflow: hidden;
68
- text-overflow: ellipsis;
69
- }
70
63
  `
71
64
 
72
65
  export default {
@@ -3,7 +3,6 @@
3
3
  <Container>
4
4
  <SpinnerWrapper data-test-id="spinner_full_wrapper">
5
5
  <SpinnerSvg
6
- :class="{ white: isWhite }"
7
6
  data-test-id="spinner_full_icon"
8
7
  :style="{ width: size, height: size }"
9
8
  />
@@ -17,7 +16,6 @@
17
16
  >
18
17
  <SpinnerWrapper data-test-id="spinner_wrapper">
19
18
  <SpinnerSvg
20
- :class="{ white: isWhite }"
21
19
  data-test-id="spinner_icon"
22
20
  :style="{ width: size, height: size }"
23
21
  />
@@ -56,10 +54,6 @@
56
54
  const SpinnerWrapper = styled.div`
57
55
  width: ${(props) => (props.size ? props.size : '60px')};
58
56
  height: auto;
59
-
60
- .white {
61
- filter: brightness(0) invert(1);
62
- }
63
57
  `
64
58
 
65
59
  export default {
@@ -86,11 +80,6 @@
86
80
  default: '60px',
87
81
  type: String,
88
82
  },
89
- isWhite: {
90
- required: false,
91
- default: false,
92
- type: Boolean,
93
- },
94
83
  },
95
84
  }
96
85
  </script>
@@ -10,7 +10,11 @@
10
10
  ref="tableRef"
11
11
  :is-position-absolute="doesTableContainDraggables"
12
12
  >
13
- <TableWrapper class="main-table-wrapper" :full-width="fullWidth">
13
+ <TableWrapper
14
+ class="main-table-wrapper"
15
+ :full-width="fullWidth"
16
+ :is-overflow-hidden="isOverflowHidden"
17
+ >
14
18
  <SpinnerWrapper v-if="isLoading">
15
19
  <Spinner />
16
20
  </SpinnerWrapper>
@@ -70,12 +74,12 @@
70
74
  `}
71
75
  `
72
76
 
73
- const wrapperAttrs = { fullWidth: Boolean }
77
+ const wrapperAttrs = { fullWidth: Boolean, isOverflowHidden: Boolean }
74
78
  const TableWrapper = styled('div', wrapperAttrs)`
75
79
  width: ${(props) => (props.fullWidth ? '100%' : 'fit-content')};
76
80
  max-width: 100%;
77
- overflow-x: auto;
78
- overflow-y: hidden;
81
+ ${(props) =>
82
+ props.isOverflowHidden ? 'overflow-x: auto; overflow-y: hidden;' : ''}
79
83
 
80
84
  ::-webkit-scrollbar {
81
85
  height: 10px; //height of the whole scrollbar area
@@ -409,6 +413,10 @@
409
413
  required: false,
410
414
  default: false,
411
415
  },
416
+ isOverflowHidden: {
417
+ required: false,
418
+ default: true,
419
+ },
412
420
  titleText: {
413
421
  required: false,
414
422
  default: null,
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none">
2
- <path d="M3 2L7 5L11 2" stroke="white" stroke-width="1.27273" class="fix"/>
3
- <path d="M3 12L7 9L11 12" stroke="white" stroke-width="1.27273" class="fix"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M4.22998 11.8962H10.5006H12.2505V10.1463V8.97906H14.0004V5.47917H12.2505V4.31283V2.56289V2.55151H10.5006V2.56289H8.58218L7.76617 4.31283H10.5006V10.1463H5.04599L4.22998 11.8962Z" fill="white"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M7.2622 4.79738C6.91629 4.63687 6.53076 4.54729 6.12431 4.54729C4.63054 4.54729 3.41919 5.75796 3.41919 7.25241C3.41919 8.33588 4.05591 9.26984 4.97534 9.70158L7.2622 4.79738ZM5.44786 3.11681C5.44786 3.49042 5.7507 3.79326 6.12431 3.79326C6.49793 3.79326 6.80077 3.49042 6.80077 3.11681V1.76459C6.80077 1.39097 6.49793 1.08813 6.12431 1.08813C5.7507 1.08813 5.44786 1.39097 5.44786 1.76459V3.11681ZM2.02818 7.88939H0.675962C0.302349 7.88939 -0.000488281 7.58655 -0.000488281 7.21294C-0.000488281 6.83932 0.302349 6.53649 0.675962 6.53649H2.02818C2.4018 6.53649 2.70463 6.83932 2.70463 7.21294C2.70463 7.58655 2.4018 7.88939 2.02818 7.88939ZM3.7057 10.5877L2.74955 11.5439C2.4855 11.8079 2.05745 11.8079 1.7934 11.5439C1.52935 11.2798 1.52935 10.8518 1.7934 10.5877L2.74955 9.63155C3.0136 9.36751 3.44165 9.36751 3.7057 9.63155C3.96975 9.8956 3.96975 10.3237 3.7057 10.5877ZM2.74955 4.79432L1.7934 3.83817C1.52935 3.57412 1.52935 3.14607 1.7934 2.88202C2.05745 2.61797 2.4855 2.61797 2.74955 2.88202L3.7057 3.83817C3.96975 4.10222 3.96975 4.53027 3.7057 4.79432C3.44165 5.05837 3.0136 5.05837 2.74955 4.79432Z" fill="white"/>
4
- </svg>
@@ -1,3 +0,0 @@
1
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M11.0722 3.6H1.6V10.4H11.0722L7.87332 7.60217L7.18484 7L7.87332 6.39783L11.0722 3.6ZM12.4 9.43572V4.56428L9.61516 7L12.4 9.43572ZM0 2H1.6H12.4H14V3.6V10.4V12H12.4H1.6H0V10.4V3.6V2Z" fill="white"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M0.875 7.63636H4.55V0H9.45V7.63636H13.125L7 14L0.875 7.63636Z" fill="white"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M0.875 6.36364H4.55V14H9.45V6.36364H13.125L7 0L0.875 6.36364Z" fill="#B2B9C5"/>
3
- </svg>
@@ -1,6 +0,0 @@
1
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="3.11079" y="3.10981" width="7.77778" height="7.77778" stroke="white" stroke-width="1.55556"/>
3
- <line x1="3.72749" y1="10.3387" x2="10.7275" y2="3.3387" stroke="white" stroke-width="1.55556"/>
4
- <line x1="-0.000366211" y1="7.05425" x2="2.99963" y2="7.05425" stroke="white" stroke-width="1.55556"/>
5
- <line x1="10.9994" y1="6.99957" x2="13.9994" y2="6.99957" stroke="white" stroke-width="1.55556"/>
6
- </svg>
@@ -1,5 +0,0 @@
1
- <svg width="10" height="11" viewBox="0 0 10 11" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M2.85714 1.92857C2.85714 2.71755 2.21755 3.35714 1.42857 3.35714C0.639593 3.35714 0 2.71755 0 1.92857C0 1.13959 0.639593 0.5 1.42857 0.5C2.21755 0.5 2.85714 1.13959 2.85714 1.92857Z" fill="white"/>
3
- <path d="M10 9.07143C10 9.86041 9.36041 10.5 8.57143 10.5C7.78245 10.5 7.14286 9.86041 7.14286 9.07143C7.14286 8.28245 7.78245 7.64286 8.57143 7.64286C9.36041 7.64286 10 8.28245 10 9.07143Z" fill="white"/>
4
- <path d="M5.71429 3C5.71429 2.40827 6.19398 1.92857 6.78571 1.92857C7.37745 1.92857 7.85714 2.40827 7.85714 3V6.21429H9.28571V3C9.28571 1.61929 8.16643 0.5 6.78571 0.5C5.405 0.5 4.28571 1.61929 4.28571 3V8C4.28571 8.59173 3.80602 9.07143 3.21429 9.07143C2.62255 9.07143 2.14286 8.59173 2.14286 8V4.78571H0.714286V8C0.714286 9.38071 1.83357 10.5 3.21429 10.5C4.595 10.5 5.71429 9.38071 5.71429 8V3Z" fill="white"/>
5
- </svg>