@adyen/bento-vue2 1.6.1 → 1.7.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 (291) hide show
  1. package/dist/@types/components.d.ts +2 -0
  2. package/dist/@types/packages/core/src/components/button/button.types.d.ts +3 -1
  3. package/dist/@types/packages/vue2/src/components/action-bar/action-bar.vue.d.ts +43 -0
  4. package/dist/@types/packages/vue2/src/components/action-bar/index.d.ts +1 -0
  5. package/dist/@types/packages/vue2/src/components/alert/alert.vue.d.ts +4 -4
  6. package/dist/@types/packages/vue2/src/components/avatar-image/avatar-image.vue.d.ts +1 -1
  7. package/dist/@types/packages/vue2/src/components/button/button.vue.d.ts +290 -281
  8. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.vue.d.ts +9 -0
  9. package/dist/@types/packages/vue2/src/components/button/components/loading-button/loading-button.vue.d.ts +3 -3
  10. package/dist/@types/packages/vue2/src/components/checkbox/checkbox.vue.d.ts +1 -1
  11. package/dist/@types/packages/vue2/src/components/checkbox/components/checkbox-group/checkbox-group.vue.d.ts +5 -5
  12. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.vue.d.ts +1 -1
  13. package/dist/@types/packages/vue2/src/components/country/country.vue.d.ts +4 -3
  14. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.vue.d.ts +53 -70
  15. package/dist/@types/packages/vue2/src/components/date/date.vue.d.ts +1 -1
  16. package/dist/@types/packages/vue2/src/components/date-picker/date-picker.vue.d.ts +20 -2
  17. package/dist/@types/packages/vue2/src/components/date-range-picker/components/date-range-picker-calendar/date-range-picker-calendar.vue.d.ts +18 -0
  18. package/dist/@types/packages/vue2/src/components/date-range-picker/date-range-picker.vue.d.ts +20 -2
  19. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-base-textbox/dropdown-base-textbox.vue.d.ts +1 -1
  20. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-default-textbox/dropdown-default-textbox.vue.d.ts +1 -1
  21. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-options-container/dropdown-options-container.vue.d.ts +45 -27
  22. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-small-textbox/dropdown-small-textbox.vue.d.ts +1 -1
  23. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-avatar/dropdown-avatar.vue.d.ts +21 -3
  24. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-country/dropdown-country.vue.d.ts +24 -6
  25. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-currency/dropdown-currency.vue.d.ts +21 -3
  26. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-payment-method/dropdown-payment-method.vue.d.ts +21 -3
  27. package/dist/@types/packages/vue2/src/components/dropdown/components/variants/dropdown-tag/dropdown-tag.vue.d.ts +21 -3
  28. package/dist/@types/packages/vue2/src/components/dropdown/dropdown.types.d.ts +2 -0
  29. package/dist/@types/packages/vue2/src/components/dropdown/dropdown.vue.d.ts +22 -4
  30. package/dist/@types/packages/vue2/src/components/empty-state/empty-state.vue.d.ts +5 -2
  31. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/all-filters-modal.vue.d.ts +234 -12
  32. package/dist/@types/packages/vue2/src/components/filter-bar/components/boolean-filter/boolean-filter.vue.d.ts +12 -5
  33. package/dist/@types/packages/vue2/src/components/filter-bar/components/filter-bar-button/filter-bar-button.vue.d.ts +1 -1
  34. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue.d.ts +2 -1
  35. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-tag-filter/select-tag-filter.vue.d.ts +1 -0
  36. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.types.d.ts +12 -2
  37. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.vue.d.ts +10 -0
  38. package/dist/@types/packages/vue2/src/components/form-layout/components/form-layout-field-tip/form-layout-field-tip.vue.d.ts +3 -3
  39. package/dist/@types/packages/vue2/src/components/header/header.vue.d.ts +1 -1
  40. package/dist/@types/packages/vue2/src/components/info-icon/info-icon.vue.d.ts +3 -3
  41. package/dist/@types/packages/vue2/src/components/input-field/input-field.vue.d.ts +1 -1
  42. package/dist/@types/packages/vue2/src/components/internal/button-actions-with-menu/button-actions-with-menu.vue.d.ts +21 -0
  43. package/dist/@types/packages/vue2/src/components/internal/calendar/calendar.vue.d.ts +18 -0
  44. package/dist/@types/packages/vue2/src/components/internal/calendar/components/calendar-month/calendar-month.vue.d.ts +19 -0
  45. package/dist/@types/packages/vue2/src/components/internal/controls-group/controls-group.vue.d.ts +1 -1
  46. package/dist/@types/packages/vue2/src/components/internal/fixed-scroller/fixed-scroller.vue.d.ts +22 -1
  47. package/dist/@types/packages/vue2/src/components/internal/listbox/listbox.vue.d.ts +94 -8
  48. package/dist/@types/packages/vue2/src/components/internal/teleport/index.d.ts +1 -0
  49. package/dist/@types/packages/vue2/src/components/internal/teleport/teleport.vue.d.ts +50 -0
  50. package/dist/@types/packages/vue2/src/components/link/link.vue.d.ts +1 -1
  51. package/dist/@types/packages/vue2/src/components/menu/menu.keys.d.ts +1 -0
  52. package/dist/@types/packages/vue2/src/components/menu/menu.vue.d.ts +15 -11
  53. package/dist/@types/packages/vue2/src/components/pagination/components/pagination-context/pagination-context.vue.d.ts +9 -0
  54. package/dist/@types/packages/vue2/src/components/pagination/pagination.vue.d.ts +9 -0
  55. package/dist/@types/packages/vue2/src/components/payment-method/payment-method.vue.d.ts +1 -0
  56. package/dist/@types/packages/vue2/src/components/popover/popover.vue.d.ts +4 -4
  57. package/dist/@types/packages/vue2/src/components/popper-container/popper-container.vue.d.ts +5 -5
  58. package/dist/@types/packages/vue2/src/components/radio-group/radio-group.vue.d.ts +10 -5
  59. package/dist/@types/packages/vue2/src/components/segmented-control/components/segmented-control-button/segmented-control-button.vue.d.ts +21 -0
  60. package/dist/@types/packages/vue2/src/components/segmented-control/segmented-control.vue.d.ts +21 -5
  61. package/dist/@types/packages/vue2/src/components/stepper/stepper.vue.d.ts +3 -3
  62. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item/summary-grid-item.vue.d.ts +1 -2
  63. package/dist/@types/packages/vue2/src/components/summary-grid/components/summary-grid-item-amount/summary-grid-item-amount.vue.d.ts +1 -1
  64. package/dist/@types/packages/vue2/src/components/summary-grid/summary-grid.keys.d.ts +1 -0
  65. package/dist/@types/packages/vue2/src/components/summary-grid/summary-grid.types.d.ts +3 -0
  66. package/dist/@types/packages/vue2/src/components/tabs/components/tab.types.d.ts +1 -0
  67. package/dist/@types/packages/vue2/src/components/tabs/components/tab.vue.d.ts +9 -0
  68. package/dist/@types/packages/vue2/src/components/tabs/tabs.types.d.ts +1 -0
  69. package/dist/@types/packages/vue2/src/components/tabs/tabs.vue.d.ts +2 -0
  70. package/dist/@types/packages/vue2/src/components/textarea/textarea.vue.d.ts +5 -5
  71. package/dist/@types/packages/vue2/src/components/timeline/components/timeline-item/timeline-item.vue.d.ts +6 -3
  72. package/dist/@types/packages/vue2/src/components/timeline/timeline.types.d.ts +9 -2
  73. package/dist/@types/packages/vue2/src/components/tooltip/tooltip.vue.d.ts +13 -13
  74. package/dist/@types/packages/vue2/src/components/tutorial/components/tutorial-popover/components/tutorial-indicator/index.d.ts +1 -0
  75. package/dist/@types/packages/vue2/src/components/tutorial/components/tutorial-popover/components/tutorial-indicator/tutorial-indicator.vue.d.ts +12 -0
  76. package/dist/@types/packages/vue2/src/components/tutorial/components/tutorial-popover/index.d.ts +1 -0
  77. package/dist/@types/packages/vue2/src/components/tutorial/components/tutorial-popover/tutorial-popover.vue.d.ts +226 -0
  78. package/dist/@types/packages/vue2/src/components/tutorial/index.d.ts +2 -0
  79. package/dist/@types/packages/vue2/src/components/tutorial/tutorial.types.d.ts +13 -0
  80. package/dist/@types/packages/vue2/src/components/tutorial/tutorial.vue.d.ts +16 -0
  81. package/dist/@types/packages/vue2/src/composables/index.d.ts +5 -2
  82. package/dist/@types/packages/vue2/src/composables/use-click-outside/use-click-outside.d.ts +3 -0
  83. package/dist/@types/packages/vue2/src/composables/use-form-validate/index.d.ts +2 -0
  84. package/dist/@types/packages/vue2/src/composables/use-form-validate/use-form.d.ts +12 -0
  85. package/dist/@types/packages/vue2/src/composables/use-form-validate/use-form.types.d.ts +5 -0
  86. package/dist/@types/packages/vue2/src/composables/use-virtual-list/index.d.ts +2 -0
  87. package/dist/@types/packages/vue2/src/composables/use-virtual-list/use-virtual-list.d.ts +15 -0
  88. package/dist/@types/packages/vue2/src/composables/use-virtual-list/use-virtual-list.types.d.ts +20 -0
  89. package/dist/@types/packages/vue2/src/index.d.ts +1 -0
  90. package/dist/@types/packages/vue2/src/templates/data-grid-template/data-grid-template.vue.d.ts +2 -2
  91. package/dist/@types/packages/vue2/src/types/listbox.d.ts +12 -0
  92. package/dist/accordion.js +41 -32
  93. package/dist/accordion.js.map +1 -1
  94. package/dist/action-bar.js +191 -0
  95. package/dist/action-bar.js.map +1 -0
  96. package/dist/alert.js +3 -3
  97. package/dist/assets/base-modal.css +1 -1
  98. package/dist/assets/button-actions-with-menu.css +1 -0
  99. package/dist/assets/button.css +1 -1
  100. package/dist/assets/calendar.css +1 -1
  101. package/dist/assets/checkbox.css +1 -1
  102. package/dist/assets/checkmark.css +1 -0
  103. package/dist/assets/chevron-left.css +1 -0
  104. package/dist/assets/dropdown-default-textbox.css +1 -1
  105. package/dist/assets/dropdown.css +1 -1
  106. package/dist/assets/fixed-scroller.css +1 -0
  107. package/dist/assets/index.css +1 -1
  108. package/dist/assets/index10.css +1 -1
  109. package/dist/assets/index11.css +1 -1
  110. package/dist/assets/index12.css +1 -1
  111. package/dist/assets/index13.css +1 -1
  112. package/dist/assets/index14.css +1 -1
  113. package/dist/assets/index15.css +1 -1
  114. package/dist/assets/index16.css +1 -1
  115. package/dist/assets/index17.css +1 -1
  116. package/dist/assets/index18.css +1 -1
  117. package/dist/assets/index19.css +1 -1
  118. package/dist/assets/index2.css +1 -1
  119. package/dist/assets/index20.css +1 -1
  120. package/dist/assets/index21.css +1 -1
  121. package/dist/assets/index22.css +1 -1
  122. package/dist/assets/index23.css +1 -1
  123. package/dist/assets/index24.css +1 -1
  124. package/dist/assets/index25.css +1 -1
  125. package/dist/assets/index26.css +1 -1
  126. package/dist/assets/index27.css +1 -1
  127. package/dist/assets/index28.css +1 -1
  128. package/dist/assets/index29.css +1 -1
  129. package/dist/assets/index3.css +1 -1
  130. package/dist/assets/index30.css +1 -1
  131. package/dist/assets/index31.css +1 -1
  132. package/dist/assets/index32.css +1 -1
  133. package/dist/assets/index33.css +1 -1
  134. package/dist/assets/index34.css +1 -1
  135. package/dist/assets/index35.css +1 -1
  136. package/dist/assets/index36.css +1 -1
  137. package/dist/assets/index37.css +1 -1
  138. package/dist/assets/index39.css +1 -1
  139. package/dist/assets/index4.css +1 -1
  140. package/dist/assets/index40.css +1 -1
  141. package/dist/assets/index41.css +1 -1
  142. package/dist/assets/index42.css +1 -1
  143. package/dist/assets/index43.css +1 -1
  144. package/dist/assets/index44.css +1 -1
  145. package/dist/assets/index45.css +1 -0
  146. package/dist/assets/index5.css +1 -1
  147. package/dist/assets/index6.css +1 -1
  148. package/dist/assets/index7.css +1 -1
  149. package/dist/assets/index8.css +1 -1
  150. package/dist/assets/index9.css +1 -1
  151. package/dist/assets/listbox.css +1 -1
  152. package/dist/assets/refresh.css +1 -0
  153. package/dist/avatar-image.js +1 -1
  154. package/dist/badge.js +1 -1
  155. package/dist/button.js +21 -14
  156. package/dist/button.js.map +1 -1
  157. package/dist/card.js +54 -54
  158. package/dist/card.js.map +1 -1
  159. package/dist/checkbox.js +6 -6
  160. package/dist/chunks/{base-button.d1ba66cd.js → base-button.7886a7e6.js} +2 -2
  161. package/dist/chunks/{base-button.d1ba66cd.js.map → base-button.7886a7e6.js.map} +1 -1
  162. package/dist/chunks/{base-modal.ec74044e.js → base-modal.88e7b9d4.js} +4 -4
  163. package/dist/chunks/{base-modal.ec74044e.js.map → base-modal.88e7b9d4.js.map} +1 -1
  164. package/dist/chunks/button-actions-with-menu.a5413243.js +105 -0
  165. package/dist/chunks/button-actions-with-menu.a5413243.js.map +1 -0
  166. package/dist/chunks/button.e09d5980.js +125 -0
  167. package/dist/chunks/button.e09d5980.js.map +1 -0
  168. package/dist/chunks/{calendar.b74f8a0f.js → calendar.24d0ac04.js} +294 -272
  169. package/dist/chunks/calendar.24d0ac04.js.map +1 -0
  170. package/dist/chunks/{checkbox.96ee3f71.js → checkbox.5343e28e.js} +7 -7
  171. package/dist/chunks/{checkbox.96ee3f71.js.map → checkbox.5343e28e.js.map} +1 -1
  172. package/dist/chunks/checkmark.78f3ed9c.js +26 -0
  173. package/dist/chunks/checkmark.78f3ed9c.js.map +1 -0
  174. package/dist/chunks/{chevron-right.3b826337.js → chevron-left.c10778d3.js} +8 -8
  175. package/dist/chunks/chevron-left.c10778d3.js.map +1 -0
  176. package/dist/chunks/{controls-group.e9537e45.js → controls-group.2a21bd83.js} +2 -2
  177. package/dist/chunks/{controls-group.e9537e45.js.map → controls-group.2a21bd83.js.map} +1 -1
  178. package/dist/chunks/{copy.2ff56819.js → copy.346eadb1.js} +4 -4
  179. package/dist/chunks/{copy.2ff56819.js.map → copy.346eadb1.js.map} +1 -1
  180. package/dist/chunks/{dropdown-default-textbox.3df0bf23.js → dropdown-default-textbox.25134789.js} +4 -4
  181. package/dist/chunks/dropdown-default-textbox.25134789.js.map +1 -0
  182. package/dist/chunks/{dropdown.3f198167.js → dropdown.f1253a54.js} +111 -81
  183. package/dist/chunks/dropdown.f1253a54.js.map +1 -0
  184. package/dist/chunks/{error-message.f5454f19.js → error-message.8302a46c.js} +2 -2
  185. package/dist/chunks/{error-message.f5454f19.js.map → error-message.8302a46c.js.map} +1 -1
  186. package/dist/chunks/fixed-scroller.8994e30a.js +108 -0
  187. package/dist/chunks/fixed-scroller.8994e30a.js.map +1 -0
  188. package/dist/chunks/{footer-actions.00d20947.js → footer-actions.c9b2cb74.js} +3 -3
  189. package/dist/chunks/{footer-actions.00d20947.js.map → footer-actions.c9b2cb74.js.map} +1 -1
  190. package/dist/chunks/{index.c39c64c9.js → index.2625175a.js} +2 -2
  191. package/dist/chunks/{index.c39c64c9.js.map → index.2625175a.js.map} +1 -1
  192. package/dist/chunks/index.37283390.js +475 -0
  193. package/dist/chunks/index.37283390.js.map +1 -0
  194. package/dist/chunks/index.8ac70774.js +1328 -0
  195. package/dist/chunks/index.8ac70774.js.map +1 -0
  196. package/dist/chunks/{index.2fce7703.js → index.965ac1af.js} +2 -2
  197. package/dist/chunks/{index.2fce7703.js.map → index.965ac1af.js.map} +1 -1
  198. package/dist/chunks/{index.eb52e785.js → index.a201f750.js} +6 -5
  199. package/dist/chunks/{index.eb52e785.js.map → index.a201f750.js.map} +1 -1
  200. package/dist/chunks/{index.a709a6b0.js → index.b83f8b7e.js} +2 -2
  201. package/dist/chunks/{index.a709a6b0.js.map → index.b83f8b7e.js.map} +1 -1
  202. package/dist/chunks/{index.298f5eed.js → index.d6b5f5e1.js} +6 -6
  203. package/dist/chunks/{index.298f5eed.js.map → index.d6b5f5e1.js.map} +1 -1
  204. package/dist/chunks/{index.31949c1a.js → index.e566354f.js} +91 -74
  205. package/dist/chunks/index.e566354f.js.map +1 -0
  206. package/dist/chunks/{listbox-option-tag.1362a2d7.js → listbox-option-tag.6a09e8e2.js} +8 -7
  207. package/dist/chunks/{listbox-option-tag.1362a2d7.js.map → listbox-option-tag.6a09e8e2.js.map} +1 -1
  208. package/dist/chunks/{listbox.e7bf46e4.js → listbox.73c38f38.js} +479 -385
  209. package/dist/chunks/listbox.73c38f38.js.map +1 -0
  210. package/dist/chunks/{loading-button.0ad06c99.js → loading-button.c65682d6.js} +2 -2
  211. package/dist/chunks/{loading-button.0ad06c99.js.map → loading-button.c65682d6.js.map} +1 -1
  212. package/dist/chunks/refresh.eb485c6f.js +26 -0
  213. package/dist/chunks/refresh.eb485c6f.js.map +1 -0
  214. package/dist/chunks/summary-grid.keys.1d1028c2.js +5 -0
  215. package/dist/chunks/summary-grid.keys.1d1028c2.js.map +1 -0
  216. package/dist/chunks/{tooltip.68e81e9c.js → tooltip.104e5fac.js} +39 -36
  217. package/dist/chunks/{tooltip.68e81e9c.js.map → tooltip.104e5fac.js.map} +1 -1
  218. package/dist/code-snippet.js +7 -7
  219. package/dist/code-snippet.js.map +1 -1
  220. package/dist/country.js +537 -528
  221. package/dist/country.js.map +1 -1
  222. package/dist/currency.js +1 -1
  223. package/dist/data-grid.js +10 -10
  224. package/dist/data-grid.js.map +1 -1
  225. package/dist/date-picker.js +99 -89
  226. package/dist/date-picker.js.map +1 -1
  227. package/dist/date-range-picker.js +2 -2
  228. package/dist/date.js +1 -1
  229. package/dist/divider.js +1 -1
  230. package/dist/dropdown.js +4 -4
  231. package/dist/empty-state.js +8 -7
  232. package/dist/empty-state.js.map +1 -1
  233. package/dist/filter-bar.js +500 -486
  234. package/dist/filter-bar.js.map +1 -1
  235. package/dist/focus-trap.js +1 -1
  236. package/dist/form-layout.js +2 -2
  237. package/dist/header.js +104 -183
  238. package/dist/header.js.map +1 -1
  239. package/dist/image.js +3 -3
  240. package/dist/index.js +171 -169
  241. package/dist/index.js.map +1 -1
  242. package/dist/info-icon.js +3 -3
  243. package/dist/input-field.js +7 -7
  244. package/dist/internal.js +20 -106
  245. package/dist/internal.js.map +1 -1
  246. package/dist/link.js +2 -2
  247. package/dist/loading-indicator.js +1 -1
  248. package/dist/menu.js +3 -466
  249. package/dist/menu.js.map +1 -1
  250. package/dist/modal.js +3 -3
  251. package/dist/pagination.js +40 -26
  252. package/dist/pagination.js.map +1 -1
  253. package/dist/payment-method.js +33 -26
  254. package/dist/payment-method.js.map +1 -1
  255. package/dist/popover.js +4 -4
  256. package/dist/popper-container.js +6 -1270
  257. package/dist/popper-container.js.map +1 -1
  258. package/dist/radio-group.js +97 -81
  259. package/dist/radio-group.js.map +1 -1
  260. package/dist/search-bar.js +2 -2
  261. package/dist/segmented-control.js +100 -70
  262. package/dist/segmented-control.js.map +1 -1
  263. package/dist/sidepanel.js +53 -51
  264. package/dist/sidepanel.js.map +1 -1
  265. package/dist/status.js +2 -2
  266. package/dist/stepper.js +3 -3
  267. package/dist/structured-list.js +1 -1
  268. package/dist/summary-grid.js +109 -119
  269. package/dist/summary-grid.js.map +1 -1
  270. package/dist/tabs.js +81 -71
  271. package/dist/tabs.js.map +1 -1
  272. package/dist/tag.js +3 -3
  273. package/dist/textarea.js +4 -4
  274. package/dist/timeline.js +170 -162
  275. package/dist/timeline.js.map +1 -1
  276. package/dist/toast.js +3 -3
  277. package/dist/toggle.js +6 -6
  278. package/dist/tutorial.js +307 -0
  279. package/dist/tutorial.js.map +1 -0
  280. package/dist/typography.js +1 -1
  281. package/dist/web-types.json +828 -122
  282. package/package.json +7 -4
  283. package/dist/assets/chevron-right.css +0 -1
  284. package/dist/chunks/button.eb60d460.js +0 -117
  285. package/dist/chunks/button.eb60d460.js.map +0 -1
  286. package/dist/chunks/calendar.b74f8a0f.js.map +0 -1
  287. package/dist/chunks/chevron-right.3b826337.js.map +0 -1
  288. package/dist/chunks/dropdown-default-textbox.3df0bf23.js.map +0 -1
  289. package/dist/chunks/dropdown.3f198167.js.map +0 -1
  290. package/dist/chunks/index.31949c1a.js.map +0 -1
  291. package/dist/chunks/listbox.e7bf46e4.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sidepanel.js","sources":["../src/components/sidepanel/sidepanel.types.ts","../src/components/sidepanel/sidepanel.keys.ts","../src/components/sidepanel/components/sidepanel-page.vue","../src/components/sidepanel/sidepanel.vue"],"sourcesContent":["import { Ref } from 'vue';\n\nexport interface BentoSidepanelPageObject {\n title: string;\n pageId: string;\n}\n\nexport enum BentoSidepanelEvent {\n UPDATE_ACTIVE_PAGE = 'update:active-page',\n UPDATE_IS_OPEN = 'update:is-open',\n}\n\nexport enum BentoSidepanelAnimation {\n TRANSITION_LEVEL_DEEPER = 'b-sidepanel-page__animation--level-deeper',\n TRANSITION_LEVEL_UPPER = 'b-sidepanel-page__animation--level-upper',\n}\n\nexport interface BentoSidepanelConfigData {\n activePage: Ref<string>;\n animation: Ref<string>;\n goToPreviousPage: (page: string) => void;\n hasPreviousPages: Ref<boolean>;\n isOpen: Ref<boolean>;\n}\n\nexport type BentoSidepanelRegisterPage = (props: BentoSidepanelPageObject) => { unregisterPage: () => void };\n","export const SIDEPANEL_REGISTER_PAGE_INJECTION_KEY = Symbol('sidepanel registerPage injection key');\nexport const SIDEPANEL_CONFIG_INJECTION_KEY = Symbol('sidepanel config data injection key');\n","<template>\n <Transition :name=\"animation\" mode=\"out-in\" @after-leave=\"updateAnimation\">\n <div v-show=\"showPage\" class=\"b-sidepanel-page\">\n <div class=\"b-sidepanel-page__header\" :class=\"headerConditionalClasses\">\n <bento-button v-if=\"showBackButton\" variant=\"tertiary\" @click=\"goToPreviousPage(previousPage)\">\n <arrow-left-icon :svg-title=\"t('goToPreviousPage')\" />\n </bento-button>\n\n <bento-typography class=\"b-sidepanel-page__title\" el=\"h2\" variant=\"title\">\n {{ title }}\n </bento-typography>\n </div>\n <div ref=\"contentElement\" class=\"b-sidepanel-page__content\" @scroll=\"onScroll\">\n <bento-typography el=\"div\" variant=\"body\">\n <slot />\n </bento-typography>\n </div>\n <div v-if=\"actions\" class=\"b-sidepanel-page__actions\" :class=\"actionsConditionalClasses\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, nextTick, onUnmounted, PropType, ref, watch } from 'vue';\n\n import { BentoButton, BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { FooterActions } from '@/components/internal/footer-actions';\n import ArrowLeftIcon from '@adyen/ui-assets-icons-16/vue/arrow-left';\n\n import { BentoSidepanelAnimation, BentoSidepanelConfigData, BentoSidepanelRegisterPage } from '../sidepanel.types';\n import { SIDEPANEL_CONFIG_INJECTION_KEY, SIDEPANEL_REGISTER_PAGE_INJECTION_KEY } from '../sidepanel.keys';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n *\n * ```\n * [{\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * Text label that is displayed left to the action buttons\n */\n actionsLabel: {\n type: String,\n default: null,\n },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Identifier of the page, used with activePage prop to handle sidepanel navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n\n /**\n * Title of the sidepanel page\n */\n title: {\n type: String,\n default: null,\n },\n });\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // Refs\n const contentElement = ref<HTMLDivElement>(null);\n const hasScroll = ref(false);\n const isScrollAtTop = ref(true);\n const isScrollAtBottom = ref(false);\n\n // Register page to parent component and inject data from parent component\n const registerPage = inject<BentoSidepanelRegisterPage>(SIDEPANEL_REGISTER_PAGE_INJECTION_KEY);\n const { unregisterPage } = registerPage({ title: props.title, pageId: props.pageId });\n\n // Unregister page on unmounting the page\n onUnmounted(() => unregisterPage());\n\n const { activePage, animation, goToPreviousPage, hasPreviousPages, isOpen } =\n inject<BentoSidepanelConfigData>(SIDEPANEL_CONFIG_INJECTION_KEY);\n\n // Logic to choose which page is active/shown\n const showPage = computed(() => (activePage.value ? activePage.value === props.pageId : true));\n\n // Logic to determine whether the back button should be shown on the page\n const showBackButton = computed(() => {\n if (props.previousPage) {\n return true;\n }\n if (props.previousPage === null) {\n return false;\n }\n return hasPreviousPages.value && showPage.value;\n });\n\n // Scrolling styling logic\n const headerConditionalClasses = computed(() => ({\n 'b-sidepanel-page__header--with-border': hasScroll.value && !isScrollAtTop.value,\n }));\n\n const actionsConditionalClasses = computed(() => ({\n 'b-sidepanel-page__actions--with-border': hasScroll.value && !isScrollAtBottom.value,\n }));\n\n const onScroll = () => {\n if (!contentElement.value) {\n return;\n }\n isScrollAtTop.value = contentElement.value.scrollTop === 0;\n isScrollAtBottom.value =\n contentElement.value.scrollHeight - contentElement.value.clientHeight === contentElement.value.scrollTop;\n };\n\n const calculateScroll = async watchedValue => {\n if (!watchedValue) {\n return;\n }\n // Wait for content to be rendered to be able to calculate the height\n await nextTick();\n hasScroll.value = contentElement.value && contentElement.value.scrollHeight > contentElement.value.clientHeight;\n };\n\n watch(() => isOpen.value, calculateScroll, { immediate: true });\n watch(() => showPage.value, calculateScroll, { immediate: true });\n\n // Animation\n const updateAnimation = () => {\n if (animation.value === BentoSidepanelAnimation.TRANSITION_LEVEL_UPPER) {\n animation.value = BentoSidepanelAnimation.TRANSITION_LEVEL_DEEPER;\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * SidepanelPage is used to render different pages of Sidepanel component\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./sidepanel-page.scss\" />\n","<template>\n <dialog\n ref=\"sidepanel\"\n class=\"b-sidepanel\"\n :class=\"conditionalClasses\"\n @animationend=\"closeSidepanelAfterAnimation\"\n @click=\"isDismissible && closeSidepanelOnClickOutside($event)\"\n @keydown.esc=\"startCloseSidepanelAnimation\"\n >\n <bento-focus-trap>\n <div class=\"b-sidepanel__close-button\">\n <bento-button variant=\"tertiary\" @click=\"startCloseSidepanelAnimation\">\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n <slot />\n </bento-focus-trap>\n </dialog>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, nextTick, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import {\n BentoSidepanelAnimation,\n BentoSidepanelEvent,\n BentoSidepanelPageObject,\n BentoSidepanelRegisterPage,\n } from './sidepanel.types';\n\n import { SIDEPANEL_CONFIG_INJECTION_KEY, SIDEPANEL_REGISTER_PAGE_INJECTION_KEY } from './sidepanel.keys';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * The id of the current active page\n * Should be the same id as the BentoSidepanelPage to be displayed\n * If the component only has one page, it can be left null/undefined.\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If set to true, it allows the sidepanel to be closed\n */\n isDismissible: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls the sidepanel's state from the outside. Set it to true to open the sidepanel\n */\n isOpen: {\n type: Boolean,\n default: null,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Emits update event when page is changed internally\n */\n (e: BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page: string): void;\n /**\n * Emits close-sidepanel event when the sidepanel is closed\n */\n (e: BentoSidepanelEvent.UPDATE_IS_OPEN, isOpen: boolean): void;\n }>();\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<BentoSidepanelPageObject[]>([]);\n const previousPages = ref([]);\n const hasPreviousPages = computed(() => previousPages.value.length > 1);\n const animation = ref(BentoSidepanelAnimation.TRANSITION_LEVEL_DEEPER);\n const isClosing = ref(false);\n\n // Previous page/back button logic\n const lastPage = computed(() => previousPages.value[previousPages.value.length - 1]);\n const isActivePageValid = computed(() => pages.value.some(page => page.pageId === activePage.value));\n\n const goToPreviousPage = (page: string) => {\n if (page) {\n const index = previousPages.value.indexOf(page);\n if (index !== -1) {\n previousPages.value = previousPages.value.slice(0, index + 1);\n } else {\n previousPages.value = [page];\n }\n } else {\n previousPages.value.pop();\n }\n\n animation.value = BentoSidepanelAnimation.TRANSITION_LEVEL_UPPER;\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, lastPage.value);\n };\n\n // Add new page to the previousPage array to keep track of user navigation\n watch(\n () => activePage.value,\n async () => {\n await nextTick();\n\n if (!!activePage.value && !isActivePageValid.value) {\n // eslint-disable-next-line no-console\n console.error(`The activePage passed \"${activePage.value}\" does not match the id of any SidepanelPage`);\n return;\n }\n if (activePage.value !== lastPage.value) {\n previousPages.value.push(activePage.value);\n }\n },\n { immediate: true }\n );\n\n // Animation styling\n const conditionalClasses = computed(() => ({\n 'b-sidepanel--hide': isClosing.value,\n }));\n\n // Handle closing and closing animation for dialog element\n const closeSidepanelAfterAnimation = () => {\n if (isClosing.value) {\n sidepanel.value.close();\n if (previousPages.value[0]) {\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n emit(BentoSidepanelEvent.UPDATE_IS_OPEN, false);\n }\n };\n\n const startCloseSidepanelAnimation = (event?: Event) => {\n if (event) {\n event.preventDefault();\n }\n if (!sidepanel.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n /**\n * Since the dialog HTML element doesn't automatically close when clicking outside, a check on when the user is clicking is needed.\n * If the click doesn't happen in the dialog box itself, the modal closes\n */\n const closeSidepanelOnClickOutside = ({ target }: Event): void => {\n if (target && (target as HTMLElement).tagName === 'DIALOG') {\n startCloseSidepanelAnimation();\n }\n };\n\n // Watching isOpen prop to toggle open/close the dialog element\n watch(\n () => isOpen.value,\n async () => {\n // Wait for sidepanel ref to be created\n await nextTick();\n\n if (!sidepanel.value) {\n return;\n }\n\n if (isOpen.value) {\n sidepanel.value.showModal();\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (sidepanel.value.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true }\n );\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(({ pageId }) => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoSidepanelRegisterPage = ({ title, pageId }) => {\n pages.value.push({ title, pageId });\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n provide(SIDEPANEL_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n goToPreviousPage,\n hasPreviousPages,\n isOpen,\n });\n provide(SIDEPANEL_REGISTER_PAGE_INJECTION_KEY, registerPage);\n</script>\n\n<script lang=\"ts\">\n /**\n * Sidepanel component is a slide-in panel that should be used for presenting actions, settings or features that are directly associated with a specific task or interaction on the main screen.\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n<style lang=\"scss\" scoped src=\"./sidepanel.scss\" />\n"],"names":["BentoSidepanelEvent","BentoSidepanelEvent2","BentoSidepanelAnimation","BentoSidepanelAnimation2","SIDEPANEL_REGISTER_PAGE_INJECTION_KEY","SIDEPANEL_CONFIG_INJECTION_KEY","__default__$1","messages$1","useI18n","contentElement","ref","hasScroll","isScrollAtTop","isScrollAtBottom","registerPage","inject","unregisterPage","props","onUnmounted","activePage","animation","goToPreviousPage","hasPreviousPages","isOpen","showPage","computed","showBackButton","headerConditionalClasses","actionsConditionalClasses","onScroll","calculateScroll","watchedValue","nextTick","watch","__default__","messages","toRefs","t","sidepanel","pages","previousPages","isClosing","lastPage","isActivePageValid","page","index","emit","conditionalClasses","closeSidepanelAfterAnimation","startCloseSidepanelAnimation","event","closeSidepanelOnClickOutside","target","pageIdToRemove","_a","pageId","title","provide"],"mappings":"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"}
1
+ {"version":3,"file":"sidepanel.js","sources":["../src/components/sidepanel/sidepanel.types.ts","../src/components/sidepanel/sidepanel.keys.ts","../src/components/sidepanel/components/sidepanel-page.vue","../src/components/sidepanel/sidepanel.vue"],"sourcesContent":["import { Ref } from 'vue';\n\nexport interface BentoSidepanelPageObject {\n title: string;\n pageId: string;\n}\n\nexport enum BentoSidepanelEvent {\n UPDATE_ACTIVE_PAGE = 'update:active-page',\n UPDATE_IS_OPEN = 'update:is-open',\n}\n\nexport enum BentoSidepanelAnimation {\n TRANSITION_LEVEL_DEEPER = 'b-sidepanel-page__animation--level-deeper',\n TRANSITION_LEVEL_UPPER = 'b-sidepanel-page__animation--level-upper',\n}\n\nexport interface BentoSidepanelConfigData {\n activePage: Ref<string>;\n animation: Ref<string>;\n goToPreviousPage: (page: string) => void;\n hasPreviousPages: Ref<boolean>;\n isOpen: Ref<boolean>;\n}\n\nexport type BentoSidepanelRegisterPage = (props: BentoSidepanelPageObject) => { unregisterPage: () => void };\n","export const SIDEPANEL_REGISTER_PAGE_INJECTION_KEY = Symbol('sidepanel registerPage injection key');\nexport const SIDEPANEL_CONFIG_INJECTION_KEY = Symbol('sidepanel config data injection key');\n","<template>\n <Transition :name=\"animation\" mode=\"out-in\" @after-leave=\"updateAnimation\">\n <div v-show=\"showPage\" class=\"b-sidepanel-page\">\n <div class=\"b-sidepanel-page__header\" :class=\"headerConditionalClasses\">\n <bento-button v-if=\"showBackButton\" variant=\"tertiary\" @click=\"goToPreviousPage(previousPage)\">\n <arrow-left-icon :svg-title=\"t('goToPreviousPage')\" />\n </bento-button>\n\n <bento-typography class=\"b-sidepanel-page__title\" el=\"h2\" variant=\"title\">\n {{ title }}\n </bento-typography>\n </div>\n <div ref=\"contentElement\" class=\"b-sidepanel-page__content\" @scroll=\"onScroll\">\n <bento-typography el=\"div\" variant=\"body\">\n <slot />\n </bento-typography>\n </div>\n <div v-if=\"actions\" class=\"b-sidepanel-page__actions\" :class=\"actionsConditionalClasses\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, nextTick, onUnmounted, PropType, ref, watch } from 'vue';\n\n import { BentoButton, BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { FooterActions } from '@/components/internal/footer-actions';\n import ArrowLeftIcon from '@adyen/ui-assets-icons-16/vue/arrow-left';\n\n import { BentoSidepanelAnimation, BentoSidepanelConfigData, BentoSidepanelRegisterPage } from '../sidepanel.types';\n import { SIDEPANEL_CONFIG_INJECTION_KEY, SIDEPANEL_REGISTER_PAGE_INJECTION_KEY } from '../sidepanel.keys';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n *\n * ```\n * [{\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * Text label that is displayed left to the action buttons\n */\n actionsLabel: {\n type: String,\n default: null,\n },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Identifier of the page, used with activePage prop to handle sidepanel navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n\n /**\n * Title of the sidepanel page\n */\n title: {\n type: String,\n default: null,\n },\n });\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // Refs\n const contentElement = ref<HTMLDivElement>(null);\n const hasScroll = ref(false);\n const isScrollAtTop = ref(true);\n const isScrollAtBottom = ref(false);\n\n // Register page to parent component and inject data from parent component\n const registerPage = inject<BentoSidepanelRegisterPage>(SIDEPANEL_REGISTER_PAGE_INJECTION_KEY);\n const { unregisterPage } = registerPage({ title: props.title, pageId: props.pageId });\n\n // Unregister page on unmounting the page\n onUnmounted(() => unregisterPage());\n\n const { activePage, animation, goToPreviousPage, hasPreviousPages, isOpen } =\n inject<BentoSidepanelConfigData>(SIDEPANEL_CONFIG_INJECTION_KEY);\n\n // Logic to choose which page is active/shown\n const showPage = computed(() => (activePage.value ? activePage.value === props.pageId : true));\n\n // Logic to determine whether the back button should be shown on the page\n const showBackButton = computed(() => {\n if (props.previousPage) {\n return true;\n }\n if (props.previousPage === null) {\n return false;\n }\n return hasPreviousPages.value && showPage.value;\n });\n\n // Scrolling styling logic\n const headerConditionalClasses = computed(() => ({\n 'b-sidepanel-page__header--with-border': hasScroll.value && !isScrollAtTop.value,\n }));\n\n const actionsConditionalClasses = computed(() => ({\n 'b-sidepanel-page__actions--with-border': hasScroll.value && !isScrollAtBottom.value,\n }));\n\n const onScroll = () => {\n if (!contentElement.value) {\n return;\n }\n isScrollAtTop.value = contentElement.value.scrollTop === 0;\n isScrollAtBottom.value =\n contentElement.value.scrollHeight - contentElement.value.clientHeight === contentElement.value.scrollTop;\n };\n\n const calculateScroll = async watchedValue => {\n if (!watchedValue) {\n return;\n }\n // Wait for content to be rendered to be able to calculate the height\n await nextTick();\n hasScroll.value = contentElement.value && contentElement.value.scrollHeight > contentElement.value.clientHeight;\n };\n\n watch(() => isOpen.value, calculateScroll, { immediate: true });\n watch(() => showPage.value, calculateScroll, { immediate: true });\n\n // Animation\n const updateAnimation = () => {\n if (animation.value === BentoSidepanelAnimation.TRANSITION_LEVEL_UPPER) {\n animation.value = BentoSidepanelAnimation.TRANSITION_LEVEL_DEEPER;\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * SidepanelPage is used to render different pages of Sidepanel component\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./sidepanel-page.scss\" />\n","<template>\n <dialog\n ref=\"sidepanel\"\n class=\"b-sidepanel\"\n :class=\"conditionalClasses\"\n @animationend=\"closeSidepanelAfterAnimation\"\n @click=\"isDismissible && closeSidepanelOnClickOutside($event)\"\n @keydown.esc.prevent=\"isDismissible && startCloseSidepanelAnimation\"\n >\n <bento-focus-trap>\n <div v-if=\"isDismissible\" class=\"b-sidepanel__close-button\">\n <bento-button variant=\"tertiary\" @click=\"startCloseSidepanelAnimation\">\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n <slot />\n </bento-focus-trap>\n </dialog>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, nextTick, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import {\n BentoSidepanelAnimation,\n BentoSidepanelEvent,\n BentoSidepanelPageObject,\n BentoSidepanelRegisterPage,\n } from './sidepanel.types';\n\n import { SIDEPANEL_CONFIG_INJECTION_KEY, SIDEPANEL_REGISTER_PAGE_INJECTION_KEY } from './sidepanel.keys';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * The id of the current active page\n * Should be the same id as the BentoSidepanelPage to be displayed\n * If the component only has one page, it can be left null/undefined.\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If set to true, it allows the sidepanel to be closed\n */\n isDismissible: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls the sidepanel's state from the outside. Set it to true to open the sidepanel\n */\n isOpen: {\n type: Boolean,\n default: null,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Emits update event when page is changed internally\n */\n (e: BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page: string): void;\n /**\n * Emits close-sidepanel event when the sidepanel is closed\n */\n (e: BentoSidepanelEvent.UPDATE_IS_OPEN, isOpen: boolean): void;\n }>();\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<BentoSidepanelPageObject[]>([]);\n const previousPages = ref([]);\n const hasPreviousPages = computed(() => previousPages.value.length > 1);\n const animation = ref(BentoSidepanelAnimation.TRANSITION_LEVEL_DEEPER);\n const isClosing = ref(false);\n\n // Previous page/back button logic\n const lastPage = computed(() => previousPages.value[previousPages.value.length - 1]);\n const isActivePageValid = computed(() => pages.value.some(page => page.pageId === activePage.value));\n\n const goToPreviousPage = (page: string) => {\n if (page) {\n const index = previousPages.value.indexOf(page);\n if (index !== -1) {\n previousPages.value = previousPages.value.slice(0, index + 1);\n } else {\n previousPages.value = [page];\n }\n } else {\n previousPages.value.pop();\n }\n\n animation.value = BentoSidepanelAnimation.TRANSITION_LEVEL_UPPER;\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, lastPage.value);\n };\n\n // Add new page to the previousPage array to keep track of user navigation\n watch(\n () => activePage.value,\n async () => {\n await nextTick();\n\n if (!!activePage.value && !isActivePageValid.value) {\n // eslint-disable-next-line no-console\n console.error(`The activePage passed \"${activePage.value}\" does not match the id of any SidepanelPage`);\n return;\n }\n if (activePage.value !== lastPage.value) {\n previousPages.value.push(activePage.value);\n }\n },\n { immediate: true }\n );\n\n // Animation styling\n const conditionalClasses = computed(() => ({\n 'b-sidepanel--hide': isClosing.value,\n }));\n\n // Handle closing and closing animation for dialog element\n const closeSidepanelAfterAnimation = () => {\n if (isClosing.value) {\n sidepanel.value.close();\n if (previousPages.value[0]) {\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n emit(BentoSidepanelEvent.UPDATE_IS_OPEN, false);\n }\n };\n\n const startCloseSidepanelAnimation = () => {\n if (!sidepanel.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n /**\n * Since the dialog HTML element doesn't automatically close when clicking outside, a check on when the user is clicking is needed.\n * If the click doesn't happen in the dialog box itself, the modal closes\n */\n const closeSidepanelOnClickOutside = ({ target }: Event): void => {\n if (target && (target as HTMLElement).tagName === 'DIALOG') {\n startCloseSidepanelAnimation();\n }\n };\n\n // Watching isOpen prop to toggle open/close the dialog element\n watch(\n () => isOpen.value,\n async () => {\n // Wait for sidepanel ref to be created\n await nextTick();\n\n if (!sidepanel.value) {\n return;\n }\n\n if (isOpen.value) {\n sidepanel.value.showModal();\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (sidepanel.value.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true }\n );\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(({ pageId }) => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoSidepanelRegisterPage = ({ title, pageId }) => {\n pages.value.push({ title, pageId });\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n provide(SIDEPANEL_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n goToPreviousPage,\n hasPreviousPages,\n isOpen,\n });\n provide(SIDEPANEL_REGISTER_PAGE_INJECTION_KEY, registerPage);\n</script>\n\n<script lang=\"ts\">\n /**\n * Sidepanel component is a slide-in panel that should be used for presenting actions, settings or features that are directly associated with a specific task or interaction on the main screen.\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n<style lang=\"scss\" scoped src=\"./sidepanel.scss\" />\n"],"names":["BentoSidepanelEvent","BentoSidepanelEvent2","BentoSidepanelAnimation","BentoSidepanelAnimation2","SIDEPANEL_REGISTER_PAGE_INJECTION_KEY","SIDEPANEL_CONFIG_INJECTION_KEY","__default__$1","messages$1","useI18n","contentElement","ref","hasScroll","isScrollAtTop","isScrollAtBottom","registerPage","inject","unregisterPage","props","onUnmounted","activePage","animation","goToPreviousPage","hasPreviousPages","isOpen","showPage","computed","showBackButton","headerConditionalClasses","actionsConditionalClasses","onScroll","calculateScroll","watchedValue","nextTick","watch","__default__","messages","toRefs","t","sidepanel","pages","previousPages","isClosing","lastPage","isActivePageValid","page","index","emit","conditionalClasses","closeSidepanelAfterAnimation","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","target","pageIdToRemove","_a","pageId","title","provide"],"mappings":"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"}
package/dist/status.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as n, computed as a } from "vue";
2
- import { B as o } from "./chunks/index.2fce7703.js";
2
+ import { B as o } from "./chunks/index.965ac1af.js";
3
3
  import { n as l } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
4
- import "./assets/index20.css";
4
+ import "./assets/index24.css";
5
5
  var r = /* @__PURE__ */ ((s) => (s.BLUE = "blue", s.GREEN = "green", s.GREY = "grey", s.ORANGE = "orange", s.RED = "red", s.YELLOW = "yellow", s))(r || {});
6
6
  const _ = n({
7
7
  name: "bento-status",
package/dist/stepper.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as V, ref as p, computed as o, watch as A, provide as w, readonly as K, useSlots as W, inject as z, onMounted as Z } from "vue";
2
- import { B as L } from "./chunks/index.2fce7703.js";
2
+ import { B as L } from "./chunks/index.965ac1af.js";
3
3
  import { B as I, a as M } from "./chunks/keyboard-navigation.ca47dfa8.js";
4
4
  import { u as U } from "./chunks/i18n.155748d6.js";
5
5
  import { n as T } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
6
- import { B as j } from "./chunks/base-button.d1ba66cd.js";
6
+ import { B as j } from "./chunks/base-button.7886a7e6.js";
7
7
  import { C as G } from "./chunks/checkmark-small.5ca15f00.js";
8
- import "./assets/index29.css";
8
+ import "./assets/index28.css";
9
9
  const q = (l) => {
10
10
  function s(i) {
11
11
  return ({ detail: u }) => {
@@ -1,4 +1,4 @@
1
- import { B as r, a as o } from "./chunks/index.298f5eed.js";
1
+ import { B as r, a as o } from "./chunks/index.d6b5f5e1.js";
2
2
  export {
3
3
  r as BentoStructuredList,
4
4
  o as BentoStructuredListItem
@@ -1,15 +1,16 @@
1
- import { defineComponent as c, toRefs as $, computed as l } from "vue";
2
- import { u as g } from "./chunks/use-has-slot.6052d56a.js";
3
- import { G as h } from "./chunks/grid-layout.b7e0d964.js";
4
- import { n as u } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
5
- import { BentoInfoIcon as E } from "./info-icon.js";
6
- import { B as O, a as v } from "./chunks/index.2fce7703.js";
7
- import { BentoTag as M, BentoTagVariant as _ } from "./tag.js";
8
- import { C as L } from "./chunks/copy.2ff56819.js";
9
- import "./assets/index16.css";
10
- const P = c({
1
+ import { defineComponent as l, provide as x, toRefs as $, computed as u } from "vue";
2
+ import { u as v } from "./chunks/use-has-slot.6052d56a.js";
3
+ import { S as h } from "./chunks/summary-grid.keys.1d1028c2.js";
4
+ import { G as E } from "./chunks/grid-layout.b7e0d964.js";
5
+ import { n as c } from "./chunks/_plugin-vue2_normalizer.71e2aa87.js";
6
+ import { BentoInfoIcon as O } from "./info-icon.js";
7
+ import { B as L, a as g } from "./chunks/index.965ac1af.js";
8
+ import { BentoTag as M, BentoTagVariant as f } from "./tag.js";
9
+ import { C as G } from "./chunks/copy.346eadb1.js";
10
+ import "./assets/index41.css";
11
+ const P = l({
11
12
  name: "bento-summary-grid",
12
- components: { GridLayout: h },
13
+ components: { GridLayout: E },
13
14
  props: {
14
15
  /**
15
16
  * Sets the responsive columns widths values for 1 of the 3 rows.
@@ -20,57 +21,57 @@ const P = c({
20
21
  }
21
22
  },
22
23
  setup(e, { slots: t }) {
23
- var r, a;
24
- let n = 1;
24
+ var a, s;
25
+ let r = 1;
25
26
  if (t) {
26
- const d = (a = (r = Object.keys(t)) == null ? void 0 : r.filter((y) => y.includes("cell-"))) == null ? void 0 : a.map((y) => {
27
+ const d = (s = (a = Object.keys(t)) == null ? void 0 : a.filter((m) => m.includes("cell-"))) == null ? void 0 : s.map((m) => {
27
28
  var p;
28
- return parseInt((p = y.split("-")) == null ? void 0 : p[1], 10);
29
+ return parseInt((p = m.split("-")) == null ? void 0 : p[1], 10);
29
30
  });
30
- if (n = Math.max(...d), n > 3)
31
+ if (r = Math.max(...d), r > 3)
31
32
  throw new Error(
32
33
  "BentoSummaryGrid must only have a maximum of 3 rows. Read the documentation for more information."
33
34
  );
34
35
  }
35
- return {
36
- hasSlot: g(t),
37
- numberOfRows: n
36
+ return x(h, () => ({ isSummaryGridLayout: !0 })), {
37
+ hasSlot: v(t),
38
+ numberOfRows: r
38
39
  };
39
40
  }
40
41
  });
41
- var A = function() {
42
- var t = this, n = t._self._c;
43
- return t._self._setupProxy, n("div", { staticClass: "b-summary-grid" }, t._l(t.numberOfRows, function(r) {
42
+ var R = function() {
43
+ var t = this, r = t._self._c;
44
+ return t._self._setupProxy, r("div", { staticClass: "b-summary-grid" }, t._l(t.numberOfRows, function(n) {
44
45
  var a;
45
- return n("grid-layout", { key: `summary-grid-row-${r}`, attrs: { "data-testid": `summary-grid-row-${r}`, "column-width": (a = t.columnWidth) == null ? void 0 : a[`row${r}`] }, scopedSlots: t._u([t.hasSlot(`cell-${r}-1`) ? { key: "col-1", fn: function() {
46
- return [t._t(`cell-${r}-1`)];
47
- }, proxy: !0 } : null, t.hasSlot(`cell-${r}-2`) ? { key: "col-2", fn: function() {
48
- return [t._t(`cell-${r}-2`)];
49
- }, proxy: !0 } : null, t.hasSlot(`cell-${r}-3`) ? { key: "col-3", fn: function() {
50
- return [t._t(`cell-${r}-3`)];
51
- }, proxy: !0 } : null, t.hasSlot(`cell-${r}-4`) ? { key: "col-4", fn: function() {
52
- return [t._t(`cell-${r}-4`)];
53
- }, proxy: !0 } : null, t.hasSlot(`cell-${r}-5`) ? { key: "col-5", fn: function() {
54
- return [t._t(`cell-${r}-5`)];
55
- }, proxy: !0 } : null, t.hasSlot(`cell-${r}-6`) ? { key: "col-6", fn: function() {
56
- return [t._t(`cell-${r}-6`)];
46
+ return r("grid-layout", { key: `summary-grid-row-${n}`, attrs: { "data-testid": `summary-grid-row-${n}`, "column-width": (a = t.columnWidth) == null ? void 0 : a[`row${n}`] }, scopedSlots: t._u([t.hasSlot(`cell-${n}-1`) ? { key: "col-1", fn: function() {
47
+ return [t._t(`cell-${n}-1`)];
48
+ }, proxy: !0 } : null, t.hasSlot(`cell-${n}-2`) ? { key: "col-2", fn: function() {
49
+ return [t._t(`cell-${n}-2`)];
50
+ }, proxy: !0 } : null, t.hasSlot(`cell-${n}-3`) ? { key: "col-3", fn: function() {
51
+ return [t._t(`cell-${n}-3`)];
52
+ }, proxy: !0 } : null, t.hasSlot(`cell-${n}-4`) ? { key: "col-4", fn: function() {
53
+ return [t._t(`cell-${n}-4`)];
54
+ }, proxy: !0 } : null, t.hasSlot(`cell-${n}-5`) ? { key: "col-5", fn: function() {
55
+ return [t._t(`cell-${n}-5`)];
56
+ }, proxy: !0 } : null, t.hasSlot(`cell-${n}-6`) ? { key: "col-6", fn: function() {
57
+ return [t._t(`cell-${n}-6`)];
57
58
  }, proxy: !0 } : null], null, !0) });
58
59
  }), 1);
59
- }, R = [], V = /* @__PURE__ */ u(
60
+ }, A = [], V = /* @__PURE__ */ c(
60
61
  P,
61
- A,
62
62
  R,
63
+ A,
63
64
  !1,
64
65
  null,
65
- "0992c95d",
66
+ "7bb9380f",
66
67
  null,
67
68
  null
68
69
  );
69
- const mt = V.exports;
70
- var i = /* @__PURE__ */ ((e) => (e.SMALL = "small", e.MEDIUM = "medium", e.LARGE = "large", e))(i || {}), o = /* @__PURE__ */ ((e) => (e.POSITIVE = "positive", e.NEGATIVE = "negative", e.NEUTRAL = "neutral", e))(o || {}), s = /* @__PURE__ */ ((e) => (e.AMOUNT = "amount", e.PERCENTAGE = "percentage", e.NUMERIC = "numeric", e.TEXT = "text", e.CUSTOM = "custom", e))(s || {});
71
- const B = c({
70
+ const _t = V.exports;
71
+ var i = /* @__PURE__ */ ((e) => (e.SMALL = "small", e.MEDIUM = "medium", e.LARGE = "large", e))(i || {}), o = /* @__PURE__ */ ((e) => (e.POSITIVE = "positive", e.NEGATIVE = "negative", e.NEUTRAL = "neutral", e))(o || {}), _ = /* @__PURE__ */ ((e) => (e.AMOUNT = "amount", e.PERCENTAGE = "percentage", e.NUMERIC = "numeric", e.TEXT = "text", e.CUSTOM = "custom", e))(_ || {});
72
+ const B = l({
72
73
  name: "summary-grid-item",
73
- components: { BentoInfoIcon: E, BentoTypography: O, BentoTag: M, Copy: L },
74
+ components: { BentoInfoIcon: O, BentoTypography: L, BentoTag: M, Copy: G },
74
75
  props: {
75
76
  /**
76
77
  * Text to copy to the clipboard
@@ -82,8 +83,8 @@ const B = c({
82
83
  // TODO add text truncation for SummaryGridItemType.TEXT
83
84
  itemType: {
84
85
  type: String,
85
- default: s.CUSTOM,
86
- validator: (e) => Object.values(s).includes(e)
86
+ default: _.CUSTOM,
87
+ validator: (e) => Object.values(_).includes(e)
87
88
  },
88
89
  /**
89
90
  * Text showed in the info-icon tooltip on hover
@@ -139,63 +140,52 @@ const B = c({
139
140
  }
140
141
  },
141
142
  setup(e, { slots: t }) {
142
- const { trendDirection: n, secondaryTrendDirection: r, itemType: a, size: d } = $(e), y = (x) => {
143
- switch (x) {
143
+ const { trendDirection: r, secondaryTrendDirection: n, itemType: a, size: s } = $(e), d = (C) => {
144
+ switch (C) {
144
145
  case o.POSITIVE:
145
- return _.GREEN;
146
+ return f.GREEN;
146
147
  case o.NEGATIVE:
147
- return _.RED;
148
+ return f.RED;
148
149
  default:
149
- return _.BLUE;
150
+ return f.BLUE;
150
151
  }
151
- }, p = l(() => y(n.value)), S = l(() => y(r.value)), f = l(
152
- () => a.value === s.TEXT || a.value === s.PERCENTAGE || a.value === s.AMOUNT || a.value === s.NUMERIC
153
- ), T = l(() => {
154
- if (f.value) {
155
- if (d.value === i.SMALL)
156
- return v.BODY;
157
- if (a.value !== s.TEXT)
158
- return v.TITLE;
159
- }
160
- return null;
161
- }), b = l(() => ({
162
- medium: d.value === i.LARGE,
163
- strongest: d.value === i.SMALL,
164
- wide: d.value === i.SMALL,
165
- variant: T.value
166
- })), C = l(() => e.fitContent ? { width: "fit-content" } : {}), I = l(() => ({
152
+ }, m = u(() => d(r.value)), p = u(() => d(n.value)), S = u(() => s.value === i.SMALL ? g.BODY : a.value !== _.TEXT ? g.TITLE : null), T = u(() => ({
153
+ medium: s.value === i.LARGE,
154
+ strongest: s.value === i.SMALL,
155
+ wide: s.value === i.SMALL,
156
+ variant: S.value
157
+ })), b = u(() => e.fitContent ? { width: "fit-content" } : {}), I = u(() => ({
167
158
  [`b-summary-grid-item__content-trend--${e.trend}`]: e.trend
168
159
  }));
169
160
  return {
170
161
  // Values
171
- trendVariant: p,
172
- secondaryTrendVariant: S,
173
- isContentTypographyApplied: f,
174
- typographyProps: b,
162
+ trendVariant: m,
163
+ secondaryTrendVariant: p,
164
+ typographyProps: T,
175
165
  // Styles
176
- computedStyles: C,
166
+ computedStyles: b,
177
167
  summaryBarItemTrendConditionalClasses: I,
178
168
  // Utils
179
- hasSlot: g(t)
169
+ hasSlot: v(t)
180
170
  };
181
171
  }
182
172
  });
183
- var G = function() {
184
- var t = this, n = t._self._c;
185
- return t._self._setupProxy, n("div", { staticClass: "b-summary-grid-item", style: t.computedStyles }, [n("div", { staticClass: "b-summary-grid-item__header" }, [n("bento-typography", { staticClass: "b-summary-grid-item__title", attrs: { el: "span", variant: "body" } }, [t._v(" " + t._s(t.title) + " ")]), n("div", { staticClass: "b-summary-grid-item__title-icons" }, [t.copy ? n("copy", { staticClass: "b-structured-list__icon", attrs: { text: t.copy } }) : t._e(), t.infoIconTooltipText ? n("bento-info-icon", { staticClass: "b-summary-grid-item__title-tooltip", attrs: { "tooltip-text": t.infoIconTooltipText, "tooltip-position": "top" } }) : t._e()], 1)], 1), n("div", { staticClass: "b-summary-grid-item__content--primary" }, [t.isContentTypographyApplied ? n("bento-typography", t._b({ staticClass: "b-summary-grid-item__title", attrs: { "data-testid": "summary-grid-item-content-typography", el: "span" } }, "bento-typography", t.typographyProps, !1), [t._t("default"), t.trend && t.itemType !== "text" ? n("bento-tag", { staticClass: "b-summary-grid-item__content-trend", attrs: { variant: t.trendVariant, label: t.trend } }) : t._e()], 2) : t._t("default")], 2), t.hasSlot("secondary") ? n("div", { staticClass: "b-summary-grid-item__content--secondary" }, [n("bento-typography", { staticClass: "b-summary-grid-item__title", attrs: { "data-testid": "summary-grid-item-secondary-metric-typography", el: "span", variant: "caption", stronger: "" } }, [t._t("secondary"), t.secondaryTrend ? n("bento-tag", { staticClass: "b-summary-grid-item__content-trend", attrs: { variant: t.secondaryTrendVariant, label: t.secondaryTrend } }) : t._e()], 2)], 1) : t._e()]);
186
- }, D = [], j = /* @__PURE__ */ u(
173
+ var D = function() {
174
+ var t = this, r = t._self._c;
175
+ return t._self._setupProxy, r("div", { staticClass: "b-summary-grid-item", style: t.computedStyles }, [r("div", { staticClass: "b-summary-grid-item__header" }, [r("bento-typography", { staticClass: "b-summary-grid-item__title", attrs: { el: "span", variant: "body" } }, [t._v(" " + t._s(t.title) + " ")]), r("div", { staticClass: "b-summary-grid-item__title-icons" }, [t.copy ? r("copy", { staticClass: "b-structured-list__icon", attrs: { text: t.copy } }) : t._e(), t.infoIconTooltipText ? r("bento-info-icon", { staticClass: "b-summary-grid-item__title-tooltip", attrs: { "tooltip-text": t.infoIconTooltipText, "tooltip-position": "top" } }) : t._e()], 1)], 1), r("bento-typography", t._b({ staticClass: "b-summary-grid-item__title", attrs: { "data-testid": "summary-grid-item-content-typography", el: "span" } }, "bento-typography", t.typographyProps, !1), [t._t("default"), t.trend && t.itemType !== "text" ? r("bento-tag", { staticClass: "b-summary-grid-item__content-trend", attrs: { variant: t.trendVariant, label: t.trend } }) : t._e()], 2), t.hasSlot("secondary") ? r("bento-typography", { staticClass: "b-summary-grid-item__title", attrs: { "data-testid": "summary-grid-item-secondary-metric-typography", el: "span", variant: "caption", stronger: "" } }, [t._t("secondary"), t.secondaryTrend ? r("bento-tag", { staticClass: "b-summary-grid-item__content-trend", attrs: { variant: t.secondaryTrendVariant, label: t.secondaryTrend } }) : t._e()], 2) : t._e()], 1);
176
+ }, j = [], w = /* @__PURE__ */ c(
187
177
  B,
188
- G,
189
178
  D,
179
+ j,
190
180
  !1,
191
181
  null,
192
- "83bd7705",
182
+ "6f017e49",
193
183
  null,
194
184
  null
195
185
  );
196
- const m = j.exports, w = c({
186
+ const y = w.exports, k = l({
197
187
  name: "bento-summary-grid-item-amount",
198
- components: { SummaryGridItem: m },
188
+ components: { SummaryGridItem: y },
199
189
  props: {
200
190
  /**
201
191
  * Text to copy to the clipboard
@@ -284,23 +274,23 @@ const m = j.exports, w = c({
284
274
  }
285
275
  });
286
276
  var N = function() {
287
- var t = this, n = t._self._c;
288
- return t._self._setupProxy, n("summary-grid-item", { staticClass: "b-summary-grid-item-amount", attrs: { "item-type": "amount", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
277
+ var t = this, r = t._self._c;
278
+ return t._self._setupProxy, r("summary-grid-item", { staticClass: "b-summary-grid-item-amount", attrs: { "item-type": "amount", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
289
279
  return [t._v(" " + t._s(t.secondaryMetric) + " ")];
290
- }, proxy: !0 } : null], null, !0) }, [n("div", { staticClass: "b-summary-grid-item-amount__content" }, [n("div", [t._v(t._s(t.label))]), t.secondaryLabel ? n("div", { staticClass: "b-summary-grid-item-amount__secondary-label" }, [t._v(t._s(t.secondaryLabel))]) : t._e()])]);
291
- }, k = [], q = /* @__PURE__ */ u(
292
- w,
293
- N,
280
+ }, proxy: !0 } : null], null, !0) }, [r("div", { staticClass: "b-summary-grid-item-amount__content" }, [r("div", [t._v(t._s(t.label))]), t.secondaryLabel ? r("div", { staticClass: "b-summary-grid-item-amount__secondary-label" }, [t._v(t._s(t.secondaryLabel))]) : t._e()])]);
281
+ }, q = [], z = /* @__PURE__ */ c(
294
282
  k,
283
+ N,
284
+ q,
295
285
  !1,
296
286
  null,
297
287
  "13717f92",
298
288
  null,
299
289
  null
300
290
  );
301
- const pt = q.exports, z = c({
291
+ const ft = z.exports, U = l({
302
292
  name: "bento-summary-grid-item-numeric",
303
- components: { SummaryGridItem: m },
293
+ components: { SummaryGridItem: y },
304
294
  props: {
305
295
  /**
306
296
  * Text to copy to the clipboard
@@ -381,24 +371,24 @@ const pt = q.exports, z = c({
381
371
  }
382
372
  }
383
373
  });
384
- var U = function() {
385
- var t = this, n = t._self._c;
386
- return t._self._setupProxy, n("summary-grid-item", { staticClass: "b-summary-grid-item-numeric", attrs: { "item-type": "numeric", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
374
+ var F = function() {
375
+ var t = this, r = t._self._c;
376
+ return t._self._setupProxy, r("summary-grid-item", { staticClass: "b-summary-grid-item-numeric", attrs: { "item-type": "numeric", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
387
377
  return [t._v(" " + t._s(t.secondaryMetric) + " ")];
388
378
  }, proxy: !0 } : null], null, !0) }, [t._v(" " + t._s(t.label) + " ")]);
389
- }, F = [], X = /* @__PURE__ */ u(
390
- z,
379
+ }, Y = [], W = /* @__PURE__ */ c(
391
380
  U,
392
381
  F,
382
+ Y,
393
383
  !1,
394
384
  null,
395
385
  null,
396
386
  null,
397
387
  null
398
388
  );
399
- const _t = X.exports, W = c({
389
+ const gt = W.exports, X = l({
400
390
  name: "bento-summary-grid-item-percentage",
401
- components: { SummaryGridItem: m },
391
+ components: { SummaryGridItem: y },
402
392
  props: {
403
393
  /**
404
394
  * Amount to be shown as the main value
@@ -480,23 +470,23 @@ const _t = X.exports, W = c({
480
470
  }
481
471
  });
482
472
  var H = function() {
483
- var t = this, n = t._self._c;
484
- return t._self._setupProxy, n("summary-grid-item", { staticClass: "b-summary-grid-item-percentage", attrs: { "item-type": "percentage", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
473
+ var t = this, r = t._self._c;
474
+ return t._self._setupProxy, r("summary-grid-item", { staticClass: "b-summary-grid-item-percentage", attrs: { "item-type": "percentage", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent, size: t.size, trend: t.trend, "trend-direction": t.trendDirection, "secondary-trend": t.secondaryTrend, "secondary-trend-direction": t.secondaryTrendDirection }, scopedSlots: t._u([t.secondaryMetric ? { key: "secondary", fn: function() {
485
475
  return [t._v(" " + t._s(t.secondaryMetric) + "% ")];
486
476
  }, proxy: !0 } : null], null, !0) }, [t._v(" " + t._s(t.label) + "% ")]);
487
- }, Y = [], J = /* @__PURE__ */ u(
488
- W,
477
+ }, J = [], K = /* @__PURE__ */ c(
478
+ X,
489
479
  H,
490
- Y,
480
+ J,
491
481
  !1,
492
482
  null,
493
483
  null,
494
484
  null,
495
485
  null
496
486
  );
497
- const ft = J.exports, K = c({
487
+ const vt = K.exports, Q = l({
498
488
  name: "bento-summary-grid-item-text",
499
- components: { SummaryGridItem: m },
489
+ components: { SummaryGridItem: y },
500
490
  props: {
501
491
  /**
502
492
  * Text to copy to the clipboard
@@ -532,22 +522,22 @@ const ft = J.exports, K = c({
532
522
  }
533
523
  }
534
524
  });
535
- var Q = function() {
536
- var t = this, n = t._self._c;
537
- return t._self._setupProxy, n("summary-grid-item", { staticClass: "b-summary-grid-item-text", attrs: { "item-type": "text", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent } }, [t._v(" " + t._s(t.label) + " ")]);
538
- }, Z = [], tt = /* @__PURE__ */ u(
539
- K,
525
+ var Z = function() {
526
+ var t = this, r = t._self._c;
527
+ return t._self._setupProxy, r("summary-grid-item", { staticClass: "b-summary-grid-item-text", attrs: { "item-type": "text", "info-icon-tooltip-text": t.infoIconTooltipText, title: t.title, copy: t.copy, "fit-content": t.fitContent } }, [t._v(" " + t._s(t.label) + " ")]);
528
+ }, tt = [], et = /* @__PURE__ */ c(
540
529
  Q,
541
530
  Z,
531
+ tt,
542
532
  !1,
543
533
  null,
544
534
  null,
545
535
  null,
546
536
  null
547
537
  );
548
- const vt = tt.exports, et = c({
538
+ const St = et.exports, rt = l({
549
539
  name: "bento-summary-grid-item-custom",
550
- components: { SummaryGridItem: m },
540
+ components: { SummaryGridItem: y },
551
541
  props: {
552
542
  /**
553
543
  * Text to copy to the clipboard
@@ -569,29 +559,29 @@ const vt = tt.exports, et = c({
569
559
  emits: ["copy-to-clipboard"]
570
560
  });
571
561
  var nt = function() {
572
- var t = this, n = t._self._c;
573
- return t._self._setupProxy, n("summary-grid-item", { attrs: { title: t.title, "info-icon-tooltip-text": t.infoIconTooltipText, copy: t.copy, "fit-content": t.fitContent }, on: { "copy-to-clipoard": function(r) {
562
+ var t = this, r = t._self._c;
563
+ return t._self._setupProxy, r("summary-grid-item", { attrs: { title: t.title, "info-icon-tooltip-text": t.infoIconTooltipText, copy: t.copy, "fit-content": t.fitContent }, on: { "copy-to-clipoard": function(n) {
574
564
  return t.$emit("copy-to-clipboard");
575
565
  } } }, [t._t("default")], 2);
576
- }, rt = [], ot = /* @__PURE__ */ u(
577
- et,
578
- nt,
566
+ }, ot = [], it = /* @__PURE__ */ c(
579
567
  rt,
568
+ nt,
569
+ ot,
580
570
  !1,
581
571
  null,
582
572
  null,
583
573
  null,
584
574
  null
585
575
  );
586
- const gt = ot.exports;
576
+ const Tt = it.exports;
587
577
  export {
588
- mt as BentoSummaryGrid,
589
- pt as BentoSummaryGridItemAmount,
590
- gt as BentoSummaryGridItemCustom,
591
- _t as BentoSummaryGridItemNumeric,
592
- ft as BentoSummaryGridItemPercentage,
578
+ _t as BentoSummaryGrid,
579
+ ft as BentoSummaryGridItemAmount,
580
+ Tt as BentoSummaryGridItemCustom,
581
+ gt as BentoSummaryGridItemNumeric,
582
+ vt as BentoSummaryGridItemPercentage,
593
583
  i as BentoSummaryGridItemSize,
594
- vt as BentoSummaryGridItemText,
584
+ St as BentoSummaryGridItemText,
595
585
  o as BentoSummaryGridItemTrendDirection
596
586
  };
597
587
  //# sourceMappingURL=summary-grid.js.map