@weni/unnnic-system 3.4.0 → 3.4.1-alpha.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 (225) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/components/Accordion/Accordion.vue.d.ts +1 -1
  3. package/dist/components/Alert/Alert.vue.d.ts +18 -119
  4. package/dist/components/Alert/Alert.vue.d.ts.map +1 -1
  5. package/dist/components/Alert/Version1dot1.vue.d.ts +2 -38
  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 +2 -2
  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 +2 -2
  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 +3 -3
  20. package/dist/components/Card/BlankCard.vue.d.ts +1 -1
  21. package/dist/components/Card/Card.vue.d.ts +21 -21
  22. package/dist/components/Card/CardCompany.vue.d.ts +8 -8
  23. package/dist/components/Card/CardData.vue.d.ts +1 -1
  24. package/dist/components/Card/CardStatusesContainer.vue.d.ts +4 -4
  25. package/dist/components/Card/ContentCard.vue.d.ts +2 -2
  26. package/dist/components/Card/DashCard.vue.d.ts +4 -4
  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 +2 -2
  32. package/dist/components/CardImage/CardImage.vue.d.ts +8 -8
  33. package/dist/components/CardInformation/CardInformation.vue.d.ts +4 -4
  34. package/dist/components/CardProject/CardProject.vue.d.ts +3 -3
  35. package/dist/components/Carousel/Carousel.vue.d.ts +11 -11
  36. package/dist/components/Carousel/TagCarousel.vue.d.ts +9 -9
  37. package/dist/components/ChartBar/ChartBar.vue.d.ts +8 -8
  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 +15 -15
  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 +3 -3
  49. package/dist/components/Comment/Comment.vue.d.ts +1 -1
  50. package/dist/components/DataArea/DataArea.vue.d.ts +2 -2
  51. package/dist/components/DataTable/index.vue.d.ts +1 -1
  52. package/dist/components/DataTable/index.vue.d.ts.map +1 -1
  53. package/dist/components/DateFilter/DateFilter.vue.d.ts +176 -29
  54. package/dist/components/DatePicker/DatePicker.vue.d.ts +8 -8
  55. package/dist/components/Drawer/Drawer.vue.d.ts +7 -7
  56. package/dist/components/Dropdown/Dropdown.vue.d.ts +1 -1
  57. package/dist/components/Dropdown/LanguageSelect.vue.d.ts +3 -3
  58. package/dist/components/Flag.vue.d.ts +2 -2
  59. package/dist/components/FormElement/FormElement.vue.d.ts +38 -32
  60. package/dist/components/FormElement/FormElement.vue.d.ts.map +1 -1
  61. package/dist/components/Icon.vue.d.ts +1 -1
  62. package/dist/components/IconLoading/IconLoading.vue.d.ts +1 -1
  63. package/dist/components/ImportCard/ImportCard.vue.d.ts +7 -7
  64. package/dist/components/Input/BaseInput.vue.d.ts +32 -1
  65. package/dist/components/Input/BaseInput.vue.d.ts.map +1 -1
  66. package/dist/components/Input/Input.vue.d.ts +176 -29
  67. package/dist/components/Input/Input.vue.d.ts.map +1 -1
  68. package/dist/components/Input/TextInput.vue.d.ts +83 -14
  69. package/dist/components/Input/TextInput.vue.d.ts.map +1 -1
  70. package/dist/components/InputDatePicker/InputDatePicker.vue.d.ts +186 -39
  71. package/dist/components/InputNext/InputNext.vue.d.ts +4 -4
  72. package/dist/components/Label/Label.vue.d.ts +9 -15
  73. package/dist/components/Label/Label.vue.d.ts.map +1 -1
  74. package/dist/components/Modal/Modal.vue.d.ts +2 -2
  75. package/dist/components/ModalDialog/ModalDialog.vue.d.ts +9 -9
  76. package/dist/components/ModalDialog/ModalDialog.vue.d.ts.map +1 -1
  77. package/dist/components/ModalNext/ModalNext.vue.d.ts +184 -37
  78. package/dist/components/ModalUpload/ModalUpload.vue.d.ts +14 -14
  79. package/dist/components/MoodRating/MoodRating.vue.d.ts +1 -1
  80. package/dist/components/MultiSelect/MultiSelect.vue.d.ts +20 -14
  81. package/dist/components/Pagination/Pagination.vue.d.ts +6 -6
  82. package/dist/components/ProgressBar/ProgressBar.vue.d.ts +1 -1
  83. package/dist/components/Radio/Radio.vue.d.ts +8 -6
  84. package/dist/components/Radio/Radio.vue.d.ts.map +1 -1
  85. package/dist/components/SelectSmart/SelectSmart.vue.d.ts +97 -28
  86. package/dist/components/SelectSmart/SelectSmartMultipleHeader.vue.d.ts +8 -8
  87. package/dist/components/SelectSmart/SelectSmartOption.vue.d.ts +4 -4
  88. package/dist/components/SelectTime/index.vue.d.ts +83 -14
  89. package/dist/components/SkeletonLoading/skeletonTheme.vue.d.ts +1 -1
  90. package/dist/components/Slider/Slider.vue.d.ts +2 -2
  91. package/dist/components/StarRating/StarRating.vue.d.ts +1 -1
  92. package/dist/components/Switch/Switch.vue.d.ts +24 -25
  93. package/dist/components/Switch/Switch.vue.d.ts.map +1 -1
  94. package/dist/components/Tab/Tab.vue.d.ts +13 -2
  95. package/dist/components/TableNext/TableBodyCell.vue.d.ts +2 -2
  96. package/dist/components/TableNext/TablePagination.vue.d.ts +6 -6
  97. package/dist/components/TabsExpanded/TabsExpanded.vue.d.ts +1 -1
  98. package/dist/components/Tag/BrandTag.vue.d.ts +2 -2
  99. package/dist/components/Tag/DefaultTag.vue.d.ts +2 -2
  100. package/dist/components/Tag/IndicatorTag.vue.d.ts +2 -2
  101. package/dist/components/Tag/Tag.vue.d.ts +8 -8
  102. package/dist/components/TemplatePreview/TemplatePreview.vue.d.ts +9 -0
  103. package/dist/components/TemplatePreview/TemplatePreview.vue.d.ts.map +1 -0
  104. package/dist/components/TemplatePreview/TemplatePreviewModal.vue.d.ts +15 -0
  105. package/dist/components/TemplatePreview/TemplatePreviewModal.vue.d.ts.map +1 -0
  106. package/dist/components/TextArea/TextArea.vue.d.ts +38 -32
  107. package/dist/components/TextArea/TextArea.vue.d.ts.map +1 -1
  108. package/dist/components/Toast/Toast.vue.d.ts +16 -0
  109. package/dist/components/Toast/Toast.vue.d.ts.map +1 -0
  110. package/dist/components/Toast/ToastManager.d.ts +14 -0
  111. package/dist/components/Toast/ToastManager.d.ts.map +1 -0
  112. package/dist/components/Toast/types.d.ts +35 -0
  113. package/dist/components/Toast/types.d.ts.map +1 -0
  114. package/dist/components/ToolTip/ToolTip.vue.d.ts +1 -1
  115. package/dist/components/Tour/Tour.vue.d.ts +6 -6
  116. package/dist/components/Tour/TourPopover.vue.d.ts +6 -6
  117. package/dist/components/UploadArea/UploadArea.vue.d.ts +7 -7
  118. package/dist/components/index.d.ts +2402 -1146
  119. package/dist/components/index.d.ts.map +1 -1
  120. package/dist/components/ui/popover/Popover.vue.d.ts +23 -0
  121. package/dist/components/ui/popover/Popover.vue.d.ts.map +1 -0
  122. package/dist/components/ui/popover/PopoverContent.vue.d.ts +43 -0
  123. package/dist/components/ui/popover/PopoverContent.vue.d.ts.map +1 -0
  124. package/dist/components/ui/popover/PopoverTrigger.vue.d.ts +19 -0
  125. package/dist/components/ui/popover/PopoverTrigger.vue.d.ts.map +1 -0
  126. package/dist/components/ui/popover/index.d.ts +5 -0
  127. package/dist/components/ui/popover/index.d.ts.map +1 -0
  128. package/dist/{es-8265192e.mjs → es-479daf92.mjs} +1 -1
  129. package/dist/{index-832905fc.mjs → index-a8aa7094.mjs} +18065 -11737
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/locales/en.json.d.ts +2 -1
  132. package/dist/locales/es.json.d.ts +2 -1
  133. package/dist/locales/pt_br.json.d.ts +2 -1
  134. package/dist/{pt-br-9ced3d4b.mjs → pt-br-32c84cc8.mjs} +1 -1
  135. package/dist/style.css +1 -1
  136. package/dist/unnnic.mjs +141 -129
  137. package/dist/unnnic.umd.js +53 -50
  138. package/dist/utils/call.d.ts +2 -1
  139. package/dist/utils/call.d.ts.map +1 -1
  140. package/package.json +2 -1
  141. package/src/assets/icons/radio-checked.svg +3 -0
  142. package/src/assets/icons/switch-checked-disabled.svg +3 -0
  143. package/src/assets/icons/switch-checked.svg +3 -0
  144. package/src/assets/img/previews/doc-preview.png +0 -0
  145. package/src/assets/img/previews/image-preview.png +0 -0
  146. package/src/assets/img/previews/video-preview.png +0 -0
  147. package/src/assets/scss/scheme-colors.scss +115 -238
  148. package/src/assets/scss/tailwind.scss +15 -15
  149. package/src/components/Alert/Alert.vue +26 -135
  150. package/src/components/Alert/Version1dot1.vue +0 -36
  151. package/src/components/Alert/__tests__/__snapshots__/Alert.spec.js.snap +11 -7
  152. package/src/components/Alert/__tests__/__snapshots__/Version1dot1.spec.js.snap +2 -2
  153. package/src/components/Button/Button.vue +60 -108
  154. package/src/components/Button/types.ts +0 -1
  155. package/src/components/FormElement/FormElement.vue +51 -91
  156. package/src/components/Input/BaseInput.vue +31 -14
  157. package/src/components/Input/Input.scss +19 -21
  158. package/src/components/Input/Input.vue +94 -30
  159. package/src/components/Input/TextInput.vue +82 -58
  160. package/src/components/Input/__test__/TextInput.spec.js +5 -5
  161. package/src/components/Input/__test__/__snapshots__/Input.spec.js.snap +16 -3
  162. package/src/components/Input/__test__/__snapshots__/TextInput.spec.js.snap +7 -1
  163. package/src/components/Label/Label.vue +52 -21
  164. package/src/components/Label/__tests__/Label.spec.js +1 -1
  165. package/src/components/Label/__tests__/__snapshots__/Label.spec.js.snap +1 -1
  166. package/src/components/ModalDialog/ModalDialog.vue +1 -0
  167. package/src/components/ModalDialog/__tests__/__snapshots__/ModalDialog.spec.js.snap +1 -1
  168. package/src/components/Popover/__tests__/Popover.spec.js +147 -0
  169. package/src/components/Popover/__tests__/__snapshots__/Popover.spec.js.snap +8 -0
  170. package/src/components/Popover/index.vue +146 -0
  171. package/src/components/Radio/Radio.vue +80 -67
  172. package/src/components/Radio/__test__/Radio.spec.js +14 -20
  173. package/src/components/Radio/__test__/__snapshots__/Radio.spec.js.snap +3 -3
  174. package/src/components/RadioGroup/RadioGroup.vue +110 -0
  175. package/src/components/Select/SelectOption.vue +65 -0
  176. package/src/components/Select/__tests__/Select.spec.js +412 -0
  177. package/src/components/Select/__tests__/SelectItem.spec.js +330 -0
  178. package/src/components/Select/__tests__/SelectOption.spec.js +174 -0
  179. package/src/components/Select/__tests__/__snapshots__/Select.spec.js.snap +97 -0
  180. package/src/components/Select/__tests__/__snapshots__/SelectItem.spec.js.snap +15 -0
  181. package/src/components/Select/__tests__/__snapshots__/SelectOption.spec.js.snap +25 -0
  182. package/src/components/Select/index.vue +245 -0
  183. package/src/components/Switch/Switch.vue +91 -99
  184. package/src/components/Switch/__tests__/Switch.spec.js +8 -74
  185. package/src/components/Switch/__tests__/__snapshots__/Switch.spec.js.snap +3 -5
  186. package/src/components/Tab/Tab.vue +37 -23
  187. package/src/components/Tab/__test__/__snapshots__/Tab.spec.js.snap +1 -1
  188. package/src/components/TableNext/__test__/__snapshots__/TableNext.spec.js.snap +2 -2
  189. package/src/components/TableNext/__test__/__snapshots__/TablePagination.spec.js.snap +2 -2
  190. package/src/components/TemplatePreview/TemplatePreview.vue +252 -0
  191. package/src/components/TemplatePreview/TemplatePreviewModal.vue +51 -0
  192. package/src/components/TemplatePreview/types.d.ts +16 -0
  193. package/src/components/TextArea/TextArea.vue +13 -9
  194. package/src/components/TextArea/__test__/__snapshots__/TextArea.spec.js.snap +7 -2
  195. package/src/components/Toast/Toast.vue +236 -0
  196. package/src/components/Toast/ToastManager.ts +110 -0
  197. package/src/components/Toast/types.ts +57 -0
  198. package/src/components/index.ts +30 -4
  199. package/src/components/ui/popover/Popover.vue +15 -0
  200. package/src/components/ui/popover/PopoverContent.vue +98 -0
  201. package/src/components/ui/popover/PopoverTrigger.vue +12 -0
  202. package/src/components/ui/popover/index.ts +4 -0
  203. package/src/index.ts +1 -0
  204. package/src/locales/en.json +2 -1
  205. package/src/locales/es.json +2 -1
  206. package/src/locales/pt_br.json +2 -1
  207. package/src/stories/Alert.stories.js +6 -67
  208. package/src/stories/Button.stories.js +2 -17
  209. package/src/stories/Input.stories.js +22 -3
  210. package/src/stories/Label.stories.js +7 -0
  211. package/src/stories/Popover.stories.js +306 -0
  212. package/src/stories/RadioGroup.stories.js +139 -0
  213. package/src/stories/Select.stories.js +158 -0
  214. package/src/stories/Switch.stories.js +4 -5
  215. package/src/stories/Tab.stories.js +11 -4
  216. package/src/stories/TemplatePreview.stories.js +94 -0
  217. package/src/stories/TemplatePreviewModal.stories.js +110 -0
  218. package/src/stories/Toast.mdx +123 -0
  219. package/src/stories/Toast.stories.js +126 -0
  220. package/src/types/scheme-colors.d.ts +1 -0
  221. package/src/utils/call.js +46 -18
  222. package/src/components/Alert/AlertBanner.vue +0 -182
  223. package/src/components/Alert/AlertCaller.vue +0 -49
  224. package/src/components/Alert/__tests__/AlertBanner.spec.js +0 -89
  225. package/src/components/Alert/__tests__/AlertCaller.spec.js +0 -98
@@ -1,55 +1,25 @@
1
1
  <template>
2
- <div
3
- v-if="version === '1.0'"
4
- :class="['unnnic-alert', `unnnic-alert-position--${position}`]"
5
- >
6
- <UnnnicIcon
7
- :icon="icon"
8
- :scheme="scheme"
9
- size="sm"
10
- data-test="unnnic-icon"
11
- />
12
- <div class="unnnic-alert__content">
13
- <div class="unnnic-alert__title">
14
- {{ title.toUpperCase() }}
15
- </div>
16
- <div class="unnnic-alert__text">
17
- {{ text }}
18
- </div>
19
- </div>
20
- <div
21
- v-if="closeText"
22
- class="unnnic-alert__close-text unnnic--clickable"
23
- @click="onClose()"
24
- >
25
- {{ closeText.toUpperCase() }}
26
- </div>
27
- <UnnnicIcon
28
- v-else
29
- clickable
30
- icon="close-1"
31
- scheme="brand-sec"
32
- size="xs"
33
- data-test="unnnic-icon-close"
34
- @click="onClose"
35
- />
36
- </div>
2
+ <Version1dot1
3
+ v-if="version === '1.1'"
4
+ v-bind="{ ...$props }"
5
+ />
37
6
 
38
- <component
39
- :is="'version' + version.replace(/\./g, 'dot')"
7
+ <UnnnicToast
40
8
  v-else
41
- v-bind="{ ...$props }"
42
- ></component>
9
+ :title="text || ''"
10
+ :type="toastType"
11
+ @close="() => onClose()"
12
+ />
43
13
  </template>
44
14
 
45
- <script>
46
- import UnnnicIcon from '../Icon.vue';
15
+ <script lang="ts">
47
16
  import Version1dot1 from './Version1dot1.vue';
17
+ import UnnnicToast from '../Toast/Toast.vue';
48
18
 
49
19
  export default {
50
20
  name: 'UnnnicAlert',
51
21
  components: {
52
- UnnnicIcon,
22
+ UnnnicToast,
53
23
  Version1dot1,
54
24
  },
55
25
  props: {
@@ -57,11 +27,6 @@ export default {
57
27
  type: String,
58
28
  default: '1.1',
59
29
  },
60
-
61
- title: {
62
- type: String,
63
- default: null,
64
- },
65
30
  text: {
66
31
  type: String,
67
32
  default: null,
@@ -70,102 +35,28 @@ export default {
70
35
  type: String,
71
36
  default: null,
72
37
  },
73
- icon: {
74
- type: String,
75
- default: null,
76
- },
77
38
  onClose: {
78
39
  type: Function,
79
40
  default: () => {},
80
41
  },
81
- closeText: {
82
- type: String,
83
- default: '',
84
- },
85
- position: {
86
- type: String,
87
- default: 'top-right',
88
- },
89
- linkHref: {
90
- type: String,
91
- default: '',
92
- },
93
- linkTarget: {
94
- type: String,
95
- default: '',
96
- },
97
- linkText: {
98
- type: String,
99
- default: '',
100
- },
101
42
  type: {
102
43
  type: String,
103
44
  default: '',
104
45
  },
105
46
  },
47
+ computed: {
48
+ toastType() {
49
+ if (this.scheme === 'feedback-green' || this.type === 'success') {
50
+ return 'success';
51
+ }
52
+ if (this.scheme === 'feedback-red' || this.type === 'error') {
53
+ return 'error';
54
+ }
55
+ if (this.type === 'attention') {
56
+ return 'attention';
57
+ }
58
+ return 'informational';
59
+ },
60
+ },
106
61
  };
107
62
  </script>
108
-
109
- <style lang="scss" scoped>
110
- @use '@/assets/scss/unnnic' as *;
111
-
112
- .unnnic-alert {
113
- position: fixed;
114
- padding: $unnnic-inset-xs;
115
- min-width: 12.5 * $unnnic-font-size;
116
-
117
- display: inline-flex;
118
- align-items: center;
119
-
120
- font-family: $unnnic-font-family-secondary;
121
- border-radius: $unnnic-border-radius-sm;
122
-
123
- background-color: $unnnic-color-background-snow;
124
- box-shadow: $unnnic-shadow-level-near;
125
-
126
- z-index: 9999;
127
-
128
- &-position {
129
- &--top-right {
130
- top: 1 * $unnnic-font-size;
131
- right: 1 * $unnnic-font-size;
132
- }
133
- &--top-left {
134
- top: 1 * $unnnic-font-size;
135
- left: 1 * $unnnic-font-size;
136
- }
137
- &--bottom-right {
138
- bottom: 1 * $unnnic-font-size;
139
- right: 1 * $unnnic-font-size;
140
- }
141
- &--bottom-left {
142
- bottom: 1 * $unnnic-font-size;
143
- left: 1 * $unnnic-font-size;
144
- }
145
- }
146
-
147
- &__content {
148
- flex: 1;
149
- margin: 0 $unnnic-inline-xs;
150
- }
151
-
152
- &__title {
153
- font-size: $unnnic-font-size-body-sm;
154
- font-weight: $unnnic-font-weight-bold;
155
- color: $unnnic-color-neutral-darkest;
156
- }
157
-
158
- &__text {
159
- font-size: $unnnic-font-size-body-md;
160
- font-weight: $unnnic-font-weight-regular;
161
- color: $unnnic-color-neutral-dark;
162
- }
163
-
164
- &__close {
165
- &-text {
166
- color: $unnnic-color-brand-sec;
167
- font-size: $unnnic-font-size-body-md;
168
- }
169
- }
170
- }
171
- </style>
@@ -27,15 +27,6 @@
27
27
  {{ text }}
28
28
  </div>
29
29
 
30
- <a
31
- v-if="linkHref"
32
- class="alert__link"
33
- :href="linkHref"
34
- :target="linkTarget"
35
- >
36
- {{ linkText }}
37
- </a>
38
-
39
30
  <div
40
31
  class="alert__close"
41
32
  @click="emitClose"
@@ -58,10 +49,6 @@ export default {
58
49
  UnnnicIcon,
59
50
  },
60
51
  props: {
61
- version: {
62
- type: String,
63
- default: '1.0',
64
- },
65
52
  text: {
66
53
  type: String,
67
54
  default: null,
@@ -74,18 +61,6 @@ export default {
74
61
  type: Function,
75
62
  default: () => {},
76
63
  },
77
- linkHref: {
78
- type: String,
79
- default: '',
80
- },
81
- linkTarget: {
82
- type: String,
83
- default: '_blank',
84
- },
85
- linkText: {
86
- type: String,
87
- default: 'Learn more',
88
- },
89
64
  type: {
90
65
  type: String,
91
66
  default: 'default',
@@ -207,7 +182,6 @@ export default {
207
182
  padding: $unnnic-spacing-xs $unnnic-spacing-sm;
208
183
  }
209
184
 
210
- &__link,
211
185
  &__close {
212
186
  border-left: $unnnic-border-width-thinner solid $unnnic-color-neutral-cloudy;
213
187
 
@@ -216,14 +190,6 @@ export default {
216
190
  }
217
191
  }
218
192
 
219
- &__link {
220
- padding: $unnnic-spacing-xs $unnnic-spacing-sm;
221
- text-decoration: none;
222
- color: inherit;
223
- display: block;
224
- font-weight: $unnnic-font-weight-bold;
225
- }
226
-
227
193
  &__close {
228
194
  padding: $unnnic-spacing-xs $unnnic-spacing-sm;
229
195
  cursor: pointer;
@@ -237,7 +203,6 @@ export default {
237
203
  background-color: $unnnic-color-aux-green-700;
238
204
  }
239
205
 
240
- .alert__link,
241
206
  .alert__close {
242
207
  border-left: $unnnic-border-width-thinner solid
243
208
  $unnnic-color-aux-green-300;
@@ -255,7 +220,6 @@ export default {
255
220
  background-color: $unnnic-color-aux-red-700;
256
221
  }
257
222
 
258
- .alert__link,
259
223
  .alert__close {
260
224
  border-left: $unnnic-border-width-thinner solid $unnnic-color-aux-red-300;
261
225
 
@@ -1,11 +1,15 @@
1
1
  // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
2
 
3
3
  exports[`UnnnicAlert.vue > matches the snapshot 1`] = `
4
- "<div data-v-284427ba="" class="unnnic-alert unnnic-alert-position--top-right"><span data-v-26446d8e="" data-v-284427ba="" class="material-symbols-rounded unnnic-icon-scheme--primary unnnic-icon-size--sm" data-testid="material-icon" translate="no" data-test="unnnic-icon">alert-icon</span>
5
- <div data-v-284427ba="" class="unnnic-alert__content">
6
- <div data-v-284427ba="" class="unnnic-alert__title">TEST ALERT</div>
7
- <div data-v-284427ba="" class="unnnic-alert__text">This is an alert message</div>
8
- </div>
9
- <div data-v-284427ba="" class="unnnic-alert__close-text unnnic--clickable">CLOSE</div>
10
- </div>"
4
+ "<transition-stub data-v-c3231c18="" name="toast-slide" appear="true" persisted="false" css="true" icon="alert-icon" position="top-right" closetext="Close">
5
+ <aside data-v-c3231c18="" class="unnnic-toast unnnic-toast--informational" role="status" aria-live="polite" data-testid="unnnic-toast">
6
+ <section data-v-c3231c18="" class="unnnic-toast__content">
7
+ <header data-v-c3231c18="" class="unnnic-toast__header"><span data-v-26446d8e="" data-v-c3231c18="" class="material-symbols-rounded unnnic-icon-scheme--blue-500 unnnic-icon-size--ant" data-testid="toast-type-icon" translate="no">info</span>
8
+ <h3 data-v-c3231c18="" class="unnnic-toast__title">Test Alert</h3><span data-v-26446d8e="" data-v-c3231c18="" class="material-symbols-rounded unnnic-icon-scheme--neutral-dark unnnic-icon-size--ant unnnic--clickable unnnic-toast__close" data-testid="toast-close-button" translate="no">close</span>
9
+ </header>
10
+ <!--v-if-->
11
+ </section>
12
+ <!--v-if-->
13
+ </aside>
14
+ </transition-stub>"
11
15
  `;
@@ -1,10 +1,10 @@
1
1
  // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
2
 
3
3
  exports[`Alert.vue > matches snapshot 1`] = `
4
- "<div data-v-fb94f284="" class="alert-container">
4
+ "<div data-v-fb94f284="" class="alert-container" version="1.0" linkhref="https://example.com" linktarget="_blank" linktext="Learn more">
5
5
  <div data-v-fb94f284="" class="alert alert--scheme-aux-green">
6
6
  <div data-v-fb94f284="" class="alert__progress"></div>
7
- <div data-v-fb94f284="" class="alert__text">Test Alert</div><a data-v-fb94f284="" class="alert__link" href="https://example.com" target="_blank">Learn more</a>
7
+ <div data-v-fb94f284="" class="alert__text">Test Alert</div>
8
8
  <div data-v-fb94f284="" class="alert__close">
9
9
  <unnnic-icon-stub data-v-fb94f284="" filled="false" next="false" icon="close-1" clickable="false" size="sm" scheme="neutral-white"></unnnic-icon-stub>
10
10
  </div>
@@ -6,20 +6,16 @@
6
6
  :class="[
7
7
  'unnnic-button',
8
8
  `unnnic-button--size-${size}`,
9
- `unnnic-button--${type}`,
9
+ `unnnic-button--${buttonType}`,
10
10
  iconCenter ? `unnnic-button--icon-on-center` : null,
11
11
  float ? `unnnic-button--float` : null,
12
12
  ]"
13
13
  >
14
- <UnnnicIcon
14
+ <UnnnicIconLoading
15
15
  v-if="loading"
16
- icon="loading-circle-1"
17
16
  :scheme="iconScheme"
18
17
  :size="iconSize"
19
- :filled="iconsFilled"
20
18
  :style="{ position: 'absolute' }"
21
- class="rotation"
22
- :next="next"
23
19
  data-testid="icon-loading"
24
20
  />
25
21
 
@@ -72,6 +68,7 @@
72
68
  <script setup lang="ts">
73
69
  import { computed, watch, useSlots } from 'vue';
74
70
  import UnnnicIcon from '../Icon.vue';
71
+ import UnnnicIconLoading from '../IconLoading/IconLoading.vue';
75
72
  import type { ButtonProps, ButtonSize, ButtonType } from './types';
76
73
  import type { SchemeColor } from '@/types/scheme-colors';
77
74
 
@@ -102,8 +99,8 @@ const buttonDisabled = computed(() => {
102
99
  });
103
100
 
104
101
  const iconSize = computed(() => {
105
- if (props.size === 'small') return 'sm';
106
- return 'md';
102
+ if (props.size === 'extra-large') return 'lg';
103
+ return 'ant';
107
104
  });
108
105
 
109
106
  const hasText = computed(() => {
@@ -120,12 +117,11 @@ const iconScheme = computed((): SchemeColor => {
120
117
  primary: 'neutral-white',
121
118
  secondary: 'neutral-dark',
122
119
  tertiary: 'neutral-dark',
123
- alternative: 'neutral-white',
124
120
  warning: 'neutral-white',
125
121
  attention: 'neutral-white',
126
122
  };
127
123
 
128
- return typeToSchemeMap[props.type] || 'neutral-white';
124
+ return typeToSchemeMap[buttonType.value] || 'neutral-white';
129
125
  });
130
126
 
131
127
  const isSizePropValid = computed(() => {
@@ -136,16 +132,23 @@ const isSizePropValid = computed(() => {
136
132
  );
137
133
  });
138
134
 
135
+ const buttonType = computed(() => {
136
+ return (
137
+ {
138
+ alternative: 'tertiary',
139
+ }[props.type] || props.type
140
+ );
141
+ });
142
+
139
143
  const isTypePropValid = computed(() => {
140
144
  const validTypes: ButtonType[] = [
141
145
  'primary',
142
146
  'secondary',
143
147
  'tertiary',
144
- 'alternative',
145
148
  'warning',
146
149
  'attention',
147
150
  ];
148
- return validTypes.includes(props.type);
151
+ return validTypes.includes(buttonType.value);
149
152
  });
150
153
 
151
154
  const validateProps = () => {
@@ -159,6 +162,8 @@ const validateProps = () => {
159
162
 
160
163
  if (!isTypePropValid.value) {
161
164
  errorMessage += ' Invalid type prop.';
165
+ errorMessage +=
166
+ ' Please provide one of the following types: primary, secondary, tertiary, warning, attention. Alternative is discontinued and it was forced renamed to tertiary.';
162
167
  }
163
168
 
164
169
  throw new Error(errorMessage);
@@ -196,13 +201,12 @@ watch(
196
201
  display: inline-flex;
197
202
  align-items: center;
198
203
  justify-content: center;
199
- border-radius: $unnnic-border-radius-sm;
204
+ border-radius: $unnnic-radius-2;
200
205
  border: 0;
201
206
  outline: none;
202
207
  overflow: hidden;
203
208
  white-space: nowrap;
204
- font-weight: $unnnic-font-weight-regular;
205
- font-family: $unnnic-font-family-secondary;
209
+ font: $unnnic-font-action;
206
210
  cursor: pointer;
207
211
  position: relative;
208
212
 
@@ -216,129 +220,91 @@ watch(
216
220
  }
217
221
  }
218
222
 
223
+ &--primary,
224
+ &--warning,
225
+ &--attention {
226
+ color: $unnnic-color-fg-inverted;
227
+ }
228
+
229
+ &--secondary,
230
+ &--tertiary {
231
+ color: $unnnic-color-fg-emphasized;
232
+ }
233
+
219
234
  &--primary {
220
- background-color: $unnnic-color-weni-600;
221
- color: $unnnic-color-neutral-white;
235
+ background-color: $unnnic-color-bg-active;
222
236
 
223
237
  &:hover:enabled {
224
- background-color: $unnnic-color-weni-700;
238
+ background-color: $unnnic-color-teal-700;
225
239
  }
226
240
 
227
241
  &:active:enabled {
228
- background-color: $unnnic-color-weni-800;
242
+ background-color: $unnnic-color-teal-800;
229
243
  }
230
244
  }
231
245
 
232
246
  &--secondary {
233
- background-color: $unnnic-color-neutral-white;
234
- color: $unnnic-color-neutral-dark;
247
+ background-color: $unnnic-color-bg-base;
235
248
  box-shadow: inset 0 0 0 $unnnic-border-width-thinner
236
- $unnnic-color-neutral-cleanest;
249
+ $unnnic-color-border-base;
237
250
 
238
251
  &:hover:enabled {
239
- background-color: $unnnic-color-neutral-light;
240
- }
241
-
242
- &:disabled {
243
- box-shadow: none;
252
+ background-color: $unnnic-color-gray-50;
244
253
  }
245
254
 
246
255
  &:active:enabled {
247
- background-color: $unnnic-color-neutral-soft;
248
- }
249
- }
250
-
251
- &--tertiary {
252
- background-color: transparent;
253
- color: $unnnic-color-neutral-dark;
254
-
255
- &:hover:enabled {
256
- background-color: $unnnic-color-neutral-light;
256
+ background-color: $unnnic-color-gray-100;
257
257
  }
258
258
 
259
259
  &:disabled {
260
- color: $unnnic-color-neutral-clean;
261
- cursor: not-allowed;
262
- }
263
-
264
- &:active:enabled {
265
- background-color: $unnnic-color-neutral-soft;
260
+ box-shadow: none;
266
261
  }
267
262
  }
268
263
 
269
- &--alternative {
270
- background-color: $unnnic-color-weni-50;
271
- color: $unnnic-color-weni-800;
272
-
273
- :deep(svg .primary) {
274
- fill: $unnnic-color-weni-800;
275
- }
276
-
277
- :deep(svg .primary-stroke) {
278
- stroke: $unnnic-color-weni-800;
279
- }
264
+ &--tertiary {
265
+ background-color: transparent;
280
266
 
281
267
  &:hover:enabled {
282
- background-color: $unnnic-color-weni-100;
283
- }
284
-
285
- &:disabled {
286
- :deep(svg .primary) {
287
- fill: $unnnic-color-neutral-clean;
288
- }
289
-
290
- :deep(svg .primary-stroke) {
291
- stroke: $unnnic-color-neutral-clean;
292
- }
268
+ background-color: rgba($unnnic-color-gray-400, 0.1);
293
269
  }
294
270
 
295
271
  &:active:enabled {
296
- background-color: $unnnic-color-weni-200;
297
- color: $unnnic-color-weni-900;
298
-
299
- :deep(svg .primary) {
300
- fill: $unnnic-color-weni-900;
301
- }
302
-
303
- :deep(svg .primary-stroke) {
304
- stroke: $unnnic-color-weni-900;
305
- }
272
+ background-color: rgba($unnnic-color-gray-400, 0.2);
306
273
  }
307
274
  }
308
275
 
309
276
  &--warning {
310
- background-color: $unnnic-color-aux-red-500;
277
+ background-color: $unnnic-color-red-500;
311
278
  color: $unnnic-color-neutral-white;
312
279
 
313
280
  &:hover:enabled {
314
- background-color: $unnnic-color-aux-red-700;
281
+ background-color: $unnnic-color-red-600;
315
282
  }
316
283
 
317
284
  &:active:enabled {
318
- background-color: $unnnic-color-aux-red-900;
285
+ background-color: $unnnic-color-red-700;
319
286
  }
320
287
  }
321
288
 
322
289
  &--attention {
323
- background-color: $unnnic-color-aux-yellow-500;
324
- color: $unnnic-color-neutral-white;
290
+ background-color: $unnnic-color-yellow-500;
325
291
 
326
292
  &:hover:enabled {
327
- background-color: $unnnic-color-aux-yellow-700;
293
+ background-color: $unnnic-color-yellow-600;
328
294
  }
329
295
 
330
296
  &:active:enabled {
331
- background-color: $unnnic-color-aux-yellow-900;
297
+ background-color: $unnnic-color-yellow-700;
332
298
  }
333
299
  }
334
300
 
335
301
  &--primary:disabled,
336
302
  &--secondary:disabled,
337
- &--alternative:disabled,
303
+ &--tertiary:disabled,
338
304
  &--warning:disabled,
339
305
  &--attention:disabled {
340
- background-color: $unnnic-color-neutral-soft;
341
- color: $unnnic-color-neutral-clean;
306
+ background-color: $unnnic-color-bg-muted;
307
+ color: $unnnic-color-fg-muted;
342
308
  cursor: not-allowed;
343
309
  }
344
310
 
@@ -351,26 +317,12 @@ watch(
351
317
  box-shadow: $unnnic-shadow-level-near;
352
318
  }
353
319
 
354
- &--size {
355
- &-extra-large,
356
- &-large,
357
- &-small {
358
- padding: $unnnic-squish-xs;
359
- font-size: $unnnic-font-size-body-gt;
360
- line-height: ($unnnic-font-size-body-gt + $unnnic-line-height-medium);
361
- }
362
-
363
- &-extra-large {
364
- height: 58px;
365
- }
366
-
367
- &-large {
368
- height: 46px;
369
- }
320
+ &--size-large {
321
+ padding: $unnnic-space-3 $unnnic-space-4;
322
+ }
370
323
 
371
- &-small {
372
- height: 38px;
373
- }
324
+ &--size-small {
325
+ padding: $unnnic-space-2 $unnnic-space-4;
374
326
  }
375
327
  }
376
328
  </style>
@@ -388,8 +340,8 @@ watch(
388
340
  }
389
341
 
390
342
  &-large {
391
- height: 46px;
392
- width: 46px;
343
+ height: 45px;
344
+ width: 45px;
393
345
  }
394
346
 
395
347
  &-large,
@@ -404,8 +356,8 @@ watch(
404
356
 
405
357
  &-small {
406
358
  padding: $unnnic-inset-nano;
407
- height: 38px;
408
- width: 38px;
359
+ height: 37px;
360
+ width: 37px;
409
361
 
410
362
  .unnnic-icon {
411
363
  width: $unnnic-icon-size-ant;
@@ -4,7 +4,6 @@ export type ButtonType =
4
4
  | 'primary'
5
5
  | 'secondary'
6
6
  | 'tertiary'
7
- | 'alternative'
8
7
  | 'warning'
9
8
  | 'attention';
10
9