@adyen/bento-vue3 1.1.0 → 1.2.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 (352) hide show
  1. package/dist/@types/packages/vue2/src/components/accordion/accordion.vue.d.ts +3 -3
  2. package/dist/@types/packages/vue2/src/components/accordion/components/accordion-item.vue.d.ts +3 -3
  3. package/dist/@types/packages/vue2/src/components/alert/alert.vue.d.ts +24 -20
  4. package/dist/@types/packages/vue2/src/components/avatar-image/avatar-image.vue.d.ts +6 -6
  5. package/dist/@types/packages/vue2/src/components/badge/badge.vue.d.ts +5 -5
  6. package/dist/@types/packages/vue2/src/components/button/button.vue.d.ts +43 -43
  7. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.types.d.ts +2 -2
  8. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.vue.d.ts +9 -9
  9. package/dist/@types/packages/vue2/src/components/button/components/loading-button/loading-button.vue.d.ts +6 -6
  10. package/dist/@types/packages/vue2/src/components/button/index.d.ts +1 -1
  11. package/dist/@types/packages/vue2/src/components/card/card.vue.d.ts +36 -32
  12. package/dist/@types/packages/vue2/src/components/checkbox/checkbox.vue.d.ts +14 -14
  13. package/dist/@types/packages/vue2/src/components/checkbox/components/checkbox-group/checkbox-group.vue.d.ts +10 -10
  14. package/dist/@types/packages/vue2/src/components/click-outside/click-outside.d.ts +3 -3
  15. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.vue.d.ts +23 -19
  16. package/dist/@types/packages/vue2/src/components/code-snippet/composables/useLanguage.d.ts +2 -2
  17. package/dist/@types/packages/vue2/src/components/country/composables/useCountryCapital/useCountryCapital.d.ts +2 -2
  18. package/dist/@types/packages/vue2/src/components/country/composables/useCountryFlag.d.ts +1 -1
  19. package/dist/@types/packages/vue2/src/components/country/composables/useCountryName/useCountryName.d.ts +2 -2
  20. package/dist/@types/packages/vue2/src/components/country/composables/useCountryPhoneCode/useCountryPhoneCode.d.ts +2 -2
  21. package/dist/@types/packages/vue2/src/components/country/country.vue.d.ts +15 -13
  22. package/dist/@types/packages/vue2/src/components/currency/currency.vue.d.ts +9 -9
  23. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-columns/data-grid-columns.vue.d.ts +12 -12
  24. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-config-settings/components/data-grid-config-settings-column-row/data-grid-config-settings-column-row.vue.d.ts +11 -11
  25. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-config-settings/data-grid-config-settings.vue.d.ts +12 -12
  26. package/dist/@types/packages/vue2/src/components/data-grid/composables/useCalculateBodyFitContentDynamicStyles/useCalculateBodyFitContentDynamicStyles.types.d.ts +1 -1
  27. package/dist/@types/packages/vue2/src/components/data-grid/composables/useCalculateColumnWidth/useCalculateColumnWidth.d.ts +3 -3
  28. package/dist/@types/packages/vue2/src/components/data-grid/composables/useCalculateColumnWidth/useCalculateColumnWidth.types.d.ts +1 -1
  29. package/dist/@types/packages/vue2/src/components/data-grid/composables/useColumnReorderer/useColumnReorderer.d.ts +4 -4
  30. package/dist/@types/packages/vue2/src/components/data-grid/composables/useConfigSettings/useConfigSettings.d.ts +5 -5
  31. package/dist/@types/packages/vue2/src/components/data-grid/composables/useKeyboardNavigator/useKeyboardNavigator.d.ts +1 -1
  32. package/dist/@types/packages/vue2/src/components/data-grid/composables/useResizer.d.ts +2 -2
  33. package/dist/@types/packages/vue2/src/components/data-grid/composables/useSelector.d.ts +1 -1
  34. package/dist/@types/packages/vue2/src/components/data-grid/composables/useSorter.d.ts +1 -1
  35. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.types.d.ts +1 -1
  36. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.vue.d.ts +30 -30
  37. package/dist/@types/packages/vue2/src/components/date/date.vue.d.ts +11 -9
  38. package/dist/@types/packages/vue2/src/components/date-picker/composables/use-date-picker-single-calendar-text.types.d.ts +1 -1
  39. package/dist/@types/packages/vue2/src/components/date-picker/date-picker.types.d.ts +2 -2
  40. package/dist/@types/packages/vue2/src/components/date-picker/date-picker.vue.d.ts +8 -8
  41. package/dist/@types/packages/vue2/src/components/date-range-picker/components/date-range-picker-calendar/date-range-picker-calendar.vue.d.ts +13 -13
  42. package/dist/@types/packages/vue2/src/components/date-range-picker/composables/use-date-range-picker-calendar-text.d.ts +1 -1
  43. package/dist/@types/packages/vue2/src/components/date-range-picker/composables/use-date-range-picker-calendar-text.types.d.ts +1 -1
  44. package/dist/@types/packages/vue2/src/components/date-range-picker/date-range-picker.types.d.ts +2 -2
  45. package/dist/@types/packages/vue2/src/components/date-range-picker/date-range-picker.vue.d.ts +9 -9
  46. package/dist/@types/packages/vue2/src/components/divider/divider.vue.d.ts +3 -3
  47. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-base-textbox/dropdown-base-textbox.types.d.ts +2 -2
  48. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-base-textbox/dropdown-base-textbox.vue.d.ts +10 -10
  49. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-default-textbox/dropdown-default-textbox.vue.d.ts +7 -7
  50. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-options-container/composables/useDropdownOptionsListbox.d.ts +4 -4
  51. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-options-container/dropdown-options-container.vue.d.ts +100 -98
  52. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-small-textbox/dropdown-small-textbox.vue.d.ts +7 -7
  53. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-avatar/dropdown-avatar.types.d.ts +1 -1
  54. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-avatar/dropdown-avatar.vue.d.ts +4 -4
  55. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/composables/useCountryItems.d.ts +4 -4
  56. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/dropdown-country.types.d.ts +2 -2
  57. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/dropdown-country.vue.d.ts +5 -5
  58. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-currency/dropdown-currency.types.d.ts +2 -2
  59. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-currency/dropdown-currency.vue.d.ts +3 -3
  60. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-payment-method/dropdown-payment-method.types.d.ts +2 -2
  61. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-payment-method/dropdown-payment-method.vue.d.ts +3 -3
  62. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-tag/dropdown-tag.types.d.ts +1 -1
  63. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-tag/dropdown-tag.vue.d.ts +3 -3
  64. package/dist/@types/packages/vue2/src/components/dropdown/composables/useDisplayValue.types.d.ts +3 -3
  65. package/dist/@types/packages/vue2/src/components/dropdown/composables/useDropdownSearchFilter.d.ts +3 -3
  66. package/dist/@types/packages/vue2/src/components/dropdown/composables/useKeyboardNavigation.d.ts +1 -1
  67. package/dist/@types/packages/vue2/src/components/dropdown/dropdown.types.d.ts +2 -2
  68. package/dist/@types/packages/vue2/src/components/dropdown/dropdown.vue.d.ts +27 -25
  69. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/all-filters-modal.vue.d.ts +41 -41
  70. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/components/all-filters-modal-button/all-filters-modal-button.vue.d.ts +3 -3
  71. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/base-filter.vue.d.ts +13 -13
  72. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/components/filter-bar-filter-button/filter-bar-filter-button.vue.d.ts +3 -3
  73. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/composables/use-base-filter.d.ts +4 -4
  74. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter-button/base-filter-button.vue.d.ts +7 -7
  75. package/dist/@types/packages/vue2/src/components/filter-bar/components/boolean-filter/boolean-filter.vue.d.ts +9 -9
  76. package/dist/@types/packages/vue2/src/components/filter-bar/components/date-filter/date-filter.vue.d.ts +8 -8
  77. package/dist/@types/packages/vue2/src/components/filter-bar/components/date-range-filter/date-range-filter.vue.d.ts +18 -18
  78. package/dist/@types/packages/vue2/src/components/filter-bar/components/input-filter/input-filter.vue.d.ts +8 -8
  79. package/dist/@types/packages/vue2/src/components/filter-bar/components/range-filter/range-filter.vue.d.ts +10 -10
  80. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/select-filter.vue.d.ts +14 -14
  81. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-avatar-filter/select-avatar-filter.vue.d.ts +4 -4
  82. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue.d.ts +6 -6
  83. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-currency-filter/select-currency-filter.vue.d.ts +4 -4
  84. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-payment-method-filter/select-payment-method-filter.vue.d.ts +4 -4
  85. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-tag-filter/select-tag-filter.vue.d.ts +6 -6
  86. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.types.d.ts +10 -10
  87. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.vue.d.ts +12 -12
  88. package/dist/@types/packages/vue2/src/components/focus-trap/focus-trap.vue.d.ts +3 -3
  89. package/dist/@types/packages/vue2/src/components/header/header.vue.d.ts +10 -10
  90. package/dist/@types/packages/vue2/src/components/info-icon/info-icon.vue.d.ts +11 -9
  91. package/dist/@types/packages/vue2/src/components/input-field/input-field.types.d.ts +1 -1
  92. package/dist/@types/packages/vue2/src/components/input-field/input-field.vue.d.ts +36 -28
  93. package/dist/@types/packages/vue2/src/components/internal/avatar/avatar.vue.d.ts +7 -7
  94. package/dist/@types/packages/vue2/src/components/internal/base-button/base-button.vue.d.ts +7 -7
  95. package/dist/@types/packages/vue2/src/components/internal/calendar/calendar.types.d.ts +1 -1
  96. package/dist/@types/packages/vue2/src/components/internal/calendar/calendar.vue.d.ts +6 -6
  97. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/calendar-month.vue.d.ts +10 -10
  98. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/components/calendar-month-day/__test__/calendar-month-day-stub.vue.d.ts +2 -2
  99. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/components/calendar-month-day/calendar-month-day.vue.d.ts +5 -5
  100. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/composables/move-calendar-date.d.ts +2 -2
  101. package/dist/@types/packages/vue2/src/components/internal/controls-group/controls-group.vue.d.ts +6 -6
  102. package/dist/@types/packages/vue2/src/components/internal/copy/copy.vue.d.ts +9 -9
  103. package/dist/@types/packages/vue2/src/components/internal/error-message/error-message.vue.d.ts +2 -2
  104. package/dist/@types/packages/vue2/src/components/internal/footer-actions/footer-actions.vue.d.ts +4 -4
  105. package/dist/@types/packages/vue2/src/components/internal/grid-layout/grid-layout.vue.d.ts +4 -4
  106. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-multi-select/components/listbox-multi-select-options/components/listbox-multi-select-category/listbox-multi-select-category.vue.d.ts +11 -11
  107. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-multi-select/components/listbox-multi-select-options/listbox-multi-select-options.vue.d.ts +6 -6
  108. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-multi-select/listbox-multi-select.vue.d.ts +15 -15
  109. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-option/listbox-option.vue.d.ts +4 -4
  110. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-option-tag/listbox-option-tag.vue.d.ts +7 -7
  111. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-single-select/listbox-single-select.vue.d.ts +9 -9
  112. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-single-select-option/listbox-single-select-option.vue.d.ts +8 -8
  113. package/dist/@types/packages/vue2/src/components/internal/listbox/listbox.vue.d.ts +24 -22
  114. package/dist/@types/packages/vue2/src/components/link/index.d.ts +1 -1
  115. package/dist/@types/packages/vue2/src/components/link/link.vue.d.ts +9 -9
  116. package/dist/@types/packages/vue2/src/components/loading-indicator/loading-indicator.vue.d.ts +3 -3
  117. package/dist/@types/packages/vue2/src/components/menu/components/menu-item/menu-item.types.d.ts +1 -1
  118. package/dist/@types/packages/vue2/src/components/menu/components/menu-item/menu-item.vue.d.ts +7 -7
  119. package/dist/@types/packages/vue2/src/components/menu/components/menu-item-list/menu-item-list.vue.d.ts +8 -8
  120. package/dist/@types/packages/vue2/src/components/menu/components/menu-list-container/menu-list-container.vue.d.ts +1 -1
  121. package/dist/@types/packages/vue2/src/components/menu/components/sub-menu-item-list/sub-menu-item-list.vue.d.ts +5 -5
  122. package/dist/@types/packages/vue2/src/components/menu/menu.vue.d.ts +11 -11
  123. package/dist/@types/packages/vue2/src/components/modal/components/base-modal/__mocks__/base-modal.vue.d.ts +13 -13
  124. package/dist/@types/packages/vue2/src/components/modal/components/base-modal/base-modal.vue.d.ts +13 -13
  125. package/dist/@types/packages/vue2/src/components/modal/components/modal-default/modal-default.vue.d.ts +5 -5
  126. package/dist/@types/packages/vue2/src/components/modal/components/modal-dialog/modal-dialog.vue.d.ts +13 -13
  127. package/dist/@types/packages/vue2/src/components/modal/modal.vue.d.ts +28 -20
  128. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-context/pagination-context.vue.d.ts +5 -5
  129. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-controls/pagination-controls.vue.d.ts +7 -7
  130. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-results-per-page/pagination-results-per-page.vue.d.ts +5 -5
  131. package/dist/@types/packages/vue2/src/components/pagination/pagination.vue.d.ts +4 -4
  132. package/dist/@types/packages/vue2/src/components/payment-method/composables/usePaymentIcon.d.ts +2 -2
  133. package/dist/@types/packages/vue2/src/components/payment-method/payment-method.vue.d.ts +11 -9
  134. package/dist/@types/packages/vue2/src/components/popover/components/popover-dismiss-button/popover-dismiss-button.vue.d.ts +4 -4
  135. package/dist/@types/packages/vue2/src/components/popover/components/popover-image/popover-image.vue.d.ts +2 -2
  136. package/dist/@types/packages/vue2/src/components/popover/components/popover-title/popover-title.vue.d.ts +5 -5
  137. package/dist/@types/packages/vue2/src/components/popover/popover.vue.d.ts +19 -19
  138. package/dist/@types/packages/vue2/src/components/popper-container/popper-container.utils.d.ts +1 -1
  139. package/dist/@types/packages/vue2/src/components/popper-container/popper-container.vue.d.ts +7 -7
  140. package/dist/@types/packages/vue2/src/components/radio-group/components/radio-button/radio-button.vue.d.ts +4 -4
  141. package/dist/@types/packages/vue2/src/components/radio-group/radio-group.vue.d.ts +10 -10
  142. package/dist/@types/packages/vue2/src/components/search-bar/search-bar.vue.d.ts +97 -85
  143. package/dist/@types/packages/vue2/src/components/search-bar/useSearchBarDataFilter.d.ts +2 -2
  144. package/dist/@types/packages/vue2/src/components/segmented-control/components/segmented-control-button/segmented-control-button.vue.d.ts +4 -4
  145. package/dist/@types/packages/vue2/src/components/segmented-control/segmented-control.vue.d.ts +7 -7
  146. package/dist/@types/packages/vue2/src/components/status/status.vue.d.ts +7 -7
  147. package/dist/@types/packages/vue2/src/components/structured-list/components/structered-list-item/structured-list-item.vue.d.ts +7 -7
  148. package/dist/@types/packages/vue2/src/components/structured-list/structured-list.vue.d.ts +1 -1
  149. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.vue.d.ts +47 -39
  150. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-amount/summary-grid-item-amount.vue.d.ts +19 -13
  151. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-custom/summary-grid-item-custom.vue.d.ts +2 -2
  152. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-numeric/summary-grid-item-numeric.vue.d.ts +19 -13
  153. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-percentage/summary-grid-item-percentage.vue.d.ts +19 -13
  154. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-text/summary-grid-item-text.vue.d.ts +2 -2
  155. package/dist/@types/packages/vue2/src/components/summary-grid/summary-grid.types.d.ts +1 -1
  156. package/dist/@types/packages/vue2/src/components/summary-grid/summary-grid.vue.d.ts +3 -3
  157. package/dist/@types/packages/vue2/src/components/tabs/components/tab.vue.d.ts +2 -2
  158. package/dist/@types/packages/vue2/src/components/tabs/tabs.vue.d.ts +5 -5
  159. package/dist/@types/packages/vue2/src/components/tag/tag.vue.d.ts +13 -13
  160. package/dist/@types/packages/vue2/src/components/textarea/textarea.vue.d.ts +25 -23
  161. package/dist/@types/packages/vue2/src/components/timeline/components/timeline-item/timeline-item.vue.d.ts +30 -30
  162. package/dist/@types/packages/vue2/src/components/timeline/timeline.types.d.ts +3 -3
  163. package/dist/@types/packages/vue2/src/components/timeline/timeline.vue.d.ts +3 -3
  164. package/dist/@types/packages/vue2/src/components/toast/components/toast-item/toast-item.vue.d.ts +5 -5
  165. package/dist/@types/packages/vue2/src/components/toast/toast.vue.d.ts +5 -5
  166. package/dist/@types/packages/vue2/src/components/toggle/toggle.types.d.ts +4 -0
  167. package/dist/@types/packages/vue2/src/components/toggle/toggle.vue.d.ts +16 -16
  168. package/dist/@types/packages/vue2/src/components/tooltip/tooltip.vue.d.ts +37 -37
  169. package/dist/@types/packages/vue2/src/components/typography/typography.vue.d.ts +10 -10
  170. package/dist/@types/packages/vue2/src/composables/initials.d.ts +2 -2
  171. package/dist/@types/packages/vue2/src/composables/use-checkbox-select-all/use-checkbox-select-all.d.ts +3 -3
  172. package/dist/@types/packages/vue2/src/composables/use-has-slot/use-has-slot.d.ts +1 -1
  173. package/dist/@types/packages/vue2/src/composables/useDynamicImport.d.ts +2 -2
  174. package/dist/@types/packages/vue2/src/directives/click-outside/directive.d.ts +1 -1
  175. package/dist/@types/packages/vue2/src/directives/click-outside/on-click-outside.d.ts +1 -1
  176. package/dist/@types/packages/vue2/src/directives/click-outside/types.d.ts +1 -1
  177. package/dist/@types/packages/vue2/src/directives/click-outside/useEventListener/index.d.ts +1 -1
  178. package/dist/@types/packages/vue2/src/directives/click-outside/utils.d.ts +1 -1
  179. package/dist/@types/packages/vue2/src/directives/keyboard-navigation/keyboard-navigation.d.ts +1 -1
  180. package/dist/@types/packages/vue2/src/directives/keyboard-navigation/keyboard-navigation.types.d.ts +1 -1
  181. package/dist/@types/packages/vue2/src/directives/tooltip/tooltip.types.d.ts +1 -1
  182. package/dist/@types/packages/vue2/src/install.d.ts +1 -1
  183. package/dist/@types/packages/vue2/src/plugins/toastController.d.ts +1 -1
  184. package/dist/@types/packages/vue2/src/types/elements.d.ts +1 -1
  185. package/dist/@types/packages/vue2/src/types/index.d.ts +0 -1
  186. package/dist/@types/packages/vue2/src/types/listbox.d.ts +1 -1
  187. package/dist/@types/packages/vue2/src/types/maybe-ref.d.ts +1 -1
  188. package/dist/@types/packages/vue2/src/types/refs.d.ts +1 -1
  189. package/dist/@types/packages/vue2/src/utils/ts/aria-label.d.ts +2 -2
  190. package/dist/@types/packages/vue2/src/utils/ts/events.d.ts +1 -1
  191. package/dist/@types/packages/vue2/src/utils/ts/focus-trap.utils.d.ts +1 -1
  192. package/dist/@types/packages/vue2/src/utils/ts/get-slot-text/get-slot-text.d.ts +1 -1
  193. package/dist/@types/packages/vue2/src/utils/ts/i18n.d.ts +1 -1
  194. package/dist/alert.js +49 -47
  195. package/dist/alert.js.map +1 -1
  196. package/dist/assets/button-actions.css +1 -1
  197. package/dist/assets/button.css +1 -1
  198. package/dist/assets/dropdown.css +1 -1
  199. package/dist/assets/index.css +1 -1
  200. package/dist/assets/index10.css +1 -1
  201. package/dist/assets/index11.css +1 -1
  202. package/dist/assets/index12.css +1 -1
  203. package/dist/assets/index13.css +1 -1
  204. package/dist/assets/index14.css +1 -1
  205. package/dist/assets/index15.css +1 -1
  206. package/dist/assets/index17.css +1 -1
  207. package/dist/assets/index18.css +1 -1
  208. package/dist/assets/index19.css +1 -1
  209. package/dist/assets/index2.css +1 -1
  210. package/dist/assets/index20.css +1 -1
  211. package/dist/assets/index21.css +1 -1
  212. package/dist/assets/index22.css +1 -1
  213. package/dist/assets/index23.css +1 -1
  214. package/dist/assets/index24.css +1 -1
  215. package/dist/assets/index25.css +1 -1
  216. package/dist/assets/index26.css +1 -1
  217. package/dist/assets/index27.css +1 -1
  218. package/dist/assets/index28.css +1 -1
  219. package/dist/assets/index29.css +1 -1
  220. package/dist/assets/index3.css +1 -1
  221. package/dist/assets/index30.css +1 -1
  222. package/dist/assets/index31.css +1 -1
  223. package/dist/assets/index32.css +1 -1
  224. package/dist/assets/index33.css +1 -1
  225. package/dist/assets/index34.css +1 -1
  226. package/dist/assets/index35.css +1 -1
  227. package/dist/assets/index36.css +1 -1
  228. package/dist/assets/index38.css +1 -1
  229. package/dist/assets/index39.css +1 -1
  230. package/dist/assets/index4.css +1 -1
  231. package/dist/assets/index40.css +1 -1
  232. package/dist/assets/index5.css +1 -1
  233. package/dist/assets/index6.css +1 -1
  234. package/dist/assets/index7.css +1 -1
  235. package/dist/assets/index8.css +1 -1
  236. package/dist/assets/index9.css +1 -1
  237. package/dist/assets/listbox.css +1 -1
  238. package/dist/avatar-image.js +1 -1
  239. package/dist/badge.js +1 -1
  240. package/dist/button.js +3 -3
  241. package/dist/card.js +77 -68
  242. package/dist/card.js.map +1 -1
  243. package/dist/checkbox.js +16 -16
  244. package/dist/checkbox.js.map +1 -1
  245. package/dist/chunks/{base-button.fe807878.js → base-button.4a56c2fb.js} +2 -2
  246. package/dist/chunks/{base-button.fe807878.js.map → base-button.4a56c2fb.js.map} +1 -1
  247. package/dist/chunks/{button-actions.59449cda.js → button-actions.a6e541ad.js} +7 -7
  248. package/dist/chunks/{button-actions.59449cda.js.map → button-actions.a6e541ad.js.map} +1 -1
  249. package/dist/chunks/{button.4ccc3a72.js → button.1f630b6e.js} +10 -10
  250. package/dist/chunks/button.1f630b6e.js.map +1 -0
  251. package/dist/chunks/{calendar.1fb0d5b2.js → calendar.08885a56.js} +4 -4
  252. package/dist/chunks/{calendar.1fb0d5b2.js.map → calendar.08885a56.js.map} +1 -1
  253. package/dist/chunks/{checkbox.39fa87c7.js → checkbox.cfb8b8df.js} +3 -3
  254. package/dist/chunks/{checkbox.39fa87c7.js.map → checkbox.cfb8b8df.js.map} +1 -1
  255. package/dist/chunks/{controls-group.0126679a.js → controls-group.806da9bd.js} +2 -2
  256. package/dist/chunks/{controls-group.0126679a.js.map → controls-group.806da9bd.js.map} +1 -1
  257. package/dist/chunks/{copy.012e43f2.js → copy.1ce0203e.js} +3 -3
  258. package/dist/chunks/{copy.012e43f2.js.map → copy.1ce0203e.js.map} +1 -1
  259. package/dist/chunks/{dropdown-default-textbox.2ac50ee2.js → dropdown-default-textbox.dd77bb42.js} +2 -2
  260. package/dist/chunks/{dropdown-default-textbox.2ac50ee2.js.map → dropdown-default-textbox.dd77bb42.js.map} +1 -1
  261. package/dist/chunks/{dropdown.374481a8.js → dropdown.f9997464.js} +84 -82
  262. package/dist/chunks/dropdown.f9997464.js.map +1 -0
  263. package/dist/chunks/{error-message.a65a9abf.js → error-message.b88bb75a.js} +2 -2
  264. package/dist/chunks/{error-message.a65a9abf.js.map → error-message.b88bb75a.js.map} +1 -1
  265. package/dist/chunks/{index.0f958a0c.js → index.361c61d3.js} +2 -2
  266. package/dist/chunks/{index.0f958a0c.js.map → index.361c61d3.js.map} +1 -1
  267. package/dist/chunks/{index.05d4c01b.js → index.64b7b3cc.js} +6 -6
  268. package/dist/chunks/{index.05d4c01b.js.map → index.64b7b3cc.js.map} +1 -1
  269. package/dist/chunks/{index.c25bbcc8.js → index.7dd953ea.js} +53 -52
  270. package/dist/chunks/{index.c25bbcc8.js.map → index.7dd953ea.js.map} +1 -1
  271. package/dist/chunks/{index.1e002876.js → index.96001b1d.js} +3 -3
  272. package/dist/chunks/{index.1e002876.js.map → index.96001b1d.js.map} +1 -1
  273. package/dist/chunks/{index.b2d970f6.js → index.b46a5047.js} +20 -20
  274. package/dist/chunks/{index.b2d970f6.js.map → index.b46a5047.js.map} +1 -1
  275. package/dist/chunks/index.ebf5f6cf.js +119 -0
  276. package/dist/chunks/index.ebf5f6cf.js.map +1 -0
  277. package/dist/chunks/{listbox-option-tag.caa1ceba.js → listbox-option-tag.73661a5d.js} +3 -3
  278. package/dist/chunks/{listbox-option-tag.caa1ceba.js.map → listbox-option-tag.73661a5d.js.map} +1 -1
  279. package/dist/chunks/{listbox.ceacb0ca.js → listbox.7b5e0eee.js} +42 -41
  280. package/dist/chunks/{listbox.ceacb0ca.js.map → listbox.7b5e0eee.js.map} +1 -1
  281. package/dist/chunks/{loading-button.5b8db3dc.js → loading-button.426d89b9.js} +2 -2
  282. package/dist/chunks/{loading-button.5b8db3dc.js.map → loading-button.426d89b9.js.map} +1 -1
  283. package/dist/chunks/{tooltip.ca53a83a.js → tooltip.53290a34.js} +2 -2
  284. package/dist/chunks/{tooltip.ca53a83a.js.map → tooltip.53290a34.js.map} +1 -1
  285. package/dist/chunks/useCountryItems.e83ef8f0.js.map +1 -1
  286. package/dist/code-snippet.js +71 -69
  287. package/dist/code-snippet.js.map +1 -1
  288. package/dist/country.js +25 -24
  289. package/dist/country.js.map +1 -1
  290. package/dist/currency.js +1 -1
  291. package/dist/currency.js.map +1 -1
  292. package/dist/data-grid.js +204 -204
  293. package/dist/data-grid.js.map +1 -1
  294. package/dist/date-picker.js +21 -21
  295. package/dist/date-range-picker.js +2 -2
  296. package/dist/date.js +1 -1
  297. package/dist/divider.js +1 -1
  298. package/dist/dropdown.js +3 -3
  299. package/dist/dropdown.js.map +1 -1
  300. package/dist/filter-bar.js +13 -13
  301. package/dist/filter-bar.js.map +1 -1
  302. package/dist/focus-trap.js +1 -1
  303. package/dist/header.js +61 -61
  304. package/dist/header.js.map +1 -1
  305. package/dist/index.js +65 -65
  306. package/dist/info-icon.js +20 -19
  307. package/dist/info-icon.js.map +1 -1
  308. package/dist/input-field.js +81 -77
  309. package/dist/input-field.js.map +1 -1
  310. package/dist/internal.js +6 -6
  311. package/dist/link.js +15 -15
  312. package/dist/link.js.map +1 -1
  313. package/dist/menu.js +5 -5
  314. package/dist/menu.js.map +1 -1
  315. package/dist/modal.js +113 -109
  316. package/dist/modal.js.map +1 -1
  317. package/dist/pagination.js +4 -4
  318. package/dist/payment-method.js +15 -14
  319. package/dist/payment-method.js.map +1 -1
  320. package/dist/popover.js +21 -21
  321. package/dist/popover.js.map +1 -1
  322. package/dist/popper-container.js +17 -17
  323. package/dist/popper-container.js.map +1 -1
  324. package/dist/radio-group.js +5 -5
  325. package/dist/radio-group.js.map +1 -1
  326. package/dist/search-bar.js +2 -2
  327. package/dist/segmented-control.js +4 -4
  328. package/dist/status.js +6 -6
  329. package/dist/status.js.map +1 -1
  330. package/dist/structured-list.js +1 -1
  331. package/dist/summary-grid.js +155 -142
  332. package/dist/summary-grid.js.map +1 -1
  333. package/dist/tabs.js +2 -2
  334. package/dist/tag.js +8 -8
  335. package/dist/tag.js.map +1 -1
  336. package/dist/textarea.js +25 -21
  337. package/dist/textarea.js.map +1 -1
  338. package/dist/timeline.js +31 -31
  339. package/dist/timeline.js.map +1 -1
  340. package/dist/toast.js +3 -3
  341. package/dist/toggle.js +157 -3
  342. package/dist/toggle.js.map +1 -1
  343. package/dist/typography.js +1 -1
  344. package/dist/web-types.json +1 -1
  345. package/package.json +5 -4
  346. package/dist/@types/packages/vue2/src/types/label-position.d.ts +0 -4
  347. package/dist/chunks/button.4ccc3a72.js.map +0 -1
  348. package/dist/chunks/dropdown.374481a8.js.map +0 -1
  349. package/dist/chunks/index.0b6c7187.js +0 -160
  350. package/dist/chunks/index.0b6c7187.js.map +0 -1
  351. package/dist/chunks/index.92f7d550.js +0 -119
  352. package/dist/chunks/index.92f7d550.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"summary-grid.js","sources":["../../vue2/src/components/summary-grid/summary-grid.vue","../../vue2/src/components/summary-grid/summary-grid.types.ts","../../vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.types.ts","../../vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-amount/summary-grid-item-amount.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-numeric/summary-grid-item-numeric.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-percentage/summary-grid-item-percentage.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-text/summary-grid-item-text.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-custom/summary-grid-item-custom.vue"],"sourcesContent":["<template>\n <div class=\"b-summary-grid\">\n <grid-layout\n v-for=\"index in numberOfRows\"\n :key=\"`summary-grid-row-${index}`\"\n :data-testid=\"`summary-grid-row-${index}`\"\n :column-width=\"columnWidth?.[`row${index}`]\"\n >\n <template v-if=\"hasSlot(`cell-${index}-1`)\" #col-1>\n <slot :name=\"`cell-${index}-1`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-2`)\" #col-2>\n <slot :name=\"`cell-${index}-2`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-3`)\" #col-3>\n <slot :name=\"`cell-${index}-3`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-4`)\" #col-4>\n <slot :name=\"`cell-${index}-4`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-5`)\" #col-5>\n <slot :name=\"`cell-${index}-5`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-6`)\" #col-6>\n <slot :name=\"`cell-${index}-6`\" />\n </template>\n </grid-layout>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { BentoSummaryGridColumnWidth } from './summary-grid.types';\n import { GridLayout } from '@/components/internal';\n import { useHasSlot } from '@/composables';\n\n /**\n * A summary grid component that displays a collection items.\n *\n * @example\n * import { BentoSummaryGrid, BentoSummaryGridItemAmount } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGrid, BentoSummaryGridItemAmount },\n * template: `\n * <bento-summary-grid>\n * <template #cell-2-2>\n * <bento-summary-grid-item-amount\n * title=\"Text Item\"\n * label=\"14\"\n * info-icon-tooltip-text=\"text for icon\"\n * copy=\"copy this to clipboard\"\n * />\n * </template>\n * </bento-summary-grid>\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid',\n components: { GridLayout },\n props: {\n /**\n * Sets the responsive columns widths values for 1 of the 3 rows.\n */\n columnWidth: {\n type: Object as PropType<BentoSummaryGridColumnWidth>,\n default: null,\n },\n },\n\n setup(_props, { slots }) {\n let numberOfRows = 1;\n if (slots) {\n const slotRows = Object.keys(slots)\n ?.filter(slotName => slotName.includes('cell-'))\n ?.map(slotName => parseInt(slotName.split('-')?.[1], 10));\n numberOfRows = Math.max(...slotRows);\n if (numberOfRows > 3) {\n throw new Error(\n 'BentoSummaryGrid must only have a maximum of 3 rows. Read the documentation for more information.'\n );\n }\n }\n\n return {\n hasSlot: useHasSlot(slots),\n numberOfRows,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid.scss\" />\n","import { GridLayoutColumnWidth } from '@/components/internal/grid-layout/grid-layout.types';\n\nexport enum BentoSummaryGridItemSize {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\nexport enum BentoSummaryGridItemTrendDirection {\n POSITIVE = 'positive',\n NEGATIVE = 'negative',\n NEUTRAL = 'neutral',\n}\n\nexport interface BentoSummaryGridColumnWidth {\n row1: Array<GridLayoutColumnWidth>;\n row2?: Array<GridLayoutColumnWidth>;\n row3?: Array<GridLayoutColumnWidth>;\n}\n","export enum SummaryGridItemType {\n AMOUNT = 'amount',\n PERCENTAGE = 'percentage',\n NUMERIC = 'numeric',\n TEXT = 'text',\n CUSTOM = 'custom',\n}\n","<template>\n <div class=\"b-summary-grid-item\" :style=\"computedStyles\">\n <div class=\"b-summary-grid-item__header\">\n <bento-typography\n class=\"b-summary-grid-item__title\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.BODY\"\n >\n {{ title }}\n </bento-typography>\n <div class=\"b-summary-grid-item__title-icons\">\n <copy v-if=\"copy\" class=\"b-structured-list__icon\" :text=\"copy\" />\n\n <bento-info-icon\n v-if=\"infoIconTooltipText\"\n :tooltip-text=\"infoIconTooltipText\"\n :tooltip-position=\"PopperContainerPosition.TOP\"\n class=\"b-summary-grid-item__title-tooltip\"\n />\n </div>\n </div>\n <div class=\"b-summary-grid-item__content--primary\">\n <bento-typography\n v-if=\"isContentTypographyApplied\"\n data-testid=\"summary-grid-item-content-typography\"\n class=\"b-summary-grid-item__title\"\n v-bind=\"typographyProps\"\n :el=\"BentoTypographyElement.SPAN\"\n >\n <slot />\n <bento-tag\n v-if=\"trend && itemType !== SummaryGridItemType.TEXT\"\n :variant=\"trendVariant\"\n :label=\"trend\"\n class=\"b-summary-grid-item__content-trend\"\n />\n </bento-typography>\n\n <slot v-else />\n </div>\n <div v-if=\"hasSlot('secondary')\" class=\"b-summary-grid-item__content--secondary\">\n <bento-typography\n class=\"b-summary-grid-item__title\"\n data-testid=\"summary-grid-item-secondary-metric-typography\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.CAPTION\"\n stronger\n >\n <slot name=\"secondary\" />\n <bento-tag\n v-if=\"secondaryTrend\"\n :variant=\"secondaryTrendVariant\"\n :label=\"secondaryTrend\"\n class=\"b-summary-grid-item__content-trend\"\n />\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType, toRefs } from 'vue';\n\n // Components\n import { BentoInfoIcon } from '@/components/info-icon';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoTag, BentoTagVariant } from '@/components/tag';\n import { PopperContainerPosition } from '@/components/popper-container';\n import { Copy } from '@/internal';\n\n // Utils\n import { useHasSlot } from '@/composables';\n\n // Types\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItemType } from './summary-grid-item.types';\n\n /**\n * A summary bar item is a piece of information to be displayed in `bento-summary-bar` component\n *\n * @example\n * import { SummaryBarItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { SummaryBarItem },\n * template: `\n * <summary-grid-item :title=\"textVariable\">\n * Content of the item\n * </summary-grid-item>\n * `\n * }\n */\n export default defineComponent({\n name: 'summary-grid-item',\n components: { BentoInfoIcon, BentoTypography, BentoTag, Copy },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Applies styling based on content type\n */\n // TODO add text truncation for SummaryGridItemType.TEXT\n itemType: {\n type: String as PropType<SummaryGridItemType>,\n default: SummaryGridItemType.CUSTOM,\n },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: { type: String, default: null },\n\n /**\n * Text used as a title\n */\n title: { type: String, required: true },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: { type: Boolean, default: false },\n\n // amount, percentage and numeric props\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n // TODO implement logic for Large size\n size: {\n type: String as PropType<BentoSummaryGridItemSize>,\n default: BentoSummaryGridItemSize.SMALL,\n },\n\n /**\n * Shows colored trend label next to text content\n */\n trend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the color of trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n\n /**\n * Shows colored trend tag next to secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the color of secondary trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n },\n setup(props, { slots }) {\n const { trendDirection, secondaryTrendDirection, itemType, size } = toRefs(props);\n\n const tagVariantColor = direction => {\n switch (direction) {\n case BentoSummaryGridItemTrendDirection.POSITIVE:\n return BentoTagVariant.GREEN;\n case BentoSummaryGridItemTrendDirection.NEGATIVE:\n return BentoTagVariant.RED;\n default:\n return BentoTagVariant.BLUE;\n }\n };\n\n // TODO implement plus or minus symbol logic\n const trendVariant = computed(() => tagVariantColor(trendDirection.value));\n const secondaryTrendVariant = computed(() => tagVariantColor(secondaryTrendDirection.value));\n\n const isContentTypographyApplied = computed(\n () =>\n itemType.value === SummaryGridItemType.TEXT ||\n itemType.value === SummaryGridItemType.PERCENTAGE ||\n itemType.value === SummaryGridItemType.AMOUNT ||\n itemType.value === SummaryGridItemType.NUMERIC\n );\n\n const typographyContentElement = computed(() => {\n if (isContentTypographyApplied.value) {\n if (size.value === BentoSummaryGridItemSize.SMALL) {\n return BentoTypographyVariant.BODY;\n }\n if (itemType.value !== SummaryGridItemType.TEXT) {\n return BentoTypographyVariant.TITLE;\n }\n }\n\n return null;\n });\n\n const typographyProps = computed(() => ({\n medium: size.value === BentoSummaryGridItemSize.LARGE,\n strongest: size.value === BentoSummaryGridItemSize.SMALL,\n wide: size.value === BentoSummaryGridItemSize.SMALL,\n variant: typographyContentElement.value,\n }));\n\n const computedStyles = computed(() => (props.fitContent ? { width: 'fit-content' } : {}));\n\n const summaryBarItemTrendConditionalClasses = computed(() => ({\n [`b-summary-grid-item__content-trend--${props.trend}`]: props.trend,\n }));\n\n return {\n // Values\n trendVariant,\n secondaryTrendVariant,\n isContentTypographyApplied,\n typographyProps,\n\n // Styles\n computedStyles,\n summaryBarItemTrendConditionalClasses,\n\n // Enums\n BentoTypographyElement,\n BentoTypographyVariant,\n SummaryGridItemType,\n BentoSummaryGridItemSize,\n PopperContainerPosition,\n\n // Utils\n hasSlot: useHasSlot(slots),\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid-item.scss\" />\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.AMOUNT\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-amount\"\n >\n <div class=\"b-summary-grid-item-amount__content\">\n <div>{{ label }}</div>\n <div v-if=\"secondaryLabel\" class=\"b-summary-grid-item-amount__secondary-label\">{{ secondaryLabel }}</div>\n </div>\n <template v-if=\"secondaryMetric\" #secondary>\n {{ secondaryMetric }}\n </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display financial data, such as currency values and monetary amounts\n *\n * @example\n * import { BentoSummaryGridItemAmount, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemAmount },\n * template: `\n * <bento-summary-grid-item-amount\n * title=\"Your title\"\n * label=\"200.00 EUR\"\n * secondary-label=\"/ day\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-amount',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Adds additional label next to amount content\n */\n secondaryLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows colored trend label next to main label\n */\n trend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize>,\n default: BentoSummaryGridItemSize.SMALL,\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid-item-amount.scss\" />\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.NUMERIC\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-numeric\"\n >\n {{ label }}\n <template v-if=\"secondaryMetric\" #secondary>\n {{ secondaryMetric }}\n </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display any numeric information\n *\n * @example\n * import { BentoSummaryGridItemNumeric, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemNumeric },\n * template: `\n * <bento-summary-grid-item-numeric\n * title=\"Your title\"\n * label=\"123\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-numeric',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n /**\n * Shows colored trend label next to main numeric content\n */\n trend: {\n type: String,\n default: null,\n },\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize>,\n default: BentoSummaryGridItemSize.SMALL,\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.PERCENTAGE\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-percentage\"\n >\n {{ label }}%\n <template v-if=\"secondaryMetric\" #secondary> {{ secondaryMetric }}% </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display any percentage information\n *\n * @example\n * import { BentoSummaryGridItemPercentage, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemPercentage },\n * template: `\n * <bento-summary-grid-item-percentage\n * title=\"Your title\"\n * label=\"123\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-percentage',\n components: { SummaryGridItem },\n props: {\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n /**\n * Shows colored trend label next to text content\n */\n trend: {\n type: String,\n default: undefined,\n },\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: undefined,\n },\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n },\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize>,\n default: BentoSummaryGridItemSize.SMALL,\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.TEXT\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n class=\"b-summary-grid-item-text\"\n >\n {{ label }}\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent } from 'vue';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display text only. Can be used for references, IDs or any other text data.\n *\n * @example\n * import { BentoSummaryGridItemText } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemText },\n * template: `\n * <bento-summary-grid-item-text\n * title=\"Your title\"\n * label=\"Your text here\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-text',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :title=\"title\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n @copy-to-clipoard=\"$emit('copy-to-clipboard')\"\n >\n <slot />\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent } from 'vue';\n import SummaryGridItem from '../summary-grid-item/summary-grid-item.vue';\n\n /**\n * A summary bar item is a piece of information to be displayed in `bento-summary-bar` component\n *\n * @example\n * import { SummaryBarItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { SummaryBarItem },\n * template: `\n * <summary-grid-item :title=\"textVariable\">\n * Content of the item\n * </summary-grid-item>\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-custom',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: { type: String, default: null },\n\n /**\n * Text used as a title\n */\n title: { type: String, required: true },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: { type: Boolean, default: false },\n },\n emits: ['copy-to-clipboard'],\n });\n</script>\n"],"names":["_sfc_main$6","defineComponent","GridLayout","_props","slots","numberOfRows","slotRows","_b","_a","slotName","useHasSlot","openBlock","createElementBlock","_hoisted_1$2","Fragment","renderList","_ctx","index","createBlock","_component_grid_layout","createSlots","withCtx","BentoSummaryGridItemSize","BentoSummaryGridItemSize2","BentoSummaryGridItemTrendDirection","BentoSummaryGridItemTrendDirection2","SummaryGridItemType","SummaryGridItemType2","_sfc_main$5","BentoInfoIcon","BentoTypography","BentoTag","Copy","props","trendDirection","secondaryTrendDirection","itemType","size","toRefs","tagVariantColor","direction","BentoTagVariant","trendVariant","computed","secondaryTrendVariant","isContentTypographyApplied","typographyContentElement","BentoTypographyVariant","typographyProps","computedStyles","summaryBarItemTrendConditionalClasses","BentoTypographyElement","PopperContainerPosition","normalizeStyle","createVNode","_component_bento_typography","createElementVNode","_hoisted_2$1","_component_copy","createCommentVNode","_component_bento_info_icon","mergeProps","renderSlot","_component_bento_tag","_hoisted_4","_sfc_main$4","SummaryGridItem","_component_summary_grid_item","resolveComponent","_hoisted_1","toDisplayString","_hoisted_2","_sfc_main$3","_sfc_main$2","_sfc_main$1","_sfc_main"],"mappings":"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"}
1
+ {"version":3,"file":"summary-grid.js","sources":["../../vue2/src/components/summary-grid/summary-grid.vue","../../vue2/src/components/summary-grid/summary-grid.types.ts","../../vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.types.ts","../../vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-amount/summary-grid-item-amount.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-numeric/summary-grid-item-numeric.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-percentage/summary-grid-item-percentage.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-text/summary-grid-item-text.vue","../../vue2/src/components/summary-grid/components/summary-grid-item-custom/summary-grid-item-custom.vue"],"sourcesContent":["<template>\n <div class=\"b-summary-grid\">\n <grid-layout\n v-for=\"index in numberOfRows\"\n :key=\"`summary-grid-row-${index}`\"\n :data-testid=\"`summary-grid-row-${index}`\"\n :column-width=\"columnWidth?.[`row${index}`]\"\n >\n <template v-if=\"hasSlot(`cell-${index}-1`)\" #col-1>\n <slot :name=\"`cell-${index}-1`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-2`)\" #col-2>\n <slot :name=\"`cell-${index}-2`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-3`)\" #col-3>\n <slot :name=\"`cell-${index}-3`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-4`)\" #col-4>\n <slot :name=\"`cell-${index}-4`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-5`)\" #col-5>\n <slot :name=\"`cell-${index}-5`\" />\n </template>\n <template v-if=\"hasSlot(`cell-${index}-6`)\" #col-6>\n <slot :name=\"`cell-${index}-6`\" />\n </template>\n </grid-layout>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import { BentoSummaryGridColumnWidth } from './summary-grid.types';\n import { GridLayout } from '@/components/internal';\n import { useHasSlot } from '@/composables';\n\n /**\n * A summary grid component that displays a collection items.\n *\n * @example\n * import { BentoSummaryGrid, BentoSummaryGridItemAmount } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGrid, BentoSummaryGridItemAmount },\n * template: `\n * <bento-summary-grid>\n * <template #cell-2-2>\n * <bento-summary-grid-item-amount\n * title=\"Text Item\"\n * label=\"14\"\n * info-icon-tooltip-text=\"text for icon\"\n * copy=\"copy this to clipboard\"\n * />\n * </template>\n * </bento-summary-grid>\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid',\n components: { GridLayout },\n props: {\n /**\n * Sets the responsive columns widths values for 1 of the 3 rows.\n */\n columnWidth: {\n type: Object as PropType<BentoSummaryGridColumnWidth>,\n default: null,\n },\n },\n\n setup(_props, { slots }) {\n let numberOfRows = 1;\n if (slots) {\n const slotRows = Object.keys(slots)\n ?.filter(slotName => slotName.includes('cell-'))\n ?.map(slotName => parseInt(slotName.split('-')?.[1], 10));\n numberOfRows = Math.max(...slotRows);\n if (numberOfRows > 3) {\n throw new Error(\n 'BentoSummaryGrid must only have a maximum of 3 rows. Read the documentation for more information.'\n );\n }\n }\n\n return {\n hasSlot: useHasSlot(slots),\n numberOfRows,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid.scss\" />\n","import { GridLayoutColumnWidth } from '@/components/internal/grid-layout/grid-layout.types';\n\nexport enum BentoSummaryGridItemSize {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\nexport enum BentoSummaryGridItemTrendDirection {\n POSITIVE = 'positive',\n NEGATIVE = 'negative',\n NEUTRAL = 'neutral',\n}\n\nexport interface BentoSummaryGridColumnWidth {\n row1: Array<GridLayoutColumnWidth>;\n row2?: Array<GridLayoutColumnWidth>;\n row3?: Array<GridLayoutColumnWidth>;\n}\n","export enum SummaryGridItemType {\n AMOUNT = 'amount',\n PERCENTAGE = 'percentage',\n NUMERIC = 'numeric',\n TEXT = 'text',\n CUSTOM = 'custom',\n}\n","<template>\n <div class=\"b-summary-grid-item\" :style=\"computedStyles\">\n <div class=\"b-summary-grid-item__header\">\n <bento-typography\n class=\"b-summary-grid-item__title\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.BODY\"\n >\n {{ title }}\n </bento-typography>\n <div class=\"b-summary-grid-item__title-icons\">\n <copy v-if=\"copy\" class=\"b-structured-list__icon\" :text=\"copy\" />\n\n <bento-info-icon\n v-if=\"infoIconTooltipText\"\n :tooltip-text=\"infoIconTooltipText\"\n :tooltip-position=\"PopperContainerPosition.TOP\"\n class=\"b-summary-grid-item__title-tooltip\"\n />\n </div>\n </div>\n <div class=\"b-summary-grid-item__content--primary\">\n <bento-typography\n v-if=\"isContentTypographyApplied\"\n data-testid=\"summary-grid-item-content-typography\"\n class=\"b-summary-grid-item__title\"\n v-bind=\"typographyProps\"\n :el=\"BentoTypographyElement.SPAN\"\n >\n <slot />\n <bento-tag\n v-if=\"trend && itemType !== SummaryGridItemType.TEXT\"\n :variant=\"trendVariant\"\n :label=\"trend\"\n class=\"b-summary-grid-item__content-trend\"\n />\n </bento-typography>\n\n <slot v-else />\n </div>\n <div v-if=\"hasSlot('secondary')\" class=\"b-summary-grid-item__content--secondary\">\n <bento-typography\n class=\"b-summary-grid-item__title\"\n data-testid=\"summary-grid-item-secondary-metric-typography\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.CAPTION\"\n stronger\n >\n <slot name=\"secondary\" />\n <bento-tag\n v-if=\"secondaryTrend\"\n :variant=\"secondaryTrendVariant\"\n :label=\"secondaryTrend\"\n class=\"b-summary-grid-item__content-trend\"\n />\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType, toRefs } from 'vue';\n\n // Components\n import { BentoInfoIcon } from '@/components/info-icon';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoTag, BentoTagVariant } from '@/components/tag';\n import { PopperContainerPosition } from '@/components/popper-container';\n import { Copy } from '@/internal';\n\n // Utils\n import { useHasSlot } from '@/composables';\n\n // Types\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItemType } from './summary-grid-item.types';\n\n /**\n * A summary bar item is a piece of information to be displayed in `bento-summary-bar` component\n *\n * @example\n * import { SummaryBarItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { SummaryBarItem },\n * template: `\n * <summary-grid-item :title=\"textVariable\">\n * Content of the item\n * </summary-grid-item>\n * `\n * }\n */\n export default defineComponent({\n name: 'summary-grid-item',\n components: { BentoInfoIcon, BentoTypography, BentoTag, Copy },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Applies styling based on content type\n */\n // TODO add text truncation for SummaryGridItemType.TEXT\n itemType: {\n type: String as PropType<SummaryGridItemType | `${SummaryGridItemType}`>,\n default: SummaryGridItemType.CUSTOM,\n validator: (value: SummaryGridItemType) => Object.values(SummaryGridItemType).includes(value),\n },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: { type: String, default: null },\n\n /**\n * Text used as a title\n */\n title: { type: String, required: true },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: { type: Boolean, default: false },\n\n // amount, percentage and numeric props\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n // TODO implement logic for Large size\n size: {\n type: String as PropType<BentoSummaryGridItemSize | `${BentoSummaryGridItemSize}`>,\n default: BentoSummaryGridItemSize.SMALL,\n validator: (value: BentoSummaryGridItemSize) => Object.values(BentoSummaryGridItemSize).includes(value),\n },\n\n /**\n * Shows colored trend label next to text content\n */\n trend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the color of trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n\n /**\n * Shows colored trend tag next to secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the color of secondary trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n },\n setup(props, { slots }) {\n const { trendDirection, secondaryTrendDirection, itemType, size } = toRefs(props);\n\n const tagVariantColor = direction => {\n switch (direction) {\n case BentoSummaryGridItemTrendDirection.POSITIVE:\n return BentoTagVariant.GREEN;\n case BentoSummaryGridItemTrendDirection.NEGATIVE:\n return BentoTagVariant.RED;\n default:\n return BentoTagVariant.BLUE;\n }\n };\n\n // TODO implement plus or minus symbol logic\n const trendVariant = computed(() => tagVariantColor(trendDirection.value));\n const secondaryTrendVariant = computed(() => tagVariantColor(secondaryTrendDirection.value));\n\n const isContentTypographyApplied = computed(\n () =>\n itemType.value === SummaryGridItemType.TEXT ||\n itemType.value === SummaryGridItemType.PERCENTAGE ||\n itemType.value === SummaryGridItemType.AMOUNT ||\n itemType.value === SummaryGridItemType.NUMERIC\n );\n\n const typographyContentElement = computed(() => {\n if (isContentTypographyApplied.value) {\n if (size.value === BentoSummaryGridItemSize.SMALL) {\n return BentoTypographyVariant.BODY;\n }\n if (itemType.value !== SummaryGridItemType.TEXT) {\n return BentoTypographyVariant.TITLE;\n }\n }\n\n return null;\n });\n\n const typographyProps = computed(() => ({\n medium: size.value === BentoSummaryGridItemSize.LARGE,\n strongest: size.value === BentoSummaryGridItemSize.SMALL,\n wide: size.value === BentoSummaryGridItemSize.SMALL,\n variant: typographyContentElement.value,\n }));\n\n const computedStyles = computed(() => (props.fitContent ? { width: 'fit-content' } : {}));\n\n const summaryBarItemTrendConditionalClasses = computed(() => ({\n [`b-summary-grid-item__content-trend--${props.trend}`]: props.trend,\n }));\n\n return {\n // Values\n trendVariant,\n secondaryTrendVariant,\n isContentTypographyApplied,\n typographyProps,\n\n // Styles\n computedStyles,\n summaryBarItemTrendConditionalClasses,\n\n // Enums\n BentoTypographyElement,\n BentoTypographyVariant,\n SummaryGridItemType,\n BentoSummaryGridItemSize,\n PopperContainerPosition,\n\n // Utils\n hasSlot: useHasSlot(slots),\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid-item.scss\" />\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.AMOUNT\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-amount\"\n >\n <div class=\"b-summary-grid-item-amount__content\">\n <div>{{ label }}</div>\n <div v-if=\"secondaryLabel\" class=\"b-summary-grid-item-amount__secondary-label\">{{ secondaryLabel }}</div>\n </div>\n <template v-if=\"secondaryMetric\" #secondary>\n {{ secondaryMetric }}\n </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display financial data, such as currency values and monetary amounts\n *\n * @example\n * import { BentoSummaryGridItemAmount, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemAmount },\n * template: `\n * <bento-summary-grid-item-amount\n * title=\"Your title\"\n * label=\"200.00 EUR\"\n * secondary-label=\"/ day\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-amount',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Adds additional label next to amount content\n */\n secondaryLabel: {\n type: String,\n default: null,\n },\n\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Shows colored trend label next to main label\n */\n trend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize | `${BentoSummaryGridItemSize}`>,\n default: BentoSummaryGridItemSize.SMALL,\n validator: (value: BentoSummaryGridItemSize) => Object.values(BentoSummaryGridItemSize).includes(value),\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./summary-grid-item-amount.scss\" />\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.NUMERIC\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-numeric\"\n >\n {{ label }}\n <template v-if=\"secondaryMetric\" #secondary>\n {{ secondaryMetric }}\n </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display any numeric information\n *\n * @example\n * import { BentoSummaryGridItemNumeric, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemNumeric },\n * template: `\n * <bento-summary-grid-item-numeric\n * title=\"Your title\"\n * label=\"123\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-numeric',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n /**\n * Shows colored trend label next to main numeric content\n */\n trend: {\n type: String,\n default: null,\n },\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: null,\n },\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize | `${BentoSummaryGridItemSize}`>,\n default: BentoSummaryGridItemSize.SMALL,\n validator: (value: BentoSummaryGridItemSize) => Object.values(BentoSummaryGridItemSize).includes(value),\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.PERCENTAGE\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n :size=\"size\"\n :trend=\"trend\"\n :trend-direction=\"trendDirection\"\n :secondary-trend=\"secondaryTrend\"\n :secondary-trend-direction=\"secondaryTrendDirection\"\n class=\"b-summary-grid-item-percentage\"\n >\n {{ label }}%\n <template v-if=\"secondaryMetric\" #secondary> {{ secondaryMetric }}% </template>\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent, PropType } from 'vue';\n import {\n BentoSummaryGridItemSize,\n BentoSummaryGridItemTrendDirection,\n } from '@/components/summary-grid/summary-grid.types';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display any percentage information\n *\n * @example\n * import { BentoSummaryGridItemPercentage, BentoSummaryGridItemSize, BentoSummaryGridItemTrendDirection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemPercentage },\n * template: `\n * <bento-summary-grid-item-percentage\n * title=\"Your title\"\n * label=\"123\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * trend=\"+12%\"\n * :trend-direction=\"BentoSummaryGridItemTrendDirection.NEUTRAL\"\n * :size=\"BentoSummaryGridItemSize.MEDIUM\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-percentage',\n components: { SummaryGridItem },\n props: {\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Amount to be shown as the secondary metric value\n */\n secondaryMetric: {\n type: String,\n default: null,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n /**\n * Shows colored trend label next to text content\n */\n trend: {\n type: String,\n default: undefined,\n },\n /**\n * Defines the direction (color) of the trend label\n */\n trendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n /**\n * Shows colored secondary trend tag next to the secondary metric value\n */\n secondaryTrend: {\n type: String,\n default: undefined,\n },\n /**\n * Defines the direction (color) of the secondary metric's trend tag\n */\n secondaryTrendDirection: {\n type: String as PropType<BentoSummaryGridItemTrendDirection | `${BentoSummaryGridItemTrendDirection}`>,\n default: BentoSummaryGridItemTrendDirection.POSITIVE,\n validator: (value: BentoSummaryGridItemTrendDirection) =>\n Object.values(BentoSummaryGridItemTrendDirection).includes(value),\n },\n /**\n * Defines the size of the `summary-grid-item` text content\n */\n size: {\n type: String as PropType<BentoSummaryGridItemSize | `${BentoSummaryGridItemSize}`>,\n default: BentoSummaryGridItemSize.SMALL,\n validator: (value: BentoSummaryGridItemSize) => Object.values(BentoSummaryGridItemSize).includes(value),\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :item-type=\"SummaryGridItemType.TEXT\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :title=\"title\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n class=\"b-summary-grid-item-text\"\n >\n {{ label }}\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent } from 'vue';\n import { SummaryGridItem, SummaryGridItemType } from '../summary-grid-item';\n\n /**\n * Summary grid item component used to display text only. Can be used for references, IDs or any other text data.\n *\n * @example\n * import { BentoSummaryGridItemText } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSummaryGridItemText },\n * template: `\n * <bento-summary-grid-item-text\n * title=\"Your title\"\n * label=\"Your text here\"\n * info-icon-tooltip-text=\"Your tooltip text here will be toggled by the info icon\"\n * />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-text',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Amount to be shown as the main value\n */\n label: {\n type: String,\n required: true,\n },\n /**\n * Text used as a title\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: {\n type: String,\n default: null,\n },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: {\n type: Boolean,\n default: false,\n },\n },\n\n setup() {\n return {\n // Enums\n SummaryGridItemType,\n };\n },\n });\n</script>\n","<template>\n <summary-grid-item\n :title=\"title\"\n :info-icon-tooltip-text=\"infoIconTooltipText\"\n :copy=\"copy\"\n :fit-content=\"fitContent\"\n @copy-to-clipoard=\"$emit('copy-to-clipboard')\"\n >\n <slot />\n </summary-grid-item>\n</template>\n\n<script lang=\"ts\">\n import { defineComponent } from 'vue';\n import SummaryGridItem from '../summary-grid-item/summary-grid-item.vue';\n\n /**\n * A summary bar item is a piece of information to be displayed in `bento-summary-bar` component\n *\n * @example\n * import { SummaryBarItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { SummaryBarItem },\n * template: `\n * <summary-grid-item :title=\"textVariable\">\n * Content of the item\n * </summary-grid-item>\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-summary-grid-item-custom',\n components: { SummaryGridItem },\n props: {\n /**\n * Text to copy to the clipboard\n */\n copy: { type: String, default: undefined },\n\n /**\n * Text showed in the info-icon tooltip on hover\n */\n infoIconTooltipText: { type: String, default: null },\n\n /**\n * Text used as a title\n */\n title: { type: String, required: true },\n\n /**\n * The width of `summary-grid-item` fits its content\n */\n fitContent: { type: Boolean, default: false },\n },\n emits: ['copy-to-clipboard'],\n });\n</script>\n"],"names":["_sfc_main$6","defineComponent","GridLayout","_props","slots","numberOfRows","slotRows","_b","_a","slotName","useHasSlot","openBlock","createElementBlock","_hoisted_1$2","Fragment","renderList","_ctx","index","createBlock","_component_grid_layout","createSlots","withCtx","BentoSummaryGridItemSize","BentoSummaryGridItemSize2","BentoSummaryGridItemTrendDirection","BentoSummaryGridItemTrendDirection2","SummaryGridItemType","SummaryGridItemType2","_sfc_main$5","BentoInfoIcon","BentoTypography","BentoTag","Copy","value","props","trendDirection","secondaryTrendDirection","itemType","size","toRefs","tagVariantColor","direction","BentoTagVariant","trendVariant","computed","secondaryTrendVariant","isContentTypographyApplied","typographyContentElement","BentoTypographyVariant","typographyProps","computedStyles","summaryBarItemTrendConditionalClasses","BentoTypographyElement","PopperContainerPosition","normalizeStyle","createVNode","_component_bento_typography","createElementVNode","_hoisted_2$1","_component_copy","createCommentVNode","_component_bento_info_icon","mergeProps","renderSlot","_component_bento_tag","_hoisted_4","_sfc_main$4","SummaryGridItem","_component_summary_grid_item","resolveComponent","_hoisted_1","toDisplayString","_hoisted_2","_sfc_main$3","_sfc_main$2","_sfc_main$1","_sfc_main"],"mappings":";;;;;;;;;;AA0DI,MAAAA,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,YAAAC,EAAA;AAAA,EACmB,OAAA;AAAA;AAAA;AAAA;AAAA,IAClB,aAAA;AAAA,MAIU,MAAA;AAAA,MACH,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,MAAAC,GAAA,EAAA,OAAAC,EAAA,GAAA;;AAGI,QAAAC,IAAA;AACA,QAAAD,GAAA;AACI,YAAAE,KAAAC,KAAAC,IAAA,OAAA,KAAAJ,CAAA,MAAA,gBAAAI,EAAA,OAAA,CAAAC,MAAAA,EAAA,SAAA,OAAA,OAAA,gBAAAF,EAAA,IAAA,CAAAE,MAAA;;AAAA,yBAAAD,IAAAC,EAAA,MAAA,GAAA,MAAA,gBAAAD,EAAA,IAAA,EAAA;AAAA;AAIA,UADAH,IAAA,KAAA,IAAA,GAAAC,CAAA,GACAD,IAAA;AACI,cAAA,IAAA;AAAA,UAAU;AAAA,QACN;AAAA;AAKZ,WAAA;AAAA,MAAO,SAAAK,EAAAN,CAAA;AAAA,MACsB,cAAAC;AAAA,IACzB;AAAA,EACJ;AAER,CAAA;;;;AAhEkB,SAAAM,EAAA,GAAAC,EAAA,OAAAC,GAAA;AAAA,KAAAF,EAAA,EAAA,GAAAC,EAAAE,GAAA,MAAAC,EAAAC,EAAA,cAAA,CAAAC,MAAA;;AArBT,aAAAN,EAAA,GAAAO,EAAAC,GAAA;AAAA,QAAsC,KAAA,oBAAAF;AAAA,QACxB,eAAA,oBAAAA;AAAA;MAEsB,GAAAG,EAAA,EAAA,GAAA,EAAA,GAAA;AAAA;UACjC,MAAA;AAAA,UAAA,IAAAC,EAAA,MAAA;AAAA;;;QAEY,IAAA;AAAA;UACZ,MAAA;AAAA,UAAA,IAAAA,EAAA,MAAA;AAAA;;;QAEY,IAAA;AAAA;UACZ,MAAA;AAAA,UAAA,IAAAA,EAAA,MAAA;AAAA;;;QAEY,IAAA;AAAA;UACZ,MAAA;AAAA,UAAA,IAAAA,EAAA,MAAA;AAAA;;;QAEY,IAAA;AAAA;UACZ,MAAA;AAAA,UAAA,IAAAA,EAAA,MAAA;AAAA;;;QAEY,IAAA;AAAA;UACZ,MAAA;AAAA,UAAA,IAAAA,EAAA,MAAA;AAAA;;;;;;;;;ACtBJ,IAAAC,IAAA,kBAAAC,OACRA,EAAA,QAAA,SACAA,EAAA,SAAA,UACAA,EAAA,QAAA,SAHQA,IAAAD,KAAA,CAAA,CAAA,GAMAE,IAAA,kBAAAC,OACRA,EAAA,WAAA,YACAA,EAAA,WAAA,YACAA,EAAA,UAAA,WAHQA,IAAAD,KAAA,CAAA,CAAA,GCRAE,IAAA,kBAAAC,OACRA,EAAA,SAAA,UACAA,EAAA,aAAA,cACAA,EAAA,UAAA,WACAA,EAAA,OAAA,QACAA,EAAA,SAAA,UALQA,IAAAD,KAAA,CAAA,CAAA;AC+FR,MAAAE,IAAA3B,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,eAAA4B,GAAA,iBAAAC,GAAA,UAAAC,GAAA,MAAAC,EAAA;AAAA,EACuD,OAAA;AAAA;AAAA;AAAA;AAAA,IACtD,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAIsC,UAAA;AAAA,MAM/B,MAAA;AAAA,MACA,SAAAN,EAAA;AAAA,MACuB,WAAA,CAAAO,MAAA,OAAA,OAAAP,CAAA,EAAA,SAAAO,CAAA;AAAA,IAC+D;AAAA;AAAA;AAAA;AAAA,IAChG,qBAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA;AAAA;AAAA;AAAA,IAKmD,OAAA,EAAA,MAAA,QAAA,UAAA,GAAA;AAAA;AAAA;AAAA;AAAA,IAKb,YAAA,EAAA,MAAA,SAAA,SAAA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKM,MAAA;AAAA,MAOtC,MAAA;AAAA,MACI,SAAAX,EAAA;AAAA,MAC4B,WAAA,CAAAW,MAAA,OAAA,OAAAX,CAAA,EAAA,SAAAW,CAAA;AAAA,IACoE;AAAA;AAAA;AAAA;AAAA,IAC1G,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,gBAAA;AAAA,MAKgB,MAAA;AAAA,MACN,SAAAT,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,gBAAA;AAAA,MAKgB,MAAA;AAAA,MACN,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,yBAAA;AAAA,MAKyB,MAAA;AAAA,MACf,SAAAT,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA,EACxE;AAAA,EACJ,MAAAC,GAAA,EAAA,OAAA9B,EAAA,GAAA;AAEI,UAAA,EAAA,gBAAA+B,GAAA,yBAAAC,GAAA,UAAAC,GAAA,MAAAC,EAAA,IAAAC,EAAAL,CAAA,GAEAM,IAAA,CAAAC,MAAA;AACI,cAAAA,GAAA;AAAA,QAAmB,KAAAjB,EAAA;AAEX,iBAAAkB,EAAA;AAAA,QAAuB,KAAAlB,EAAA;AAEvB,iBAAAkB,EAAA;AAAA,QAAuB;AAEvB,iBAAAA,EAAA;AAAA,MAAuB;AAAA,IAC/B,GAIJC,IAAAC,EAAA,MAAAJ,EAAAL,EAAA,KAAA,CAAA,GACAU,IAAAD,EAAA,MAAAJ,EAAAJ,EAAA,KAAA,CAAA,GAEAU,IAAAF;AAAA,MAAmC,MAAAP,EAAA,UAAAX,EAAA,QAAAW,EAAA,UAAAX,EAAA,cAAAW,EAAA,UAAAX,EAAA,UAAAW,EAAA,UAAAX,EAAA;AAAA,IAKY,GAG/CqB,IAAAH,EAAA,MAAA;AACI,UAAAE,EAAA,OAAA;AACI,YAAAR,EAAA,UAAAhB,EAAA;AACI,iBAAA0B,EAAA;AAEJ,YAAAX,EAAA,UAAAX,EAAA;AACI,iBAAAsB,EAAA;AAAA;AAIR,aAAA;AAAA,IAAO,CAAA,GAGXC,IAAAL,EAAA,OAAA;AAAA,MAAwC,QAAAN,EAAA,UAAAhB,EAAA;AAAA,MACY,WAAAgB,EAAA,UAAAhB,EAAA;AAAA,MACG,MAAAgB,EAAA,UAAAhB,EAAA;AAAA,MACL,SAAAyB,EAAA;AAAA,IACZ,EAAA,GAGtCG,IAAAN,EAAA,MAAAV,EAAA,aAAA,EAAA,OAAA,cAAA,IAAA,CAAA,CAAA,GAEAiB,IAAAP,EAAA,OAAA;AAAA,MAA8D,CAAA,uCAAAV,EAAA,OAAA,GAAAA,EAAA;AAAA,IACI,EAAA;AAGlE,WAAA;AAAA;AAAA,MAAO,cAAAS;AAAA,MAEH,uBAAAE;AAAA,MACA,4BAAAC;AAAA,MACA,iBAAAG;AAAA;AAAA,MACA,gBAAAC;AAAA,MAGA,uCAAAC;AAAA;AAAA,MACA,wBAAAC;AAAA,MAGA,wBAAAJ;AAAA,MACA,qBAAAtB;AAAA,MACA,0BAAAJ;AAAA,MACA,yBAAA+B;AAAA;AAAA,MACA,SAAA3C,EAAAN,CAAA;AAAA,IAGyB;AAAA,EAC7B;AAER,CAAA;;EAlN2C,KAAA;AAAA;;;;AAvCJ,SAAAO,EAAA,GAAAC,EAAA,OAAA;AAAA,IAAgB,OAAA;AAAA,IACnD,OAAA0C,EAAAtC,EAAA,cAAA;AAAA,EAkBM,GAAA;AAAA;MAhBoCuC,EAAAC,GAAA;AAAA,QACF,OAAA;AAAA,QACxB,IAAAxC,EAAA,uBAAA;AAAA,QAEG,SAAAA,EAAA,uBAAA;AAAA,MAAA,GAAA;AAAA;;;QAEf,GAAA;AAAA,MAAA,GAAA,GAAA,CAAA,MAAA,SAAA,CAAA;AAAA,MACoByC,EAAA,OAAAC,IAAA;AAAA,QAAiD1C,EAAA,QAAAL,EAAA,GAAAO,EAAAyC,GAAA;AAAA,UAAhB,KAAA;AAAA,UAAM,OAAA;AAAA;QAG7C,GAAA,MAAA,GAAA,CAAA,MAAA,CAAA,KAAAC,EAAA,IAAA,EAAA;AAAA,QAIR5C,EAAA,uBAAAL,EAAA,GAAAO,EAAA2C,GAAA;AAAA,UAHoC,KAAA;AAAA,UACjC,gBAAA7C,EAAA;AAAA,UACK,oBAAAA,EAAA,wBAAA;AAAA;;MAIlB,CAAA;AAAA,IAAA,CAAA;AAAA;MAeuBA,EAAA,8BAAAL,EAAA,GAAAO,EAAAsC,GAAAM,EAAA;AAAA,QAZmC,KAAA;AAAA,QAC7C,eAAA;AAAA,QACG,OAAA;AAAA,MACH,GAAA9C,EAAA,iBAAA;AAAA,QAEG,IAAAA,EAAA,uBAAA;AAAA,MAAA,CAAA,GAAA;AAAA,QAAR,SAAAK,EAAA,MAAA;AAAA,UAEmB0C,EAAA/C,EAAA,QAAA,WAAA,CAAA,GAAA,QAAA,EAAA;AAAA,UAIjBA,EAAA,SAAAA,EAAA,aAAAA,EAAA,oBAAA,QAAAL,EAAA,GAAAO,EAAA8C,GAAA;AAAA,YAHwB,KAAA;AAAA,YAChB,SAAAhD,EAAA;AAAA,YACA,OAAAA,EAAA;AAAA;;;QAId,GAAA;AAAA,MAAA,GAAA,IAAA,CAAA,IAAA,CAAA,KAAA+C,EAAA/C,EAAA,QAAA,WAAA,EAAA,KAAA,EAAA,GAAA,QAAA,EAAA;AAAA,IAEc,CAAA;AAAA,IACdA,EAAA,QAAA,WAAA,KAAAL,EAAA,GAAAC,EAAA,OAAAqD,IAAA;AAAA,MACsCV,EAAAC,GAAA;AAAA,QACtB,OAAA;AAAA,QACP,eAAA;AAAA,QACK,IAAAxC,EAAA,uBAAA;AAAA,QACF,SAAAA,EAAA,uBAAA;AAAA;;;UAIgB+C,EAAA/C,EAAA,QAAA,aAAA,CAAA,GAAA,QAAA,EAAA;AAAA,UAItBA,EAAA,kBAAAL,EAAA,GAAAO,EAAA8C,GAAA;AAAA,YAHiC,KAAA;AAAA,YACzB,SAAAhD,EAAA;AAAA,YACA,OAAAA,EAAA;AAAA;;;;;;;;oFCAtBkD,KAAAjE,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAkE,EAAA;AAAA,EACwB,OAAA;AAAA;AAAA;AAAA;AAAA,IACvB,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIsC,OAAA;AAAA,MAKlC,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,gBAAA;AAAA,MAKgB,MAAA;AAAA,MACN,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,iBAAA;AAAA,MAKiB,MAAA;AAAA,MACP,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,qBAAA;AAAA,MAKqB,MAAA;AAAA,MACX,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,YAAA;AAAA,MAKY,MAAA;AAAA,MACF,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,gBAAA;AAAA,MAKgB,MAAA;AAAA,MACN,SAAA3C,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,gBAAA;AAAA,MAKgB,MAAA;AAAA,MACN,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,yBAAA;AAAA,MAKyB,MAAA;AAAA,MACf,SAAAT,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,MAAA;AAAA,MAKM,MAAA;AAAA,MACI,SAAAX,EAAA;AAAA,MAC4B,WAAA,CAAAW,MAAA,OAAA,OAAAX,CAAA,EAAA,SAAAW,CAAA;AAAA,IACoE;AAAA,EAC1G;AAAA,EACJ,QAAA;AAGI,WAAA;AAAA;AAAA,MAAO,qBAAAP;AAAA,IAEH;AAAA,EACJ;AAER,CAAA;;EAlJyC,KAAA;AAAA;;;AAKrB,QAAA0C,IAAAC,EAAA,mBAAA;AAlBf,SAAA1D,EAAA,GAAAO,EAAAkD,GAAA;AAAA,IAA2C,aAAApD,EAAA,oBAAA;AAAA,IAC/B,0BAAAA,EAAA;AAAA,IACF,OAAAA,EAAA;AAAA,IACV,MAAAA,EAAA;AAAA,IACM,eAAAA,EAAA;AAAA,IACM,MAAAA,EAAA;AAAA,IACZ,OAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACK,6BAAAA,EAAA;AAAA;EAEN,GAAAI,EAAA;AAAA,IAAA,SAAAC,EAAA,MAAA;AAAA,MAC0BoC,EAAA,OAAAa,IAAA;AAAA,QACGb,EAAA,OAAA,MAAAc,EAAAvD,EAAA,KAAA,GAAA,CAAA;AAAA,QAAgFA,EAAA,kBAAAL,EAAA,GAAAC,EAAA,OAAA4D,IAAAD,EAAAvD,EAAA,cAAA,GAAA,CAAA,KAAA4C,EAAA,IAAA,EAAA;AAAA;;IAE7F,GAAA;AAAA,EAAA,GAAA;AAAA;;;;;;;;;sFC+BpBa,KAAAxE,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAkE,EAAA;AAAA,EACwB,OAAA;AAAA;AAAA;AAAA;AAAA,IACvB,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIsC,OAAA;AAAA,MAKlC,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,iBAAA;AAAA,MAIiB,MAAA;AAAA,MACP,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAIO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,qBAAA;AAAA,MAIqB,MAAA;AAAA,MACX,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,YAAA;AAAA,MAKY,MAAA;AAAA,MACF,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAIO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,gBAAA;AAAA,MAIgB,MAAA;AAAA,MACN,SAAA3C,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,gBAAA;AAAA,MAIgB,MAAA;AAAA,MACN,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,yBAAA;AAAA,MAIyB,MAAA;AAAA,MACf,SAAAT,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,MAAA;AAAA,MAIM,MAAA;AAAA,MACI,SAAAX,EAAA;AAAA,MAC4B,WAAA,CAAAW,MAAA,OAAA,OAAAX,CAAA,EAAA,SAAAW,CAAA;AAAA,IACoE;AAAA,EAC1G;AAAA,EACJ,QAAA;AAGI,WAAA;AAAA;AAAA,MAAO,qBAAAP;AAAA,IAEH;AAAA,EACJ;AAER,CAAA;;AA5HoB,QAAA0C,IAAAC,EAAA,mBAAA;AAff,SAAA1D,EAAA,GAAAO,EAAAkD,GAAA;AAAA,IAA2C,aAAApD,EAAA,oBAAA;AAAA,IAC/B,0BAAAA,EAAA;AAAA,IACF,OAAAA,EAAA;AAAA,IACV,MAAAA,EAAA;AAAA,IACM,eAAAA,EAAA;AAAA,IACM,MAAAA,EAAA;AAAA,IACZ,OAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACK,6BAAAA,EAAA;AAAA;;;;;IAGU,GAAA;AAAA,EAAA,GAAA;AAAA;;;;;;;;;oDCgCpB0D,KAAAzE,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAkE,EAAA;AAAA,EACwB,OAAA;AAAA;AAAA;AAAA;AAAA,IACvB,OAAA;AAAA,MAII,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,iBAAA;AAAA,MAIiB,MAAA;AAAA,MACP,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAIO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,qBAAA;AAAA,MAIqB,MAAA;AAAA,MACX,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIyC,YAAA;AAAA,MAI7B,MAAA;AAAA,MACF,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAIO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,gBAAA;AAAA,MAIgB,MAAA;AAAA,MACN,SAAA3C,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,gBAAA;AAAA,MAIgB,MAAA;AAAA,MACN,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,yBAAA;AAAA,MAIyB,MAAA;AAAA,MACf,SAAAT,EAAA;AAAA,MACsC,WAAA,CAAAS,MAAA,OAAA,OAAAT,CAAA,EAAA,SAAAS,CAAA;AAAA,IAEwB;AAAA;AAAA;AAAA;AAAA,IACxE,MAAA;AAAA,MAIM,MAAA;AAAA,MACI,SAAAX,EAAA;AAAA,MAC4B,WAAA,CAAAW,MAAA,OAAA,OAAAX,CAAA,EAAA,SAAAW,CAAA;AAAA,IACoE;AAAA,EAC1G;AAAA,EACJ,QAAA;AAGI,WAAA;AAAA;AAAA,MAAO,qBAAAP;AAAA,IAEH;AAAA,EACJ;AAER,CAAA;;AA1HoB,QAAA0C,IAAAC,EAAA,mBAAA;AAbf,SAAA1D,EAAA,GAAAO,EAAAkD,GAAA;AAAA,IAA2C,aAAApD,EAAA,oBAAA;AAAA,IAC/B,0BAAAA,EAAA;AAAA,IACF,OAAAA,EAAA;AAAA,IACV,MAAAA,EAAA;AAAA,IACM,eAAAA,EAAA;AAAA,IACM,MAAAA,EAAA;AAAA,IACZ,OAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACA,mBAAAA,EAAA;AAAA,IACK,6BAAAA,EAAA;AAAA;;;;;IAGU,GAAA;AAAA,EAAA,GAAA;AAAA;;;;;;;;;oDCmBpB2D,KAAA1E,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAkE,EAAA;AAAA,EACwB,OAAA;AAAA;AAAA;AAAA;AAAA,IACvB,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIsC,OAAA;AAAA,MAKlC,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,OAAA;AAAA,MAIO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,qBAAA;AAAA,MAIqB,MAAA;AAAA,MACX,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,YAAA;AAAA,MAKY,MAAA;AAAA,MACF,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,QAAA;AAGI,WAAA;AAAA;AAAA,MAAO,qBAAAzC;AAAA,IAEH;AAAA,EACJ;AAER,CAAA;;AAtEoB,QAAA0C,IAAAC,EAAA,mBAAA;AAPf,SAAA1D,EAAA,GAAAO,EAAAkD,GAAA;AAAA,IAA2C,aAAApD,EAAA,oBAAA;AAAA,IAC/B,0BAAAA,EAAA;AAAA,IACF,OAAAA,EAAA;AAAA,IACV,MAAAA,EAAA;AAAA,IACK,eAAAA,EAAA;AAAA;;;;;;;;oDCwBV4D,KAAA3E,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAkE,EAAA;AAAA,EACwB,OAAA;AAAA;AAAA;AAAA;AAAA,IACvB,MAAA,EAAA,MAAA,QAAA,SAAA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIsC,qBAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA;AAAA;AAAA;AAAA,IAKU,OAAA,EAAA,MAAA,QAAA,UAAA,GAAA;AAAA;AAAA;AAAA;AAAA,IAKb,YAAA,EAAA,MAAA,SAAA,SAAA,GAAA;AAAA,EAKM;AAAA,EAChD,OAAA,CAAA,mBAAA;AAEJ,CAAA;;AA/CoB,QAAAC,IAAAC,EAAA,mBAAA;AANf,SAAA1D,EAAA,GAAAO,EAAAkD,GAAA;AAAA,IAA2C,OAAApD,EAAA;AAAA,IACrC,0BAAAA,EAAA;AAAA,IACiB,MAAAA,EAAA;AAAA,IACvB,eAAAA,EAAA;AAAA;EAEO,GAAA;AAAA;;;;;;;"}
package/dist/tabs.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as g, inject as T, withDirectives as h, openBlock as b, createElementBlock as c, renderSlot as m, vShow as I, ref as u, provide as y, watch as N, nextTick as S, resolveComponent as K, createElementVNode as f, Fragment as k, renderList as D, normalizeClass as V, withKeys as x, createVNode as R, withCtx as L, createTextVNode as O, toDisplayString as X } from "vue";
2
2
  import { _ as B } from "./chunks/_plugin-vue_export-helper.dad06003.js";
3
- import { B as Y, a as j, b as P } from "./chunks/index.92f7d550.js";
3
+ import { B as Y, a as j, b as P } from "./chunks/index.ebf5f6cf.js";
4
4
  import { g as q } from "./chunks/unique-id.a2a2b458.js";
5
- import "./assets/index27.css";
5
+ import "./assets/index30.css";
6
6
  const A = Symbol("tabs registerTab injection key"), w = Symbol("tabs active tab ID key"), z = g({
7
7
  props: {
8
8
  /**
package/dist/tag.js CHANGED
@@ -1,12 +1,12 @@
1
- import { defineComponent as p, computed as a, resolveComponent as d, resolveDirective as m, withDirectives as _, openBlock as b, createElementBlock as f, normalizeClass as v, createVNode as g, withCtx as y, createTextVNode as h, toDisplayString as E } from "vue";
2
- import { B as T, b as C, a as S } from "./chunks/index.92f7d550.js";
3
- import { b as N } from "./chunks/tooltip.ca53a83a.js";
1
+ import { defineComponent as u, computed as a, resolveComponent as p, resolveDirective as m, withDirectives as _, openBlock as b, createElementBlock as f, normalizeClass as v, createVNode as g, withCtx as y, createTextVNode as h, toDisplayString as E } from "vue";
2
+ import { B as T, b as C, a as S } from "./chunks/index.ebf5f6cf.js";
3
+ import { b as N } from "./chunks/tooltip.53290a34.js";
4
4
  import { u as A } from "./chunks/aria-label.ac9651a5.js";
5
5
  import { g as c } from "./chunks/get-slot-text.2db867f8.js";
6
6
  import { _ as B } from "./chunks/_plugin-vue_export-helper.dad06003.js";
7
- import "./assets/index6.css";
7
+ import "./assets/index31.css";
8
8
  var n = /* @__PURE__ */ ((e) => (e.GREY = "grey", e.BLUE = "blue", e.GREEN = "green", e.ORANGE = "orange", e.RED = "red", e.WHITE = "white", e))(n || {});
9
- const $ = p({
9
+ const $ = u({
10
10
  name: "bento-tag",
11
11
  components: { BentoTypography: T },
12
12
  directives: { BentoTooltipDirective: N },
@@ -50,7 +50,7 @@ const $ = p({
50
50
  });
51
51
  const w = ["aria-label"];
52
52
  function D(e, o, i, s, t, r) {
53
- const l = d("bento-typography"), u = m("bento-tooltip-directive");
53
+ const l = p("bento-typography"), d = m("bento-tooltip-directive");
54
54
  return _((b(), f("span", {
55
55
  class: v(["b-tag", e.tagConditionalClasses]),
56
56
  "aria-label": e.computedAriaLabel,
@@ -68,10 +68,10 @@ function D(e, o, i, s, t, r) {
68
68
  _: 1
69
69
  }, 8, ["el", "variant"])
70
70
  ], 10, w)), [
71
- [u, e.shouldShowTooltip ? e.textFromSlot : null]
71
+ [d, e.shouldShowTooltip ? e.textFromSlot : null]
72
72
  ]);
73
73
  }
74
- const I = /* @__PURE__ */ B($, [["render", D], ["__scopeId", "data-v-1cf0a538"]]);
74
+ const I = /* @__PURE__ */ B($, [["render", D], ["__scopeId", "data-v-aaf7d37d"]]);
75
75
  export {
76
76
  I as BentoTag,
77
77
  n as BentoTagVariant
package/dist/tag.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","sources":["../../vue2/src/components/tag/tag.types.ts","../../vue2/src/components/tag/tag.vue"],"sourcesContent":["export enum BentoTagVariant {\n GREY = 'grey',\n BLUE = 'blue',\n GREEN = 'green',\n ORANGE = 'orange',\n RED = 'red',\n WHITE = 'white',\n}\n","<template>\n <span\n v-bento-tooltip-directive=\"shouldShowTooltip ? textFromSlot : null\"\n class=\"b-tag\"\n :class=\"tagConditionalClasses\"\n :aria-label=\"computedAriaLabel\"\n role=\"mark\"\n >\n <bento-typography\n class=\"b-tag__label\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.CAPTION\"\n stronger\n >\n {{ formattedText }}\n </bento-typography>\n </span>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import { BentoTagVariant } from './tag.types';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoTooltipDirective } from '@/directives';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { getSlotText } from '@/utils/ts/get-slot-text';\n\n export default defineComponent({\n name: 'bento-tag',\n components: { BentoTypography },\n directives: { BentoTooltipDirective },\n props: {\n /**\n * The label text content of the Tag.\n */\n label: { type: String, default: null },\n\n /**\n * The variant variant of tag\n */\n variant: {\n type: String as PropType<BentoTagVariant>,\n default: BentoTagVariant.GREY,\n validator: (value: BentoTagVariant) => Object.values(BentoTagVariant).includes(value),\n },\n\n /**\n * The number of characters to limit the number of displayed characters for the tag text, truncating it with an ellipsis of three dots \"...\".\n */\n truncate: { type: Number, default: null },\n },\n setup(props, { slots }) {\n const computedAriaLabel = useAriaLabel({\n label: props.label || getSlotText(slots)('default'),\n defaultFallback: 'tag',\n });\n\n const tagConditionalClasses = computed(() => ({\n [`b-tag--${props.variant}`]: props.variant,\n }));\n\n const textFromSlot = computed(() => props.label || getSlotText(slots)('default') || 'tag');\n const shouldShowTooltip = computed(() => props.truncate && textFromSlot.value.length > props.truncate);\n\n const formattedText = computed(() => {\n if (!props.truncate) {\n return textFromSlot.value;\n }\n\n return shouldShowTooltip.value\n ? `${textFromSlot.value.slice(0, props.truncate)}...`\n : textFromSlot.value;\n });\n\n return {\n // Values\n computedAriaLabel,\n textFromSlot,\n formattedText,\n tagConditionalClasses,\n shouldShowTooltip,\n\n // Enums\n BentoTypographyVariant,\n BentoTypographyElement,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./tag.scss\" />\n"],"names":["BentoTagVariant","BentoTagVariant2","_sfc_main","defineComponent","BentoTypography","BentoTooltipDirective","value","props","slots","computedAriaLabel","useAriaLabel","getSlotText","tagConditionalClasses","computed","textFromSlot","shouldShowTooltip","formattedText","BentoTypographyVariant","BentoTypographyElement","withDirectives","openBlock","createElementBlock","normalizeClass","_ctx"],"mappings":";;;;;;;AAAY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,OAAA,QACAA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,SAAA,UACAA,EAAA,MAAA,OACAA,EAAA,QAAA,SANQA,IAAAD,KAAA,CAAA,CAAA;AC2BR,MAAAE,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAC,EAAA;AAAA,EACwB,YAAA,EAAA,uBAAAC,EAAA;AAAA,EACM,OAAA;AAAA;AAAA;AAAA;AAAA,IAC7B,OAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA;AAAA;AAAA;AAAA,IAIkC,SAAA;AAAA,MAK5B,MAAA;AAAA,MACC,SAAAL,EAAA;AAAA,MACmB,WAAA,CAAAM,MAAA,OAAA,OAAAN,CAAA,EAAA,SAAAM,CAAA;AAAA,IAC2D;AAAA;AAAA;AAAA;AAAA,IACxF,UAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA,EAKwC;AAAA,EAC5C,MAAAC,GAAA,EAAA,OAAAC,EAAA,GAAA;AAEI,UAAAC,IAAAC,EAAA;AAAA,MAAuC,OAAAH,EAAA,SAAAI,EAAAH,CAAA,EAAA,SAAA;AAAA,MACe,iBAAA;AAAA,IACjC,CAAA,GAGrBI,IAAAC,EAAA,OAAA;AAAA,MAA8C,CAAA,UAAAN,EAAA,SAAA,GAAAA,EAAA;AAAA,IACP,EAAA,GAGvCO,IAAAD,EAAA,MAAAN,EAAA,SAAAI,EAAAH,CAAA,EAAA,SAAA,KAAA,KAAA,GACAO,IAAAF,EAAA,MAAAN,EAAA,YAAAO,EAAA,MAAA,SAAAP,EAAA,QAAA,GAEAS,IAAAH,EAAA,MACIN,EAAA,YAIAQ,EAAA,QAAA,GAAAD,EAAA,MAAA,MAAA,GAAAP,EAAA,QAAA,SAHIO,EAAA,KAKe;AAGvB,WAAA;AAAA;AAAA,MAAO,mBAAAL;AAAA,MAEH,cAAAK;AAAA,MACA,eAAAE;AAAA,MACA,uBAAAJ;AAAA,MACA,mBAAAG;AAAA;AAAA,MACA,wBAAAE;AAAA,MAGA,wBAAAC;AAAA,IACA;AAAA,EACJ;AAER,CAAA;;;;AAlFK,SAAAC,GAAAC,EAAA,GAAAC,EAAA,QAAA;AAAA,IAA6B,OAAAC,EAAA,CAAA,SAAAC,EAAA,qBAAA,CAAA;AAAA,IACnB,cAAAA,EAAA;AAAA,IAEX,MAAA;AAAA,EAAA,GAAA;AAAA;MAEoC,OAAA;AAAA,MACxB,IAAAA,EAAA,uBAAA;AAAA,MACA,SAAAA,EAAA,uBAAA;AAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tag.js","sources":["../../vue2/src/components/tag/tag.types.ts","../../vue2/src/components/tag/tag.vue"],"sourcesContent":["export enum BentoTagVariant {\n GREY = 'grey',\n BLUE = 'blue',\n GREEN = 'green',\n ORANGE = 'orange',\n RED = 'red',\n WHITE = 'white',\n}\n","<template>\n <span\n v-bento-tooltip-directive=\"shouldShowTooltip ? textFromSlot : null\"\n class=\"b-tag\"\n :class=\"tagConditionalClasses\"\n :aria-label=\"computedAriaLabel\"\n role=\"mark\"\n >\n <bento-typography\n class=\"b-tag__label\"\n :el=\"BentoTypographyElement.SPAN\"\n :variant=\"BentoTypographyVariant.CAPTION\"\n stronger\n >\n {{ formattedText }}\n </bento-typography>\n </span>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import { BentoTagVariant } from './tag.types';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoTooltipDirective } from '@/directives';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { getSlotText } from '@/utils/ts/get-slot-text';\n\n export default defineComponent({\n name: 'bento-tag',\n components: { BentoTypography },\n directives: { BentoTooltipDirective },\n props: {\n /**\n * The label text content of the Tag.\n */\n label: { type: String, default: null },\n\n /**\n * The variant variant of tag\n */\n variant: {\n type: String as PropType<BentoTagVariant | `${BentoTagVariant}`>,\n default: BentoTagVariant.GREY,\n validator: (value: BentoTagVariant) => Object.values(BentoTagVariant).includes(value),\n },\n\n /**\n * The number of characters to limit the number of displayed characters for the tag text, truncating it with an ellipsis of three dots \"...\".\n */\n truncate: { type: Number, default: null },\n },\n setup(props, { slots }) {\n const computedAriaLabel = useAriaLabel({\n label: props.label || getSlotText(slots)('default'),\n defaultFallback: 'tag',\n });\n\n const tagConditionalClasses = computed(() => ({\n [`b-tag--${props.variant}`]: props.variant,\n }));\n\n const textFromSlot = computed(() => props.label || getSlotText(slots)('default') || 'tag');\n const shouldShowTooltip = computed(() => props.truncate && textFromSlot.value.length > props.truncate);\n\n const formattedText = computed(() => {\n if (!props.truncate) {\n return textFromSlot.value;\n }\n\n return shouldShowTooltip.value\n ? `${textFromSlot.value.slice(0, props.truncate)}...`\n : textFromSlot.value;\n });\n\n return {\n // Values\n computedAriaLabel,\n textFromSlot,\n formattedText,\n tagConditionalClasses,\n shouldShowTooltip,\n\n // Enums\n BentoTypographyVariant,\n BentoTypographyElement,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./tag.scss\" />\n"],"names":["BentoTagVariant","BentoTagVariant2","_sfc_main","defineComponent","BentoTypography","BentoTooltipDirective","value","props","slots","computedAriaLabel","useAriaLabel","getSlotText","tagConditionalClasses","computed","textFromSlot","shouldShowTooltip","formattedText","BentoTypographyVariant","BentoTypographyElement","withDirectives","openBlock","createElementBlock","normalizeClass","_ctx"],"mappings":";;;;;;;AAAY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,OAAA,QACAA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,SAAA,UACAA,EAAA,MAAA,OACAA,EAAA,QAAA,SANQA,IAAAD,KAAA,CAAA,CAAA;AC2BR,MAAAE,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAC,EAAA;AAAA,EACwB,YAAA,EAAA,uBAAAC,EAAA;AAAA,EACM,OAAA;AAAA;AAAA;AAAA;AAAA,IAC7B,OAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA;AAAA;AAAA;AAAA,IAIkC,SAAA;AAAA,MAK5B,MAAA;AAAA,MACC,SAAAL,EAAA;AAAA,MACmB,WAAA,CAAAM,MAAA,OAAA,OAAAN,CAAA,EAAA,SAAAM,CAAA;AAAA,IAC2D;AAAA;AAAA;AAAA;AAAA,IACxF,UAAA,EAAA,MAAA,QAAA,SAAA,KAAA;AAAA,EAKwC;AAAA,EAC5C,MAAAC,GAAA,EAAA,OAAAC,EAAA,GAAA;AAEI,UAAAC,IAAAC,EAAA;AAAA,MAAuC,OAAAH,EAAA,SAAAI,EAAAH,CAAA,EAAA,SAAA;AAAA,MACe,iBAAA;AAAA,IACjC,CAAA,GAGrBI,IAAAC,EAAA,OAAA;AAAA,MAA8C,CAAA,UAAAN,EAAA,SAAA,GAAAA,EAAA;AAAA,IACP,EAAA,GAGvCO,IAAAD,EAAA,MAAAN,EAAA,SAAAI,EAAAH,CAAA,EAAA,SAAA,KAAA,KAAA,GACAO,IAAAF,EAAA,MAAAN,EAAA,YAAAO,EAAA,MAAA,SAAAP,EAAA,QAAA,GAEAS,IAAAH,EAAA,MACIN,EAAA,YAIAQ,EAAA,QAAA,GAAAD,EAAA,MAAA,MAAA,GAAAP,EAAA,QAAA,SAHIO,EAAA,KAKe;AAGvB,WAAA;AAAA;AAAA,MAAO,mBAAAL;AAAA,MAEH,cAAAK;AAAA,MACA,eAAAE;AAAA,MACA,uBAAAJ;AAAA,MACA,mBAAAG;AAAA;AAAA,MACA,wBAAAE;AAAA,MAGA,wBAAAC;AAAA,IACA;AAAA,EACJ;AAER,CAAA;;;;AAlFK,SAAAC,GAAAC,EAAA,GAAAC,EAAA,QAAA;AAAA,IAA6B,OAAAC,EAAA,CAAA,SAAAC,EAAA,qBAAA,CAAA;AAAA,IACnB,cAAAA,EAAA;AAAA,IAEX,MAAA;AAAA,EAAA,GAAA;AAAA;MAEoC,OAAA;AAAA,MACxB,IAAAA,EAAA,uBAAA;AAAA,MACA,SAAAA,EAAA,uBAAA;AAAA;;;;;;;;;;;;"}
package/dist/textarea.js CHANGED
@@ -1,18 +1,18 @@
1
- import { openBlock as n, createElementBlock as g, mergeProps as X, toDisplayString as b, createCommentVNode as i, pushScopeId as x, popScopeId as ee, createElementVNode as N, defineComponent as ae, toRefs as te, ref as h, computed as s, watch as $, nextTick as le, onMounted as re, resolveComponent as v, normalizeClass as C, normalizeStyle as k, createVNode as E, withCtx as c, createTextVNode as y, createBlock as p, withKeys as R } from "vue";
2
- import { B as oe, a as ne } from "./chunks/index.92f7d550.js";
3
- import { B as se, a as ie } from "./chunks/button.4ccc3a72.js";
4
- import { _ as H } from "./chunks/_plugin-vue_export-helper.dad06003.js";
1
+ import { openBlock as n, createElementBlock as g, mergeProps as X, toDisplayString as b, createCommentVNode as i, pushScopeId as x, popScopeId as ee, createElementVNode as N, defineComponent as ae, toRefs as te, ref as h, computed as s, watch as $, nextTick as le, onMounted as re, resolveComponent as v, normalizeClass as C, normalizeStyle as w, createVNode as E, withCtx as c, createTextVNode as y, createBlock as p, withKeys as R } from "vue";
2
+ import { B as oe, a as ne } from "./chunks/index.ebf5f6cf.js";
3
+ import { B as se, a as ie } from "./chunks/button.1f630b6e.js";
4
+ import { _ as U } from "./chunks/_plugin-vue_export-helper.dad06003.js";
5
5
  import { g as ue } from "./chunks/unique-id.a2a2b458.js";
6
6
  import { o as de } from "./chunks/resize.a041304d.js";
7
7
  import { u as ce } from "./chunks/i18n.6c402773.js";
8
8
  import { u as pe } from "./chunks/aria-label.ac9651a5.js";
9
- import { E as be } from "./chunks/error-message.a65a9abf.js";
10
- import "./assets/index7.css";
11
- var U = /* @__PURE__ */ ((e) => (e.HORIZONTAL = "horizontal", e.VERTICAL = "vertical", e.BOTH = "both", e.NONE = "none", e))(U || {}), m = /* @__PURE__ */ ((e) => (e.CLEARABLE = "clearable", e.DISABLED = "disabled", e.ERROR = "error", e.READONLY = "readonly", e))(m || {}), l = /* @__PURE__ */ ((e) => (e.BLUR = "blur", e.CHANGE = "change", e.CLEAR = "clear", e.ESCAPE_PRESSED = "escape-pressed", e.FOCUS = "focus", e.INPUT = "input", e))(l || {});
12
- let w = 0;
9
+ import { E as be } from "./chunks/error-message.b88bb75a.js";
10
+ import "./assets/index36.css";
11
+ var P = /* @__PURE__ */ ((e) => (e.HORIZONTAL = "horizontal", e.VERTICAL = "vertical", e.BOTH = "both", e.NONE = "none", e))(P || {}), m = /* @__PURE__ */ ((e) => (e.CLEARABLE = "clearable", e.DISABLED = "disabled", e.ERROR = "error", e.READONLY = "readonly", e))(m || {}), l = /* @__PURE__ */ ((e) => (e.BLUR = "blur", e.CHANGE = "change", e.CLEAR = "clear", e.ESCAPE_PRESSED = "escape-pressed", e.FOCUS = "focus", e.INPUT = "input", e))(l || {});
12
+ let O = 0;
13
13
  const me = {
14
14
  beforeCreate() {
15
- this.uuid = w.toString(), w += 1;
15
+ this.uuid = O.toString(), O += 1;
16
16
  }
17
17
  }, fe = (e) => (x("data-v-3c9e4cfb"), e = e(), ee(), e), ye = { key: 0 }, ge = /* @__PURE__ */ fe(() => /* @__PURE__ */ N("path", {
18
18
  fill: "#00112C",
@@ -31,7 +31,7 @@ function he(e, a, L, u, _, S) {
31
31
  ge
32
32
  ], 16);
33
33
  }
34
- const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb"]]), O = {
34
+ const ve = /* @__PURE__ */ U(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb"]]), H = {
35
35
  "en-US": {
36
36
  clearText: "Clear text",
37
37
  optional: "optional",
@@ -40,7 +40,7 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
40
40
  yourTextCanBenAtMost: "Your text can be at most {characterLimit} characters"
41
41
  }
42
42
  }, Ce = ae({
43
- i18n: { messages: O },
43
+ i18n: { messages: H },
44
44
  name: "bento-textarea",
45
45
  components: { BentoButton: se, BentoTypography: oe, ErrorMessage: be, CrossCircleFillSmallIcon: ve },
46
46
  props: {
@@ -91,7 +91,11 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
91
91
  /**
92
92
  * Indicates the possibility of resize the textarea
93
93
  */
94
- resizable: { type: String, default: U.BOTH },
94
+ resizable: {
95
+ type: String,
96
+ default: P.BOTH,
97
+ validator: (e) => Object.values(P).includes(e)
98
+ },
95
99
  /**
96
100
  * Highlights the textarea is required.
97
101
  */
@@ -110,7 +114,7 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
110
114
  l.INPUT
111
115
  ],
112
116
  setup(e, { emit: a }) {
113
- const { ariaLabel: L, height: u, label: _ } = te(e), S = ue("textarea"), t = h(null), r = h(e.value), f = 44, d = h(e.height || `${f}px`), o = h("100%"), { t: B } = ce({ messages: O }), D = s(() => `${r.value.length} / ${e.characterLimit}`), A = s(
117
+ const { ariaLabel: L, height: u, label: _ } = te(e), S = ue("textarea"), t = h(null), r = h(e.value), f = 44, d = h(e.height || `${f}px`), o = h("100%"), { t: B } = ce({ messages: H }), D = s(() => `${r.value.length} / ${e.characterLimit}`), A = s(
114
118
  () => e.characterLimit && r.value.length > e.characterLimit
115
119
  ), I = () => {
116
120
  t.value && t.value.scrollHeight > f && (d.value = `${t.value.scrollHeight + 3}px`);
@@ -134,12 +138,12 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
134
138
  },
135
139
  { immediate: !0 }
136
140
  );
137
- const P = s(() => !!e.errorMessage || A.value), F = s(() => ({
141
+ const T = s(() => !!e.errorMessage || A.value), F = s(() => ({
138
142
  [`b-textarea--${m.DISABLED}`]: e.disabled
139
143
  })), M = s(() => ({
140
144
  [`b-textarea__input--${m.CLEARABLE}`]: e.clearable,
141
145
  [`b-textarea__input--${m.READONLY}`]: e.readonly,
142
- [`b-textarea__input--${m.ERROR}`]: P.value,
146
+ [`b-textarea__input--${m.ERROR}`]: T.value,
143
147
  ["b-textarea__input--dynamic-height"]: !u.value
144
148
  })), V = s(() => ({
145
149
  ["b-textarea__label-box--no-label"]: !e.label
@@ -155,8 +159,8 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
155
159
  () => e.clearable && r.value && !e.disabled && !e.readonly
156
160
  ), Y = () => {
157
161
  r.value = "", a(l.CLEAR), a(l.INPUT, "");
158
- }, G = (T) => {
159
- !e.disabled && !e.readonly && (r.value = T.target.value, a(l.INPUT, r.value));
162
+ }, G = (k) => {
163
+ !e.disabled && !e.readonly && (r.value = k.target.value, a(l.INPUT, r.value));
160
164
  }, Z = () => {
161
165
  t.value.scrollTop = 0, a(l.BLUR);
162
166
  }, j = () => {
@@ -191,7 +195,7 @@ const ve = /* @__PURE__ */ H(me, [["render", he], ["__scopeId", "data-v-3c9e4cfb
191
195
  counter: D,
192
196
  counterErrorText: K,
193
197
  conditionalClassesInput: M,
194
- invalidInput: P,
198
+ invalidInput: T,
195
199
  isOverCharacterLimit: A,
196
200
  showClearButton: z,
197
201
  textareaElement: t,
@@ -210,7 +214,7 @@ function Se(e, a, L, u, _, S) {
210
214
  const t = v("bento-typography"), r = v("cross-circle-fill-small-icon"), f = v("bento-button"), d = v("error-message");
211
215
  return n(), g("div", {
212
216
  class: C(["b-textarea", e.conditionalClasses]),
213
- style: k({ width: e.textareaWidth })
217
+ style: w({ width: e.textareaWidth })
214
218
  }, [
215
219
  N("div", {
216
220
  class: C(["b-textarea__label-box", e.conditionalClassesLabelBox])
@@ -277,7 +281,7 @@ function Se(e, a, L, u, _, S) {
277
281
  readonly: e.readonly,
278
282
  disabled: e.disabled,
279
283
  placeholder: e.placeholder,
280
- style: k({ resize: e.resizable, height: e.textareaHeight }),
284
+ style: w({ resize: e.resizable, height: e.textareaHeight }),
281
285
  onBlur: a[0] || (a[0] = (...o) => e.onBlur && e.onBlur(...o)),
282
286
  onChange: a[1] || (a[1] = (...o) => e.onChange && e.onChange(...o)),
283
287
  onFocus: a[2] || (a[2] = (...o) => e.onFocus && e.onFocus(...o)),
@@ -324,7 +328,7 @@ function Se(e, a, L, u, _, S) {
324
328
  }, 8, ["el"])) : i("", !0)
325
329
  ], 6);
326
330
  }
327
- const we = /* @__PURE__ */ H(Ce, [["render", Se], ["__scopeId", "data-v-6f1b73d7"]]);
331
+ const we = /* @__PURE__ */ U(Ce, [["render", Se], ["__scopeId", "data-v-d8862135"]]);
328
332
  export {
329
333
  we as BentoTextarea
330
334
  };
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sources":["../../vue2/src/components/textarea/textarea.types.ts","../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/cross-circle-fill-small.vue","../../vue2/src/components/textarea/textarea.vue"],"sourcesContent":["export enum BentoTextareaResizeOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n BOTH = 'both',\n NONE = 'none',\n}\n\nexport enum BentoTextareaStateClass {\n CLEARABLE = 'clearable',\n DISABLED = 'disabled',\n ERROR = 'error',\n READONLY = 'readonly',\n}\n\nexport enum BentoTextareaEvent {\n BLUR = 'blur',\n CHANGE = 'change',\n CLEAR = 'clear',\n ESCAPE_PRESSED = 'escape-pressed',\n FOCUS = 'focus',\n INPUT = 'input',\n}\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><path fill=\"#00112C\" fill-rule=\"evenodd\" d=\"M2.25 8C2.25 4.82436 4.82436 2.25 8 2.25C11.1756 2.25 13.75 4.82436 13.75 8C13.75 11.1756 11.1756 13.75 8 13.75C4.82436 13.75 2.25 11.1756 2.25 8ZM5.46967 5.46967C5.17678 5.76256 5.17678 6.23744 5.46967 6.53033L6.93934 8L5.46967 9.46967C5.17678 9.76256 5.17678 10.2374 5.46967 10.5303C5.76256 10.8232 6.23744 10.8232 6.53033 10.5303L8 9.06066L9.46967 10.5303C9.76256 10.8232 10.2374 10.8232 10.5303 10.5303C10.8232 10.2374 10.8232 9.76256 10.5303 9.46967L9.06066 8L10.5303 6.53033C10.8232 6.23744 10.8232 5.76256 10.5303 5.46967C10.2374 5.17678 9.76256 5.17678 9.46967 5.46967L8 6.93934L6.53033 5.46967C6.23744 5.17678 5.76256 5.17678 5.46967 5.46967Z\" clip-rule=\"evenodd\"/></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style scoped lang=\"scss\">\n svg {\n display: inline-flex;\n flex-shrink: 0;\n }\n \n svg,\n svg * {\n fill: currentcolor;\n }\n</style>\n","<template>\n <div class=\"b-textarea\" :class=\"conditionalClasses\" :style=\"{ width: textareaWidth }\">\n <div class=\"b-textarea__label-box\" :class=\"conditionalClassesLabelBox\">\n <label v-if=\"label\" :for=\"textareaId\" class=\"b-textarea__label\">\n <bento-typography :el=\"BentoTypographyElement.SPAN\" stronger>{{ label }}</bento-typography>\n <bento-typography\n v-if=\"optional && !required\"\n :el=\"BentoTypographyElement.SPAN\"\n class=\"b-textarea__label-item\"\n >\n ({{ t('optional') }})\n </bento-typography>\n <bento-typography v-if=\"required\" :el=\"BentoTypographyElement.SPAN\" class=\"b-textarea__label-item\">\n ({{ t('required') }})\n </bento-typography>\n </label>\n <bento-typography\n v-if=\"characterLimit\"\n :el=\"BentoTypographyElement.SPAN\"\n class=\"b-textarea__label-item\"\n :class=\"conditionalClassesLabelItem\"\n >\n {{ counter }}\n </bento-typography>\n </div>\n <bento-typography :el=\"BentoTypographyElement.DIV\" class=\"b-textarea__input-box\" :aria-disabled=\"disabled\">\n <textarea\n :id=\"textareaId\"\n ref=\"textareaElement\"\n :value=\"textareaValue\"\n class=\"b-textarea__input\"\n :class=\"conditionalClassesInput\"\n :aria-label=\"computedAriaLabel\"\n :aria-invalid=\"invalidInput\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :style=\"{ resize: resizable, height: textareaHeight }\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keydown.esc=\"onPressEscape\"\n >\n </textarea>\n\n <div v-if=\"showClearButton\" class=\"b-textarea__clear-button\">\n <bento-button\n :variant=\"BentoButtonVariant.TERTIARY\"\n :disabled=\"disabled\"\n @click=\"onClear\"\n @keypress.enter=\"onClear\"\n @keyup.space=\"onClear\"\n >\n <template #iconLeft>\n <cross-circle-fill-small-icon :svg-title=\"t('clearText')\" />\n </template>\n </bento-button>\n </div>\n </bento-typography>\n\n <error-message v-if=\"isOverCharacterLimit\" :error-message=\"counterErrorText\" />\n\n <error-message v-if=\"errorMessage\" :error-message=\"errorMessage\" />\n\n <bento-typography v-if=\"description\" class=\"b-textarea__description\" :el=\"BentoTypographyElement.SPAN\">\n {{ description }}\n </bento-typography>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, nextTick, onMounted, PropType, ref, toRefs, watch } from 'vue';\n import { BentoTextareaEvent, BentoTextareaResizeOption, BentoTextareaStateClass } from './textarea.types';\n import { BentoTypography, BentoTypographyElement } from '@/components/typography';\n import { BentoButton, BentoButtonVariant } from '@/components/button';\n import { ErrorMessage } from '@/components/internal';\n import CrossCircleFillSmallIcon from '@adyen/ui-assets-icons-16/vue/cross-circle-fill-small';\n import { generateUid } from '@/utils/ts/unique-id';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n export default defineComponent({\n i18n: { messages },\n name: 'bento-textarea',\n components: { BentoButton, BentoTypography, ErrorMessage, CrossCircleFillSmallIcon },\n props: {\n /**\n * Text that labels an the input element\n */\n ariaLabel: { type: String, default: undefined },\n\n /**\n * Text that shows number of characters in textarea\n */\n characterLimit: { type: Number, default: undefined },\n\n /**\n * Text displayed as the help text of the textarea\n */\n description: { type: String, default: '' },\n\n /**\n * Disables the possibility of changing value in the textarea\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * If set to true, shows a button to clear all the text\n */\n clearable: { type: Boolean, default: false },\n\n /**\n * Adds error text\n */\n errorMessage: { type: String, default: '' },\n\n /**\n * Sets the height of the textarea, e.g 200px OR 20vh\n */\n height: { type: String, default: null },\n\n /**\n * Text displayed as the label of the textarea\n */\n label: { type: String, default: '' },\n\n /**\n * Highlights the textarea is optional.\n */\n optional: { type: Boolean, default: false },\n\n /**\n * Text displayed as the placeholder of the textarea\n */\n placeholder: { type: String, default: '' },\n\n /**\n * Set the textarea to read only state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * Indicates the possibility of resize the textarea\n */\n resizable: { type: String as PropType<BentoTextareaResizeOption>, default: BentoTextareaResizeOption.BOTH },\n\n /**\n * Highlights the textarea is required.\n */\n required: { type: Boolean, default: false },\n\n /**\n * Text displayed as the value of the textarea\n */\n value: { type: String, default: '' },\n },\n emits: [\n BentoTextareaEvent.BLUR,\n BentoTextareaEvent.CHANGE,\n BentoTextareaEvent.CLEAR,\n BentoTextareaEvent.ESCAPE_PRESSED,\n BentoTextareaEvent.FOCUS,\n BentoTextareaEvent.INPUT,\n ],\n setup(props, { emit }) {\n const { ariaLabel, height, label } = toRefs(props);\n\n const textareaId = generateUid('textarea');\n const textareaElement = ref<HTMLTextAreaElement>(null);\n const textareaValue = ref(props.value);\n const defaultTextareaHeight = 44;\n const textareaHeight = ref(props.height || `${defaultTextareaHeight}px`);\n const textareaWidth = ref('100%');\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const counter = computed(() => `${textareaValue.value.length} / ${props.characterLimit}`);\n const isOverCharacterLimit = computed(\n () => props.characterLimit && textareaValue.value.length > props.characterLimit\n );\n\n const calculateHeight = () => {\n const borderWidth = 3;\n if (textareaElement.value && textareaElement.value.scrollHeight > defaultTextareaHeight) {\n textareaHeight.value = `${textareaElement.value.scrollHeight + borderWidth}px`;\n }\n };\n\n watch(height, () => {\n if (!height.value) {\n calculateHeight();\n } else {\n textareaHeight.value = height.value;\n }\n });\n\n watch(\n () => props.value,\n () => {\n textareaValue.value = props.value;\n },\n { immediate: true }\n );\n\n watch(\n () => textareaValue.value,\n async () => {\n if (!height.value) {\n // Hack to make the textarea calculate its height properly\n // Set the textarea back to the original value before calculating the height\n textareaHeight.value = `${defaultTextareaHeight}px`;\n if (!textareaValue.value) {\n return;\n }\n\n await nextTick();\n calculateHeight();\n }\n },\n { immediate: true }\n );\n\n const invalidInput = computed(() => !!props.errorMessage || isOverCharacterLimit.value);\n\n const conditionalClasses = computed(() => ({\n [`b-textarea--${BentoTextareaStateClass.DISABLED}`]: props.disabled,\n }));\n\n const conditionalClassesInput = computed(() => ({\n [`b-textarea__input--${BentoTextareaStateClass.CLEARABLE}`]: props.clearable,\n [`b-textarea__input--${BentoTextareaStateClass.READONLY}`]: props.readonly,\n [`b-textarea__input--${BentoTextareaStateClass.ERROR}`]: invalidInput.value,\n [`b-textarea__input--dynamic-height`]: !height.value,\n }));\n\n const conditionalClassesLabelBox = computed(() => ({\n [`b-textarea__label-box--no-label`]: !props.label,\n }));\n\n const conditionalClassesLabelItem = computed(() => ({\n [`b-textarea__label-item--${BentoTextareaStateClass.ERROR}`]: isOverCharacterLimit.value,\n }));\n\n const counterErrorText = computed(() =>\n t('yourTextCanBenAtMost', { characterLimit: props.characterLimit })\n );\n\n const computedAriaLabel = useAriaLabel({\n ariaLabel,\n label,\n defaultFallback: t('textarea'),\n });\n\n const showClearButton = computed(\n () => props.clearable && textareaValue.value && !props.disabled && !props.readonly\n );\n\n const onClear = () => {\n textareaValue.value = '';\n emit(BentoTextareaEvent.CLEAR);\n emit(BentoTextareaEvent.INPUT, '');\n };\n\n const onInput = (event: InputEvent) => {\n if (!props.disabled && !props.readonly) {\n textareaValue.value = (event.target as HTMLInputElement).value;\n /**\n * Triggered when input value is changed\n *\n * @event input\n * @property {String} inputValue - the updated textarea value\n */\n emit(BentoTextareaEvent.INPUT, textareaValue.value);\n }\n };\n\n const onBlur = () => {\n textareaElement.value.scrollTop = 0;\n emit(BentoTextareaEvent.BLUR);\n };\n\n const onFocus = () => {\n textareaElement.value.focus();\n emit(BentoTextareaEvent.FOCUS);\n };\n\n const onChange = () => {\n emit(BentoTextareaEvent.CHANGE);\n };\n\n const onPressEscape = () => {\n emit(BentoTextareaEvent.ESCAPE_PRESSED);\n };\n\n onMounted(() => {\n observeSizeOfElement(textareaElement.value, () => {\n textareaWidth.value = `${textareaElement.value.offsetWidth}px`;\n });\n\n if (!height.value) {\n calculateHeight();\n }\n });\n\n return {\n // Enums\n BentoButtonVariant,\n BentoTextareaEvent,\n BentoTypographyElement,\n\n // Methods\n onBlur,\n onChange,\n onClear,\n onFocus,\n onInput,\n onPressEscape,\n t,\n\n // Values\n computedAriaLabel,\n conditionalClasses,\n conditionalClassesLabelItem,\n conditionalClassesLabelBox,\n counter,\n counterErrorText,\n conditionalClassesInput,\n invalidInput,\n isOverCharacterLimit,\n showClearButton,\n textareaElement,\n textareaHeight,\n textareaId,\n textareaValue,\n textareaWidth,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./textarea.scss\" />\n"],"names":["BentoTextareaResizeOption","BentoTextareaResizeOption2","BentoTextareaStateClass","BentoTextareaStateClass2","BentoTextareaEvent","BentoTextareaEvent2","uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1$1","toDisplayString","_sfc_main","defineComponent","messages","BentoButton","BentoTypography","ErrorMessage","CrossCircleFillSmallIcon","props","emit","ariaLabel","height","label","toRefs","textareaId","generateUid","textareaElement","ref","textareaValue","defaultTextareaHeight","textareaHeight","textareaWidth","t","useI18n","counter","computed","isOverCharacterLimit","calculateHeight","watch","nextTick","invalidInput","conditionalClasses","conditionalClassesInput","conditionalClassesLabelBox","conditionalClassesLabelItem","counterErrorText","computedAriaLabel","useAriaLabel","showClearButton","onClear","onInput","event","onBlur","onFocus","onChange","onPressEscape","onMounted","observeSizeOfElement","BentoButtonVariant","BentoTypographyElement","normalizeClass","createCommentVNode","createBlock","_component_bento_typography","_hoisted_1","createVNode","createElementVNode","normalizeStyle","_cache","args","withKeys","_hoisted_2","_hoisted_3","_component_bento_button","withCtx","_component_cross_circle_fill_small_icon","_component_error_message"],"mappings":"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","x_google_ignoreList":[1]}
1
+ {"version":3,"file":"textarea.js","sources":["../../vue2/src/components/textarea/textarea.types.ts","../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/cross-circle-fill-small.vue","../../vue2/src/components/textarea/textarea.vue"],"sourcesContent":["export enum BentoTextareaResizeOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n BOTH = 'both',\n NONE = 'none',\n}\n\nexport enum BentoTextareaStateClass {\n CLEARABLE = 'clearable',\n DISABLED = 'disabled',\n ERROR = 'error',\n READONLY = 'readonly',\n}\n\nexport enum BentoTextareaEvent {\n BLUR = 'blur',\n CHANGE = 'change',\n CLEAR = 'clear',\n ESCAPE_PRESSED = 'escape-pressed',\n FOCUS = 'focus',\n INPUT = 'input',\n}\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><path fill=\"#00112C\" fill-rule=\"evenodd\" d=\"M2.25 8C2.25 4.82436 4.82436 2.25 8 2.25C11.1756 2.25 13.75 4.82436 13.75 8C13.75 11.1756 11.1756 13.75 8 13.75C4.82436 13.75 2.25 11.1756 2.25 8ZM5.46967 5.46967C5.17678 5.76256 5.17678 6.23744 5.46967 6.53033L6.93934 8L5.46967 9.46967C5.17678 9.76256 5.17678 10.2374 5.46967 10.5303C5.76256 10.8232 6.23744 10.8232 6.53033 10.5303L8 9.06066L9.46967 10.5303C9.76256 10.8232 10.2374 10.8232 10.5303 10.5303C10.8232 10.2374 10.8232 9.76256 10.5303 9.46967L9.06066 8L10.5303 6.53033C10.8232 6.23744 10.8232 5.76256 10.5303 5.46967C10.2374 5.17678 9.76256 5.17678 9.46967 5.46967L8 6.93934L6.53033 5.46967C6.23744 5.17678 5.76256 5.17678 5.46967 5.46967Z\" clip-rule=\"evenodd\"/></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style scoped lang=\"scss\">\n svg {\n display: inline-flex;\n flex-shrink: 0;\n }\n \n svg,\n svg * {\n fill: currentcolor;\n }\n</style>\n","<template>\n <div class=\"b-textarea\" :class=\"conditionalClasses\" :style=\"{ width: textareaWidth }\">\n <div class=\"b-textarea__label-box\" :class=\"conditionalClassesLabelBox\">\n <label v-if=\"label\" :for=\"textareaId\" class=\"b-textarea__label\">\n <bento-typography :el=\"BentoTypographyElement.SPAN\" stronger>{{ label }}</bento-typography>\n <bento-typography\n v-if=\"optional && !required\"\n :el=\"BentoTypographyElement.SPAN\"\n class=\"b-textarea__label-item\"\n >\n ({{ t('optional') }})\n </bento-typography>\n <bento-typography v-if=\"required\" :el=\"BentoTypographyElement.SPAN\" class=\"b-textarea__label-item\">\n ({{ t('required') }})\n </bento-typography>\n </label>\n <bento-typography\n v-if=\"characterLimit\"\n :el=\"BentoTypographyElement.SPAN\"\n class=\"b-textarea__label-item\"\n :class=\"conditionalClassesLabelItem\"\n >\n {{ counter }}\n </bento-typography>\n </div>\n <bento-typography :el=\"BentoTypographyElement.DIV\" class=\"b-textarea__input-box\" :aria-disabled=\"disabled\">\n <textarea\n :id=\"textareaId\"\n ref=\"textareaElement\"\n :value=\"textareaValue\"\n class=\"b-textarea__input\"\n :class=\"conditionalClassesInput\"\n :aria-label=\"computedAriaLabel\"\n :aria-invalid=\"invalidInput\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :style=\"{ resize: resizable, height: textareaHeight }\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keydown.esc=\"onPressEscape\"\n >\n </textarea>\n\n <div v-if=\"showClearButton\" class=\"b-textarea__clear-button\">\n <bento-button\n :variant=\"BentoButtonVariant.TERTIARY\"\n :disabled=\"disabled\"\n @click=\"onClear\"\n @keypress.enter=\"onClear\"\n @keyup.space=\"onClear\"\n >\n <template #iconLeft>\n <cross-circle-fill-small-icon :svg-title=\"t('clearText')\" />\n </template>\n </bento-button>\n </div>\n </bento-typography>\n\n <error-message v-if=\"isOverCharacterLimit\" :error-message=\"counterErrorText\" />\n\n <error-message v-if=\"errorMessage\" :error-message=\"errorMessage\" />\n\n <bento-typography v-if=\"description\" class=\"b-textarea__description\" :el=\"BentoTypographyElement.SPAN\">\n {{ description }}\n </bento-typography>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, nextTick, onMounted, PropType, ref, toRefs, watch } from 'vue';\n import { BentoTextareaEvent, BentoTextareaResizeOption, BentoTextareaStateClass } from './textarea.types';\n import { BentoTypography, BentoTypographyElement } from '@/components/typography';\n import { BentoButton, BentoButtonVariant } from '@/components/button';\n import { ErrorMessage } from '@/components/internal';\n import CrossCircleFillSmallIcon from '@adyen/ui-assets-icons-16/vue/cross-circle-fill-small';\n import { generateUid } from '@/utils/ts/unique-id';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n export default defineComponent({\n i18n: { messages },\n name: 'bento-textarea',\n components: { BentoButton, BentoTypography, ErrorMessage, CrossCircleFillSmallIcon },\n props: {\n /**\n * Text that labels an the input element\n */\n ariaLabel: { type: String, default: undefined },\n\n /**\n * Text that shows number of characters in textarea\n */\n characterLimit: { type: Number, default: undefined },\n\n /**\n * Text displayed as the help text of the textarea\n */\n description: { type: String, default: '' },\n\n /**\n * Disables the possibility of changing value in the textarea\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * If set to true, shows a button to clear all the text\n */\n clearable: { type: Boolean, default: false },\n\n /**\n * Adds error text\n */\n errorMessage: { type: String, default: '' },\n\n /**\n * Sets the height of the textarea, e.g 200px OR 20vh\n */\n height: { type: String, default: null },\n\n /**\n * Text displayed as the label of the textarea\n */\n label: { type: String, default: '' },\n\n /**\n * Highlights the textarea is optional.\n */\n optional: { type: Boolean, default: false },\n\n /**\n * Text displayed as the placeholder of the textarea\n */\n placeholder: { type: String, default: '' },\n\n /**\n * Set the textarea to read only state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * Indicates the possibility of resize the textarea\n */\n resizable: {\n type: String as PropType<BentoTextareaResizeOption | `${BentoTextareaResizeOption}`>,\n default: BentoTextareaResizeOption.BOTH,\n validator: (value: BentoTextareaResizeOption) =>\n Object.values(BentoTextareaResizeOption).includes(value),\n },\n\n /**\n * Highlights the textarea is required.\n */\n required: { type: Boolean, default: false },\n\n /**\n * Text displayed as the value of the textarea\n */\n value: { type: String, default: '' },\n },\n emits: [\n BentoTextareaEvent.BLUR,\n BentoTextareaEvent.CHANGE,\n BentoTextareaEvent.CLEAR,\n BentoTextareaEvent.ESCAPE_PRESSED,\n BentoTextareaEvent.FOCUS,\n BentoTextareaEvent.INPUT,\n ],\n setup(props, { emit }) {\n const { ariaLabel, height, label } = toRefs(props);\n\n const textareaId = generateUid('textarea');\n const textareaElement = ref<HTMLTextAreaElement>(null);\n const textareaValue = ref(props.value);\n const defaultTextareaHeight = 44;\n const textareaHeight = ref(props.height || `${defaultTextareaHeight}px`);\n const textareaWidth = ref('100%');\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const counter = computed(() => `${textareaValue.value.length} / ${props.characterLimit}`);\n const isOverCharacterLimit = computed(\n () => props.characterLimit && textareaValue.value.length > props.characterLimit\n );\n\n const calculateHeight = () => {\n const borderWidth = 3;\n if (textareaElement.value && textareaElement.value.scrollHeight > defaultTextareaHeight) {\n textareaHeight.value = `${textareaElement.value.scrollHeight + borderWidth}px`;\n }\n };\n\n watch(height, () => {\n if (!height.value) {\n calculateHeight();\n } else {\n textareaHeight.value = height.value;\n }\n });\n\n watch(\n () => props.value,\n () => {\n textareaValue.value = props.value;\n },\n { immediate: true }\n );\n\n watch(\n () => textareaValue.value,\n async () => {\n if (!height.value) {\n // Hack to make the textarea calculate its height properly\n // Set the textarea back to the original value before calculating the height\n textareaHeight.value = `${defaultTextareaHeight}px`;\n if (!textareaValue.value) {\n return;\n }\n\n await nextTick();\n calculateHeight();\n }\n },\n { immediate: true }\n );\n\n const invalidInput = computed(() => !!props.errorMessage || isOverCharacterLimit.value);\n\n const conditionalClasses = computed(() => ({\n [`b-textarea--${BentoTextareaStateClass.DISABLED}`]: props.disabled,\n }));\n\n const conditionalClassesInput = computed(() => ({\n [`b-textarea__input--${BentoTextareaStateClass.CLEARABLE}`]: props.clearable,\n [`b-textarea__input--${BentoTextareaStateClass.READONLY}`]: props.readonly,\n [`b-textarea__input--${BentoTextareaStateClass.ERROR}`]: invalidInput.value,\n [`b-textarea__input--dynamic-height`]: !height.value,\n }));\n\n const conditionalClassesLabelBox = computed(() => ({\n [`b-textarea__label-box--no-label`]: !props.label,\n }));\n\n const conditionalClassesLabelItem = computed(() => ({\n [`b-textarea__label-item--${BentoTextareaStateClass.ERROR}`]: isOverCharacterLimit.value,\n }));\n\n const counterErrorText = computed(() =>\n t('yourTextCanBenAtMost', { characterLimit: props.characterLimit })\n );\n\n const computedAriaLabel = useAriaLabel({\n ariaLabel,\n label,\n defaultFallback: t('textarea'),\n });\n\n const showClearButton = computed(\n () => props.clearable && textareaValue.value && !props.disabled && !props.readonly\n );\n\n const onClear = () => {\n textareaValue.value = '';\n emit(BentoTextareaEvent.CLEAR);\n emit(BentoTextareaEvent.INPUT, '');\n };\n\n const onInput = (event: InputEvent) => {\n if (!props.disabled && !props.readonly) {\n textareaValue.value = (event.target as HTMLInputElement).value;\n /**\n * Triggered when input value is changed\n *\n * @event input\n * @property {String} inputValue - the updated textarea value\n */\n emit(BentoTextareaEvent.INPUT, textareaValue.value);\n }\n };\n\n const onBlur = () => {\n textareaElement.value.scrollTop = 0;\n emit(BentoTextareaEvent.BLUR);\n };\n\n const onFocus = () => {\n textareaElement.value.focus();\n emit(BentoTextareaEvent.FOCUS);\n };\n\n const onChange = () => {\n emit(BentoTextareaEvent.CHANGE);\n };\n\n const onPressEscape = () => {\n emit(BentoTextareaEvent.ESCAPE_PRESSED);\n };\n\n onMounted(() => {\n observeSizeOfElement(textareaElement.value, () => {\n textareaWidth.value = `${textareaElement.value.offsetWidth}px`;\n });\n\n if (!height.value) {\n calculateHeight();\n }\n });\n\n return {\n // Enums\n BentoButtonVariant,\n BentoTextareaEvent,\n BentoTypographyElement,\n\n // Methods\n onBlur,\n onChange,\n onClear,\n onFocus,\n onInput,\n onPressEscape,\n t,\n\n // Values\n computedAriaLabel,\n conditionalClasses,\n conditionalClassesLabelItem,\n conditionalClassesLabelBox,\n counter,\n counterErrorText,\n conditionalClassesInput,\n invalidInput,\n isOverCharacterLimit,\n showClearButton,\n textareaElement,\n textareaHeight,\n textareaId,\n textareaValue,\n textareaWidth,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./textarea.scss\" />\n"],"names":["BentoTextareaResizeOption","BentoTextareaResizeOption2","BentoTextareaStateClass","BentoTextareaStateClass2","BentoTextareaEvent","BentoTextareaEvent2","uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1$1","toDisplayString","_sfc_main","defineComponent","messages","BentoButton","BentoTypography","ErrorMessage","CrossCircleFillSmallIcon","value","props","emit","ariaLabel","height","label","toRefs","textareaId","generateUid","textareaElement","ref","textareaValue","defaultTextareaHeight","textareaHeight","textareaWidth","t","useI18n","counter","computed","isOverCharacterLimit","calculateHeight","watch","nextTick","invalidInput","conditionalClasses","conditionalClassesInput","conditionalClassesLabelBox","conditionalClassesLabelItem","counterErrorText","computedAriaLabel","useAriaLabel","showClearButton","onClear","onInput","event","onBlur","onFocus","onChange","onPressEscape","onMounted","observeSizeOfElement","BentoButtonVariant","BentoTypographyElement","normalizeClass","createCommentVNode","createBlock","_component_bento_typography","_hoisted_1","createVNode","createElementVNode","normalizeStyle","_cache","args","withKeys","_hoisted_2","_hoisted_3","_component_bento_button","withCtx","_component_cross_circle_fill_small_icon","_component_error_message"],"mappings":"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","x_google_ignoreList":[1]}