@adyen/bento-vue2 1.3.0 → 1.4.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 (363) hide show
  1. package/dist/@types/components.d.ts +8 -4
  2. package/dist/@types/packages/core/src/components/button/button.types.d.ts +8 -0
  3. package/dist/@types/packages/vue2/src/components/accordion/accordion.keys.d.ts +1 -1
  4. package/dist/@types/packages/vue2/src/components/accordion/accordion.types.d.ts +1 -24
  5. package/dist/@types/packages/vue2/src/components/accordion/accordion.vue.d.ts +17 -51
  6. package/dist/@types/packages/vue2/src/components/accordion/components/accordion-item.vue.d.ts +24 -28
  7. package/dist/@types/packages/vue2/src/components/accordion/index.d.ts +2 -3
  8. package/dist/@types/packages/vue2/src/components/alert/alert.vue.d.ts +0 -4
  9. package/dist/@types/packages/vue2/src/components/avatar-image/avatar-image.vue.d.ts +1 -4
  10. package/dist/@types/packages/vue2/src/components/button/button.vue.d.ts +161 -150
  11. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.types.d.ts +3 -5
  12. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.vue.d.ts +3 -3
  13. package/dist/@types/packages/vue2/src/components/button/components/loading-button/loading-button.vue.d.ts +2 -2
  14. package/dist/@types/packages/vue2/src/components/card/card.vue.d.ts +77 -15
  15. package/dist/@types/packages/vue2/src/components/checkbox/checkbox.types.d.ts +2 -1
  16. package/dist/@types/packages/vue2/src/components/checkbox/checkbox.vue.d.ts +4 -6
  17. package/dist/@types/packages/vue2/src/components/checkbox/components/checkbox-group/checkbox-group.vue.d.ts +4 -4
  18. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.types.d.ts +2 -1
  19. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.vue.d.ts +36 -11
  20. package/dist/@types/packages/vue2/src/components/country/country.vue.d.ts +0 -2
  21. package/dist/@types/packages/vue2/src/components/currency/currency.vue.d.ts +0 -3
  22. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-columns/data-grid-columns.vue.d.ts +2 -22
  23. 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 +0 -5
  24. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-config-settings/data-grid-config-settings.vue.d.ts +0 -24
  25. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.types.d.ts +2 -0
  26. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.vue.d.ts +326 -14
  27. package/dist/@types/packages/vue2/src/components/date/date.vue.d.ts +2 -5
  28. package/dist/@types/packages/vue2/src/components/date-picker/date-picker.vue.d.ts +1 -21
  29. package/dist/@types/packages/vue2/src/components/date-range-picker/components/date-range-picker-calendar/date-range-picker-calendar.vue.d.ts +0 -2
  30. package/dist/@types/packages/vue2/src/components/date-range-picker/date-range-picker.vue.d.ts +1 -21
  31. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-base-textbox/dropdown-base-textbox.vue.d.ts +3 -6
  32. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-default-textbox/dropdown-default-textbox.vue.d.ts +3 -3
  33. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-options-container/dropdown-options-container.vue.d.ts +277 -104
  34. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-small-textbox/dropdown-small-textbox.vue.d.ts +2 -2
  35. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-avatar/dropdown-avatar.vue.d.ts +5 -5
  36. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/dropdown-country.types.d.ts +1 -1
  37. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/dropdown-country.vue.d.ts +5 -6
  38. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-currency/dropdown-currency.types.d.ts +1 -1
  39. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-currency/dropdown-currency.vue.d.ts +5 -5
  40. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-payment-method/dropdown-payment-method.types.d.ts +1 -1
  41. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-payment-method/dropdown-payment-method.vue.d.ts +5 -5
  42. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-tag/dropdown-tag.types.d.ts +1 -1
  43. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-tag/dropdown-tag.vue.d.ts +6 -6
  44. package/dist/@types/packages/vue2/src/components/dropdown/dropdown.vue.d.ts +7 -9
  45. package/dist/@types/packages/vue2/src/components/empty-state/empty-state.types.d.ts +27 -0
  46. package/dist/@types/packages/vue2/src/components/empty-state/empty-state.vue.d.ts +76 -0
  47. package/dist/@types/packages/vue2/src/components/empty-state/index.d.ts +2 -0
  48. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/all-filters-modal.vue.d.ts +19 -25
  49. 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 +1 -1
  50. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/base-filter.vue.d.ts +0 -26
  51. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter-button/base-filter-button.vue.d.ts +1 -4
  52. package/dist/@types/packages/vue2/src/components/filter-bar/components/date-range-filter/date-range-filter.vue.d.ts +0 -10
  53. package/dist/@types/packages/vue2/src/components/filter-bar/components/{base-filter/components/filter-bar-filter-button/filter-bar-filter-button.vue.d.ts → filter-bar-button/filter-bar-button.vue.d.ts} +17 -22
  54. package/dist/@types/packages/vue2/src/components/filter-bar/components/filter-bar-button/index.d.ts +1 -0
  55. package/dist/@types/packages/vue2/src/components/filter-bar/components/input-filter/input-filter.vue.d.ts +1 -0
  56. package/dist/@types/packages/vue2/src/components/filter-bar/components/range-filter/range-filter.vue.d.ts +0 -2
  57. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue.d.ts +2 -4
  58. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-tag-filter/select-tag-filter.vue.d.ts +2 -4
  59. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.vue.d.ts +0 -2
  60. package/dist/@types/packages/vue2/src/components/focus-trap/focus-trap.vue.d.ts +3 -0
  61. package/dist/@types/packages/vue2/src/components/header/header.vue.d.ts +0 -2
  62. package/dist/@types/packages/vue2/src/components/image/const.d.ts +1 -0
  63. package/dist/@types/packages/vue2/src/components/image/image.types.d.ts +19 -0
  64. package/dist/@types/packages/vue2/src/components/image/image.vue.d.ts +50 -0
  65. package/dist/@types/packages/vue2/src/components/image/index.d.ts +1 -0
  66. package/dist/@types/packages/vue2/src/components/info-icon/info-icon.vue.d.ts +3 -3
  67. package/dist/@types/packages/vue2/src/components/input-field/input-field.types.d.ts +1 -0
  68. package/dist/@types/packages/vue2/src/components/input-field/input-field.vue.d.ts +50 -47
  69. package/dist/@types/packages/vue2/src/components/internal/avatar/avatar.vue.d.ts +0 -3
  70. package/dist/@types/packages/vue2/src/components/internal/base-button/base-button.vue.d.ts +1 -4
  71. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/calendar-month.vue.d.ts +0 -5
  72. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/components/calendar-month-day/__test__/calendar-month-day-stub.vue.d.ts +1 -1
  73. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/components/calendar-month-day/calendar-month-day.vue.d.ts +2 -2
  74. package/dist/@types/packages/vue2/src/components/internal/controls-group/controls-group.vue.d.ts +1 -1
  75. package/dist/@types/packages/vue2/src/components/internal/copy/copy.vue.d.ts +0 -2
  76. 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 +0 -2
  77. 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 +0 -2
  78. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-multi-select/listbox-multi-select.vue.d.ts +0 -2
  79. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-option-tag/listbox-option-tag.vue.d.ts +0 -2
  80. package/dist/@types/packages/vue2/src/components/internal/listbox/components/listbox-single-select-option/listbox-single-select-option.vue.d.ts +0 -2
  81. package/dist/@types/packages/vue2/src/components/internal/listbox/listbox.vue.d.ts +3 -7
  82. package/dist/@types/packages/vue2/src/components/link/link.vue.d.ts +4 -0
  83. package/dist/@types/packages/vue2/src/components/menu/components/menu-item/menu-item.vue.d.ts +2 -5
  84. package/dist/@types/packages/vue2/src/components/menu/menu.vue.d.ts +6 -31
  85. package/dist/@types/packages/vue2/src/components/modal/components/base-modal/__mocks__/base-modal.vue.d.ts +0 -5
  86. package/dist/@types/packages/vue2/src/components/modal/components/base-modal/base-modal.vue.d.ts +14 -9
  87. package/dist/@types/packages/vue2/src/components/modal/components/modal-default/modal-default.vue.d.ts +2 -2
  88. package/dist/@types/packages/vue2/src/components/modal/components/modal-dialog/modal-dialog.vue.d.ts +4 -14
  89. package/dist/@types/packages/vue2/src/components/modal/modal.vue.d.ts +7 -6
  90. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-context/pagination-context.vue.d.ts +0 -2
  91. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-controls/pagination-controls.vue.d.ts +0 -2
  92. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-results-per-page/pagination-results-per-page.vue.d.ts +0 -2
  93. package/dist/@types/packages/vue2/src/components/pagination/pagination.vue.d.ts +2 -1
  94. package/dist/@types/packages/vue2/src/components/payment-method/payment-method.vue.d.ts +0 -2
  95. package/dist/@types/packages/vue2/src/components/popover/components/popover-dismiss-button/popover-dismiss-button.vue.d.ts +0 -2
  96. package/dist/@types/packages/vue2/src/components/popover/components/popover-title/popover-title.vue.d.ts +1 -2
  97. package/dist/@types/packages/vue2/src/components/popover/popover.vue.d.ts +9 -9
  98. package/dist/@types/packages/vue2/src/components/popper-container/popper-container.vue.d.ts +5 -14
  99. package/dist/@types/packages/vue2/src/components/radio-group/components/radio-button/radio-button.vue.d.ts +4 -6
  100. package/dist/@types/packages/vue2/src/components/radio-group/radio-group.types.d.ts +2 -1
  101. package/dist/@types/packages/vue2/src/components/radio-group/radio-group.vue.d.ts +4 -4
  102. package/dist/@types/packages/vue2/src/components/search-bar/search-bar.vue.d.ts +16 -339
  103. package/dist/@types/packages/vue2/src/components/segmented-control/components/segmented-control-button/segmented-control-button.vue.d.ts +0 -3
  104. package/dist/@types/packages/vue2/src/components/segmented-control/segmented-control.vue.d.ts +1 -0
  105. package/dist/@types/packages/vue2/src/components/sidepanel/sidepanel.types.d.ts +3 -1
  106. package/dist/@types/packages/vue2/src/components/status/status.vue.d.ts +2 -5
  107. package/dist/@types/packages/vue2/src/components/structured-list/components/structered-list-item/structured-list-item.vue.d.ts +0 -2
  108. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.vue.d.ts +2 -23
  109. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-amount/summary-grid-item-amount.vue.d.ts +2 -5
  110. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-numeric/summary-grid-item-numeric.vue.d.ts +2 -5
  111. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-percentage/summary-grid-item-percentage.vue.d.ts +2 -5
  112. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-text/summary-grid-item-text.vue.d.ts +1 -4
  113. package/dist/@types/packages/vue2/src/components/tabs/components/tab.types.d.ts +3 -1
  114. package/dist/@types/packages/vue2/src/components/tabs/components/tab.vue.d.ts +1 -0
  115. package/dist/@types/packages/vue2/src/components/tabs/tabs.keys.d.ts +1 -0
  116. package/dist/@types/packages/vue2/src/components/tabs/tabs.types.d.ts +6 -2
  117. package/dist/@types/packages/vue2/src/components/tabs/tabs.vue.d.ts +4 -9
  118. package/dist/@types/packages/vue2/src/components/tag/tag.vue.d.ts +4 -7
  119. package/dist/@types/packages/vue2/src/components/textarea/textarea.vue.d.ts +5 -9
  120. package/dist/@types/packages/vue2/src/components/timeline/components/timeline-item/timeline-item.vue.d.ts +6 -12
  121. package/dist/@types/packages/vue2/src/components/timeline/timeline.types.d.ts +1 -0
  122. package/dist/@types/packages/vue2/src/components/toast/components/toast-item/toast-item.vue.d.ts +0 -5
  123. package/dist/@types/packages/vue2/src/components/toggle/toggle.vue.d.ts +4 -6
  124. package/dist/@types/packages/vue2/src/components/tooltip/tooltip.vue.d.ts +24 -40
  125. package/dist/@types/packages/vue2/src/composables/use-default-slot-validator/use-default-slot-validator.d.ts +2 -1
  126. package/dist/@types/packages/vue2/src/composables/use-has-slot/use-has-slot.d.ts +4 -1
  127. package/dist/@types/packages/vue2/src/index.d.ts +3 -0
  128. package/dist/@types/packages/vue2/src/templates/data-grid-template/data-grid-template.vue.d.ts +9 -0
  129. package/dist/@types/packages/vue2/src/utils/ts/print-development-warning.d.ts +1 -0
  130. package/dist/accordion.js +69 -177
  131. package/dist/accordion.js.map +1 -1
  132. package/dist/alert.js +57 -60
  133. package/dist/alert.js.map +1 -1
  134. package/dist/assets/base-button.css +1 -1
  135. package/dist/assets/base-modal.css +1 -0
  136. package/dist/assets/button.css +1 -1
  137. package/dist/assets/calendar.css +1 -1
  138. package/dist/assets/checkbox.css +1 -1
  139. package/dist/assets/chevron-up.css +1 -0
  140. package/dist/assets/controls-group.css +1 -1
  141. package/dist/assets/copy.css +1 -1
  142. package/dist/assets/dropdown-default-textbox.css +1 -1
  143. package/dist/assets/dropdown.css +1 -1
  144. package/dist/assets/error-message.css +1 -1
  145. package/dist/assets/footer-actions.css +1 -1
  146. package/dist/assets/index.css +1 -1
  147. package/dist/assets/index10.css +1 -1
  148. package/dist/assets/index11.css +1 -1
  149. package/dist/assets/index12.css +1 -1
  150. package/dist/assets/index13.css +1 -1
  151. package/dist/assets/index14.css +1 -1
  152. package/dist/assets/index15.css +1 -1
  153. package/dist/assets/index16.css +1 -1
  154. package/dist/assets/index17.css +1 -1
  155. package/dist/assets/index18.css +1 -1
  156. package/dist/assets/index19.css +1 -1
  157. package/dist/assets/index2.css +1 -1
  158. package/dist/assets/index20.css +1 -1
  159. package/dist/assets/index21.css +1 -1
  160. package/dist/assets/index22.css +1 -1
  161. package/dist/assets/index23.css +1 -1
  162. package/dist/assets/index24.css +1 -1
  163. package/dist/assets/index25.css +1 -1
  164. package/dist/assets/index26.css +1 -1
  165. package/dist/assets/index27.css +1 -1
  166. package/dist/assets/index28.css +1 -1
  167. package/dist/assets/index29.css +1 -1
  168. package/dist/assets/index3.css +1 -1
  169. package/dist/assets/index30.css +1 -1
  170. package/dist/assets/index31.css +1 -1
  171. package/dist/assets/index32.css +1 -1
  172. package/dist/assets/index33.css +1 -1
  173. package/dist/assets/index34.css +1 -1
  174. package/dist/assets/index35.css +1 -1
  175. package/dist/assets/index36.css +1 -1
  176. package/dist/assets/index37.css +1 -1
  177. package/dist/assets/index38.css +1 -1
  178. package/dist/assets/index39.css +1 -1
  179. package/dist/assets/index4.css +1 -1
  180. package/dist/assets/index40.css +1 -1
  181. package/dist/assets/index41.css +1 -1
  182. package/dist/assets/index42.css +1 -0
  183. package/dist/assets/index5.css +1 -1
  184. package/dist/assets/index6.css +1 -1
  185. package/dist/assets/index7.css +1 -1
  186. package/dist/assets/index8.css +1 -1
  187. package/dist/assets/index9.css +1 -1
  188. package/dist/assets/listbox-option-tag.css +1 -1
  189. package/dist/assets/listbox.css +1 -1
  190. package/dist/assets/loading-button.css +1 -1
  191. package/dist/assets/tooltip.css +1 -1
  192. package/dist/avatar-image.js +1 -1
  193. package/dist/badge.js +2 -2
  194. package/dist/button.js +110 -12
  195. package/dist/button.js.map +1 -1
  196. package/dist/card.js +66 -67
  197. package/dist/card.js.map +1 -1
  198. package/dist/checkbox.js +27 -26
  199. package/dist/checkbox.js.map +1 -1
  200. package/dist/chunks/{base-button.98379576.js → base-button.bd8fa976.js} +24 -27
  201. package/dist/chunks/base-button.bd8fa976.js.map +1 -0
  202. package/dist/chunks/base-modal.a365f260.js +207 -0
  203. package/dist/chunks/base-modal.a365f260.js.map +1 -0
  204. package/dist/chunks/{button.d0c9527d.js → button.fb307df3.js} +36 -39
  205. package/dist/chunks/button.fb307df3.js.map +1 -0
  206. package/dist/chunks/{calendar.0ae43a96.js → calendar.79ea42c1.js} +214 -217
  207. package/dist/chunks/calendar.79ea42c1.js.map +1 -0
  208. package/dist/chunks/checkbox.c7d791ed.js +173 -0
  209. package/dist/chunks/checkbox.c7d791ed.js.map +1 -0
  210. package/dist/chunks/{chevron-down.b851a6da.js → chevron-up.674ec2e5.js} +8 -8
  211. package/dist/chunks/chevron-up.674ec2e5.js.map +1 -0
  212. package/dist/chunks/{controls-group.b827382b.js → controls-group.5d3e04dd.js} +20 -20
  213. package/dist/chunks/controls-group.5d3e04dd.js.map +1 -0
  214. package/dist/chunks/{copy.5a4cbd4d.js → copy.ac796536.js} +37 -38
  215. package/dist/chunks/copy.ac796536.js.map +1 -0
  216. package/dist/chunks/{dropdown-default-textbox.819e43f7.js → dropdown-default-textbox.109c36d2.js} +38 -40
  217. package/dist/chunks/dropdown-default-textbox.109c36d2.js.map +1 -0
  218. package/dist/chunks/{dropdown.c05678d0.js → dropdown.fd93f0ce.js} +351 -335
  219. package/dist/chunks/dropdown.fd93f0ce.js.map +1 -0
  220. package/dist/chunks/error-message.3b3c33d4.js +47 -0
  221. package/dist/chunks/error-message.3b3c33d4.js.map +1 -0
  222. package/dist/chunks/{footer-actions.67642347.js → footer-actions.f02e8699.js} +23 -23
  223. package/dist/chunks/footer-actions.f02e8699.js.map +1 -0
  224. package/dist/chunks/get-slot-text.c1114034.js +9 -0
  225. package/dist/chunks/get-slot-text.c1114034.js.map +1 -0
  226. package/dist/chunks/{grid-layout.73f23b1b.js → grid-layout.b7e0d964.js} +2 -2
  227. package/dist/chunks/{grid-layout.73f23b1b.js.map → grid-layout.b7e0d964.js.map} +1 -1
  228. package/dist/chunks/{index.56858f4e.js → index.45295dd3.js} +23 -19
  229. package/dist/chunks/index.45295dd3.js.map +1 -0
  230. package/dist/chunks/{index.10aaf539.js → index.88ff49c2.js} +136 -142
  231. package/dist/chunks/index.88ff49c2.js.map +1 -0
  232. package/dist/chunks/{index.73d50fa6.js → index.9902cae4.js} +65 -68
  233. package/dist/chunks/{index.73d50fa6.js.map → index.9902cae4.js.map} +1 -1
  234. package/dist/chunks/{index.0cf00b47.js → index.bd734551.js} +35 -37
  235. package/dist/chunks/index.bd734551.js.map +1 -0
  236. package/dist/chunks/{index.133e4da0.js → index.c85a1ab9.js} +81 -79
  237. package/dist/chunks/{index.133e4da0.js.map → index.c85a1ab9.js.map} +1 -1
  238. package/dist/chunks/{index.f0f8ed98.js → index.c8f81673.js} +23 -26
  239. package/dist/chunks/index.c8f81673.js.map +1 -0
  240. package/dist/chunks/{listbox-option-tag.8d6cccac.js → listbox-option-tag.ec42431b.js} +32 -36
  241. package/dist/chunks/listbox-option-tag.ec42431b.js.map +1 -0
  242. package/dist/chunks/{listbox.116ed0c1.js → listbox.e792d2d6.js} +244 -251
  243. package/dist/chunks/listbox.e792d2d6.js.map +1 -0
  244. package/dist/chunks/loading-button.429c8416.js +86 -0
  245. package/dist/chunks/loading-button.429c8416.js.map +1 -0
  246. package/dist/chunks/tabs.keys.358742f2.js +7 -0
  247. package/dist/chunks/tabs.keys.358742f2.js.map +1 -0
  248. package/dist/chunks/{tooltip.2aff4fa6.js → tooltip.a47ace87.js} +49 -52
  249. package/dist/chunks/tooltip.a47ace87.js.map +1 -0
  250. package/dist/chunks/use-default-slot-validator.cbdfe693.js +13 -0
  251. package/dist/chunks/use-default-slot-validator.cbdfe693.js.map +1 -0
  252. package/dist/chunks/use-has-slot.6052d56a.js +6 -0
  253. package/dist/chunks/use-has-slot.6052d56a.js.map +1 -0
  254. package/dist/code-snippet.js +469 -413
  255. package/dist/code-snippet.js.map +1 -1
  256. package/dist/country.js +492 -494
  257. package/dist/country.js.map +1 -1
  258. package/dist/currency.js +32 -35
  259. package/dist/currency.js.map +1 -1
  260. package/dist/data-grid.js +595 -603
  261. package/dist/data-grid.js.map +1 -1
  262. package/dist/date-picker.js +76 -80
  263. package/dist/date-picker.js.map +1 -1
  264. package/dist/date-range-picker.js +2 -2
  265. package/dist/date.js +1 -1
  266. package/dist/divider.js +1 -1
  267. package/dist/dropdown.js +37 -39
  268. package/dist/dropdown.js.map +1 -1
  269. package/dist/empty-state.js +134 -0
  270. package/dist/empty-state.js.map +1 -0
  271. package/dist/filter-bar.js +648 -638
  272. package/dist/filter-bar.js.map +1 -1
  273. package/dist/focus-trap.js +1 -1
  274. package/dist/form-layout.js +64 -64
  275. package/dist/form-layout.js.map +1 -1
  276. package/dist/header.js +61 -63
  277. package/dist/header.js.map +1 -1
  278. package/dist/image.js +82 -0
  279. package/dist/image.js.map +1 -0
  280. package/dist/index.js +216 -205
  281. package/dist/index.js.map +1 -1
  282. package/dist/info-icon.js +2 -2
  283. package/dist/input-field.js +99 -123
  284. package/dist/input-field.js.map +1 -1
  285. package/dist/internal.js +7 -7
  286. package/dist/link.js +27 -26
  287. package/dist/link.js.map +1 -1
  288. package/dist/loading-indicator.js +1 -1
  289. package/dist/menu.js +96 -104
  290. package/dist/menu.js.map +1 -1
  291. package/dist/modal.js +111 -264
  292. package/dist/modal.js.map +1 -1
  293. package/dist/pagination.js +148 -145
  294. package/dist/pagination.js.map +1 -1
  295. package/dist/payment-method.js +16 -18
  296. package/dist/payment-method.js.map +1 -1
  297. package/dist/popover.js +58 -54
  298. package/dist/popover.js.map +1 -1
  299. package/dist/popper-container.js +13 -17
  300. package/dist/popper-container.js.map +1 -1
  301. package/dist/radio-group.js +71 -72
  302. package/dist/radio-group.js.map +1 -1
  303. package/dist/search-bar.js +54 -66
  304. package/dist/search-bar.js.map +1 -1
  305. package/dist/segmented-control.js +68 -55
  306. package/dist/segmented-control.js.map +1 -1
  307. package/dist/sidepanel.js +65 -64
  308. package/dist/sidepanel.js.map +1 -1
  309. package/dist/status.js +20 -23
  310. package/dist/status.js.map +1 -1
  311. package/dist/structured-list.js +1 -1
  312. package/dist/summary-grid.js +110 -141
  313. package/dist/summary-grid.js.map +1 -1
  314. package/dist/tabs.js +68 -60
  315. package/dist/tabs.js.map +1 -1
  316. package/dist/tag.js +23 -26
  317. package/dist/tag.js.map +1 -1
  318. package/dist/textarea.js +97 -96
  319. package/dist/textarea.js.map +1 -1
  320. package/dist/timeline.js +125 -125
  321. package/dist/timeline.js.map +1 -1
  322. package/dist/toast.js +44 -48
  323. package/dist/toast.js.map +1 -1
  324. package/dist/toggle.js +54 -52
  325. package/dist/toggle.js.map +1 -1
  326. package/dist/typography.js +1 -1
  327. package/dist/web-types.json +651 -397
  328. package/package.json +9 -12
  329. package/dist/@types/packages/vue2/src/components/data-grid/composables/useCalculateBodyFitContentDynamicStyles/useCalculateBodyFitContentDynamicStyles.d.ts +0 -2
  330. package/dist/@types/packages/vue2/src/components/data-grid/composables/useCalculateBodyFitContentDynamicStyles/useCalculateBodyFitContentDynamicStyles.types.d.ts +0 -8
  331. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/components/index.d.ts +0 -1
  332. package/dist/assets/button-actions.css +0 -1
  333. package/dist/assets/chevron-down.css +0 -1
  334. package/dist/chunks/base-button.98379576.js.map +0 -1
  335. package/dist/chunks/button-actions.bd397c79.js +0 -104
  336. package/dist/chunks/button-actions.bd397c79.js.map +0 -1
  337. package/dist/chunks/button.d0c9527d.js.map +0 -1
  338. package/dist/chunks/calendar.0ae43a96.js.map +0 -1
  339. package/dist/chunks/checkbox.f8457c93.js +0 -164
  340. package/dist/chunks/checkbox.f8457c93.js.map +0 -1
  341. package/dist/chunks/chevron-down.b851a6da.js.map +0 -1
  342. package/dist/chunks/controls-group.b827382b.js.map +0 -1
  343. package/dist/chunks/copy.5a4cbd4d.js.map +0 -1
  344. package/dist/chunks/dropdown-default-textbox.819e43f7.js.map +0 -1
  345. package/dist/chunks/dropdown.c05678d0.js.map +0 -1
  346. package/dist/chunks/error-message.0433b539.js +0 -47
  347. package/dist/chunks/error-message.0433b539.js.map +0 -1
  348. package/dist/chunks/footer-actions.67642347.js.map +0 -1
  349. package/dist/chunks/get-slot-text.e5c766d0.js +0 -9
  350. package/dist/chunks/get-slot-text.e5c766d0.js.map +0 -1
  351. package/dist/chunks/index.0cf00b47.js.map +0 -1
  352. package/dist/chunks/index.10aaf539.js.map +0 -1
  353. package/dist/chunks/index.56858f4e.js.map +0 -1
  354. package/dist/chunks/index.f0f8ed98.js.map +0 -1
  355. package/dist/chunks/listbox-option-tag.8d6cccac.js.map +0 -1
  356. package/dist/chunks/listbox.116ed0c1.js.map +0 -1
  357. package/dist/chunks/loading-button.1c201f87.js +0 -84
  358. package/dist/chunks/loading-button.1c201f87.js.map +0 -1
  359. package/dist/chunks/tooltip.2aff4fa6.js.map +0 -1
  360. package/dist/chunks/use-default-slot-validator.83d977a1.js +0 -11
  361. package/dist/chunks/use-default-slot-validator.83d977a1.js.map +0 -1
  362. package/dist/chunks/use-has-slot.068222e6.js +0 -5
  363. package/dist/chunks/use-has-slot.068222e6.js.map +0 -1
package/dist/textarea.js CHANGED
@@ -1,35 +1,35 @@
1
- import { defineComponent as w, toRefs as D, ref as d, toRef as M, computed as n, watch as y, nextTick as q, onMounted as V } from "vue";
2
- import { B as W, a as Y } from "./chunks/index.56858f4e.js";
3
- import { B as z, a as G } from "./chunks/button.d0c9527d.js";
4
- import { n as x } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
5
- import { g as Z } from "./chunks/unique-id.a2a2b458.js";
6
- import { o as j } from "./chunks/resize.a041304d.js";
7
- import { u as J } from "./chunks/i18n.155748d6.js";
8
- import { u as K } from "./chunks/aria-label.ac9651a5.js";
9
- import { u as Q } from "./chunks/use-form-layout-loading.d03e5d48.js";
10
- import { E as X } from "./chunks/error-message.0433b539.js";
11
- import "./assets/index34.css";
1
+ import { defineComponent as W, toRefs as x, ref as u, toRef as z, computed as o, watch as v, nextTick as G, onMounted as V } from "vue";
2
+ import { B as Y } from "./chunks/index.45295dd3.js";
3
+ import { a as Z } from "./chunks/button.fb307df3.js";
4
+ import { n as E } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
5
+ import { g as j } from "./chunks/unique-id.a2a2b458.js";
6
+ import { o as J } from "./chunks/resize.a041304d.js";
7
+ import { u as K } from "./chunks/i18n.155748d6.js";
8
+ import { u as Q } from "./chunks/aria-label.ac9651a5.js";
9
+ import { u as X } from "./chunks/use-form-layout-loading.d03e5d48.js";
10
+ import { E as ee } from "./chunks/error-message.3b3c33d4.js";
11
+ import "./assets/index37.css";
12
12
  var m = /* @__PURE__ */ ((t) => (t.HORIZONTAL = "horizontal", t.VERTICAL = "vertical", t.BOTH = "both", t.NONE = "none", t))(m || {}), i = /* @__PURE__ */ ((t) => (t.CLEARABLE = "clearable", t.DISABLED = "disabled", t.ERROR = "error", t.READONLY = "readonly", t))(i || {}), r = /* @__PURE__ */ ((t) => (t.BLUR = "blur", t.CHANGE = "change", t.CLEAR = "clear", t.ESCAPE_PRESSED = "escape-pressed", t.FOCUS = "focus", t.INPUT = "input", t))(r || {});
13
- let C = 0;
14
- const ee = {
13
+ let L = 0;
14
+ const te = {
15
15
  beforeCreate() {
16
- this.uuid = C.toString(), C += 1;
16
+ this.uuid = L.toString(), L += 1;
17
17
  }
18
18
  };
19
- var te = function() {
19
+ var ae = function() {
20
20
  var e = this, a = e._self._c;
21
21
  return a("svg", e._b({ attrs: { role: "img", xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", fill: "none" } }, "svg", e.$attrs, !1), [e.$attrs["svg-title"] ? a("title", [e._v(e._s(e.$attrs["svg-title"]))]) : e._e(), a("path", { attrs: { 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" } })]);
22
- }, ae = [], le = /* @__PURE__ */ x(
23
- ee,
22
+ }, le = [], re = /* @__PURE__ */ E(
24
23
  te,
25
24
  ae,
25
+ le,
26
26
  !1,
27
27
  null,
28
28
  "3c9e4cfb",
29
29
  null,
30
30
  null
31
31
  );
32
- const re = le.exports, se = {
32
+ const se = re.exports, ne = {
33
33
  "en-US": {
34
34
  clearText: "Clear text",
35
35
  optional: "optional",
@@ -37,10 +37,10 @@ const re = le.exports, se = {
37
37
  textarea: "textarea",
38
38
  yourTextCanBenAtMost: "Your text can be at most {characterLimit} characters"
39
39
  }
40
- }, ne = w({
41
- i18n: { messages: se },
40
+ }, oe = W({
41
+ i18n: { messages: ne },
42
42
  name: "bento-textarea",
43
- components: { BentoButton: z, BentoTypography: W, ErrorMessage: X, CrossCircleFillSmallIcon: re },
43
+ components: { BentoButton: Z, BentoTypography: Y, ErrorMessage: ee, CrossCircleFillSmallIcon: se },
44
44
  props: {
45
45
  /**
46
46
  * Text that labels an the input element
@@ -111,123 +111,124 @@ const re = le.exports, se = {
111
111
  r.FOCUS,
112
112
  r.INPUT
113
113
  ],
114
- setup(t, { emit: e }) {
115
- const { ariaLabel: a, height: l, label: E } = D(t), L = Z("textarea"), o = d(null), s = d(t.value), _ = 44, c = d(t.height || `${_}px`), v = d("100%"), { t: p } = J(), { isReadOnly: u } = Q(M(t, "readonly")), S = n(() => `${s.value.length} / ${t.characterLimit}`), b = n(
116
- () => t.characterLimit && s.value.length > t.characterLimit
117
- ), f = () => {
118
- o.value && o.value.scrollHeight > _ && (c.value = `${o.value.scrollHeight + 3}px`);
114
+ setup(t, { attrs: e, emit: a }) {
115
+ const { height: l } = x(t), R = j("textarea"), s = u(null), n = u(t.value), b = 44, d = u(t.height || `${b}px`), y = u("100%"), { t: C } = K(), { isReadOnly: _ } = X(z(t, "readonly")), S = o(() => `${n.value.length} / ${t.characterLimit}`), f = o(
116
+ () => t.characterLimit && n.value.length > t.characterLimit
117
+ ), p = () => {
118
+ s.value && s.value.scrollHeight > b && (d.value = `${s.value.scrollHeight + 3}px`);
119
119
  };
120
- y(l, () => {
121
- l.value ? c.value = l.value : f();
122
- }), y(
120
+ v(l, () => {
121
+ l.value ? d.value = l.value : p();
122
+ }), v(
123
123
  () => t.value,
124
124
  () => {
125
- s.value = t.value;
125
+ n.value = t.value;
126
126
  },
127
127
  { immediate: !0 }
128
- ), y(
129
- () => s.value,
128
+ ), v(
129
+ () => n.value,
130
130
  async () => {
131
131
  if (!l.value) {
132
- if (c.value = `${_}px`, !s.value)
132
+ if (d.value = `${b}px`, !n.value)
133
133
  return;
134
- await q(), f();
134
+ await G(), p();
135
135
  }
136
136
  },
137
137
  { immediate: !0 }
138
138
  );
139
- const g = n(() => !!t.errorMessage || b.value), A = n(() => ({
139
+ const h = o(() => !!t.errorMessage || f.value), A = o(() => ({
140
140
  [`b-textarea--${i.DISABLED}`]: t.disabled
141
- })), R = n(() => ({
141
+ })), I = o(() => ({
142
142
  [`b-textarea__input--${i.CLEARABLE}`]: t.clearable,
143
- [`b-textarea__input--${i.READONLY}`]: u.value,
144
- [`b-textarea__input--${i.ERROR}`]: g.value,
143
+ [`b-textarea__input--${i.READONLY}`]: _.value,
144
+ [`b-textarea__input--${i.ERROR}`]: h.value,
145
145
  ["b-textarea__input--dynamic-height"]: !l.value
146
- })), B = n(() => ({
146
+ })), k = o(() => ({
147
147
  ["b-textarea__label-box--no-label"]: !t.label
148
- })), I = n(() => ({
149
- [`b-textarea__label-item--${i.ERROR}`]: b.value
150
- })), k = n(
151
- () => p("yourTextCanBenAtMost", { characterLimit: t.characterLimit })
152
- ), O = K({
153
- ariaLabel: a,
154
- label: E,
155
- defaultFallback: p("textarea")
156
- }), P = n(
157
- () => t.clearable && s.value && !t.disabled && !u.value
158
- ), N = () => {
159
- s.value = "", e(r.CLEAR), e(r.INPUT, "");
160
- }, T = (h) => {
161
- !t.disabled && !u.value && (s.value = h.target.value, e(r.INPUT, s.value));
162
- }, F = () => {
163
- o.value.scrollTop = 0, e(r.BLUR);
164
- }, H = () => {
165
- o.value.focus(), e(r.FOCUS);
166
- }, U = () => {
167
- e(r.CHANGE);
168
- }, $ = () => {
169
- e(r.ESCAPE_PRESSED);
148
+ })), O = o(() => ({
149
+ [`b-textarea__label-item--${i.ERROR}`]: f.value
150
+ })), B = o(
151
+ () => C("yourTextCanBenAtMost", { characterLimit: t.characterLimit })
152
+ ), P = u(e["aria-label"]), { ariaLabel: N, label: F } = x(t), H = Q({
153
+ ariaLabel: P.value,
154
+ // TODO: take this line away when the aria-label props is removed
155
+ label: N,
156
+ defaultFallback: F
157
+ }), U = o(
158
+ () => t.clearable && n.value && !t.disabled && !_.value
159
+ ), $ = () => {
160
+ n.value = "", a(r.CLEAR), a(r.INPUT, "");
161
+ }, w = (c) => {
162
+ !t.disabled && !_.value && (n.value = c.target.value, a(r.INPUT, n.value));
163
+ }, M = () => {
164
+ s.value.scrollTop = 0, a(r.BLUR);
165
+ }, D = () => {
166
+ s.value.focus(), a(r.FOCUS);
167
+ }, T = () => {
168
+ a(r.CHANGE);
169
+ }, q = () => {
170
+ a(r.ESCAPE_PRESSED);
170
171
  };
171
172
  return V(() => {
172
- j(o.value, () => {
173
- v.value = `${o.value.offsetWidth}px`;
174
- }), l.value || f();
173
+ J(s.value, () => {
174
+ var g;
175
+ const c = (g = s == null ? void 0 : s.value) == null ? void 0 : g.offsetWidth;
176
+ y.value = c ? `${c}px` : "100%";
177
+ }), l.value || p();
175
178
  }), {
176
179
  // Enums
177
- BentoButtonVariant: G,
178
180
  BentoTextareaEvent: r,
179
- BentoTypographyElement: Y,
180
181
  // Methods
181
- onBlur: F,
182
- onChange: U,
183
- onClear: N,
184
- onFocus: H,
185
- onInput: T,
186
- onPressEscape: $,
187
- t: p,
182
+ onBlur: M,
183
+ onChange: T,
184
+ onClear: $,
185
+ onFocus: D,
186
+ onInput: w,
187
+ onPressEscape: q,
188
+ t: C,
188
189
  // Values
189
- computedAriaLabel: O,
190
+ computedAriaLabel: H,
190
191
  conditionalClasses: A,
191
- conditionalClassesLabelItem: I,
192
- conditionalClassesLabelBox: B,
192
+ conditionalClassesLabelItem: O,
193
+ conditionalClassesLabelBox: k,
193
194
  counter: S,
194
- counterErrorText: k,
195
- conditionalClassesInput: R,
196
- invalidInput: g,
197
- isOverCharacterLimit: b,
198
- isReadOnly: u,
199
- showClearButton: P,
200
- textareaElement: o,
201
- textareaHeight: c,
202
- textareaId: L,
203
- textareaValue: s,
204
- textareaWidth: v
195
+ counterErrorText: B,
196
+ conditionalClassesInput: I,
197
+ invalidInput: h,
198
+ isOverCharacterLimit: f,
199
+ isReadOnly: _,
200
+ showClearButton: U,
201
+ textareaElement: s,
202
+ textareaHeight: d,
203
+ textareaId: R,
204
+ textareaValue: n,
205
+ textareaWidth: y
205
206
  };
206
207
  }
207
208
  });
208
- var oe = function() {
209
+ var ie = function() {
209
210
  var e = this, a = e._self._c;
210
- return e._self._setupProxy, a("div", { staticClass: "b-textarea", class: e.conditionalClasses, style: { width: e.textareaWidth } }, [a("div", { staticClass: "b-textarea__label-box", class: e.conditionalClassesLabelBox }, [e.label ? a("label", { staticClass: "b-textarea__label", attrs: { for: e.textareaId } }, [a("bento-typography", { attrs: { el: e.BentoTypographyElement.SPAN, stronger: "" } }, [e._v(e._s(e.label))]), e.optional && !e.required ? a("bento-typography", { staticClass: "b-textarea__label-item", attrs: { el: e.BentoTypographyElement.SPAN } }, [e._v(" (" + e._s(e.t("optional")) + ") ")]) : e._e(), e.required ? a("bento-typography", { staticClass: "b-textarea__label-item", attrs: { el: e.BentoTypographyElement.SPAN } }, [e._v(" (" + e._s(e.t("required")) + ") ")]) : e._e()], 1) : e._e(), e.characterLimit ? a("bento-typography", { staticClass: "b-textarea__label-item", class: e.conditionalClassesLabelItem, attrs: { el: e.BentoTypographyElement.SPAN } }, [e._v(" " + e._s(e.counter) + " ")]) : e._e()], 1), a("bento-typography", { staticClass: "b-textarea__input-box", attrs: { el: e.BentoTypographyElement.DIV, "aria-disabled": e.disabled } }, [a("textarea", { ref: "textareaElement", staticClass: "b-textarea__input", class: e.conditionalClassesInput, style: { resize: e.resizable, height: e.textareaHeight }, attrs: { id: e.textareaId, "aria-label": e.computedAriaLabel, "aria-invalid": e.invalidInput, readonly: e.isReadOnly, disabled: e.disabled, placeholder: e.placeholder }, domProps: { value: e.textareaValue }, on: { blur: e.onBlur, change: e.onChange, focus: e.onFocus, input: e.onInput, keydown: function(l) {
211
+ return e._self._setupProxy, a("div", { staticClass: "b-textarea", class: e.conditionalClasses, style: { width: e.textareaWidth } }, [a("div", { staticClass: "b-textarea__label-box", class: e.conditionalClassesLabelBox }, [e.label ? a("label", { staticClass: "b-textarea__label", attrs: { for: e.textareaId } }, [a("bento-typography", { attrs: { el: "span", stronger: "" } }, [e._v(e._s(e.label))]), e.optional && !e.required ? a("bento-typography", { staticClass: "b-textarea__label-item", attrs: { el: "span" } }, [e._v(" (" + e._s(e.t("optional")) + ") ")]) : e._e(), e.required ? a("bento-typography", { staticClass: "b-textarea__label-item", attrs: { el: "span" } }, [e._v(" (" + e._s(e.t("required")) + ") ")]) : e._e()], 1) : e._e(), e.characterLimit ? a("bento-typography", { staticClass: "b-textarea__label-item", class: e.conditionalClassesLabelItem, attrs: { el: "span" } }, [e._v(" " + e._s(e.counter) + " ")]) : e._e()], 1), a("bento-typography", { staticClass: "b-textarea__input-box", attrs: { el: "div", "aria-disabled": e.disabled } }, [a("textarea", { ref: "textareaElement", staticClass: "b-textarea__input", class: e.conditionalClassesInput, style: { resize: e.resizable, height: e.textareaHeight }, attrs: { id: e.textareaId, "aria-label": e.computedAriaLabel, "aria-invalid": e.invalidInput, readonly: e.isReadOnly, disabled: e.disabled, placeholder: e.placeholder }, domProps: { value: e.textareaValue }, on: { blur: e.onBlur, change: e.onChange, focus: e.onFocus, input: e.onInput, keydown: function(l) {
211
212
  return !l.type.indexOf("key") && e._k(l.keyCode, "esc", 27, l.key, ["Esc", "Escape"]) ? null : e.onPressEscape.apply(null, arguments);
212
- } } }), e.showClearButton ? a("div", { staticClass: "b-textarea__clear-button" }, [a("bento-button", { attrs: { variant: e.BentoButtonVariant.TERTIARY, disabled: e.disabled }, on: { click: e.onClear, keypress: function(l) {
213
+ } } }), e.showClearButton ? a("div", { staticClass: "b-textarea__clear-button" }, [a("bento-button", { attrs: { variant: "tertiary", disabled: e.disabled }, on: { click: e.onClear, keypress: function(l) {
213
214
  return !l.type.indexOf("key") && e._k(l.keyCode, "enter", 13, l.key, "Enter") ? null : e.onClear.apply(null, arguments);
214
215
  }, keyup: function(l) {
215
216
  return !l.type.indexOf("key") && e._k(l.keyCode, "space", 32, l.key, [" ", "Spacebar"]) ? null : e.onClear.apply(null, arguments);
216
217
  } }, scopedSlots: e._u([{ key: "iconLeft", fn: function() {
217
218
  return [a("cross-circle-fill-small-icon", { attrs: { "svg-title": e.t("clearText") } })];
218
- }, proxy: !0 }], null, !1, 1092214813) })], 1) : e._e()]), e.isOverCharacterLimit ? a("error-message", { attrs: { "error-message": e.counterErrorText } }) : e._e(), e.errorMessage ? a("error-message", { attrs: { "error-message": e.errorMessage } }) : e._e(), e.description ? a("bento-typography", { staticClass: "b-textarea__description", attrs: { el: e.BentoTypographyElement.SPAN } }, [e._v(" " + e._s(e.description) + " ")]) : e._e()], 1);
219
- }, ie = [], ce = /* @__PURE__ */ x(
220
- ne,
219
+ }, proxy: !0 }], null, !1, 1092214813) })], 1) : e._e()]), e.isOverCharacterLimit ? a("error-message", { attrs: { "error-message": e.counterErrorText } }) : e._e(), e.errorMessage ? a("error-message", { attrs: { "error-message": e.errorMessage } }) : e._e(), e.description ? a("bento-typography", { staticClass: "b-textarea__description", attrs: { el: "span" } }, [e._v(" " + e._s(e.description) + " ")]) : e._e()], 1);
220
+ }, ce = [], ue = /* @__PURE__ */ E(
221
221
  oe,
222
222
  ie,
223
+ ce,
223
224
  !1,
224
225
  null,
225
- "e1f2e340",
226
+ "7ac5f986",
226
227
  null,
227
228
  null
228
229
  );
229
- const he = ce.exports;
230
+ const ge = ue.exports;
230
231
  export {
231
- he as BentoTextarea
232
+ ge as BentoTextarea
232
233
  };
233
234
  //# sourceMappingURL=textarea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sources":["../src/components/textarea/textarea.types.ts","../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/cross-circle-fill-small.vue","../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=\"isReadOnly\"\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, toRef, 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 import { useFormLayoutFieldLoading } from '@/composables/use-form-layout-loading/use-form-layout-loading';\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 { isReadOnly } = useFormLayoutFieldLoading(toRef(props, 'readonly'));\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}`]: isReadOnly.value,\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 && !isReadOnly.value\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 && !isReadOnly.value) {\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 isReadOnly,\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","_sfc_main$1","_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","isReadOnly","useFormLayoutFieldLoading","toRef","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"],"mappings":"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","x_google_ignoreList":[1]}
1
+ {"version":3,"file":"textarea.js","sources":["../src/components/textarea/textarea.types.ts","../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/cross-circle-fill-small.vue","../src/components/textarea/textarea.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport 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=\"span\" stronger>{{ label }}</bento-typography>\n <bento-typography v-if=\"optional && !required\" el=\"span\" class=\"b-textarea__label-item\">\n ({{ t('optional') }})\n </bento-typography>\n <bento-typography v-if=\"required\" el=\"span\" class=\"b-textarea__label-item\">\n ({{ t('required') }})\n </bento-typography>\n </label>\n <bento-typography\n v-if=\"characterLimit\"\n el=\"span\"\n class=\"b-textarea__label-item\"\n :class=\"conditionalClassesLabelItem\"\n >\n {{ counter }}\n </bento-typography>\n </div>\n <bento-typography el=\"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=\"isReadOnly\"\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=\"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=\"span\">\n {{ description }}\n </bento-typography>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, nextTick, onMounted, PropType, ref, toRef, toRefs, watch } from 'vue';\n import { BentoTextareaEvent, BentoTextareaResizeOption, BentoTextareaStateClass } from './textarea.types';\n import { BentoTypography } from '@/components/typography';\n import { BentoButton } 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 import { useAriaLabel } from '@/utils/ts/aria-label';\n import { useFormLayoutFieldLoading } from '@/composables/use-form-layout-loading/use-form-layout-loading';\n\n import messages from './messages.json';\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, { attrs, emit }) {\n const { height } = 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 { isReadOnly } = useFormLayoutFieldLoading(toRef(props, 'readonly'));\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}`]: isReadOnly.value,\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 ariaLabelAttribute = ref(attrs['aria-label']);\n const { ariaLabel, label } = toRefs(props);\n const computedAriaLabel = useAriaLabel({\n ariaLabel: ariaLabelAttribute.value as string,\n // TODO: take this line away when the aria-label props is removed\n label: ariaLabel,\n defaultFallback: label,\n });\n\n const showClearButton = computed(\n () => props.clearable && textareaValue.value && !props.disabled && !isReadOnly.value\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 && !isReadOnly.value) {\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 const offsetWidth = textareaElement?.value?.offsetWidth;\n textareaWidth.value = offsetWidth ? `${offsetWidth}px` : '100%';\n });\n\n if (!height.value) {\n calculateHeight();\n }\n });\n\n return {\n // Enums\n BentoTextareaEvent,\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 isReadOnly,\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","_sfc_main$1","_sfc_main","defineComponent","messages","BentoButton","BentoTypography","ErrorMessage","CrossCircleFillSmallIcon","value","props","attrs","emit","height","toRefs","textareaId","generateUid","textareaElement","ref","textareaValue","defaultTextareaHeight","textareaHeight","textareaWidth","t","useI18n","isReadOnly","useFormLayoutFieldLoading","toRef","counter","computed","isOverCharacterLimit","calculateHeight","watch","nextTick","invalidInput","conditionalClasses","conditionalClassesInput","conditionalClassesLabelBox","conditionalClassesLabelItem","counterErrorText","ariaLabelAttribute","ariaLabel","label","computedAriaLabel","useAriaLabel","showClearButton","onClear","onInput","event","onBlur","onFocus","onChange","onPressEscape","onMounted","observeSizeOfElement","offsetWidth","_a"],"mappings":"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","x_google_ignoreList":[1]}