@weni/unnnic-system 3.8.2-alpha.2 → 3.9.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 (280) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/dist/components/Accordion/Accordion.vue.d.ts +1 -1
  3. package/dist/components/Alert/Alert.vue.d.ts +116 -17
  4. package/dist/components/Alert/Alert.vue.d.ts.map +1 -1
  5. package/dist/components/Alert/Version1dot1.vue.d.ts +38 -2
  6. package/dist/components/Alert/Version1dot1.vue.d.ts.map +1 -1
  7. package/dist/components/AudioRecorder/AudioHandler.vue.d.ts +2 -2
  8. package/dist/components/AudioRecorder/AudioPlayer.vue.d.ts +1 -1
  9. package/dist/components/AudioRecorder/AudioRecorder.vue.d.ts +5 -5
  10. package/dist/components/AvatarIcon/AvatarIcon.vue.d.ts +3 -3
  11. package/dist/components/Banner/Banner.vue.d.ts +1 -1
  12. package/dist/components/Banner/InfoBanner.vue.d.ts +1 -1
  13. package/dist/components/Breadcrumb/Breadcrumb.vue.d.ts +1 -1
  14. package/dist/components/Button/Button.vue.d.ts +1 -1
  15. package/dist/components/Button/Button.vue.d.ts.map +1 -1
  16. package/dist/components/Button/ButtonIcon.vue.d.ts +1 -1
  17. package/dist/components/Button/types.d.ts +1 -1
  18. package/dist/components/Button/types.d.ts.map +1 -1
  19. package/dist/components/Card/AccountCard.vue.d.ts +5 -5
  20. package/dist/components/Card/BlankCard.vue.d.ts +1 -1
  21. package/dist/components/Card/Card.vue.d.ts +27 -27
  22. package/dist/components/Card/CardCompany.vue.d.ts +414 -11
  23. package/dist/components/Card/CardData.vue.d.ts +1 -1
  24. package/dist/components/Card/CardStatusesContainer.vue.d.ts +5 -5
  25. package/dist/components/Card/ContentCard.vue.d.ts +3 -3
  26. package/dist/components/Card/DashCard.vue.d.ts +5 -5
  27. package/dist/components/Card/DefaultCard.vue.d.ts +1 -1
  28. package/dist/components/Card/MarketplaceCard.vue.d.ts +2 -2
  29. package/dist/components/Card/SimpleCard.vue.d.ts +3 -3
  30. package/dist/components/Card/StatusCard.vue.d.ts +2 -2
  31. package/dist/components/Card/TitleCard.vue.d.ts +3 -3
  32. package/dist/components/CardImage/CardImage.vue.d.ts +31 -24
  33. package/dist/components/CardInformation/CardInformation.vue.d.ts +5 -5
  34. package/dist/components/CardProject/CardProject.vue.d.ts +3 -3
  35. package/dist/components/Carousel/Carousel.vue.d.ts +416 -13
  36. package/dist/components/Carousel/TagCarousel.vue.d.ts +415 -12
  37. package/dist/components/ChartBar/ChartBar.vue.d.ts +5 -5
  38. package/dist/components/ChartLine/ChartLine.vue.d.ts +1 -1
  39. package/dist/components/ChatText/ChatText.vue.d.ts +2 -2
  40. package/dist/components/ChatsContact/ChatsContact.vue.d.ts +446 -21
  41. package/dist/components/ChatsDashboardTagLive/ChatsDashboardTagLive.vue.d.ts +1 -1
  42. package/dist/components/ChatsHeader/ChatsHeader.vue.d.ts +1 -1
  43. package/dist/components/ChatsHeader/ChatsHeader.vue.d.ts.map +1 -1
  44. package/dist/components/ChatsMessage/ChatsMessage.vue.d.ts +5 -5
  45. package/dist/components/ChatsMessage/ChatsMessageStatusBackdrop.vue.d.ts +2 -2
  46. package/dist/components/ChatsNavbar/ChatsNavbar.vue.d.ts +1 -1
  47. package/dist/components/ChatsUserAvatar/ChatsUserAvatar.vue.d.ts +2 -2
  48. package/dist/components/Checkbox/Checkbox.vue.d.ts +26 -19
  49. package/dist/components/Checkbox/Checkbox.vue.d.ts.map +1 -1
  50. package/dist/components/Comment/Comment.vue.d.ts +1 -1
  51. package/dist/components/DataArea/DataArea.vue.d.ts +2 -2
  52. package/dist/components/DataTable/index.vue.d.ts +1 -1
  53. package/dist/components/DataTable/index.vue.d.ts.map +1 -1
  54. package/dist/components/DateFilter/DateFilter.vue.d.ts +41 -251
  55. package/dist/components/DatePicker/DatePicker.vue.d.ts +4 -4
  56. package/dist/components/Drawer/Drawer.vue.d.ts +4 -4
  57. package/dist/components/Dropdown/Dropdown.vue.d.ts +1 -1
  58. package/dist/components/Dropdown/LanguageSelect.vue.d.ts +3 -3
  59. package/dist/components/Flag.vue.d.ts +2 -2
  60. package/dist/components/FormElement/FormElement.vue.d.ts +28 -51
  61. package/dist/components/FormElement/FormElement.vue.d.ts.map +1 -1
  62. package/dist/components/Icon.vue.d.ts +1 -1
  63. package/dist/components/Icon.vue.d.ts.map +1 -1
  64. package/dist/components/IconLoading/IconLoading.vue.d.ts +1 -1
  65. package/dist/components/ImportCard/ImportCard.vue.d.ts +4 -4
  66. package/dist/components/Input/BaseInput.vue.d.ts +2 -33
  67. package/dist/components/Input/BaseInput.vue.d.ts.map +1 -1
  68. package/dist/components/Input/Input.vue.d.ts +41 -251
  69. package/dist/components/Input/Input.vue.d.ts.map +1 -1
  70. package/dist/components/Input/TextInput.vue.d.ts +25 -85
  71. package/dist/components/Input/TextInput.vue.d.ts.map +1 -1
  72. package/dist/components/InputDatePicker/InputDatePicker.vue.d.ts +47 -257
  73. package/dist/components/InputNext/InputNext.vue.d.ts +5 -5
  74. package/dist/components/Label/Label.vue.d.ts +15 -9
  75. package/dist/components/Label/Label.vue.d.ts.map +1 -1
  76. package/dist/components/Modal/Modal.vue.d.ts +2 -2
  77. package/dist/components/ModalDialog/ModalDialog.vue.d.ts +34 -199
  78. package/dist/components/ModalDialog/ModalDialog.vue.d.ts.map +1 -1
  79. package/dist/components/ModalNext/ModalNext.vue.d.ts +46 -256
  80. package/dist/components/ModalUpload/ModalUpload.vue.d.ts +9 -9
  81. package/dist/components/MoodRating/MoodRating.vue.d.ts +1 -1
  82. package/dist/components/MultiSelect/MultiSelect.vue.d.ts +14 -20
  83. package/dist/components/Pagination/Pagination.vue.d.ts +3 -3
  84. package/dist/components/ProgressBar/ProgressBar.vue.d.ts +1 -1
  85. package/dist/components/Radio/Radio.vue.d.ts +6 -8
  86. package/dist/components/Radio/Radio.vue.d.ts.map +1 -1
  87. package/dist/components/SelectSmart/SelectSmart.vue.d.ts +470 -120
  88. package/dist/components/SelectSmart/SelectSmartMultipleHeader.vue.d.ts +414 -11
  89. package/dist/components/SelectSmart/SelectSmartOption.vue.d.ts +28 -21
  90. package/dist/components/SelectSmart/SelectSmartOption.vue.d.ts.map +1 -1
  91. package/dist/components/SelectTime/index.vue.d.ts +25 -85
  92. package/dist/components/SkeletonLoading/skeletonTheme.vue.d.ts +1 -1
  93. package/dist/components/Slider/Slider.vue.d.ts +2 -2
  94. package/dist/components/StarRating/StarRating.vue.d.ts +1 -1
  95. package/dist/components/Switch/Switch.vue.d.ts +21 -55
  96. package/dist/components/Switch/Switch.vue.d.ts.map +1 -1
  97. package/dist/components/Tab/Tab.vue.d.ts +2 -13
  98. package/dist/components/TableNext/TableBodyCell.vue.d.ts +2 -2
  99. package/dist/components/TableNext/TablePagination.vue.d.ts +3 -3
  100. package/dist/components/TabsExpanded/TabsExpanded.vue.d.ts +1 -1
  101. package/dist/components/Tag/BrandTag.vue.d.ts +51 -0
  102. package/dist/components/Tag/BrandTag.vue.d.ts.map +1 -0
  103. package/dist/components/Tag/DefaultTag.vue.d.ts +83 -4
  104. package/dist/components/Tag/DefaultTag.vue.d.ts.map +1 -1
  105. package/dist/components/Tag/IndicatorTag.vue.d.ts +151 -0
  106. package/dist/components/Tag/IndicatorTag.vue.d.ts.map +1 -0
  107. package/dist/components/Tag/Tag.vue.d.ts +414 -12
  108. package/dist/components/Tag/Tag.vue.d.ts.map +1 -1
  109. package/dist/components/Tag/TagNext.vue.d.ts +24 -0
  110. package/dist/components/Tag/TagNext.vue.d.ts.map +1 -0
  111. package/dist/components/TextArea/TextArea.vue.d.ts +30 -66
  112. package/dist/components/TextArea/TextArea.vue.d.ts.map +1 -1
  113. package/dist/components/ToolTip/ToolTip.vue.d.ts +1 -1
  114. package/dist/components/Tour/Tour.vue.d.ts +3 -3
  115. package/dist/components/Tour/TourPopover.vue.d.ts +3 -3
  116. package/dist/components/UploadArea/UploadArea.vue.d.ts +4 -4
  117. package/dist/components/index.d.ts +6701 -5734
  118. package/dist/components/index.d.ts.map +1 -1
  119. package/dist/components/ui/popover/PopoverContent.vue.d.ts +1 -1
  120. package/dist/components/ui/popover/PopoverContent.vue.d.ts.map +1 -1
  121. package/dist/components/ui/{dialog/Dialog.vue.d.ts → tabs/Tabs.vue.d.ts} +7 -6
  122. package/dist/components/ui/tabs/Tabs.vue.d.ts.map +1 -0
  123. package/dist/components/ui/{dialog/DialogTitle.vue.d.ts → tabs/TabsContent.vue.d.ts} +3 -3
  124. package/dist/components/ui/tabs/TabsContent.vue.d.ts.map +1 -0
  125. package/dist/components/ui/{dialog/DialogFooter.vue.d.ts → tabs/TabsList.vue.d.ts} +5 -7
  126. package/dist/components/ui/tabs/TabsList.vue.d.ts.map +1 -0
  127. package/dist/components/ui/{dialog/DialogHeader.vue.d.ts → tabs/TabsTrigger.vue.d.ts} +5 -11
  128. package/dist/components/ui/tabs/TabsTrigger.vue.d.ts.map +1 -0
  129. package/dist/components/ui/tabs/index.d.ts +5 -0
  130. package/dist/components/ui/tabs/index.d.ts.map +1 -0
  131. package/dist/{es-4f3d094b.mjs → es-4b7090cd.mjs} +1 -1
  132. package/dist/{index-43281ff3.mjs → index-65c23d9a.mjs} +15222 -15709
  133. package/dist/locales/en.json.d.ts +1 -2
  134. package/dist/locales/es.json.d.ts +1 -2
  135. package/dist/locales/pt_br.json.d.ts +1 -2
  136. package/dist/{pt-br-8a34ccb7.mjs → pt-br-6324858c.mjs} +1 -1
  137. package/dist/style.css +1 -1
  138. package/dist/unnnic.mjs +185 -194
  139. package/dist/unnnic.umd.js +39 -39
  140. package/dist/utils/call.d.ts +1 -2
  141. package/dist/utils/call.d.ts.map +1 -1
  142. package/package.json +2 -2
  143. package/src/assets/scss/tailwind.scss +0 -8
  144. package/src/components/Alert/Alert.vue +135 -26
  145. package/src/components/Alert/AlertBanner.vue +182 -0
  146. package/src/components/Alert/AlertCaller.vue +49 -0
  147. package/src/components/Alert/Version1dot1.vue +36 -0
  148. package/src/components/Alert/__tests__/Alert.spec.js +45 -2
  149. package/src/components/Alert/__tests__/AlertBanner.spec.js +89 -0
  150. package/src/components/Alert/__tests__/AlertCaller.spec.js +98 -0
  151. package/src/components/Alert/__tests__/Version1dot1.spec.js +21 -0
  152. package/src/components/Alert/__tests__/__snapshots__/Alert.spec.js.snap +1 -1
  153. package/src/components/Alert/__tests__/__snapshots__/AlertBanner.spec.js.snap +2 -2
  154. package/src/components/Alert/__tests__/__snapshots__/Version1dot1.spec.js.snap +3 -3
  155. package/src/components/AvatarIcon/__tests__/__snapshots__/AvatarIcon.spec.js.snap +1 -1
  156. package/src/components/Button/Button.vue +117 -68
  157. package/src/components/Button/types.ts +1 -0
  158. package/src/components/ChatsContact/ChatsContact.vue +6 -10
  159. package/src/components/Checkbox/Checkbox.vue +65 -117
  160. package/src/components/Checkbox/__tests__/Checkbox.spec.js +21 -6
  161. package/src/components/Collapse/__tests__/__snapshots__/Collapse.spec.js.snap +1 -3
  162. package/src/components/Drawer/__tests__/__snapshots__/Drawer.spec.js.snap +3 -3
  163. package/src/components/FormElement/FormElement.vue +93 -63
  164. package/src/components/Icon.vue +0 -2
  165. package/src/components/Input/BaseInput.vue +14 -33
  166. package/src/components/Input/Input.scss +21 -20
  167. package/src/components/Input/Input.vue +56 -79
  168. package/src/components/Input/TextInput.vue +68 -80
  169. package/src/components/Input/__test__/Input.spec.js +33 -13
  170. package/src/components/Input/__test__/TextInput.spec.js +8 -6
  171. package/src/components/Input/__test__/__snapshots__/Input.spec.js.snap +1 -1
  172. package/src/components/Input/__test__/__snapshots__/TextInput.spec.js.snap +1 -1
  173. package/src/components/Label/Label.vue +21 -52
  174. package/src/components/Label/__tests__/Label.spec.js +1 -1
  175. package/src/components/ModalDialog/ModalDialog.vue +146 -60
  176. package/src/components/ModalDialog/__tests__/__snapshots__/ModalDialog.spec.js.snap +22 -1
  177. package/src/components/Radio/Radio.vue +67 -98
  178. package/src/components/Radio/__test__/Radio.spec.js +20 -14
  179. package/src/components/Radio/__test__/__snapshots__/Radio.spec.js.snap +1 -1
  180. package/src/components/SelectSmart/SelectSmart.vue +3 -4
  181. package/src/components/Switch/Switch.vue +91 -132
  182. package/src/components/Switch/__tests__/Switch.spec.js +75 -8
  183. package/src/components/Switch/__tests__/__snapshots__/Switch.spec.js.snap +1 -1
  184. package/src/components/Tab/Tab.vue +23 -37
  185. package/src/components/Tab/__test__/__snapshots__/Tab.spec.js.snap +1 -1
  186. package/src/components/TableNext/__test__/__snapshots__/TableNext.spec.js.snap +2 -2
  187. package/src/components/TableNext/__test__/__snapshots__/TablePagination.spec.js.snap +2 -2
  188. package/src/components/Tag/BrandTag.vue +96 -0
  189. package/src/components/Tag/DefaultTag.vue +107 -46
  190. package/src/components/Tag/IndicatorTag.vue +107 -0
  191. package/src/components/Tag/Tag.vue +79 -32
  192. package/src/components/Tag/TagNext.vue +60 -0
  193. package/src/components/TextArea/TextArea.vue +11 -34
  194. package/src/components/index.ts +27 -48
  195. package/src/components/ui/tabs/Tabs.vue +19 -0
  196. package/src/components/ui/tabs/TabsContent.vue +22 -0
  197. package/src/components/ui/tabs/TabsList.vue +34 -0
  198. package/src/components/ui/tabs/TabsTrigger.vue +79 -0
  199. package/src/components/ui/tabs/index.ts +4 -0
  200. package/src/locales/en.json +1 -2
  201. package/src/locales/es.json +1 -2
  202. package/src/locales/pt_br.json +1 -2
  203. package/src/stories/Alert.stories.js +67 -6
  204. package/src/stories/Button.stories.js +39 -29
  205. package/src/stories/Checkbox.stories.js +4 -11
  206. package/src/stories/Input.stories.js +76 -71
  207. package/src/stories/Label.stories.js +0 -7
  208. package/src/stories/ModalDialog.mdx +0 -3
  209. package/src/stories/ModalDialog.stories.js +1 -1
  210. package/src/stories/Switch.stories.js +5 -10
  211. package/src/stories/Tab.stories.js +4 -11
  212. package/src/stories/Tabs.stories.js +125 -0
  213. package/src/stories/Tag.stories.js +43 -24
  214. package/src/stories/TextArea.stories.js +2 -13
  215. package/src/types/scheme-colors.d.ts +0 -1
  216. package/src/utils/call.js +18 -46
  217. package/dist/assets/tokens/colors.json.d.ts +0 -376
  218. package/dist/components/CheckboxGroup/CheckboxGroup.vue.d.ts +0 -28
  219. package/dist/components/CheckboxGroup/CheckboxGroup.vue.d.ts.map +0 -1
  220. package/dist/components/Tag/types.d.ts +0 -18
  221. package/dist/components/Tag/types.d.ts.map +0 -1
  222. package/dist/components/Toast/Toast.vue.d.ts +0 -16
  223. package/dist/components/Toast/Toast.vue.d.ts.map +0 -1
  224. package/dist/components/Toast/ToastManager.d.ts +0 -14
  225. package/dist/components/Toast/ToastManager.d.ts.map +0 -1
  226. package/dist/components/Toast/types.d.ts +0 -35
  227. package/dist/components/Toast/types.d.ts.map +0 -1
  228. package/dist/components/ui/dialog/Dialog.vue.d.ts.map +0 -1
  229. package/dist/components/ui/dialog/DialogClose.vue.d.ts +0 -19
  230. package/dist/components/ui/dialog/DialogClose.vue.d.ts.map +0 -1
  231. package/dist/components/ui/dialog/DialogContent.vue.d.ts +0 -40
  232. package/dist/components/ui/dialog/DialogContent.vue.d.ts.map +0 -1
  233. package/dist/components/ui/dialog/DialogFooter.vue.d.ts.map +0 -1
  234. package/dist/components/ui/dialog/DialogHeader.vue.d.ts.map +0 -1
  235. package/dist/components/ui/dialog/DialogTitle.vue.d.ts.map +0 -1
  236. package/dist/components/ui/dialog/DialogTrigger.vue.d.ts +0 -19
  237. package/dist/components/ui/dialog/DialogTrigger.vue.d.ts.map +0 -1
  238. package/dist/components/ui/dialog/index.d.ts +0 -8
  239. package/dist/components/ui/dialog/index.d.ts.map +0 -1
  240. package/src/assets/icons/checkbox-checked-disabled.svg +0 -3
  241. package/src/assets/icons/checkbox-checked.svg +0 -3
  242. package/src/assets/icons/checkbox-less-disabled.svg +0 -3
  243. package/src/assets/icons/checkbox-less.svg +0 -3
  244. package/src/assets/icons/radio-checked.svg +0 -3
  245. package/src/assets/icons/switch-checked-disabled.svg +0 -3
  246. package/src/assets/icons/switch-checked.svg +0 -3
  247. package/src/components/Alert/SIMPLE_MIGRATION_GUIDE.md +0 -152
  248. package/src/components/CheckboxGroup/CheckboxGroup.vue +0 -96
  249. package/src/components/Popover/__tests__/Popover.spec.js +0 -147
  250. package/src/components/Popover/__tests__/__snapshots__/Popover.spec.js.snap +0 -8
  251. package/src/components/Popover/index.vue +0 -146
  252. package/src/components/RadioGroup/RadioGroup.vue +0 -142
  253. package/src/components/Select/SelectOption.vue +0 -65
  254. package/src/components/Select/__tests__/Select.spec.js +0 -412
  255. package/src/components/Select/__tests__/SelectItem.spec.js +0 -330
  256. package/src/components/Select/__tests__/SelectOption.spec.js +0 -174
  257. package/src/components/Select/__tests__/__snapshots__/Select.spec.js.snap +0 -97
  258. package/src/components/Select/__tests__/__snapshots__/SelectItem.spec.js.snap +0 -15
  259. package/src/components/Select/__tests__/__snapshots__/SelectOption.spec.js.snap +0 -25
  260. package/src/components/Select/index.vue +0 -245
  261. package/src/components/Tag/types.ts +0 -19
  262. package/src/components/Toast/Toast.vue +0 -246
  263. package/src/components/Toast/ToastManager.ts +0 -110
  264. package/src/components/Toast/__tests__/Toast.spec.js +0 -284
  265. package/src/components/Toast/__tests__/ToastManager.spec.js +0 -294
  266. package/src/components/Toast/types.ts +0 -57
  267. package/src/components/ui/dialog/Dialog.vue +0 -15
  268. package/src/components/ui/dialog/DialogClose.vue +0 -25
  269. package/src/components/ui/dialog/DialogContent.vue +0 -114
  270. package/src/components/ui/dialog/DialogFooter.vue +0 -46
  271. package/src/components/ui/dialog/DialogHeader.vue +0 -78
  272. package/src/components/ui/dialog/DialogTitle.vue +0 -34
  273. package/src/components/ui/dialog/DialogTrigger.vue +0 -12
  274. package/src/components/ui/dialog/index.ts +0 -7
  275. package/src/stories/CheckboxGroup.stories.js +0 -105
  276. package/src/stories/Dialog.stories.js +0 -832
  277. package/src/stories/RadioGroup.stories.js +0 -144
  278. package/src/stories/Select.stories.js +0 -158
  279. package/src/stories/Toast.mdx +0 -123
  280. package/src/stories/Toast.stories.js +0 -126
@@ -636,10 +636,9 @@ export default {
636
636
 
637
637
  margin-top: $unnnic-spacing-nano;
638
638
 
639
- border-radius: $unnnic-radius-2;
640
- border: 1px solid $unnnic-color-border-base;
639
+ border-radius: $unnnic-border-radius-sm;
641
640
 
642
- box-shadow: $unnnic-shadow-1;
641
+ box-shadow: $unnnic-shadow-level-near;
643
642
 
644
643
  background-color: $unnnic-color-background-snow;
645
644
 
@@ -656,7 +655,7 @@ export default {
656
655
 
657
656
  display: grid;
658
657
 
659
- margin: $unnnic-space-4;
658
+ margin: $unnnic-spacing-xs;
660
659
  margin-right: $unnnic-inline-xs;
661
660
  padding-right: $unnnic-inline-xs;
662
661
 
@@ -1,60 +1,49 @@
1
1
  <template>
2
- <section class="unnnic-switch">
3
- <UnnnicLabel
4
- v-if="label"
5
- :label="label"
6
- :tooltip="labelTooltip"
7
- :useHtmlTooltip="labelUseHtmlTooltip"
8
- class="unnnic-switch__label"
2
+ <div class="unnnic-switch">
3
+ <div
4
+ v-if="textLeft"
5
+ data-test-id="switch-text-left"
6
+ :class="[
7
+ 'unnnic-switch__label',
8
+ 'unnnic-switch__label__left',
9
+ `unnnic-switch__label__${size}`,
10
+ ]"
11
+ >
12
+ {{ textLeft }}
13
+ </div>
14
+
15
+ <UnnnicIcon
16
+ :class="{ 'unnnic-switch__icon': true, active: isActive }"
17
+ :icon="currentIcon"
18
+ :size="iconSize"
19
+ :scheme="iconScheme"
20
+ :lineHeight="iconLineHeight"
21
+ :disabled="disabled"
22
+ :clickable="!disabled"
23
+ data-test-id="switch-icon"
24
+ @click="toggleState"
9
25
  />
10
26
 
11
- <label
27
+ <div
28
+ v-if="textRight"
29
+ data-test-id="switch-text-right"
12
30
  :class="[
13
- 'unnnic-switch__input-wrapper',
14
- { 'unnnic-switch__input-wrapper--disabled': disabled },
31
+ 'unnnic-switch__label',
32
+ 'unnnic-switch__label__right',
33
+ `unnnic-switch__label__${size}`,
15
34
  ]"
16
35
  >
17
- <input
18
- class="unnnic-switch__input"
19
- type="checkbox"
20
- :disabled="disabled"
21
- :checked="modelValue"
22
- @change="toggleState"
23
- v-bind="pick($attrs, ['id', 'name'])"
24
- />
25
-
26
- <p
27
- v-if="option || textLeft || textRight"
28
- :class="[
29
- 'unnnic-switch__option',
30
- { 'unnnic-switch__option--disabled': disabled },
31
- ]"
32
- data-testid="switch-option"
33
- >
34
- {{ option }}
35
- {{ textLeft }}
36
- {{ textRight }}
37
- </p>
38
- </label>
39
-
40
- <p
41
- v-if="helper"
42
- class="unnnic-switch__helper"
43
- >
44
- {{ helper }}
45
- </p>
46
- </section>
36
+ {{ textRight }}
37
+ </div>
38
+ </div>
47
39
  </template>
48
40
 
49
41
  <script>
50
- import { pick } from 'lodash';
51
- import UnnnicLabel from '../Label/Label.vue';
42
+ import UnnnicIcon from '../Icon.vue';
52
43
 
53
44
  export default {
54
45
  name: 'UnnnicSwitch',
55
- components: {
56
- UnnnicLabel,
57
- },
46
+ components: { UnnnicIcon },
58
47
  props: {
59
48
  size: {
60
49
  type: String,
@@ -63,32 +52,6 @@ export default {
63
52
  return ['small', 'medium'].indexOf(value) !== -1;
64
53
  },
65
54
  },
66
-
67
- label: {
68
- type: String,
69
- default: '',
70
- },
71
-
72
- labelTooltip: {
73
- type: String,
74
- default: '',
75
- },
76
-
77
- labelUseHtmlTooltip: {
78
- type: Boolean,
79
- default: false,
80
- },
81
-
82
- option: {
83
- type: String,
84
- default: '',
85
- },
86
-
87
- helper: {
88
- type: String,
89
- default: '',
90
- },
91
-
92
55
  textLeft: {
93
56
  type: String,
94
57
  default: '',
@@ -115,6 +78,33 @@ export default {
115
78
  isActive: false,
116
79
  };
117
80
  },
81
+ computed: {
82
+ currentIcon() {
83
+ if (this.disabled) {
84
+ return this.isActive
85
+ ? 'switch-selected-disabled'
86
+ : 'switch-default-disabled';
87
+ }
88
+
89
+ return 'switch-default';
90
+ },
91
+
92
+ iconSize() {
93
+ return this.size === 'small' ? 'sm' : 'md';
94
+ },
95
+
96
+ iconScheme() {
97
+ if (this.disabled) {
98
+ return 'neutral-soft';
99
+ }
100
+
101
+ return this.isActive === false ? 'neutral-soft' : 'brand-weni';
102
+ },
103
+
104
+ iconLineHeight() {
105
+ return this.size === 'small' ? 'sm' : '';
106
+ },
107
+ },
118
108
 
119
109
  watch: {
120
110
  modelValue: {
@@ -126,8 +116,6 @@ export default {
126
116
  },
127
117
 
128
118
  methods: {
129
- pick,
130
-
131
119
  toggleState() {
132
120
  if (!this.disabled) {
133
121
  if (this.useVModel) {
@@ -145,80 +133,51 @@ export default {
145
133
  <style lang="scss" scoped>
146
134
  @use '@/assets/scss/unnnic' as *;
147
135
 
148
- $switch-width: 38px;
149
- $switch-height: 20px;
150
-
151
136
  .unnnic-switch {
152
137
  display: flex;
153
- flex-direction: column;
154
-
155
- &__input-wrapper {
156
- width: fit-content;
138
+ flex-direction: row;
157
139
 
158
- display: flex;
159
- align-items: center;
160
- column-gap: $unnnic-space-2;
140
+ &__label {
141
+ font-family: $unnnic-font-family-secondary;
142
+ font-weight: $unnnic-font-weight-regular;
143
+ color: $unnnic-color-neutral-dark;
161
144
 
162
- cursor: pointer;
145
+ margin: $unnnic-spacing-stack-nano 0;
146
+ margin-right: $unnnic-inline-nano;
163
147
 
164
- &--disabled {
165
- cursor: not-allowed;
148
+ &__small {
149
+ font-size: $unnnic-font-size-body-md;
150
+ line-height: $unnnic-font-size-body-md + $unnnic-line-height-md;
166
151
  }
167
- }
168
-
169
- &__input {
170
- appearance: none;
171
- width: $switch-width;
172
- min-width: $switch-width;
173
- height: $switch-height;
174
- margin: 0;
175
- background-color: $unnnic-color-bg-muted;
176
- border-radius: $unnnic-radius-3;
177
- box-sizing: border-box;
178
- outline: none;
179
-
180
- background-image: url('@/assets/icons/switch-checked.svg');
181
- background-repeat: no-repeat;
182
- background-position: 4px center;
183
-
184
- transition:
185
- 120ms linear background-position,
186
- 120ms linear background-color;
187
-
188
- cursor: pointer;
189
-
190
- &:checked {
191
- background-color: $unnnic-color-bg-active;
192
- background-position: 20px center;
193
- }
194
-
195
- &:disabled {
196
- background-color: $unnnic-color-bg-muted;
197
- background-image: url('@/assets/icons/switch-checked-disabled.svg');
198
152
 
199
- cursor: not-allowed;
153
+ &__medium {
154
+ font-size: $unnnic-font-size-body-gt;
155
+ line-height: $unnnic-font-size-body-gt + $unnnic-line-height-md;
200
156
  }
201
157
  }
202
158
 
203
- &__label {
204
- margin-bottom: $unnnic-space-3;
205
- }
159
+ &__icon {
160
+ align-self: center;
161
+ margin: $unnnic-spacing-stack-nano $unnnic-inline-nano;
206
162
 
207
- &__option {
208
- margin: 0;
209
- font: $unnnic-font-body;
210
- color: $unnnic-color-fg-emphasized;
163
+ :deep(#default-circle) {
164
+ transition: 0.2s linear transform;
165
+ }
211
166
 
212
- &--disabled {
213
- color: $unnnic-color-fg-muted;
167
+ &.active {
168
+ :deep(#default-circle) {
169
+ transform: translateX(45%);
170
+ }
214
171
  }
215
172
  }
173
+ }
216
174
 
217
- &__helper {
218
- margin: 0;
219
- margin-left: $switch-width + $unnnic-space-2;
220
- font: $unnnic-font-caption-2;
221
- color: $unnnic-color-fg-base;
175
+ .unnnic-icon__size {
176
+ &--md {
177
+ width: 3 * $unnnic-font-size;
178
+ }
179
+ &--sm {
180
+ width: 2 * $unnnic-font-size;
222
181
  }
223
182
  }
224
183
  </style>
@@ -12,26 +12,93 @@ describe('Switch', () => {
12
12
  beforeEach(() => {
13
13
  wrapper = createWrapper({ modelValue: false });
14
14
  });
15
+ it('should render the component correctly with default props', () => {
16
+ expect(wrapper.exists()).toBe(true);
17
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).exists()).toBe(true);
18
+ expect(wrapper.text()).toBe('');
19
+ });
20
+
21
+ it('should render the left text (textLeft) when provided', async () => {
22
+ await wrapper.setProps({ textLeft: 'Left Text' });
23
+
24
+ // This check ensures that the icon is placed before the switch text
25
+ const switchChildren = wrapper.findComponent(Switch).element.children;
26
+ expect(switchChildren[0].getAttribute('data-test-id')).toBe(
27
+ 'switch-text-left',
28
+ );
29
+ expect(switchChildren[1].getAttribute('data-test-id')).toBe('switch-icon');
30
+ });
31
+
32
+ it('should render the right text (textRight) when provided', async () => {
33
+ await wrapper.setProps({ textRight: 'Right Text' });
34
+
35
+ // This check ensures that the icon is placed after the switch text
36
+ const switchChildren = wrapper.findComponent(Switch).element.children;
37
+ expect(switchChildren[0].getAttribute('data-test-id')).toBe('switch-icon');
38
+ expect(switchChildren[1].getAttribute('data-test-id')).toBe(
39
+ 'switch-text-right',
40
+ );
41
+ });
42
+
43
+ it('should render the correct icon when the switch is disabled/enabled', async () => {
44
+ await wrapper.setProps({ disabled: true });
45
+ const disabledIconComponent = wrapper.findComponent({ name: 'UnnnicIcon' });
46
+ expect(disabledIconComponent.props('icon')).toBe('switch-default-disabled');
15
47
 
16
- it('should render the option when provided', async () => {
17
- await wrapper.setProps({ option: 'Option Text' });
48
+ await wrapper.setProps({ modelValue: true });
49
+ const enabledIconComponent = wrapper.findComponent({ name: 'UnnnicIcon' });
50
+ expect(enabledIconComponent.props('icon')).toBe('switch-selected-disabled');
51
+ });
18
52
 
19
- const switchOption = wrapper.find('[data-testid="switch-option"]');
20
- expect(switchOption.text()).toBe('Option Text');
53
+ it('should render the correct icon based on the isActive state', async () => {
54
+ expect(wrapper.vm.isActive).toBe(false);
55
+ await wrapper.setProps({ modelValue: true });
56
+ expect(wrapper.vm.isActive).toBe(true);
57
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('icon')).toBe(
58
+ 'switch-default',
59
+ );
60
+ });
61
+
62
+ it('should render the correct icon size based on the size prop', async () => {
63
+ await wrapper.setProps({ size: 'small' });
64
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('size')).toBe(
65
+ 'sm',
66
+ );
67
+
68
+ await wrapper.setProps({ size: 'medium' });
69
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('size')).toBe(
70
+ 'md',
71
+ );
72
+ });
73
+
74
+ it('should change the icon color based on the state', async () => {
75
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('scheme')).toBe(
76
+ 'neutral-soft',
77
+ );
78
+
79
+ await wrapper.setProps({ modelValue: true });
80
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('scheme')).toBe(
81
+ 'brand-weni',
82
+ );
83
+
84
+ await wrapper.setProps({ disabled: true });
85
+ expect(wrapper.findComponent({ name: 'UnnnicIcon' }).props('scheme')).toBe(
86
+ 'neutral-soft',
87
+ );
21
88
  });
22
89
 
23
90
  it('should toggle isActive state and emit the correct event when toggleState is called', async () => {
24
91
  const initialIsActive = wrapper.vm.isActive;
25
- const switchInput = wrapper.find('input[type="checkbox"]');
26
- await switchInput.trigger('change');
92
+ const switchIcon = wrapper.findComponent('[ data-test-id="switch-icon"]');
93
+ await switchIcon.trigger('click');
27
94
  expect(wrapper.emitted('update:model-value')).toBeTruthy();
28
95
  expect(wrapper.vm.isActive).toBe(!initialIsActive);
29
96
  });
30
97
 
31
98
  it('should not change state when disabled is true', async () => {
32
99
  await wrapper.setProps({ disabled: true });
33
- const switchInput = wrapper.find('input[type="checkbox"]');
34
- await switchInput.trigger('change');
100
+ const switchIcon = wrapper.findComponent('[ data-test-id="switch-icon"]');
101
+ await switchIcon.trigger('click');
35
102
  expect(wrapper.emitted('update:model-value')).toBeFalsy();
36
103
  expect(wrapper.vm.isActive).toBe(false);
37
104
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  exports[`Switch > should match the snapshot 1`] = `
4
4
  "<div data-v-e4356c9d="" class="unnnic-switch">
5
- <!--v-if--><svg data-v-3d58a7dd="" data-v-26446d8e="" data-v-e4356c9d="" id="default" width="80" height="40" viewBox="0 0 80 40" xmlns="http://www.w3.org/2000/svg" class="unnnic-icon unnnic-icon__size--md unnnic--clickable unnnic-icon-scheme--neutral-soft unnnic-switch__icon" data-testid="old-map-icons" disabled="false" data-test-id="switch-icon">
5
+ <!--v-if--><svg data-v-3d58a7dd="" data-v-26446d8e="" data-v-e4356c9d="" id="default" width="80" height="40" viewBox="0 0 80 40" xmlns="http://www.w3.org/2000/svg" class="unnnic-icon unnnic-icon--size-svg-md unnnic-icon__size--md unnnic--clickable unnnic-icon-scheme--neutral-soft unnnic-switch__icon" data-testid="custom-icon" lineHeight="" disabled="false" data-test-id="switch-icon">
6
6
  <rect data-v-3d58a7dd="" x="4.20013" y="2.10046" width="71.6" height="35.8" rx="17.9" class="primary"></rect>
7
7
  <circle data-v-3d58a7dd="" id="default-circle" cx="22.5" cy="20.0005" r="12.5" fill="white"></circle>
8
8
  </svg>
@@ -9,7 +9,6 @@
9
9
  class="tab-head"
10
10
  :class="{
11
11
  'tab-head--active': localValue === tab,
12
- 'tab-head--disabled': disabledTabs?.includes(tab),
13
12
  }"
14
13
  @click="change(tab)"
15
14
  >
@@ -21,9 +20,10 @@
21
20
  side="bottom"
22
21
  >
23
22
  <UnnnicIcon
24
- icon="help"
23
+ icon="info"
25
24
  :size="size === 'sm' ? 'xs' : 'sm'"
26
- scheme="fg-base"
25
+ filled
26
+ scheme="neutral-cleanest"
27
27
  />
28
28
  </UnnnicToolTip>
29
29
  </li>
@@ -65,13 +65,6 @@ export default {
65
65
  tabs: {
66
66
  type: Array,
67
67
  default: null,
68
- validator: (tabs) => {
69
- return tabs.every((tab) => typeof tab === 'string') && tabs.length <= 5;
70
- },
71
- },
72
- disabledTabs: {
73
- type: Array,
74
- default: null,
75
68
  },
76
69
  },
77
70
  emits: ['change'],
@@ -112,10 +105,6 @@ export default {
112
105
  return '';
113
106
  },
114
107
  change(value) {
115
- if (this.disabledTabs?.includes(value)) {
116
- return;
117
- }
118
-
119
108
  this.localValue = value;
120
109
  this.$emit('change', this.localValue);
121
110
  },
@@ -130,15 +119,18 @@ export default {
130
119
  display: flex;
131
120
  align-items: flex-start;
132
121
  justify-content: space-between;
133
- color: $unnnic-color-fg-base;
134
- font: $unnnic-font-action;
135
- margin-bottom: $unnnic-space-4;
136
- border-bottom: $unnnic-border-width-thinner solid $unnnic-color-border-base;
122
+ color: $unnnic-color-neutral-cloudy;
123
+ font-family: $unnnic-font-family-secondary;
124
+ font-weight: $unnnic-font-weight-bold;
125
+ font-size: $unnnic-font-size-body-lg;
126
+ line-height: ($unnnic-font-size-body-lg + $unnnic-line-height-medium);
127
+ margin-bottom: $unnnic-inset-sm;
128
+ border-bottom: $unnnic-border-width-thinner solid $unnnic-color-neutral-soft;
137
129
  }
138
130
 
139
131
  .tab-content {
140
132
  display: flex;
141
- gap: $unnnic-space-6;
133
+ gap: $unnnic-spacing-sm;
142
134
 
143
135
  margin: 0;
144
136
  padding: 0;
@@ -147,24 +139,27 @@ export default {
147
139
 
148
140
  .tab-head {
149
141
  display: flex;
150
- gap: $unnnic-space-2;
142
+ gap: $unnnic-spacing-xs;
151
143
  align-items: center;
152
144
 
153
145
  cursor: pointer;
154
- padding: $unnnic-space-2 $unnnic-space-4;
146
+ margin: $unnnic-spacing-xs $unnnic-spacing-sm;
155
147
 
156
148
  .unnnic-tooltip {
157
149
  display: flex;
158
150
  }
159
151
 
160
152
  &:hover {
161
- color: $unnnic-color-fg-emphasized;
153
+ color: $unnnic-color-neutral-black;
162
154
  }
163
155
  }
164
156
 
165
157
  .tab-head--active {
166
- color: $unnnic-color-fg-emphasized;
167
- font: $unnnic-font-action;
158
+ font-family: $unnnic-font-family-secondary;
159
+ font-weight: $unnnic-font-weight-bold;
160
+ color: $unnnic-color-neutral-black;
161
+ font-size: $unnnic-font-size-body-lg;
162
+ line-height: ($unnnic-font-size-body-lg + $unnnic-line-height-medium);
168
163
  transition: 0.4s;
169
164
 
170
165
  position: relative;
@@ -173,23 +168,14 @@ export default {
173
168
  content: '';
174
169
 
175
170
  position: absolute;
176
- bottom: 0;
177
- left: 0;
171
+ bottom: -$unnnic-spacing-xs;
172
+ left: -$unnnic-spacing-sm;
178
173
 
179
174
  display: block;
180
175
 
181
- width: 100%;
176
+ width: calc(100% + (#{$unnnic-spacing-sm} * 2));
182
177
 
183
- border-bottom: $unnnic-border-width-thin solid $unnnic-color-border-active;
184
- }
185
- }
186
-
187
- .tab-head--disabled {
188
- color: $unnnic-color-fg-muted;
189
- cursor: default;
190
-
191
- &:hover {
192
- color: $unnnic-color-fg-muted;
178
+ border-bottom: $unnnic-border-width-thin solid $unnnic-color-weni-600;
193
179
  }
194
180
  }
195
181
 
@@ -4,7 +4,7 @@ exports[`Tab.vue > matches the snapshot 1`] = `
4
4
  "<div data-v-b4e39fac="" class="tab size-md">
5
5
  <header data-v-b4e39fac="" class="tab-header">
6
6
  <ul data-v-b4e39fac="" class="tab-content">
7
- <li data-v-b4e39fac="" class="tab-head">tab1<div data-v-bf0cf546="" data-v-b4e39fac="" class="unnnic-tooltip"><span data-v-26446d8e="" data-v-b4e39fac="" class="material-symbols-rounded unnnic-icon-scheme--neutral-cleanest unnnic-icon-size--sm material-symbols-rounded--filled" data-testid="material-icon" translate="no">info</span><span data-v-bf0cf546="" class="unnnic-tooltip-label unnnic-tooltip-label-bottom" data-testid="tooltip-label" style="left: 0px; top: 8px;">Tooltip text <br data-v-bf0cf546=""><!--v-if--></span></div>
7
+ <li data-v-b4e39fac="" class="tab-head">tab1<div data-v-bf0cf546="" data-v-b4e39fac="" class="unnnic-tooltip"><span data-v-26446d8e="" data-v-b4e39fac="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-cleanest unnnic-icon-size--sm unnnic-icon__size--sm material-symbols-rounded--filled" data-testid="material-icon" translate="no">info</span><span data-v-bf0cf546="" class="unnnic-tooltip-label unnnic-tooltip-label-bottom" data-testid="tooltip-label" style="left: 0px; top: 8px;">Tooltip text <br data-v-bf0cf546=""><!--v-if--></span></div>
8
8
  </li>
9
9
  <li data-v-b4e39fac="" class="tab-head tab-head--active">tab2
10
10
  <!--v-if-->
@@ -42,7 +42,7 @@ exports[`TableNext.vue > matches the snapshot 1`] = `
42
42
  <p data-v-e29458bb="" class="table-pagination__count" data-testid="count">1 - 1 of 1</p>
43
43
  <div data-v-0eeff8cb="" data-v-e29458bb="" class="pagination"><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="previous-button" disabled="" class="unnnic-button unnnic-button--size-small unnnic-button--tertiary unnnic-button--icon-on-center">
44
44
  <!--v-if-->
45
- <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--ant unnnic-icon__size--ant unnnic--clickable" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_left</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
45
+ <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--sm unnnic-icon__size--sm" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_left</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
46
46
  <!--v-if-->
47
47
  </button><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="page-button" class="unnnic-button unnnic-button--size-small unnnic-button--secondary">
48
48
  <!--v-if-->
@@ -51,7 +51,7 @@ exports[`TableNext.vue > matches the snapshot 1`] = `
51
51
  <!--v-if-->
52
52
  </button><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="next-button" disabled="" class="unnnic-button unnnic-button--size-small unnnic-button--tertiary unnnic-button--icon-on-center">
53
53
  <!--v-if-->
54
- <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--ant unnnic-icon__size--ant unnnic--clickable" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_right</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
54
+ <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--sm unnnic-icon__size--sm" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_right</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
55
55
  <!--v-if-->
56
56
  </button></div>
57
57
  </section>
@@ -5,7 +5,7 @@ exports[`TablePagination.vue > matches the snapshot 1`] = `
5
5
  <p data-v-e29458bb="" class="table-pagination__count" data-testid="count">1 - 10 of 100</p>
6
6
  <div data-v-0eeff8cb="" data-v-e29458bb="" class="pagination"><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="previous-button" disabled="" class="unnnic-button unnnic-button--size-small unnnic-button--tertiary unnnic-button--icon-on-center">
7
7
  <!--v-if-->
8
- <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--ant unnnic-icon__size--ant unnnic--clickable" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_left</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
8
+ <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-clean unnnic-icon-size--sm unnnic-icon__size--sm" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_left</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
9
9
  <!--v-if-->
10
10
  </button><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="page-button" class="unnnic-button unnnic-button--size-small unnnic-button--secondary">
11
11
  <!--v-if-->
@@ -34,7 +34,7 @@ exports[`TablePagination.vue > matches the snapshot 1`] = `
34
34
  <!--v-if-->
35
35
  </button><button data-v-ceff2a60="" data-v-0eeff8cb="" data-test="next-button" class="unnnic-button unnnic-button--size-small unnnic-button--tertiary unnnic-button--icon-on-center">
36
36
  <!--v-if-->
37
- <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-dark unnnic-icon-size--ant unnnic-icon__size--ant unnnic--clickable" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_right</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
37
+ <!--v-if--><span data-v-26446d8e="" data-v-ceff2a60="" class="unnnic-icon material-symbols-rounded unnnic-icon-scheme--neutral-dark unnnic-icon-size--sm unnnic-icon__size--sm" data-testid="icon-center" translate="no" style="visibility: visible;">chevron_right</span><span data-v-ceff2a60="" class="unnnic-button__label" style="visibility: visible;" data-testid="button-label"> </span>
38
38
  <!--v-if-->
39
39
  </button></div>
40
40
  </section>"