@adyen/bento-vue2 1.84.2 → 1.86.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 (422) hide show
  1. package/dist/@types/components.d.ts +6 -0
  2. package/dist/@types/index.d.ts +480 -268
  3. package/dist/accordion.js +1 -1
  4. package/dist/action-bar.js +1 -1
  5. package/dist/ai-tag.js +5 -0
  6. package/dist/ai-tag.js.map +1 -0
  7. package/dist/alert.js +1 -1
  8. package/dist/anchor-scroller.js +5 -0
  9. package/dist/anchor-scroller.js.map +1 -0
  10. package/dist/assets/accordion-item.css +1 -1
  11. package/dist/assets/action-bar.css +1 -1
  12. package/dist/assets/ai-tag.css +1 -0
  13. package/dist/assets/anchor-scroller.css +1 -0
  14. package/dist/assets/base-modal.css +1 -1
  15. package/dist/assets/button-actions.css +1 -1
  16. package/dist/assets/card.css +1 -1
  17. package/dist/assets/checkbox.css +1 -1
  18. package/dist/assets/data-grid.css +1 -1
  19. package/dist/assets/date-picker.css +1 -1
  20. package/dist/assets/date-range-picker.css +1 -1
  21. package/dist/assets/dialog-page.css +1 -1
  22. package/dist/assets/draggable-handle.css +1 -0
  23. package/dist/assets/dropdown-default-textbox.css +1 -1
  24. package/dist/assets/dropdown.css +1 -1
  25. package/dist/assets/error-message.css +1 -0
  26. package/dist/assets/file-uploader.css +1 -1
  27. package/dist/assets/filter-bar.css +1 -1
  28. package/dist/assets/fixed-scroller.css +1 -1
  29. package/dist/assets/form-layout-title.css +1 -1
  30. package/dist/assets/inspector.css +1 -1
  31. package/dist/assets/layout-row.css +1 -1
  32. package/dist/assets/modal-fullscreen.css +1 -1
  33. package/dist/assets/radio-group.css +1 -1
  34. package/dist/assets/secondary-nav.css +1 -1
  35. package/dist/assets/sidepanel.css +1 -1
  36. package/dist/assets/use-cached-selected-values.css +1 -1
  37. package/dist/avatar.js +1 -1
  38. package/dist/button.js +3 -3
  39. package/dist/card.js +1 -1
  40. package/dist/checkbox.js +6 -6
  41. package/dist/chip.js +1 -1
  42. package/dist/chunks/1-generic-use.CZhwP2Yc.js.map +1 -1
  43. package/dist/chunks/1-generic-use.R6x8PEGA.js.map +1 -1
  44. package/dist/chunks/2-generic-use.CNKjB4B7.js.map +1 -1
  45. package/dist/chunks/2-generic-use.w0fUhovx.js.map +1 -1
  46. package/dist/chunks/3-generic-use.BLEzR04g.js.map +1 -1
  47. package/dist/chunks/3-generic-use.D3NFHgI4.js.map +1 -1
  48. package/dist/chunks/4-generic-use.CULEpvgj.js.map +1 -1
  49. package/dist/chunks/4-generic-use.D82y3n39.js.map +1 -1
  50. package/dist/chunks/{accordion-item.DeV8s0oW.js → accordion-item.Cv6kG2N3.js} +2 -2
  51. package/dist/chunks/{accordion-item.DeV8s0oW.js.map → accordion-item.Cv6kG2N3.js.map} +1 -1
  52. package/dist/chunks/action-bar.Dnkt4yn7.js +163 -0
  53. package/dist/chunks/action-bar.Dnkt4yn7.js.map +1 -0
  54. package/dist/chunks/adding-payment-methods.BJZLPxtM.js.map +1 -1
  55. package/dist/chunks/adding-payment-methods.Dle8zt43.js.map +1 -1
  56. package/dist/chunks/adyen-giving.Ffw_DlJK.js.map +1 -1
  57. package/dist/chunks/adyen-giving.LiKHj_jY.js.map +1 -1
  58. package/dist/chunks/ai-button.BTi18ipD.js +50 -0
  59. package/dist/chunks/ai-button.BTi18ipD.js.map +1 -0
  60. package/dist/chunks/ai-tag.s8TECgn_.js +82 -0
  61. package/dist/chunks/ai-tag.s8TECgn_.js.map +1 -0
  62. package/dist/chunks/{alert.B3Pdp02a.js → alert.BESCd8iS.js} +5 -5
  63. package/dist/chunks/{alert.B3Pdp02a.js.map → alert.BESCd8iS.js.map} +1 -1
  64. package/dist/chunks/anchor-scroller.3_idPubO.js +178 -0
  65. package/dist/chunks/anchor-scroller.3_idPubO.js.map +1 -0
  66. package/dist/chunks/aria-label.CaUURpnB.js.map +1 -1
  67. package/dist/chunks/arrow-left.CRREfabP.js +24 -0
  68. package/dist/chunks/arrow-left.CRREfabP.js.map +1 -0
  69. package/dist/chunks/arrow-right.Dn3AYpUP.js +24 -0
  70. package/dist/chunks/arrow-right.Dn3AYpUP.js.map +1 -0
  71. package/dist/chunks/artificial-intelligence-ai-filled.C6TMsiHK.js +24 -0
  72. package/dist/chunks/artificial-intelligence-ai-filled.C6TMsiHK.js.map +1 -0
  73. package/dist/chunks/{avatar.CUCH3CTc.js → avatar.rwWPYJnt.js} +2 -2
  74. package/dist/chunks/{avatar.CUCH3CTc.js.map → avatar.rwWPYJnt.js.map} +1 -1
  75. package/dist/chunks/{base-button.IN4bpcds.js → base-button.BPRPrO0p.js} +2 -2
  76. package/dist/chunks/{base-button.IN4bpcds.js.map → base-button.BPRPrO0p.js.map} +1 -1
  77. package/dist/chunks/{base-modal.KYkLKswF.js → base-modal.09nAcnF_.js} +41 -41
  78. package/dist/chunks/{base-modal.KYkLKswF.js.map → base-modal.09nAcnF_.js.map} +1 -1
  79. package/dist/chunks/{button-actions-with-menu.B5mKwc-F.js → button-actions-with-menu.C8tSTxrm.js} +3 -3
  80. package/dist/chunks/{button-actions-with-menu.B5mKwc-F.js.map → button-actions-with-menu.C8tSTxrm.js.map} +1 -1
  81. package/dist/chunks/{button-actions.D9n7MxWe.js → button-actions.VSc47LLH.js} +8 -8
  82. package/dist/chunks/{button-actions.D9n7MxWe.js.map → button-actions.VSc47LLH.js.map} +1 -1
  83. package/dist/chunks/button-actions.types.BptAXjD8.js.map +1 -1
  84. package/dist/chunks/{button.DIU6m9wD.js → button.Ctj3rkxw.js} +5 -5
  85. package/dist/chunks/{button.DIU6m9wD.js.map → button.Ctj3rkxw.js.map} +1 -1
  86. package/dist/chunks/{calendar.C8DpZ4Sr.js → calendar.DiXkjQDP.js} +100 -94
  87. package/dist/chunks/{calendar.C8DpZ4Sr.js.map → calendar.DiXkjQDP.js.map} +1 -1
  88. package/dist/chunks/{card.CLX0RGG6.js → card.BdjdBN36.js} +3 -3
  89. package/dist/chunks/{card.CLX0RGG6.js.map → card.BdjdBN36.js.map} +1 -1
  90. package/dist/chunks/{checkbox-group.BCnhjQie.js → checkbox-group.d6VQvZL7.js} +5 -5
  91. package/dist/chunks/{checkbox-group.BCnhjQie.js.map → checkbox-group.d6VQvZL7.js.map} +1 -1
  92. package/dist/chunks/{checkbox.CU5ierOq.js → checkbox.ClFNfhNh.js} +4 -4
  93. package/dist/chunks/{checkbox.CU5ierOq.js.map → checkbox.ClFNfhNh.js.map} +1 -1
  94. package/dist/chunks/{chip.C6DRfdJ8.js → chip.D_XQ8ReC.js} +3 -3
  95. package/dist/chunks/{chip.C6DRfdJ8.js.map → chip.D_XQ8ReC.js.map} +1 -1
  96. package/dist/chunks/{click-outside.C1Ud8AA2.js → click-outside.CDz_x8mN.js} +2 -2
  97. package/dist/chunks/{click-outside.C1Ud8AA2.js.map → click-outside.CDz_x8mN.js.map} +1 -1
  98. package/dist/chunks/{code-snippet.9MwDHp50.js → code-snippet.DBNJgt1j.js} +11 -11
  99. package/dist/chunks/{code-snippet.9MwDHp50.js.map → code-snippet.DBNJgt1j.js.map} +1 -1
  100. package/dist/chunks/{codemirror.Cy7iSLbd.js → codemirror.D2BAltnu.js} +3688 -3673
  101. package/dist/chunks/codemirror.D2BAltnu.js.map +1 -0
  102. package/dist/chunks/constructNow.B8T1ljs6.js +8 -0
  103. package/dist/chunks/{constructNow.DuaJst0D.js.map → constructNow.B8T1ljs6.js.map} +1 -1
  104. package/dist/chunks/{controls-group.D4eW9DtP.js → controls-group.HUWlAOhG.js} +3 -3
  105. package/dist/chunks/{controls-group.D4eW9DtP.js.map → controls-group.HUWlAOhG.js.map} +1 -1
  106. package/dist/chunks/{copy.C0q7xgXs.js → copy.BXykYfg0.js} +7 -7
  107. package/dist/chunks/{copy.C0q7xgXs.js.map → copy.BXykYfg0.js.map} +1 -1
  108. package/dist/chunks/{country.DyrDj95W.js → country.BywHth0L.js} +3 -3
  109. package/dist/chunks/{country.DyrDj95W.js.map → country.BywHth0L.js.map} +1 -1
  110. package/dist/chunks/{country.types.DaVCMxk-.js → country.types.BBQbWkTY.js} +3 -3
  111. package/dist/chunks/{country.types.DaVCMxk-.js.map → country.types.BBQbWkTY.js.map} +1 -1
  112. package/dist/chunks/{currency.DYZr_RDk.js → currency.Ciyxfmg1.js} +2 -2
  113. package/dist/chunks/{currency.DYZr_RDk.js.map → currency.Ciyxfmg1.js.map} +1 -1
  114. package/dist/chunks/{dashboard-section.B83FdC0Z.js → dashboard-section.Cw2Ima3U.js} +6 -6
  115. package/dist/chunks/{dashboard-section.B83FdC0Z.js.map → dashboard-section.Cw2Ima3U.js.map} +1 -1
  116. package/dist/chunks/{dashed-underline.DQGVy5T2.js → dashed-underline.Dfw7cJ-9.js} +9 -9
  117. package/dist/chunks/{dashed-underline.DQGVy5T2.js.map → dashed-underline.Dfw7cJ-9.js.map} +1 -1
  118. package/dist/chunks/{data-grid-template.BTEFoEwf.js → data-grid-template.6LR2Jqka.js} +4 -4
  119. package/dist/chunks/{data-grid-template.BTEFoEwf.js.map → data-grid-template.6LR2Jqka.js.map} +1 -1
  120. package/dist/chunks/data-grid-template.keys.VezYtHtM.js.map +1 -1
  121. package/dist/chunks/{data-grid.Bk7_6Z0F.js → data-grid.B_uZEPDW.js} +449 -442
  122. package/dist/chunks/data-grid.B_uZEPDW.js.map +1 -0
  123. package/dist/chunks/date-input.etw_pFpA.js +20 -0
  124. package/dist/chunks/date-input.etw_pFpA.js.map +1 -0
  125. package/dist/chunks/{date-picker.CnsC_UMG.js → date-picker.CITeN8WH.js} +56 -56
  126. package/dist/chunks/date-picker.CITeN8WH.js.map +1 -0
  127. package/dist/chunks/date-picker.types.Ckt7zxGy.js.map +1 -1
  128. package/dist/chunks/date-range-picker.DxVjXxap.js +897 -0
  129. package/dist/chunks/date-range-picker.DxVjXxap.js.map +1 -0
  130. package/dist/chunks/date-range-picker.types.Ckt7zxGy.js.map +1 -1
  131. package/dist/chunks/{date.DBWzp0So.js → date.B0m0sFP6.js} +2 -2
  132. package/dist/chunks/{date.DBWzp0So.js.map → date.B0m0sFP6.js.map} +1 -1
  133. package/dist/chunks/de.DvtL0g75.js.map +1 -1
  134. package/dist/chunks/debounce.DUTu11PS.js.map +1 -1
  135. package/dist/chunks/delight.CDBAFnwC.js.map +1 -1
  136. package/dist/chunks/delight.xKDCvvaS.js.map +1 -1
  137. package/dist/chunks/dialog-page.DA6E6qma.js +122 -0
  138. package/dist/chunks/dialog-page.DA6E6qma.js.map +1 -0
  139. package/dist/chunks/{differenceInMonths.DcFDl4eH.js → differenceInMonths.BR4Z2HIa.js} +2 -2
  140. package/dist/chunks/{differenceInMonths.DcFDl4eH.js.map → differenceInMonths.BR4Z2HIa.js.map} +1 -1
  141. package/dist/chunks/{directive.Cbdox5VL.js → directive.rXUeDb8p.js} +2 -2
  142. package/dist/chunks/{directive.Cbdox5VL.js.map → directive.rXUeDb8p.js.map} +1 -1
  143. package/dist/chunks/divider.DX5gwN7p.js.map +1 -1
  144. package/dist/chunks/{dropdown-default-textbox.Cq68tN9F.js → dropdown-default-textbox.5WjhJWdh.js} +71 -80
  145. package/dist/chunks/dropdown-default-textbox.5WjhJWdh.js.map +1 -0
  146. package/dist/chunks/{dropdown-tag.HBM0wrEV.js → dropdown-tag.BnMuMIDk.js} +8 -8
  147. package/dist/chunks/{dropdown-tag.HBM0wrEV.js.map → dropdown-tag.BnMuMIDk.js.map} +1 -1
  148. package/dist/chunks/{dropdown.C2pXf8Li.js → dropdown.DDPfKc74.js} +227 -225
  149. package/dist/chunks/dropdown.DDPfKc74.js.map +1 -0
  150. package/dist/chunks/{empty-state.DpBnqAxu.js → empty-state.IiG1LXa2.js} +6 -6
  151. package/dist/chunks/{empty-state.DpBnqAxu.js.map → empty-state.IiG1LXa2.js.map} +1 -1
  152. package/dist/chunks/en-GB.DCGuCmAv.js.map +1 -1
  153. package/dist/chunks/en-US.BZii9jNW.js.map +1 -1
  154. package/dist/chunks/{field-label.CEkJnsiL.js → error-message.VenUl2OK.js} +54 -54
  155. package/dist/chunks/error-message.VenUl2OK.js.map +1 -0
  156. package/dist/chunks/es.bz0mzkMq.js.map +1 -1
  157. package/dist/chunks/es6.C1DXQV6f.js.map +1 -1
  158. package/dist/chunks/events.BQOQSSb7.js.map +1 -1
  159. package/dist/chunks/{file-uploader.CnOqfuI-.js → file-uploader.BU1V40qK.js} +10 -10
  160. package/dist/chunks/file-uploader.BU1V40qK.js.map +1 -0
  161. package/dist/chunks/filter-bar.UdXQf_RN.js +3321 -0
  162. package/dist/chunks/filter-bar.UdXQf_RN.js.map +1 -0
  163. package/dist/chunks/fixed-scroller.BueAsyGk.js +120 -0
  164. package/dist/chunks/{fixed-scroller.Bp4-iO80.js.map → fixed-scroller.BueAsyGk.js.map} +1 -1
  165. package/dist/chunks/{focus-trap.CNIU5jOz.js → focus-trap.DMc1wL3A.js} +312 -295
  166. package/dist/chunks/focus-trap.DMc1wL3A.js.map +1 -0
  167. package/dist/chunks/{footer-actions.BOiN47Xd.js → footer-actions.z-api8J_.js} +4 -4
  168. package/dist/chunks/{footer-actions.BOiN47Xd.js.map → footer-actions.z-api8J_.js.map} +1 -1
  169. package/dist/chunks/form-field.D_2g7vaP.js.map +1 -1
  170. package/dist/chunks/{form-layout-title.CdC1T4gs.js → form-layout-title.Bbq05nMT.js} +6 -6
  171. package/dist/chunks/{form-layout-title.CdC1T4gs.js.map → form-layout-title.Bbq05nMT.js.map} +1 -1
  172. package/dist/chunks/form-layout.types.bZW9iR6_.js.map +1 -1
  173. package/dist/chunks/fr-CA.B1aPU8fp.js.map +1 -1
  174. package/dist/chunks/fr.Dj7wEToe.js.map +1 -1
  175. package/dist/chunks/generate-uid.NJ8tVoha.js.map +1 -1
  176. package/dist/chunks/getRoundingMethod.C3eaeGLR.js.map +1 -1
  177. package/dist/chunks/{getTimezoneOffsetInMilliseconds.C-aIpRfB.js → getTimezoneOffsetInMilliseconds.Tu2wlbTR.js} +3 -3
  178. package/dist/chunks/{getTimezoneOffsetInMilliseconds.C-aIpRfB.js.map → getTimezoneOffsetInMilliseconds.Tu2wlbTR.js.map} +1 -1
  179. package/dist/chunks/grab.BxiVZ1RZ.js +24 -0
  180. package/dist/chunks/grab.BxiVZ1RZ.js.map +1 -0
  181. package/dist/chunks/grid-layout.1aIiz2N_.js.map +1 -1
  182. package/dist/chunks/{header-meta.D_oAu2S9.js → header-meta.CuMQSsOm.js} +11 -11
  183. package/dist/chunks/{header-meta.D_oAu2S9.js.map → header-meta.CuMQSsOm.js.map} +1 -1
  184. package/dist/chunks/{header-with-views.Dc9LUYNY.js → header-with-views.DX8EXLMJ.js} +383 -400
  185. package/dist/chunks/header-with-views.DX8EXLMJ.js.map +1 -0
  186. package/dist/chunks/{header.BmtlQmPs.js → header.YECm2GAh.js} +4 -4
  187. package/dist/chunks/{header.BmtlQmPs.js.map → header.YECm2GAh.js.map} +1 -1
  188. package/dist/chunks/image.C2D2hKat.js.map +1 -1
  189. package/dist/chunks/index.B6WW_F-J.js.map +1 -1
  190. package/dist/chunks/index.BkJqgYF1.js +692 -0
  191. package/dist/chunks/{index.BDK4hwK_.js.map → index.BkJqgYF1.js.map} +1 -1
  192. package/dist/chunks/{info-icon.BEyxQgD6.js → info-icon.DS9ax8ZD.js} +3 -3
  193. package/dist/chunks/{info-icon.BEyxQgD6.js.map → info-icon.DS9ax8ZD.js.map} +1 -1
  194. package/dist/chunks/{input-field-password.D23H_RvO.js → input-field-password.DrI6eF5u.js} +11 -11
  195. package/dist/chunks/{input-field-password.D23H_RvO.js.map → input-field-password.DrI6eF5u.js.map} +1 -1
  196. package/dist/chunks/{input-field-phone-number.Bvk2Pvec.js → input-field-phone-number.Buh4x3pJ.js} +4 -4
  197. package/dist/chunks/{input-field-phone-number.Bvk2Pvec.js.map → input-field-phone-number.Buh4x3pJ.js.map} +1 -1
  198. package/dist/chunks/{input-field.hf0_ALq0.js → input-field.NEKXqT4R.js} +7 -7
  199. package/dist/chunks/{input-field.hf0_ALq0.js.map → input-field.NEKXqT4R.js.map} +1 -1
  200. package/dist/chunks/{inspector.C0iAxxoz.js → inspector.BomNgVb-.js} +5 -5
  201. package/dist/chunks/{inspector.C0iAxxoz.js.map → inspector.BomNgVb-.js.map} +1 -1
  202. package/dist/chunks/inspector.types.DyHwE18g.js.map +1 -1
  203. package/dist/chunks/internal-error.BLZodVBE.js.map +1 -1
  204. package/dist/chunks/internal-error.BmrwJFpR.js.map +1 -1
  205. package/dist/chunks/isSameWeek.DjeUtLwI.js +14 -0
  206. package/dist/chunks/{isSameWeek.CUD7czUN.js.map → isSameWeek.DjeUtLwI.js.map} +1 -1
  207. package/dist/chunks/{it.Oaj6BklL.js → it.DIafuXtH.js} +2 -2
  208. package/dist/chunks/{it.Oaj6BklL.js.map → it.DIafuXtH.js.map} +1 -1
  209. package/dist/chunks/ja.Cm9tJMi2.js.map +1 -1
  210. package/dist/chunks/keyboard-navigation.DWmhelVv.js.map +1 -1
  211. package/dist/chunks/ko.Ceaof6EP.js.map +1 -1
  212. package/dist/chunks/{layout-row.BPX00mio.js → layout-row.BxuMJU4E.js} +4 -4
  213. package/dist/chunks/layout-row.BxuMJU4E.js.map +1 -0
  214. package/dist/chunks/{link.PsTSQjK3.js → link.DKimL08z.js} +2 -2
  215. package/dist/chunks/{link.PsTSQjK3.js.map → link.DKimL08z.js.map} +1 -1
  216. package/dist/chunks/{listbox-option-tag.BlDz7oXK.js → listbox-option-tag.Cv3y0TvQ.js} +3 -3
  217. package/dist/chunks/{listbox-option-tag.BlDz7oXK.js.map → listbox-option-tag.Cv3y0TvQ.js.map} +1 -1
  218. package/dist/chunks/loading-indicator.PxbRzshH.js.map +1 -1
  219. package/dist/chunks/match.CMBZxEs9.js.map +1 -1
  220. package/dist/chunks/minus-small.DJacLGTw.js.map +1 -1
  221. package/dist/chunks/{modal-fullscreen.B1gltlxA.js → modal-fullscreen.6bAjPENL.js} +73 -69
  222. package/dist/chunks/modal-fullscreen.6bAjPENL.js.map +1 -0
  223. package/dist/chunks/{modal.e3EQ6Kex.js → modal.DOR8c0gy.js} +6 -6
  224. package/dist/chunks/{modal.e3EQ6Kex.js.map → modal.DOR8c0gy.js.map} +1 -1
  225. package/dist/chunks/nl.B6vCf2B9.js.map +1 -1
  226. package/dist/chunks/no-results-found.Bg_ZcEid.js.map +1 -1
  227. package/dist/chunks/no-results-found.BqvYsBR6.js.map +1 -1
  228. package/dist/chunks/notifications-cleared.BMZk37uf.js.map +1 -1
  229. package/dist/chunks/notifications-cleared.C7W9ZXY7.js.map +1 -1
  230. package/dist/chunks/on-click-outside.BW4rkhzG.js +91 -0
  231. package/dist/chunks/on-click-outside.BW4rkhzG.js.map +1 -0
  232. package/dist/chunks/page-not-found.COJLPVaU.js.map +1 -1
  233. package/dist/chunks/page-not-found.DWW6W-PZ.js.map +1 -1
  234. package/dist/chunks/{pagination.BcFt2FqK.js → pagination.wuEIlDcq.js} +4 -4
  235. package/dist/chunks/{pagination.BcFt2FqK.js.map → pagination.wuEIlDcq.js.map} +1 -1
  236. package/dist/chunks/{payment-method.BKXLPDC9.js → payment-method.B3CkgsAY.js} +2 -2
  237. package/dist/chunks/{payment-method.BKXLPDC9.js.map → payment-method.B3CkgsAY.js.map} +1 -1
  238. package/dist/chunks/payment-method.types.BqtH7RM2.js.map +1 -1
  239. package/dist/chunks/planned-maintenance.C61sWB9h.js.map +1 -1
  240. package/dist/chunks/planned-maintenance.jmWYTdet.js.map +1 -1
  241. package/dist/chunks/popover.types.DkiRUQ4Z.js +6 -0
  242. package/dist/chunks/{popover.types.WDh5ggr3.js.map → popover.types.DkiRUQ4Z.js.map} +1 -1
  243. package/dist/chunks/popper-container.D4dworD4.js +1423 -0
  244. package/dist/chunks/popper-container.D4dworD4.js.map +1 -0
  245. package/dist/chunks/{promo-banner.yfBorKj7.js → promo-banner.bjMDm76T.js} +4 -4
  246. package/dist/chunks/{promo-banner.yfBorKj7.js.map → promo-banner.bjMDm76T.js.map} +1 -1
  247. package/dist/chunks/pt-BR.CiGdfP45.js.map +1 -1
  248. package/dist/chunks/{radio-group.CtTnfkYg.js → radio-group.DKRxfGtE.js} +8 -8
  249. package/dist/chunks/{radio-group.CtTnfkYg.js.map → radio-group.DKRxfGtE.js.map} +1 -1
  250. package/dist/chunks/radio-input.kzb4gxLW.js.map +1 -1
  251. package/dist/chunks/referrals.BvtT-kQS.js.map +1 -1
  252. package/dist/chunks/referrals.aX8WZigH.js.map +1 -1
  253. package/dist/chunks/resize.Bqks3WUm.js.map +1 -1
  254. package/dist/chunks/{rich-text-editor.Dq2CFGOu.js → rich-text-editor.DiuS9alD.js} +9 -13
  255. package/dist/chunks/rich-text-editor.DiuS9alD.js.map +1 -0
  256. package/dist/chunks/{search-bar.B0SdQBnY.js → search-bar.UVSaoX0h.js} +5 -5
  257. package/dist/chunks/{search-bar.B0SdQBnY.js.map → search-bar.UVSaoX0h.js.map} +1 -1
  258. package/dist/chunks/{secondary-nav.BPGpxd0p.js → secondary-nav.C6ldQMZ2.js} +18 -18
  259. package/dist/chunks/secondary-nav.C6ldQMZ2.js.map +1 -0
  260. package/dist/chunks/{segmented-control.BtWFda0P.js → segmented-control.BLnuxgnJ.js} +3 -3
  261. package/dist/chunks/{segmented-control.BtWFda0P.js.map → segmented-control.BLnuxgnJ.js.map} +1 -1
  262. package/dist/chunks/segmented-control.types.BHRLV8KU.js.map +1 -1
  263. package/dist/chunks/{selection-card-group.BryV14qP.js → selection-card-group.CqGYskmS.js} +5 -5
  264. package/dist/chunks/{selection-card-group.BryV14qP.js.map → selection-card-group.CqGYskmS.js.map} +1 -1
  265. package/dist/chunks/{sidepanel.NFyZGE57.js → sidepanel.BKE87Uef.js} +71 -67
  266. package/dist/chunks/sidepanel.BKE87Uef.js.map +1 -0
  267. package/dist/chunks/{startOfWeek.Dxw2MhGp.js → startOfWeek.D8Yh4c0G.js} +3 -3
  268. package/dist/chunks/{startOfWeek.Dxw2MhGp.js.map → startOfWeek.D8Yh4c0G.js.map} +1 -1
  269. package/dist/chunks/{status.types.Cv5XN4zL.js → status.types.BTsaLHQ6.js} +2 -2
  270. package/dist/chunks/{status.types.Cv5XN4zL.js.map → status.types.BTsaLHQ6.js.map} +1 -1
  271. package/dist/chunks/{step.BLFXvHL6.js → step.BEbWkprZ.js} +5 -5
  272. package/dist/chunks/{step.BLFXvHL6.js.map → step.BEbWkprZ.js.map} +1 -1
  273. package/dist/chunks/{structured-list-item.CptOCpHP.js → structured-list-item.DRFRap_S.js} +6 -6
  274. package/dist/chunks/{structured-list-item.CptOCpHP.js.map → structured-list-item.DRFRap_S.js.map} +1 -1
  275. package/dist/chunks/success.DhioLvPD.js.map +1 -1
  276. package/dist/chunks/success.nNwxJRBS.js.map +1 -1
  277. package/dist/chunks/summary-grid.keys.Xx-W5a2w.js.map +1 -1
  278. package/dist/chunks/{summary-grid.types.B1T8_k1m.js → summary-grid.types.OldkhD7S.js} +10 -10
  279. package/dist/chunks/{summary-grid.types.B1T8_k1m.js.map → summary-grid.types.OldkhD7S.js.map} +1 -1
  280. package/dist/chunks/sv.f8EfZjMZ.js.map +1 -1
  281. package/dist/chunks/{tab.FUMpPsBP.js → tab.BqSNoefU.js} +5 -5
  282. package/dist/chunks/{tab.FUMpPsBP.js.map → tab.BqSNoefU.js.map} +1 -1
  283. package/dist/chunks/tabs.keys.B4qGhjp2.js.map +1 -1
  284. package/dist/chunks/{tag.B1Ywhgvc.js → tag.Cy3XkSDQ.js} +3 -3
  285. package/dist/chunks/{tag.B1Ywhgvc.js.map → tag.Cy3XkSDQ.js.map} +1 -1
  286. package/dist/chunks/{textarea.riUt0BiI.js → textarea.Bm9MZb_W.js} +4 -4
  287. package/dist/chunks/{textarea.riUt0BiI.js.map → textarea.Bm9MZb_W.js.map} +1 -1
  288. package/dist/chunks/{timeline-item.CFfW1DoD.js → timeline-item.Cpbm8IUw.js} +15 -15
  289. package/dist/chunks/{timeline-item.CFfW1DoD.js.map → timeline-item.Cpbm8IUw.js.map} +1 -1
  290. package/dist/chunks/{toast.Csv6tMyT.js → toast.Wuy6VuOT.js} +4 -4
  291. package/dist/chunks/{toast.Csv6tMyT.js.map → toast.Wuy6VuOT.js.map} +1 -1
  292. package/dist/chunks/{toggle.227XgEc7.js → toggle.B1z1YPe_.js} +4 -4
  293. package/dist/chunks/{toggle.227XgEc7.js.map → toggle.B1z1YPe_.js.map} +1 -1
  294. package/dist/chunks/{tooltip.C6YCavPw.js → tooltip.DF11J3k3.js} +50 -50
  295. package/dist/chunks/{tooltip.C6YCavPw.js.map → tooltip.DF11J3k3.js.map} +1 -1
  296. package/dist/chunks/truncate.BfIl_-71.js.map +1 -1
  297. package/dist/chunks/{tutorial.D18LwXVy.js → tutorial.D5xtZ1Pt.js} +8 -8
  298. package/dist/chunks/{tutorial.D18LwXVy.js.map → tutorial.D5xtZ1Pt.js.map} +1 -1
  299. package/dist/chunks/{typography.Bq-EGj9y.js → typography.C8lPlsbD.js} +3 -3
  300. package/dist/chunks/{typography.Bq-EGj9y.js.map → typography.C8lPlsbD.js.map} +1 -1
  301. package/dist/chunks/upload-files.5wQwbfkp.js.map +1 -1
  302. package/dist/chunks/upload-files.jTQY6y2X.js.map +1 -1
  303. package/dist/chunks/{use-bento-toast-controller.MmyZXtME.js → use-bento-toast-controller.CB6Qbf3R.js} +2 -2
  304. package/dist/chunks/{use-bento-toast-controller.MmyZXtME.js.map → use-bento-toast-controller.CB6Qbf3R.js.map} +1 -1
  305. package/dist/chunks/{use-cached-selected-values.gDWGi5Nk.js → use-cached-selected-values.wn2xnwYG.js} +23 -23
  306. package/dist/chunks/use-cached-selected-values.wn2xnwYG.js.map +1 -0
  307. package/dist/chunks/{use-country-items.ClS_So5N.js → use-country-items.CQnldpqM.js} +11 -11
  308. package/dist/chunks/{use-country-items.ClS_So5N.js.map → use-country-items.CQnldpqM.js.map} +1 -1
  309. package/dist/chunks/use-country-phon-code.Bui3zD6W.js.map +1 -1
  310. package/dist/chunks/use-default-slot-validator.BDn0wkYP.js.map +1 -1
  311. package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -1
  312. package/dist/chunks/use-form-layout-loading.CWbjZiwP.js.map +1 -1
  313. package/dist/chunks/utils.BzUwtTXc.js +21 -0
  314. package/dist/chunks/utils.BzUwtTXc.js.map +1 -0
  315. package/dist/chunks/wrong-environment.BOsyKdRI.js.map +1 -1
  316. package/dist/chunks/wrong-environment.BiHTPtbJ.js.map +1 -1
  317. package/dist/chunks/{zh-CN.BzH0fIXr.js → zh-CN.Bw_6j9Cd.js} +2 -2
  318. package/dist/chunks/{zh-CN.BzH0fIXr.js.map → zh-CN.Bw_6j9Cd.js.map} +1 -1
  319. package/dist/click-outside.js +1 -1
  320. package/dist/code-snippet.js +1 -1
  321. package/dist/country.js +2 -2
  322. package/dist/currency.js +1 -1
  323. package/dist/dashboard-template.js +1 -1
  324. package/dist/dashed-underline.js +1 -1
  325. package/dist/data-grid-template.js +1 -1
  326. package/dist/data-grid.js +6 -5
  327. package/dist/date-picker.js +2 -2
  328. package/dist/date-range-picker.js +2 -2
  329. package/dist/date.js +1 -1
  330. package/dist/draggable-handle.js +173 -0
  331. package/dist/draggable-handle.js.map +1 -0
  332. package/dist/dropdown.js +11 -11
  333. package/dist/empty-state.js +1 -1
  334. package/dist/file-uploader.js +1 -1
  335. package/dist/filter-bar.js +1 -1
  336. package/dist/focus-trap.js +1 -1
  337. package/dist/form-layout.js +1 -1
  338. package/dist/header-with-views.js +1 -1
  339. package/dist/header.js +1 -1
  340. package/dist/index.js +341 -335
  341. package/dist/index.js.map +1 -1
  342. package/dist/info-icon.js +1 -1
  343. package/dist/input-field-password.js +1 -1
  344. package/dist/input-field-phone-number.js +1 -1
  345. package/dist/input-field.js +1 -1
  346. package/dist/inspector.js +1 -1
  347. package/dist/internal.js +42 -42
  348. package/dist/layout.js +1 -1
  349. package/dist/link.js +1 -1
  350. package/dist/menu.js +1 -1
  351. package/dist/modal-fullscreen.js +1 -1
  352. package/dist/modal.js +2 -2
  353. package/dist/pagination.js +1 -1
  354. package/dist/payment-method.js +1 -1
  355. package/dist/popover.js +2 -2
  356. package/dist/popper-container.js +1 -1
  357. package/dist/promo-banner.js +1 -1
  358. package/dist/radio-group.js +1 -1
  359. package/dist/rich-text-editor.js +1 -1
  360. package/dist/search-bar.js +2 -2
  361. package/dist/secondary-nav.js +1 -1
  362. package/dist/segmented-control.js +1 -1
  363. package/dist/selection-card.js +1 -1
  364. package/dist/sidepanel.js +1 -1
  365. package/dist/status.js +1 -1
  366. package/dist/stepper.js +1 -1
  367. package/dist/structured-list.js +1 -1
  368. package/dist/styles/bento-dark.css +5 -0
  369. package/dist/styles/bento-light.css +5 -0
  370. package/dist/styles/bento.css +5 -0
  371. package/dist/styles/legacy.css +5 -0
  372. package/dist/styles/styleguide.css +5 -0
  373. package/dist/summary-grid.js +1 -1
  374. package/dist/tabs.js +1 -1
  375. package/dist/tag.js +1 -1
  376. package/dist/textarea.js +1 -1
  377. package/dist/timeline.js +1 -1
  378. package/dist/toast.js +1 -1
  379. package/dist/toggle.js +1 -1
  380. package/dist/tutorial.js +1 -1
  381. package/dist/typography.js +1 -1
  382. package/dist/use-form-v4.js +756 -7787
  383. package/dist/use-form-v4.js.map +1 -1
  384. package/dist/web-types.json +339 -35
  385. package/package.json +9 -9
  386. package/dist/assets/field-label.css +0 -1
  387. package/dist/chunks/action-bar.y4tcdk7R.js +0 -162
  388. package/dist/chunks/action-bar.y4tcdk7R.js.map +0 -1
  389. package/dist/chunks/ai-button.BEy4Gly-.js +0 -67
  390. package/dist/chunks/ai-button.BEy4Gly-.js.map +0 -1
  391. package/dist/chunks/codemirror.Cy7iSLbd.js.map +0 -1
  392. package/dist/chunks/constructNow.DuaJst0D.js +0 -8
  393. package/dist/chunks/data-grid.Bk7_6Z0F.js.map +0 -1
  394. package/dist/chunks/date-input.BbZqj10S.js +0 -15
  395. package/dist/chunks/date-input.BbZqj10S.js.map +0 -1
  396. package/dist/chunks/date-picker.CnsC_UMG.js.map +0 -1
  397. package/dist/chunks/date-range-picker.B6GSRjjK.js +0 -1693
  398. package/dist/chunks/date-range-picker.B6GSRjjK.js.map +0 -1
  399. package/dist/chunks/dialog-page.QpRiNPyx.js +0 -137
  400. package/dist/chunks/dialog-page.QpRiNPyx.js.map +0 -1
  401. package/dist/chunks/dropdown-default-textbox.Cq68tN9F.js.map +0 -1
  402. package/dist/chunks/dropdown.C2pXf8Li.js.map +0 -1
  403. package/dist/chunks/field-label.CEkJnsiL.js.map +0 -1
  404. package/dist/chunks/file-uploader.CnOqfuI-.js.map +0 -1
  405. package/dist/chunks/filter-bar.CnJAxz9B.js +0 -2559
  406. package/dist/chunks/filter-bar.CnJAxz9B.js.map +0 -1
  407. package/dist/chunks/fixed-scroller.Bp4-iO80.js +0 -114
  408. package/dist/chunks/focus-trap.CNIU5jOz.js.map +0 -1
  409. package/dist/chunks/header-with-views.Dc9LUYNY.js.map +0 -1
  410. package/dist/chunks/index.BDK4hwK_.js +0 -593
  411. package/dist/chunks/isSameWeek.CUD7czUN.js +0 -14
  412. package/dist/chunks/layout-row.BPX00mio.js.map +0 -1
  413. package/dist/chunks/modal-fullscreen.B1gltlxA.js.map +0 -1
  414. package/dist/chunks/on-click-outside.D9aY9g8G.js +0 -101
  415. package/dist/chunks/on-click-outside.D9aY9g8G.js.map +0 -1
  416. package/dist/chunks/popover.types.WDh5ggr3.js +0 -6
  417. package/dist/chunks/popper-container.Cdokz_NE.js +0 -1404
  418. package/dist/chunks/popper-container.Cdokz_NE.js.map +0 -1
  419. package/dist/chunks/rich-text-editor.Dq2CFGOu.js.map +0 -1
  420. package/dist/chunks/secondary-nav.BPGpxd0p.js.map +0 -1
  421. package/dist/chunks/sidepanel.NFyZGE57.js.map +0 -1
  422. package/dist/chunks/use-cached-selected-values.gDWGi5Nk.js.map +0 -1
@@ -1,18 +1,18 @@
1
- import { defineComponent as P, toRefs as k, ref as o, computed as B, watch as N, nextTick as x, provide as v } from "vue";
2
- import { B as G, d as F } from "./typography.Bq-EGj9y.js";
3
- import { F as L } from "./footer-actions.BOiN47Xd.js";
4
- import { D as R, B as U, b as w, a as J } from "./dialog-page.QpRiNPyx.js";
5
- import { n as I } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
6
- import { B as V } from "./button.DIU6m9wD.js";
7
- import { B as K } from "./focus-trap.CNIU5jOz.js";
8
- import { C as Y } from "./cross.CC_B-vG-.js";
9
- import { S as H } from "./button-actions.D9n7MxWe.js";
10
- import { u as $ } from "./index.B6WW_F-J.js";
11
- import { g as j } from "./generate-uid.NJ8tVoha.js";
12
- import { B as z } from "./directive.Cbdox5VL.js";
1
+ import { defineComponent as I, toRefs as N, ref as n, computed as P, onMounted as G, onUnmounted as x, watch as F, provide as g } from "vue";
2
+ import { B as U, d as L } from "./typography.C8lPlsbD.js";
3
+ import { F as R } from "./footer-actions.z-api8J_.js";
4
+ import { b as J, B as K, D as M, a as Y } from "./dialog-page.DA6E6qma.js";
5
+ import { n as b } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
6
+ import { B as w } from "./button.Ctj3rkxw.js";
7
+ import { B as H } from "./focus-trap.DMc1wL3A.js";
8
+ import { C as $ } from "./cross.CC_B-vG-.js";
9
+ import { S as j } from "./button-actions.VSc47LLH.js";
10
+ import { u as z } from "./index.B6WW_F-J.js";
11
+ import { g as V } from "./generate-uid.NJ8tVoha.js";
12
+ import { B as q } from "./directive.rXUeDb8p.js";
13
13
  import "../assets/sidepanel.css";
14
- const M = {}, q = /* @__PURE__ */ P({
15
- ...M,
14
+ const Q = {}, W = /* @__PURE__ */ I({
15
+ ...Q,
16
16
  __name: "sidepanel-page",
17
17
  props: {
18
18
  /**
@@ -74,10 +74,10 @@ const M = {}, q = /* @__PURE__ */ P({
74
74
  }
75
75
  },
76
76
  setup(a) {
77
- return { __sfc: !0, BentoTypography: G, FooterActions: L, DialogPage: R };
77
+ return { __sfc: !0, BentoTypography: U, FooterActions: R, DialogPage: J };
78
78
  }
79
79
  });
80
- var Q = function() {
80
+ var X = function() {
81
81
  var e = this, t = e._self._c, s = e._self._setupProxy;
82
82
  return t(s.DialogPage, { staticClass: "b-sidepanel-page", attrs: { "page-id": e.pageId, "previous-page": e.previousPage }, scopedSlots: e._u([{ key: "header", fn: function() {
83
83
  return [t("div", { staticClass: "b-sidepanel-page__header" }, [t(s.BentoTypography, { staticClass: "b-sidepanel-page__title", attrs: { el: "h2", variant: "title" } }, [e._v(" " + e._s(e.title) + " ")])], 1)];
@@ -86,17 +86,17 @@ var Q = function() {
86
86
  }, proxy: !0 }, e.actions && e.actions.length > 0 ? { key: "footer", fn: function() {
87
87
  return [t("div", { staticClass: "b-sidepanel-page__actions" }, [t(s.FooterActions, { attrs: { actions: e.actions, "actions-label": e.actionsLabel, "destructive-actions": e.destructiveActions } })], 1)];
88
88
  }, proxy: !0 } : null], null, !0) });
89
- }, W = [], X = /* @__PURE__ */ I(
90
- q,
91
- Q,
89
+ }, Z = [], ee = /* @__PURE__ */ b(
92
90
  W,
91
+ X,
92
+ Z,
93
93
  !1,
94
94
  null,
95
95
  "12d4c262"
96
96
  );
97
- const ge = X.exports;
98
- var d = /* @__PURE__ */ ((a) => (a.UPDATE_ACTIVE_PAGE = "update:active-page", a.UPDATE_IS_OPEN = "update:is-open", a))(d || {});
99
- const Z = {
97
+ const Ae = ee.exports;
98
+ var f = /* @__PURE__ */ ((a) => (a.UPDATE_ACTIVE_PAGE = "update:active-page", a.UPDATE_IS_OPEN = "update:is-open", a))(f || {});
99
+ const te = {
100
100
  "en-US": {
101
101
  close: "Close"
102
102
  },
@@ -106,10 +106,10 @@ const Z = {
106
106
  "pt-BR": {
107
107
  close: "Fechar"
108
108
  }
109
- }, ee = {
110
- i18n: { messages: Z }
111
- }, te = /* @__PURE__ */ P({
112
- ...ee,
109
+ }, se = {
110
+ i18n: { messages: te }
111
+ }, ae = /* @__PURE__ */ I({
112
+ ...se,
113
113
  __name: "sidepanel",
114
114
  props: {
115
115
  /**
@@ -151,60 +151,64 @@ const Z = {
151
151
  },
152
152
  emits: [],
153
153
  setup(a, { emit: e }) {
154
- const t = a, { activePage: s, isOpen: i } = k(t), { t: b } = $(), l = o(null), u = o([]), n = o([]), m = o(U.TRANSITION_LEVEL_DEEPER), c = o(!1), g = j("sidepanel"), p = o(!1), _ = o(!1), D = B(() => ({
155
- "b-sidepanel--hide": c.value,
156
- "b-sidepanel--animation": _.value
157
- })), h = () => {
158
- c.value && (l.value.close(), n.value[0] && e(d.UPDATE_ACTIVE_PAGE, n.value[0]), n.value = [], c.value = !1, p.value = !1, e(d.UPDATE_IS_OPEN, !1));
159
- }, f = () => {
160
- l.value.open && (c.value = !0);
161
- }, O = () => {
162
- t.isDismissible && f();
163
- }, S = B(() => t.hideCloseButton !== null ? t.hideCloseButton : !t.isDismissible);
164
- N(
165
- () => i.value,
166
- async () => {
167
- await x(), l.value && (i.value ? (p.value = !0, l.value.showModal(), n.value.length || n.value.push(s.value)) : l.value.open && f());
154
+ const t = a, { activePage: s, isOpen: o } = N(t), { t: h } = z(), u = n(null), c = n([]), l = n([]), C = n(K.TRANSITION_LEVEL_DEEPER), p = n(!1), A = V("sidepanel"), d = n(!1), v = n(!1), _ = n(!1), D = P(() => ({
155
+ "b-sidepanel--hide": p.value,
156
+ "b-sidepanel--animation": v.value
157
+ })), O = () => {
158
+ p.value && u.value && (u.value.close(), l.value[0] && e(f.UPDATE_ACTIVE_PAGE, l.value[0]), l.value = [], p.value = !1, d.value = !1, e(f.UPDATE_IS_OPEN, !1));
159
+ }, m = () => {
160
+ !u.value || !u.value.open || (p.value = !0);
161
+ }, S = () => {
162
+ t.isDismissible && m();
163
+ }, T = P(() => t.hideCloseButton !== null ? t.hideCloseButton : !t.isDismissible);
164
+ G(() => {
165
+ _.value = !0;
166
+ }), x(() => {
167
+ _.value = !1;
168
+ }), F(
169
+ [() => o.value, u],
170
+ ([i, r]) => {
171
+ !_.value || !r || (i ? (d.value = !0, r.open || r.showModal(), l.value.length || l.value.push(s.value)) : r.open && m());
168
172
  },
169
- { immediate: !0 }
173
+ { immediate: !0, flush: "post" }
170
174
  );
171
- const C = (r) => e(d.UPDATE_ACTIVE_PAGE, r), y = (r) => () => {
172
- var E;
173
- u.value = (E = u.value) == null ? void 0 : E.filter((T) => T !== r);
174
- }, A = (r) => (u.value.push(r), { unregisterPage: y(r) });
175
- return v(w, {
175
+ const y = (i) => e(f.UPDATE_ACTIVE_PAGE, i), E = (i) => () => {
176
+ var r;
177
+ c.value = (r = c.value) == null ? void 0 : r.filter((k) => k !== i);
178
+ }, B = (i) => (c.value.push(i), { unregisterPage: E(i) });
179
+ return g(M, {
176
180
  activePage: s,
177
- animation: m,
178
- isAnimationActive: _,
179
- isOpen: p,
180
- pages: u,
181
- previousPages: n,
182
- updatePage: C
183
- }), v(J, A), v(H, g), !t.isDismissible && t.hideCloseButton === null && F(
181
+ animation: C,
182
+ isAnimationActive: v,
183
+ isOpen: d,
184
+ pages: c,
185
+ previousPages: l,
186
+ updatePage: y
187
+ }), g(Y, B), g(j, A), !t.isDismissible && t.hideCloseButton === null && L(
184
188
  'BentoSidepanel "isDismissible" property’s behavior',
185
189
  'BentoSidepanel "isDismissible" will no longer hide the close button. Use "hideCloseButton=true" instead.',
186
190
  "2.0.0"
187
- ), { __sfc: !0, props: t, emit: e, activePage: s, isOpen: i, t: b, sidepanel: l, pages: u, previousPages: n, animation: m, isClosing: c, sidepanelId: g, internalIsOpen: p, isAnimationActive: _, conditionalClasses: D, closeSidepanelAfterAnimation: h, startCloseSidepanelAnimation: f, closeSidepanelOnClickOutside: O, computedHideCloseButton: S, updatePage: C, unregisterPage: y, registerPage: A, BentoButton: V, BentoFocusTrap: K, CrossIcon: Y, vBentoClickOutsideDirective: z };
191
+ ), { __sfc: !0, props: t, emit: e, activePage: s, isOpen: o, t: h, sidepanel: u, pages: c, previousPages: l, animation: C, isClosing: p, sidepanelId: A, internalIsOpen: d, isAnimationActive: v, isMounted: _, conditionalClasses: D, closeSidepanelAfterAnimation: O, startCloseSidepanelAnimation: m, closeSidepanelOnClickOutside: S, computedHideCloseButton: T, updatePage: y, unregisterPage: E, registerPage: B, BentoButton: w, BentoFocusTrap: H, CrossIcon: $, vBentoClickOutsideDirective: q };
188
192
  }
189
193
  });
190
- var se = function() {
194
+ var ie = function() {
191
195
  var e = this, t = e._self._c, s = e._self._setupProxy;
192
- return t("dialog", { ref: "sidepanel", staticClass: "b-sidepanel", class: s.conditionalClasses, on: { animationend: s.closeSidepanelAfterAnimation, keydown: function(i) {
193
- if (!i.type.indexOf("key") && e._k(i.keyCode, "esc", 27, i.key, ["Esc", "Escape"])) return null;
194
- i.preventDefault(), e.isDismissible && s.startCloseSidepanelAnimation;
196
+ return t("dialog", { ref: "sidepanel", staticClass: "b-sidepanel", class: s.conditionalClasses, on: { animationend: s.closeSidepanelAfterAnimation, keydown: function(o) {
197
+ if (!o.type.indexOf("key") && e._k(o.keyCode, "esc", 27, o.key, ["Esc", "Escape"])) return null;
198
+ o.preventDefault(), e.isDismissible && s.startCloseSidepanelAnimation;
195
199
  } } }, [t(s.BentoFocusTrap, { directives: [{ name: "bento-click-outside-directive", rawName: "v-bento-click-outside-directive", value: s.closeSidepanelOnClickOutside, expression: "closeSidepanelOnClickOutside" }], attrs: { id: s.sidepanelId } }, [s.computedHideCloseButton ? e._e() : t("div", { staticClass: "b-sidepanel__close-button" }, [t(s.BentoButton, { attrs: { variant: "tertiary" }, on: { click: s.startCloseSidepanelAnimation } }, [t(s.CrossIcon, { attrs: { "svg-title": s.t("close") } })], 1)], 1), e._t("default")], 2)], 1);
196
- }, ae = [], ie = /* @__PURE__ */ I(
197
- te,
198
- se,
200
+ }, ne = [], oe = /* @__PURE__ */ b(
199
201
  ae,
202
+ ie,
203
+ ne,
200
204
  !1,
201
205
  null,
202
- "350d1edd"
206
+ "e2c7d722"
203
207
  );
204
- const Ce = ie.exports;
208
+ const ye = oe.exports;
205
209
  export {
206
- d as B,
207
- Ce as a,
208
- ge as s
210
+ f as B,
211
+ Ae as a,
212
+ ye as s
209
213
  };
210
- //# sourceMappingURL=sidepanel.NFyZGE57.js.map
214
+ //# sourceMappingURL=sidepanel.BKE87Uef.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidepanel.BKE87Uef.js","sources":["../../src/components/sidepanel/components/sidepanel-page.vue","../../src/components/sidepanel/sidepanel.types.ts","../../src/components/sidepanel/sidepanel.vue"],"sourcesContent":["<template>\n <dialog-page class=\"b-sidepanel-page\" :page-id=\"pageId\" :previous-page=\"previousPage\">\n <template #header>\n <div class=\"b-sidepanel-page__header\">\n <bento-typography class=\"b-sidepanel-page__title\" el=\"h2\" variant=\"title\">\n {{ title }}\n </bento-typography>\n </div>\n </template>\n <template #content>\n <div class=\"b-sidepanel-page__content\">\n <bento-typography el=\"div\" variant=\"body\">\n <slot />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-sidepanel-page__actions\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </template>\n </dialog-page>\n</template>\n\n<script setup lang=\"ts\">\n import { type PropType } from 'vue';\n\n import { type BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { FooterActions } from '@/components/internal/footer-actions';\n import { DialogPage } from '@/internal';\n\n 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</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</script>\n\n<style lang=\"scss\" scoped src=\"./sidepanel-page.scss\" />\n","export enum BentoSidepanelEvent {\n UPDATE_ACTIVE_PAGE = 'update:active-page',\n UPDATE_IS_OPEN = 'update:is-open',\n}\n","<template>\n <dialog\n ref=\"sidepanel\"\n class=\"b-sidepanel\"\n :class=\"conditionalClasses\"\n @animationend=\"closeSidepanelAfterAnimation\"\n @keydown.esc.prevent=\"isDismissible && startCloseSidepanelAnimation\"\n >\n <bento-focus-trap :id=\"sidepanelId\" v-bento-click-outside-directive=\"closeSidepanelOnClickOutside\">\n <div v-if=\"!computedHideCloseButton\" 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, onMounted, onUnmounted, 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 { BentoSidepanelEvent } from './sidepanel.types';\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n import { SIDEPANEL_DIALOG_ID_INJECTION_KEY } from './sidepanel.keys';\n\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { generateUid } from '@/core/utils/ts';\n import { deprecate } from '@/utils/ts/deprecate';\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 * Shows close button when `true` and hides close button when `false`.\n *\n * _Note: This property will not set the visibility of the close button in v2.0.0_\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 * Controls the visibility of close button on the sidepanel.\n * Defaults to `true` when `isDismissible=false`, and `true` when `isDimissible=true`.\n *\n * _Note: This property will be set to `false` by default, independent of `isDismissible` in v2.0.0_\n */\n hideCloseButton: {\n type: Boolean,\n default: null,\n },\n });\n\n const emit = defineEmits([]);\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<Array<string>>([]);\n const previousPages = ref([]);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n const isClosing = ref(false);\n const sidepanelId = generateUid('sidepanel');\n const internalIsOpen = ref(false);\n const isAnimationActive = ref(false);\n const isMounted = ref(false);\n\n // Animation styling\n const conditionalClasses = computed(() => ({\n 'b-sidepanel--hide': isClosing.value,\n 'b-sidepanel--animation': isAnimationActive.value,\n }));\n\n // Handle closing and closing animation for dialog element\n const closeSidepanelAfterAnimation = () => {\n if (isClosing.value && sidepanel.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 internalIsOpen.value = false;\n emit(BentoSidepanelEvent.UPDATE_IS_OPEN, false);\n }\n };\n\n const startCloseSidepanelAnimation = () => {\n if (!sidepanel.value || !sidepanel.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n const closeSidepanelOnClickOutside = () => {\n if (props.isDismissible) {\n startCloseSidepanelAnimation();\n }\n };\n\n // TODO: Remove in upcoming major. See properties `hideCloseButton` and `isDismissible`.\n const computedHideCloseButton = computed(() => {\n if (props.hideCloseButton !== null) {\n return props.hideCloseButton;\n }\n\n return !props.isDismissible;\n });\n\n onMounted(() => {\n isMounted.value = true;\n });\n\n onUnmounted(() => {\n isMounted.value = false;\n });\n\n // Watching isOpen prop to toggle open/close the dialog element\n watch(\n [() => isOpen.value, sidepanel],\n ([newIsOpen, newSidepanelValue]) => {\n if (!isMounted.value || !newSidepanelValue) {\n return;\n }\n\n if (newIsOpen) {\n internalIsOpen.value = true;\n if (!newSidepanelValue.open) {\n newSidepanelValue.showModal();\n }\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (newSidepanelValue.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true, flush: 'post' }\n );\n\n // Pages\n const updatePage = page => emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page);\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: BentoDialogPageRegisterPage = pageId => {\n pages.value.push(pageId);\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isAnimationActive,\n isOpen: internalIsOpen,\n pages,\n previousPages,\n updatePage,\n });\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n\n // Let's Children components know they are inside a SidePanel (dialog element)\n provide(SIDEPANEL_DIALOG_ID_INJECTION_KEY, sidepanelId);\n\n if (!props.isDismissible && props.hideCloseButton === null) {\n deprecate(\n 'BentoSidepanel \"isDismissible\" property’s behavior',\n 'BentoSidepanel \"isDismissible\" will no longer hide the close button. Use \"hideCloseButton=true\" instead.',\n '2.0.0'\n );\n }\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":["__default__$1","BentoSidepanelEvent","BentoSidepanelEvent2","__default__","messages","activePage","isOpen","toRefs","props","t","useI18n","sidepanel","ref","pages","previousPages","animation","BentoDialogPageAnimation","isClosing","sidepanelId","generateUid","internalIsOpen","isAnimationActive","isMounted","conditionalClasses","computed","closeSidepanelAfterAnimation","emit","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","computedHideCloseButton","onMounted","onUnmounted","watch","newIsOpen","newSidepanelValue","updatePage","page","unregisterPage","pageIdToRemove","_a","pageId","registerPage","provide","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY","SIDEPANEL_DIALOG_ID_INJECTION_KEY","deprecate"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { g as w, t as D } from "./getTimezoneOffsetInMilliseconds.C-aIpRfB.js";
1
+ import { t as w, g as D } from "./getTimezoneOffsetInMilliseconds.Tu2wlbTR.js";
2
2
  function d(l, e) {
3
3
  var s, O, f, k;
4
- const a = w(), r = (e == null ? void 0 : e.weekStartsOn) ?? ((O = (s = e == null ? void 0 : e.locale) == null ? void 0 : s.options) == null ? void 0 : O.weekStartsOn) ?? a.weekStartsOn ?? ((k = (f = a.locale) == null ? void 0 : f.options) == null ? void 0 : k.weekStartsOn) ?? 0, t = D(l, e == null ? void 0 : e.in), c = t.getDay(), u = (c < r ? 7 : 0) + c - r;
4
+ const a = D(), r = (e == null ? void 0 : e.weekStartsOn) ?? ((O = (s = e == null ? void 0 : e.locale) == null ? void 0 : s.options) == null ? void 0 : O.weekStartsOn) ?? a.weekStartsOn ?? ((k = (f = a.locale) == null ? void 0 : f.options) == null ? void 0 : k.weekStartsOn) ?? 0, t = w(l, e == null ? void 0 : e.in), c = t.getDay(), u = (c < r ? 7 : 0) + c - r;
5
5
  return t.setDate(t.getDate() - u), t.setHours(0, 0, 0, 0), t;
6
6
  }
7
7
  export {
8
8
  d as s
9
9
  };
10
- //# sourceMappingURL=startOfWeek.Dxw2MhGp.js.map
10
+ //# sourceMappingURL=startOfWeek.D8Yh4c0G.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"startOfWeek.Dxw2MhGp.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeek.js"],"sourcesContent":["import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n"],"names":["startOfWeek","date","options","defaultOptions","getDefaultOptions","weekStartsOn","_b","_a","_d","_c","_date","toDate","day","diff"],"mappings":";AAkCO,SAASA,EAAYC,GAAMC,GAAS;;AACzC,QAAMC,IAAiBC,EAAmB,GACpCC,KACJH,KAAA,gBAAAA,EAAS,mBACTI,KAAAC,IAAAL,KAAA,gBAAAA,EAAS,WAAT,gBAAAK,EAAiB,YAAjB,gBAAAD,EAA0B,iBAC1BH,EAAe,kBACfK,KAAAC,IAAAN,EAAe,WAAf,gBAAAM,EAAuB,YAAvB,gBAAAD,EAAgC,iBAChC,GAEIE,IAAQC,EAAOV,GAAMC,KAAA,gBAAAA,EAAS,EAAE,GAChCU,IAAMF,EAAM,OAAQ,GACpBG,KAAQD,IAAMP,IAAe,IAAI,KAAKO,IAAMP;AAElD,SAAAK,EAAM,QAAQA,EAAM,QAAO,IAAKG,CAAI,GACpCH,EAAM,SAAS,GAAG,GAAG,GAAG,CAAC,GAClBA;AACT;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"startOfWeek.D8Yh4c0G.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeek.js"],"sourcesContent":["import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n"],"names":["startOfWeek","date","options","defaultOptions","getDefaultOptions","weekStartsOn","_b","_a","_d","_c","_date","toDate","day","diff"],"mappings":";AAkCO,SAASA,EAAYC,GAAMC,GAAS;;AACzC,QAAMC,IAAiBC,EAAiB,GAClCC,KACJH,KAAA,gBAAAA,EAAS,mBACTI,KAAAC,IAAAL,KAAA,gBAAAA,EAAS,WAAT,gBAAAK,EAAiB,YAAjB,gBAAAD,EAA0B,iBAC1BH,EAAe,kBACfK,KAAAC,IAAAN,EAAe,WAAf,gBAAAM,EAAuB,YAAvB,gBAAAD,EAAgC,iBAChC,GAEIE,IAAQC,EAAOV,GAAMC,KAAA,gBAAAA,EAAS,EAAE,GAChCU,IAAMF,EAAM,OAAM,GAClBG,KAAQD,IAAMP,IAAe,IAAI,KAAKO,IAAMP;AAElD,SAAAK,EAAM,QAAQA,EAAM,QAAO,IAAKG,CAAI,GACpCH,EAAM,SAAS,GAAG,GAAG,GAAG,CAAC,GAClBA;AACT;","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as e, computed as o } from "vue";
2
- import { B as n } from "./typography.Bq-EGj9y.js";
2
+ import { B as n } from "./typography.C8lPlsbD.js";
3
3
  import { n as _ } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
4
4
  import "../assets/status.css";
5
5
  const l = {
@@ -33,4 +33,4 @@ export {
33
33
  d as B,
34
34
  b as s
35
35
  };
36
- //# sourceMappingURL=status.types.Cv5XN4zL.js.map
36
+ //# sourceMappingURL=status.types.BTsaLHQ6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.types.Cv5XN4zL.js","sources":["../../src/components/status/status.vue","../../src/components/status/status.types.ts"],"sourcesContent":["<template>\n <div class=\"b-status\" role=\"status\">\n <div class=\"b-status__indicator-wrapper\">\n <span class=\"b-status__indicator\" :class=\"conditionalClass\" role=\"presentation\"></span>\n </div>\n <bento-typography class=\"b-status__label\" el=\"span\" variant=\"body\">\n <slot></slot>\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { type BentoStatusProps } from './status.types';\n\n const props = defineProps({\n variant: null\n});\n\n const conditionalClass = computed(() => ({\n [`b-status__indicator--${props.variant}`]: true,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * A Status component is used to indicate a\n * passage of time or a particular step of a process.\n *\n * @example\n * import { BentoStatus } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStatus },\n * template: `\n * <bento-status variant=\"red\">\n * 1 week ago\n * </bento-status>\n * `\n * }\n */\n export default {\n name: 'bento-status',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./status.scss\" />\n","/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoStatusVariant {\n BLUE = 'blue',\n GREEN = 'green',\n GREY = 'grey',\n ORANGE = 'orange',\n RED = 'red',\n YELLOW = 'yellow',\n}\n\nexport interface BentoStatusProps {\n /**\n * Defines the type and color of the Status\n */\n variant: BentoStatusVariant | `${BentoStatusVariant}`;\n}\n"],"names":["__default__","conditionalClass","computed","props","BentoStatusVariant","BentoStatusVariant2"],"mappings":";;;;AA0CI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;iBAxBAC,IAAAC,EAAA,OAAA;AAAA,MAAyC,CAAA,wBAAAC,EAAA,OAAA,EAAA,GAAA;AAAA,IACM,EAAA;;;;;;;;;;;;;;;;AClBvC,IAAAC,IAAA,kBAAAC,OACRA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,OAAA,QACAA,EAAA,SAAA,UACAA,EAAA,MAAA,OACAA,EAAA,SAAA,UANQA,IAAAD,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"status.types.BTsaLHQ6.js","sources":["../../src/components/status/status.vue","../../src/components/status/status.types.ts"],"sourcesContent":["<template>\n <div class=\"b-status\" role=\"status\">\n <div class=\"b-status__indicator-wrapper\">\n <span class=\"b-status__indicator\" :class=\"conditionalClass\" role=\"presentation\"></span>\n </div>\n <bento-typography class=\"b-status__label\" el=\"span\" variant=\"body\">\n <slot></slot>\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { type BentoStatusProps } from './status.types';\n\n const props = defineProps({\n variant: null\n});\n\n const conditionalClass = computed(() => ({\n [`b-status__indicator--${props.variant}`]: true,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * A Status component is used to indicate a\n * passage of time or a particular step of a process.\n *\n * @example\n * import { BentoStatus } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStatus },\n * template: `\n * <bento-status variant=\"red\">\n * 1 week ago\n * </bento-status>\n * `\n * }\n */\n export default {\n name: 'bento-status',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./status.scss\" />\n","/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoStatusVariant {\n BLUE = 'blue',\n GREEN = 'green',\n GREY = 'grey',\n ORANGE = 'orange',\n RED = 'red',\n YELLOW = 'yellow',\n}\n\nexport interface BentoStatusProps {\n /**\n * Defines the type and color of the Status\n */\n variant: BentoStatusVariant | `${BentoStatusVariant}`;\n}\n"],"names":["__default__","conditionalClass","computed","props","BentoStatusVariant","BentoStatusVariant2"],"mappings":";;;;AA0CI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;iBAxBAC,IAAAC,EAAA,OAAA;AAAA,MAAyC,CAAA,wBAAAC,EAAA,OAAA,EAAA,GAAA;AAAA,IACM,EAAA;;;;;;;;;;;;;;;;AClB5C,IAAAC,IAAA,kBAAAC,OACHA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,OAAA,QACAA,EAAA,SAAA,UACAA,EAAA,MAAA,OACAA,EAAA,SAAA,UANQA,IAAAD,KAAA,CAAA,CAAA;"}
@@ -1,9 +1,9 @@
1
1
  import { defineComponent as k, ref as c, computed as o, watch as h, provide as P, readonly as W, useSlots as z, inject as U, onMounted as Z, onBeforeUnmount as j } from "vue";
2
- import { B as $ } from "./typography.Bq-EGj9y.js";
2
+ import { B as $ } from "./typography.C8lPlsbD.js";
3
3
  import { u as G } from "./index.B6WW_F-J.js";
4
4
  import { B as R, a as M } from "./keyboard-navigation.DWmhelVv.js";
5
5
  import { n as w } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
6
- import { B as q } from "./base-button.IN4bpcds.js";
6
+ import { B as q } from "./base-button.BPRPrO0p.js";
7
7
  import { C as J } from "./checkmark-small.DVDtD4HQ.js";
8
8
  import { D as Q } from "./dot.BW9SneIk.js";
9
9
  import "../assets/step.css";
@@ -216,8 +216,8 @@ var le = function() {
216
216
  const xe = ce.exports;
217
217
  export {
218
218
  V as B,
219
- xe as a,
219
+ ye as a,
220
220
  L as b,
221
- ye as s
221
+ xe as s
222
222
  };
223
- //# sourceMappingURL=step.BLFXvHL6.js.map
223
+ //# sourceMappingURL=step.BEbWkprZ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"step.BLFXvHL6.js","sources":["../../src/components/stepper/composables/use-keyboard-navigation/use-keyboard-navigation.ts","../../src/components/stepper/composables/use-step-register/use-step-register.ts","../../src/components/stepper/stepper.keys.ts","../../src/components/stepper/stepper.types.ts","../../src/components/stepper/stepper.vue","../../src/components/stepper/components/step/step.vue"],"sourcesContent":["import { type Ref, type UnwrapRef } from 'vue';\n\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types/keyboard-navigation';\n\n/**\n * Returns keyboard navigation's event handlers to navigate through the steps\n *\n * @param steps the list of bento-steps DOM elements to focus on the navigation\n * @returns\n */\nexport const useKeyboardNavigation = (steps: Ref<UnwrapRef<Array<HTMLButtonElement>>>) => {\n // Returns the event handler that moves the focus on a given step offset\n function focusOnStep(indexOffset: number) {\n return ({ detail: event }) => {\n event.preventDefault();\n\n const currentIndex = steps.value.indexOf(document.activeElement as HTMLButtonElement);\n if (currentIndex < 0) {\n return;\n }\n\n steps.value[currentIndex + indexOffset]?.focus();\n };\n }\n\n const focusOnPreviousStep = focusOnStep(-1);\n const focusOnNextStep = focusOnStep(1);\n\n return {\n [BentoKeyboardNavigationKeyDownEvent.ARROW_DOWN]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_RIGHT]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_UP]: focusOnPreviousStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_LEFT]: focusOnPreviousStep,\n };\n};\n","import type { Ref, UnwrapRef } from 'vue';\nimport type { BentoStepperStepExposeState } from '../../stepper.types';\n\n/**\n * Gets the position of a `bento-step` element within its `bento-stepper` parent.\n * @param stepState The `bento-step` state.\n * @returns The index of the element.\n */\nconst getStepPosition = (stepState: BentoStepperStepExposeState) => {\n // Button is wrapped by <li> element\n const listItemElement = (stepState.buttonElement as Ref<UnwrapRef<HTMLButtonElement>>).value.parentElement;\n const listElement = listItemElement.parentElement;\n return Array.from(listElement.children).indexOf(listItemElement);\n};\n\n/**\n * Provides methods to register/unregister `bento-step` elements to/from the `bento-stepper` step state.\n * These methods allow for tracking the child step elements, including their position in the DOM tree.\n * @param childrenSteps The `bento-stepper` (or `bento-step` if substeps) step state.\n */\nexport const useStepRegister = (childrenSteps: Ref<Array<BentoStepperStepExposeState>>) => {\n /**\n * Registers a step's HTML element in the stepper state.\n * Should be called by a `bento-step` when it is mounted.\n * @param stepState The `bento-step` state.\n */\n const registerStep = (stepState: BentoStepperStepExposeState) => {\n const position = getStepPosition(stepState);\n childrenSteps.value.splice(position, 0, {\n stepContent: stepState.stepContent as string,\n buttonElement: stepState.buttonElement as HTMLButtonElement,\n substeps: stepState.substeps as Array<BentoStepperStepExposeState>,\n });\n };\n\n /**\n * Unregisters a step's HTML element in the stepper state.\n * Should be called by a `bento-step` before it is unmounted.\n * @param stepState The `bento-step` state.\n */\n const removeStep = (stepState: BentoStepperStepExposeState) => {\n childrenSteps.value.splice(\n childrenSteps.value.findIndex(step => step.buttonElement === stepState.buttonElement.value),\n 1\n );\n };\n\n return { registerStep, removeStep };\n};\n","export const STEPPER_STATE = Symbol('stepper state');\n","import type { ComputedRef, Ref, UnwrapRef } from 'vue';\n\nexport enum BentoStepperTypeOption {\n LINEAR = 'linear',\n NON_LINEAR = 'non-linear',\n}\n\nexport enum BentoStepperVariantOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n}\n\nexport interface BentoStepperStepExposeState {\n buttonElement: HTMLButtonElement | Ref<UnwrapRef<HTMLButtonElement>>;\n substeps: Array<BentoStepperStepExposeState> | Ref<Array<BentoStepperStepExposeState>>;\n stepContent: string | ComputedRef<string>;\n}\n\nexport type BentoStepperState = Ref<{\n activeStepIndex: number;\n latestActiveStep: number;\n type: `${BentoStepperTypeOption}`;\n variant: `${BentoStepperVariantOption}`;\n steps: Array<HTMLElement>;\n isParentStep?: boolean;\n navigateToStep: (index: number) => void;\n registerStep: (stepState: BentoStepperStepExposeState) => void;\n removeStep: (stepState: BentoStepperStepExposeState) => void;\n}>;\n","<template>\n <nav class=\"b-stepper\">\n <ol\n v-bento-keyboard-navigation-directive\n class=\"b-stepper__list\"\n :class=\"conditionalClasses\"\n v-on=\"keyboardNavigationListeners\"\n >\n <slot></slot>\n </ol>\n\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-stepper__text-stepper\"\n >{{\n t('step', {\n currentIndex: n(activeStepIndex + 1),\n totalSteps: n(stepsAmount),\n content: currentStepContent,\n })\n }}\n </bento-typography>\n </nav>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoTypography } from '@/components/typography';\n\n import { computed, type DeepReadonly, type PropType, provide, readonly, ref, watch } from 'vue';\n import { BentoKeyboardNavigationDirective as vBentoKeyboardNavigationDirective } from '@/directives';\n\n import { useKeyboardNavigation, useStepRegister } from './composables';\n import { useI18n } from '@/utils/ts/i18n';\n\n import { STEPPER_STATE } from './stepper.keys';\n import {\n type BentoStepperState,\n type BentoStepperStepExposeState,\n type BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from './stepper.types';\n\n import messages from './messages.json';\n\n const props = defineProps({\n /**\n * Type of stepper; defines how the stepper should behave. Default: linear\n * @values linear, non-linear\n */\n type: {\n type: String as PropType<`${BentoStepperTypeOption}`>,\n default: 'linear',\n },\n /**\n * Stepper variant; defines how the stepper should be displayed. Default: vertical\n * @values vertical, horizontal\n */\n variant: {\n type: String as PropType<`${BentoStepperVariantOption}`>,\n default: 'vertical',\n },\n /**\n * Active step index\n */\n index: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits([\"update:index\"]);\n\n type MessageSchema = (typeof messages)['en-US'];\n const { t, n } = useI18n<{ message: MessageSchema }>({ messages });\n\n const childrenSteps = ref<Array<BentoStepperStepExposeState>>([]);\n const activeStepIndex = ref(props.index);\n const latestActiveStep = ref(activeStepIndex.value);\n\n const navigateToStep = (index: number) => {\n // Stores latest active step index so users can navigate backwards and forwards on linear stepper\n if (index > latestActiveStep.value) {\n latestActiveStep.value = index;\n }\n activeStepIndex.value = index;\n };\n\n const currentStepContent = computed(() => childrenSteps.value[activeStepIndex.value]?.stepContent);\n const stepsAmount = computed(() => childrenSteps.value.length);\n const childrenStepsElements = computed(() => childrenSteps.value.map(({ buttonElement }) => buttonElement));\n const isHorizontalVariant = computed(() => props.variant === BentoStepperVariantOption.HORIZONTAL);\n\n // List of all visible steps nested on the stepper, including the substeps of the children steps\n // Flattening the steps on a single list makes the keyboard navigation easier to be handled\n const allVisibleStepsElements = computed(() =>\n childrenSteps.value\n .map(({ buttonElement, substeps }, index) => {\n const isStepActive = activeStepIndex.value === index;\n const isSubstepsVisible = !isHorizontalVariant.value && isStepActive;\n\n if (!isSubstepsVisible) {\n return [buttonElement];\n }\n\n return [buttonElement].concat(substeps.map(step => step.buttonElement));\n })\n .flat()\n );\n\n const { registerStep, removeStep } = useStepRegister(childrenSteps);\n\n const stepperState: BentoStepperState = ref({\n activeStepIndex,\n latestActiveStep,\n steps: childrenStepsElements,\n type: props.type,\n variant: props.variant,\n navigateToStep,\n registerStep,\n removeStep,\n });\n\n const conditionalClasses = computed(() => ({\n 'b-stepper__list--horizontal': isHorizontalVariant.value,\n }));\n\n watch(() => props.index, navigateToStep);\n watch(activeStepIndex, index => {\n emit('update:index', index);\n });\n\n const keyboardNavigationListeners = useKeyboardNavigation(allVisibleStepsElements);\n\n // Provides stepper state to BentoStep children components\n provide<DeepReadonly<BentoStepperState>>(STEPPER_STATE, readonly(stepperState));\n\n const reset = () => {\n activeStepIndex.value = 0;\n latestActiveStep.value = 0;\n };\n\n defineExpose({\n reset,\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Steppers break down complex processes into manageable steps to guide users through a sequential or multi-step process.\n *\n * @example\n * import { BentoStep, BentoStepper } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep, BentoStepper },\n * template: `\n * <bento-stepper :index=\"1\">\n * <bento-step>Step 1</bento-step>\n * <bento-step>Step 2</bento-step>\n * <bento-step>Step 3</bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n i18n: { messages },\n name: 'stepper',\n };\n</script>\n\n<style scoped src=\"./stepper.scss\" />\n","<template>\n <li :class=\"conditionalClasses\" class=\"b-step\">\n <base-button\n ref=\"buttonComponent\"\n :aria-current=\"ariaCurrentValue\"\n :aria-disabled=\"ariaDisabledValue\"\n class=\"b-step__button\"\n type=\"button\"\n :tabindex=\"tabIndexValue\"\n :disabled=\"isDisabled\"\n @click=\"navigateToStep\"\n @focus=\"isFocused = true\"\n @blur=\"isFocused = false\"\n >\n <template #iconLeft>\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-step__index\" aria-hidden=\"true\">\n <checkmark-small-icon v-if=\"isCompleted\" />\n <template v-else-if=\"!isSubstep\">{{ index + 1 }}</template>\n <dot-icon v-else />\n </bento-typography>\n </template>\n\n <bento-typography ref=\"stepContent\" el=\"span\" variant=\"body\" :stronger=\"isActive\" class=\"b-step__content\">\n <slot></slot>\n </bento-typography>\n </base-button>\n\n <ul v-show=\"isSubstepsVisible\" ref=\"substepList\" class=\"b-step__substep-list\">\n <slot name=\"substeps\"></slot>\n </ul>\n </li>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, onBeforeUnmount, onMounted, provide, ref, useSlots, watch } from 'vue';\n import { BaseButton } from '@/components/internal/base-button';\n import { BentoTypography } from '@/components/typography';\n import CheckmarkSmallIcon from '@adyen/ui-assets-icons-16/vue/checkmark-small';\n import DotIcon from '@adyen/ui-assets-icons-16/vue/dot';\n\n import { useStepRegister } from '../../composables';\n import { STEPPER_STATE } from '../../stepper.keys';\n import {\n type BentoStepperState,\n type BentoStepperStepExposeState,\n BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from '../../stepper.types';\n import { type Booleanish } from '@/types/prop-types';\n\n const slots = useSlots();\n\n const props = defineProps({\n /**\n * Completed status. Used on non-linear steppers to indicate if the step is completed.\n */\n completed: {\n type: Boolean,\n default: false,\n },\n /**\n * Active substep index\n */\n substepIndex: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits([\"update:substep-index\"]);\n\n // Element refs\n const buttonComponent = ref<InstanceType<typeof BaseButton> | null>(null);\n const stepContent = ref<InstanceType<typeof BentoTypography> | null>(null);\n const substeps = ref<Array<BentoStepperStepExposeState>>([]);\n\n // Injects parent BentoStepper state data\n const stepper = inject<BentoStepperState>(STEPPER_STATE);\n\n const buttonElement = computed(() => buttonComponent.value?.$el as HTMLButtonElement);\n const index = computed(() => stepper?.value.steps.indexOf(buttonElement.value));\n\n const stepContentValue = computed(() => stepContent.value?.$el.textContent);\n\n // Substep logic\n const substepsButtonElements = computed(() => substeps.value.map(({ buttonElement }) => buttonElement));\n\n const activeSubStepIndex = ref(props.substepIndex);\n const latestActiveSubStepIndex = ref(activeSubStepIndex.value);\n\n const navigateToSubstep = (value: number) => {\n if (value > latestActiveSubStepIndex.value) {\n latestActiveSubStepIndex.value = value;\n }\n\n activeSubStepIndex.value = value;\n };\n\n const { registerStep, removeStep } = useStepRegister(substeps);\n\n const stepState: BentoStepperState = ref({\n activeStepIndex: activeSubStepIndex,\n latestActiveStep: latestActiveSubStepIndex,\n type: stepper.value.type,\n variant: stepper.value.variant,\n steps: substepsButtonElements,\n isParentStep: true,\n navigateToStep: navigateToSubstep,\n registerStep,\n removeStep,\n });\n\n provide(STEPPER_STATE, stepState);\n\n watch(() => props.substepIndex, navigateToSubstep);\n watch(activeSubStepIndex, value => {\n emit('update:substep-index', value);\n });\n\n onMounted(() => {\n if (!stepper) {\n throw new Error(\n 'BentoStep components should only be used inside BentoStepper or other BentoStep components.'\n );\n }\n\n stepper.value.registerStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n onBeforeUnmount(() => {\n stepper.value.removeStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n // Step states\n const isSubstep = computed(() => stepper.value.isParentStep);\n const isFocused = ref(false);\n const isActive = computed(() => stepper?.value.activeStepIndex === index.value);\n const isSubstepsVisible = computed(\n () =>\n isActive.value &&\n stepper.value.variant !== BentoStepperVariantOption.HORIZONTAL &&\n !isSubstep.value &&\n slots.substeps\n );\n const isCompleted = computed(() => {\n if (stepper?.value.type === BentoStepperTypeOption.NON_LINEAR) {\n return props.completed;\n }\n\n return stepper?.value.latestActiveStep > index.value;\n });\n const isDisabled = computed(\n () => stepper?.value.type === BentoStepperTypeOption.LINEAR && index.value > stepper?.value.latestActiveStep\n );\n\n const navigateToStep = () => {\n if (isDisabled.value) {\n return;\n }\n\n stepper.value.navigateToStep(index.value);\n };\n\n // Styling and a11y\n const ariaCurrentValue = computed(() => (isActive.value ? 'step' : ('false' as Booleanish)));\n const ariaDisabledValue = computed(() => isDisabled.value.toString() as Booleanish);\n const tabIndexValue = computed(() => (isFocused.value || (index.value === 0 && !isSubstep.value) ? '0' : '-1'));\n\n const conditionalClasses = computed(() => ({\n 'b-step--active': isActive.value,\n 'b-step--completed': isCompleted.value,\n 'b-step--substep': isSubstep.value,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Steps are components placed inside BentoSteppers to break down complex processes\n *\n * @example\n * import { BentoStep } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep },\n * template: `\n * <bento-stepper>\n * <bento-step>Step 1</bento-step>\n * <bento-step>\n * Step 2\n * <template #substeps>\n * <bento-step>Substep 1</bento-step>\n * <bento-step>Substep 2</bento-step>\n * </template>\n * </bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n name: 'step',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./step.scss\" />\n"],"names":["useKeyboardNavigation","steps","focusOnStep","indexOffset","event","currentIndex","_a","focusOnPreviousStep","focusOnNextStep","BentoKeyboardNavigationKeyDownEvent","getStepPosition","stepState","listItemElement","listElement","useStepRegister","childrenSteps","position","step","STEPPER_STATE","BentoStepperTypeOption","BentoStepperTypeOption2","BentoStepperVariantOption","BentoStepperVariantOption2","__default__$1","messages","t","n","useI18n","ref","activeStepIndex","props","latestActiveStep","navigateToStep","index","currentStepContent","computed","stepsAmount","childrenStepsElements","buttonElement","isHorizontalVariant","allVisibleStepsElements","substeps","isStepActive","registerStep","removeStep","stepperState","conditionalClasses","watch","emit","keyboardNavigationListeners","provide","readonly","reset","expose","__default__","slots","useSlots","buttonComponent","stepContent","stepper","inject","stepContentValue","substepsButtonElements","buttonElement2","activeSubStepIndex","latestActiveSubStepIndex","navigateToSubstep","value","onMounted","onBeforeUnmount","isSubstep","isFocused","isActive","isSubstepsVisible","isCompleted","isDisabled","ariaCurrentValue","ariaDisabledValue","tabIndexValue"],"mappings":"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"}
1
+ {"version":3,"file":"step.BEbWkprZ.js","sources":["../../src/components/stepper/composables/use-keyboard-navigation/use-keyboard-navigation.ts","../../src/components/stepper/composables/use-step-register/use-step-register.ts","../../src/components/stepper/stepper.keys.ts","../../src/components/stepper/stepper.types.ts","../../src/components/stepper/stepper.vue","../../src/components/stepper/components/step/step.vue"],"sourcesContent":["import { type Ref, type UnwrapRef } from 'vue';\n\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types/keyboard-navigation';\n\n/**\n * Returns keyboard navigation's event handlers to navigate through the steps\n *\n * @param steps the list of bento-steps DOM elements to focus on the navigation\n * @returns\n */\nexport const useKeyboardNavigation = (steps: Ref<UnwrapRef<Array<HTMLButtonElement>>>) => {\n // Returns the event handler that moves the focus on a given step offset\n function focusOnStep(indexOffset: number) {\n return ({ detail: event }) => {\n event.preventDefault();\n\n const currentIndex = steps.value.indexOf(document.activeElement as HTMLButtonElement);\n if (currentIndex < 0) {\n return;\n }\n\n steps.value[currentIndex + indexOffset]?.focus();\n };\n }\n\n const focusOnPreviousStep = focusOnStep(-1);\n const focusOnNextStep = focusOnStep(1);\n\n return {\n [BentoKeyboardNavigationKeyDownEvent.ARROW_DOWN]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_RIGHT]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_UP]: focusOnPreviousStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_LEFT]: focusOnPreviousStep,\n };\n};\n","import type { Ref, UnwrapRef } from 'vue';\nimport type { BentoStepperStepExposeState } from '../../stepper.types';\n\n/**\n * Gets the position of a `bento-step` element within its `bento-stepper` parent.\n * @param stepState The `bento-step` state.\n * @returns The index of the element.\n */\nconst getStepPosition = (stepState: BentoStepperStepExposeState) => {\n // Button is wrapped by <li> element\n const listItemElement = (stepState.buttonElement as Ref<UnwrapRef<HTMLButtonElement>>).value.parentElement;\n const listElement = listItemElement.parentElement;\n return Array.from(listElement.children).indexOf(listItemElement);\n};\n\n/**\n * Provides methods to register/unregister `bento-step` elements to/from the `bento-stepper` step state.\n * These methods allow for tracking the child step elements, including their position in the DOM tree.\n * @param childrenSteps The `bento-stepper` (or `bento-step` if substeps) step state.\n */\nexport const useStepRegister = (childrenSteps: Ref<Array<BentoStepperStepExposeState>>) => {\n /**\n * Registers a step's HTML element in the stepper state.\n * Should be called by a `bento-step` when it is mounted.\n * @param stepState The `bento-step` state.\n */\n const registerStep = (stepState: BentoStepperStepExposeState) => {\n const position = getStepPosition(stepState);\n childrenSteps.value.splice(position, 0, {\n stepContent: stepState.stepContent as string,\n buttonElement: stepState.buttonElement as HTMLButtonElement,\n substeps: stepState.substeps as Array<BentoStepperStepExposeState>,\n });\n };\n\n /**\n * Unregisters a step's HTML element in the stepper state.\n * Should be called by a `bento-step` before it is unmounted.\n * @param stepState The `bento-step` state.\n */\n const removeStep = (stepState: BentoStepperStepExposeState) => {\n childrenSteps.value.splice(\n childrenSteps.value.findIndex(step => step.buttonElement === stepState.buttonElement.value),\n 1\n );\n };\n\n return { registerStep, removeStep };\n};\n","export const STEPPER_STATE = Symbol('stepper state');\n","import type { ComputedRef, Ref, UnwrapRef } from 'vue';\n\nexport enum BentoStepperTypeOption {\n LINEAR = 'linear',\n NON_LINEAR = 'non-linear',\n}\n\nexport enum BentoStepperVariantOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n}\n\nexport interface BentoStepperStepExposeState {\n buttonElement: HTMLButtonElement | Ref<UnwrapRef<HTMLButtonElement>>;\n substeps: Array<BentoStepperStepExposeState> | Ref<Array<BentoStepperStepExposeState>>;\n stepContent: string | ComputedRef<string>;\n}\n\nexport type BentoStepperState = Ref<{\n activeStepIndex: number;\n latestActiveStep: number;\n type: `${BentoStepperTypeOption}`;\n variant: `${BentoStepperVariantOption}`;\n steps: Array<HTMLElement>;\n isParentStep?: boolean;\n navigateToStep: (index: number) => void;\n registerStep: (stepState: BentoStepperStepExposeState) => void;\n removeStep: (stepState: BentoStepperStepExposeState) => void;\n}>;\n","<template>\n <nav class=\"b-stepper\">\n <ol\n v-bento-keyboard-navigation-directive\n class=\"b-stepper__list\"\n :class=\"conditionalClasses\"\n v-on=\"keyboardNavigationListeners\"\n >\n <slot></slot>\n </ol>\n\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-stepper__text-stepper\"\n >{{\n t('step', {\n currentIndex: n(activeStepIndex + 1),\n totalSteps: n(stepsAmount),\n content: currentStepContent,\n })\n }}\n </bento-typography>\n </nav>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoTypography } from '@/components/typography';\n\n import { computed, type DeepReadonly, type PropType, provide, readonly, ref, watch } from 'vue';\n import { BentoKeyboardNavigationDirective as vBentoKeyboardNavigationDirective } from '@/directives';\n\n import { useKeyboardNavigation, useStepRegister } from './composables';\n import { useI18n } from '@/utils/ts/i18n';\n\n import { STEPPER_STATE } from './stepper.keys';\n import {\n type BentoStepperState,\n type BentoStepperStepExposeState,\n type BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from './stepper.types';\n\n import messages from './messages.json';\n\n const props = defineProps({\n /**\n * Type of stepper; defines how the stepper should behave. Default: linear\n * @values linear, non-linear\n */\n type: {\n type: String as PropType<`${BentoStepperTypeOption}`>,\n default: 'linear',\n },\n /**\n * Stepper variant; defines how the stepper should be displayed. Default: vertical\n * @values vertical, horizontal\n */\n variant: {\n type: String as PropType<`${BentoStepperVariantOption}`>,\n default: 'vertical',\n },\n /**\n * Active step index\n */\n index: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits([\"update:index\"]);\n\n type MessageSchema = (typeof messages)['en-US'];\n const { t, n } = useI18n<{ message: MessageSchema }>({ messages });\n\n const childrenSteps = ref<Array<BentoStepperStepExposeState>>([]);\n const activeStepIndex = ref(props.index);\n const latestActiveStep = ref(activeStepIndex.value);\n\n const navigateToStep = (index: number) => {\n // Stores latest active step index so users can navigate backwards and forwards on linear stepper\n if (index > latestActiveStep.value) {\n latestActiveStep.value = index;\n }\n activeStepIndex.value = index;\n };\n\n const currentStepContent = computed(() => childrenSteps.value[activeStepIndex.value]?.stepContent);\n const stepsAmount = computed(() => childrenSteps.value.length);\n const childrenStepsElements = computed(() => childrenSteps.value.map(({ buttonElement }) => buttonElement));\n const isHorizontalVariant = computed(() => props.variant === BentoStepperVariantOption.HORIZONTAL);\n\n // List of all visible steps nested on the stepper, including the substeps of the children steps\n // Flattening the steps on a single list makes the keyboard navigation easier to be handled\n const allVisibleStepsElements = computed(() =>\n childrenSteps.value\n .map(({ buttonElement, substeps }, index) => {\n const isStepActive = activeStepIndex.value === index;\n const isSubstepsVisible = !isHorizontalVariant.value && isStepActive;\n\n if (!isSubstepsVisible) {\n return [buttonElement];\n }\n\n return [buttonElement].concat(substeps.map(step => step.buttonElement));\n })\n .flat()\n );\n\n const { registerStep, removeStep } = useStepRegister(childrenSteps);\n\n const stepperState: BentoStepperState = ref({\n activeStepIndex,\n latestActiveStep,\n steps: childrenStepsElements,\n type: props.type,\n variant: props.variant,\n navigateToStep,\n registerStep,\n removeStep,\n });\n\n const conditionalClasses = computed(() => ({\n 'b-stepper__list--horizontal': isHorizontalVariant.value,\n }));\n\n watch(() => props.index, navigateToStep);\n watch(activeStepIndex, index => {\n emit('update:index', index);\n });\n\n const keyboardNavigationListeners = useKeyboardNavigation(allVisibleStepsElements);\n\n // Provides stepper state to BentoStep children components\n provide<DeepReadonly<BentoStepperState>>(STEPPER_STATE, readonly(stepperState));\n\n const reset = () => {\n activeStepIndex.value = 0;\n latestActiveStep.value = 0;\n };\n\n defineExpose({\n reset,\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Steppers break down complex processes into manageable steps to guide users through a sequential or multi-step process.\n *\n * @example\n * import { BentoStep, BentoStepper } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep, BentoStepper },\n * template: `\n * <bento-stepper :index=\"1\">\n * <bento-step>Step 1</bento-step>\n * <bento-step>Step 2</bento-step>\n * <bento-step>Step 3</bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n i18n: { messages },\n name: 'stepper',\n };\n</script>\n\n<style scoped src=\"./stepper.scss\" />\n","<template>\n <li :class=\"conditionalClasses\" class=\"b-step\">\n <base-button\n ref=\"buttonComponent\"\n :aria-current=\"ariaCurrentValue\"\n :aria-disabled=\"ariaDisabledValue\"\n class=\"b-step__button\"\n type=\"button\"\n :tabindex=\"tabIndexValue\"\n :disabled=\"isDisabled\"\n @click=\"navigateToStep\"\n @focus=\"isFocused = true\"\n @blur=\"isFocused = false\"\n >\n <template #iconLeft>\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-step__index\" aria-hidden=\"true\">\n <checkmark-small-icon v-if=\"isCompleted\" />\n <template v-else-if=\"!isSubstep\">{{ index + 1 }}</template>\n <dot-icon v-else />\n </bento-typography>\n </template>\n\n <bento-typography ref=\"stepContent\" el=\"span\" variant=\"body\" :stronger=\"isActive\" class=\"b-step__content\">\n <slot></slot>\n </bento-typography>\n </base-button>\n\n <ul v-show=\"isSubstepsVisible\" ref=\"substepList\" class=\"b-step__substep-list\">\n <slot name=\"substeps\"></slot>\n </ul>\n </li>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, onBeforeUnmount, onMounted, provide, ref, useSlots, watch } from 'vue';\n import { BaseButton } from '@/components/internal/base-button';\n import { BentoTypography } from '@/components/typography';\n import CheckmarkSmallIcon from '@adyen/ui-assets-icons-16/vue/checkmark-small';\n import DotIcon from '@adyen/ui-assets-icons-16/vue/dot';\n\n import { useStepRegister } from '../../composables';\n import { STEPPER_STATE } from '../../stepper.keys';\n import {\n type BentoStepperState,\n type BentoStepperStepExposeState,\n BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from '../../stepper.types';\n import { type Booleanish } from '@/types/prop-types';\n\n const slots = useSlots();\n\n const props = defineProps({\n /**\n * Completed status. Used on non-linear steppers to indicate if the step is completed.\n */\n completed: {\n type: Boolean,\n default: false,\n },\n /**\n * Active substep index\n */\n substepIndex: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits([\"update:substep-index\"]);\n\n // Element refs\n const buttonComponent = ref<InstanceType<typeof BaseButton> | null>(null);\n const stepContent = ref<InstanceType<typeof BentoTypography> | null>(null);\n const substeps = ref<Array<BentoStepperStepExposeState>>([]);\n\n // Injects parent BentoStepper state data\n const stepper = inject<BentoStepperState>(STEPPER_STATE);\n\n const buttonElement = computed(() => buttonComponent.value?.$el as HTMLButtonElement);\n const index = computed(() => stepper?.value.steps.indexOf(buttonElement.value));\n\n const stepContentValue = computed(() => stepContent.value?.$el.textContent);\n\n // Substep logic\n const substepsButtonElements = computed(() => substeps.value.map(({ buttonElement }) => buttonElement));\n\n const activeSubStepIndex = ref(props.substepIndex);\n const latestActiveSubStepIndex = ref(activeSubStepIndex.value);\n\n const navigateToSubstep = (value: number) => {\n if (value > latestActiveSubStepIndex.value) {\n latestActiveSubStepIndex.value = value;\n }\n\n activeSubStepIndex.value = value;\n };\n\n const { registerStep, removeStep } = useStepRegister(substeps);\n\n const stepState: BentoStepperState = ref({\n activeStepIndex: activeSubStepIndex,\n latestActiveStep: latestActiveSubStepIndex,\n type: stepper.value.type,\n variant: stepper.value.variant,\n steps: substepsButtonElements,\n isParentStep: true,\n navigateToStep: navigateToSubstep,\n registerStep,\n removeStep,\n });\n\n provide(STEPPER_STATE, stepState);\n\n watch(() => props.substepIndex, navigateToSubstep);\n watch(activeSubStepIndex, value => {\n emit('update:substep-index', value);\n });\n\n onMounted(() => {\n if (!stepper) {\n throw new Error(\n 'BentoStep components should only be used inside BentoStepper or other BentoStep components.'\n );\n }\n\n stepper.value.registerStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n onBeforeUnmount(() => {\n stepper.value.removeStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n // Step states\n const isSubstep = computed(() => stepper.value.isParentStep);\n const isFocused = ref(false);\n const isActive = computed(() => stepper?.value.activeStepIndex === index.value);\n const isSubstepsVisible = computed(\n () =>\n isActive.value &&\n stepper.value.variant !== BentoStepperVariantOption.HORIZONTAL &&\n !isSubstep.value &&\n slots.substeps\n );\n const isCompleted = computed(() => {\n if (stepper?.value.type === BentoStepperTypeOption.NON_LINEAR) {\n return props.completed;\n }\n\n return stepper?.value.latestActiveStep > index.value;\n });\n const isDisabled = computed(\n () => stepper?.value.type === BentoStepperTypeOption.LINEAR && index.value > stepper?.value.latestActiveStep\n );\n\n const navigateToStep = () => {\n if (isDisabled.value) {\n return;\n }\n\n stepper.value.navigateToStep(index.value);\n };\n\n // Styling and a11y\n const ariaCurrentValue = computed(() => (isActive.value ? 'step' : ('false' as Booleanish)));\n const ariaDisabledValue = computed(() => isDisabled.value.toString() as Booleanish);\n const tabIndexValue = computed(() => (isFocused.value || (index.value === 0 && !isSubstep.value) ? '0' : '-1'));\n\n const conditionalClasses = computed(() => ({\n 'b-step--active': isActive.value,\n 'b-step--completed': isCompleted.value,\n 'b-step--substep': isSubstep.value,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Steps are components placed inside BentoSteppers to break down complex processes\n *\n * @example\n * import { BentoStep } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep },\n * template: `\n * <bento-stepper>\n * <bento-step>Step 1</bento-step>\n * <bento-step>\n * Step 2\n * <template #substeps>\n * <bento-step>Substep 1</bento-step>\n * <bento-step>Substep 2</bento-step>\n * </template>\n * </bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n name: 'step',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./step.scss\" />\n"],"names":["useKeyboardNavigation","steps","focusOnStep","indexOffset","event","currentIndex","_a","focusOnPreviousStep","focusOnNextStep","BentoKeyboardNavigationKeyDownEvent","getStepPosition","stepState","listItemElement","listElement","useStepRegister","childrenSteps","position","step","STEPPER_STATE","BentoStepperTypeOption","BentoStepperTypeOption2","BentoStepperVariantOption","BentoStepperVariantOption2","__default__$1","messages","t","n","useI18n","ref","activeStepIndex","props","latestActiveStep","navigateToStep","index","currentStepContent","computed","stepsAmount","childrenStepsElements","buttonElement","isHorizontalVariant","allVisibleStepsElements","substeps","isStepActive","registerStep","removeStep","stepperState","conditionalClasses","watch","emit","keyboardNavigationListeners","provide","readonly","reset","expose","__default__","slots","useSlots","buttonComponent","stepContent","stepper","inject","stepContentValue","substepsButtonElements","buttonElement2","activeSubStepIndex","latestActiveSubStepIndex","navigateToSubstep","value","onMounted","onBeforeUnmount","isSubstep","isFocused","isActive","isSubstepsVisible","isCompleted","isDisabled","ariaCurrentValue","ariaDisabledValue","tabIndexValue"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { defineComponent as i, inject as c, computed as o, provide as v, ref as h } from "vue";
2
2
  import { n as u } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
3
- import { B as C } from "./button.DIU6m9wD.js";
4
- import { B } from "./info-icon.BEyxQgD6.js";
5
- import { B as T } from "./typography.Bq-EGj9y.js";
6
- import { C as S } from "./copy.C0q7xgXs.js";
3
+ import { B as C } from "./button.Ctj3rkxw.js";
4
+ import { B } from "./info-icon.DS9ax8ZD.js";
5
+ import { B as T } from "./typography.C8lPlsbD.js";
6
+ import { C as S } from "./copy.BXykYfg0.js";
7
7
  import { S as I } from "./search.D53Ia3rC.js";
8
8
  import { u as L } from "./index.B6WW_F-J.js";
9
- import { b as x } from "./tooltip.C6YCavPw.js";
9
+ import { b as x } from "./tooltip.DF11J3k3.js";
10
10
  import "../assets/structured-list-item.css";
11
11
  const _ = /* @__PURE__ */ Symbol("structured list condensed style injection key"), p = /* @__PURE__ */ Symbol("structured list labels width injection key"), E = ["25-75", "33-66", "42-58", "50-50", "75-25", "66-33", "58-42"], D = {}, $ = /* @__PURE__ */ i({
12
12
  ...D,
@@ -87,4 +87,4 @@ export {
87
87
  _ as S,
88
88
  G as a
89
89
  };
90
- //# sourceMappingURL=structured-list-item.CptOCpHP.js.map
90
+ //# sourceMappingURL=structured-list-item.DRFRap_S.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"structured-list-item.CptOCpHP.js","sources":["../../src/components/structured-list/structured-list.keys.ts","../../src/components/structured-list/structured-list.types.ts","../../src/components/structured-list/structured-list.vue","../../src/components/structured-list/components/structered-list-item/structured-list-item.vue"],"sourcesContent":["export const STRUCTURED_LIST_CONDENSED_INJECTION_KEY = Symbol('structured list condensed style injection key');\nexport const STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY = Symbol('structured list labels width injection key');\n","export type BentoStructuredListLayoutOptions = '25-75' | '33-66' | '42-58' | '50-50' | '75-25' | '66-33' | '58-42';\nexport const BentoStructuredListLayoutOptions = ['25-75', '33-66', '42-58', '50-50', '75-25', '66-33', '58-42'];\n","<template>\n <dl class=\"b-structured-list\">\n <slot />\n </dl>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, provide } from 'vue';\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '@/components/structured-list/structured-list.keys';\n import { BentoStructuredListLayoutOptions } from './structured-list.types';\n\n const props = defineProps({\n labelsWidth: { default: null },\n layout: { default: '33-66' }\n});\n\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n\n const computedLayout = computed(() =>\n BentoStructuredListLayoutOptions.includes(props.layout) ? props.layout : '33-66'\n );\n\n const computedLabelsWidth = computed(() => {\n if (isCondensed) {\n return '130px';\n }\n\n if (props.labelsWidth) {\n return `${props.labelsWidth}px`;\n }\n\n return `${computedLayout.value.split('-')[0]}%`;\n });\n\n provide(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, computedLabelsWidth);\n</script>\n\n<script lang=\"ts\">\n /**\n * This is a list used to display pairs of information in a clear and organized manner.\n * `BentoStructureListItem` should be used to pass the label/value pairs to the list.\n *\n * @example\n * import { BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredList, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Payment\">\n * <bento-payment-method label=\"Klarna\" type=\"Klarna\" />\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\">\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\" :value=\"123456\" />\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list.scss\" />\n","<template>\n <div class=\"b-structured-list-item\" :class=\"conditionalClasses\">\n <dt class=\"b-structured-list-item__label\" :style=\"computedLabelStyle\">\n <bento-typography :variant=\"labelTypographyVariant\">{{ label }}</bento-typography>\n <bento-info-icon v-if=\"labelInfo\" class=\"b-structured-list-item__icon\" :tooltip-text=\"labelInfo\" />\n </dt>\n <dd class=\"b-structured-list-item__value\" :class=\"valueConditionalClasses\">\n <slot />\n <copy v-if=\"copy\" class=\"b-structured-list-item__icon\" :text=\"copy\" @click=\"emitCopy\" />\n <bento-button\n v-if=\"search\"\n v-bento-tooltip-directive:top=\"searchTooltip ? searchTooltip : t('search')\"\n class=\"b-structured-list-item__icon\"\n variant=\"tertiary\"\n @click=\"search\"\n >\n <template #iconLeft>\n <search-icon :svg-title=\"t('search')\" />\n </template>\n </bento-button>\n </dd>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, ref, type Ref } from 'vue';\n\n // Components\n import { BentoButton } from '@/components/button';\n import { BentoInfoIcon } from '@/components/info-icon';\n import { BentoTypography } from '@/components/typography';\n import Copy from '@/components/internal/copy/copy.vue';\n import SearchIcon from '@adyen/ui-assets-icons-16/vue/search';\n\n // Utils\n import { useI18n } from '@/utils/ts/i18n';\n\n // Directives\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n\n // Keys\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '../../structured-list.keys';\n\n import messages from '../../messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const DEFAULT_LABELS_WIDTH = '33%';\n\n const props = defineProps({\n label: null,\n labelInfo: null,\n copy: null,\n search: { type: Function },\n searchTooltip: null,\n truncate: { type: Boolean }\n});\n\n const emit = defineEmits([\"copy\"]);\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n const labelsWidth = inject<Ref<string>>(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, ref(DEFAULT_LABELS_WIDTH));\n const computedLabelStyle = computed(() => `flex-basis:${labelsWidth.value}`);\n const conditionalClasses = computed(() => ({\n 'b-structured-list-item--condensed': isCondensed,\n }));\n\n const valueConditionalClasses = computed(() => ({\n 'b-structured-list-item__value--truncate': props.truncate,\n }));\n\n const emitCopy = () => {\n emit('copy', props.copy);\n };\n\n const labelTypographyVariant = computed(() => (isCondensed ? 'caption' : 'body'));\n</script>\n\n<script lang=\"ts\">\n /**\n * This is an item of the `BentoStructuredList` meant to be used only with that component.\n * It consists of a label/value pair, and also the optional copy and search modifiers.\n *\n * @example\n * import { BentoCurrencyISOCode, BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredListItem, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Shopper\" search='searchShopper' search-tooltip='Find shopper'>\n * <bento-typography>\n * 143442642\n * </bento-status>\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\" copy='123456'>\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\" :value=\"123456\" />\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list-item.scss\" />\n"],"names":["STRUCTURED_LIST_CONDENSED_INJECTION_KEY","STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY","BentoStructuredListLayoutOptions","__default__$1","isCondensed","inject","computedLayout","computed","props","computedLabelsWidth","provide","__default__","messages","DEFAULT_LABELS_WIDTH","t","useI18n","labelsWidth","ref","computedLabelStyle","conditionalClasses","valueConditionalClasses","emitCopy","emit","labelTypographyVariant"],"mappings":";;;;;;;;;;AAAa,MAAAA,IAAA,uBAAA,+CAAA,GACAC,IAAA,uBAAA,4CAAA,GCAAC,IAAA,CAAA,SAAA,SAAA,SAAA,SAAA,SAAA,SAAA,OAAA,GC6DTC,IAAA,CAAA;;;;;;;;iBA3CAC,IAAAC,EAAAL,GAAA,EAAA,GAEAM,IAAAC;AAAA,MAAuB,MAAAL,EAAA,SAAAM,EAAA,MAAA,IAAAA,EAAA,SAAA;AAAA,IACsD,GAG7EC,IAAAF,EAAA,MACIH,IACI,UAGJI,EAAA,cACI,GAAAA,EAAA,WAAA,OAGJ,GAAAF,EAAA,MAAA,MAAA,GAAA,EAAA,CAAA,CAAA,GAA4C;AAGhD,WAAAI,EAAAT,GAAAQ,CAAA;;;;;;;;;;;;;;;;;;;;;;;;GCqEAE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;iBA1DAC,IAAA,OAaA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GACAX,IAAAC,EAAAL,GAAA,EAAA,GACAgB,IAAAX,EAAAJ,GAAAgB,EAAAJ,CAAA,CAAA,GACAK,IAAAX,EAAA,MAAA,cAAAS,EAAA,KAAA,EAAA,GACAG,IAAAZ,EAAA,OAAA;AAAA,MAA2C,qCAAAH;AAAA,IACF,EAAA,GAGzCgB,IAAAb,EAAA,OAAA;AAAA,MAAgD,2CAAAC,EAAA;AAAA,IACK,EAAA,GAGrDa,IAAA,MAAA;AACI,MAAAC,EAAA,QAAAd,EAAA,IAAA;AAAA,IAAuB,GAG3Be,IAAAhB,EAAA,MAAAH,IAAA,YAAA,MAAA;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"structured-list-item.DRFRap_S.js","sources":["../../src/components/structured-list/structured-list.keys.ts","../../src/components/structured-list/structured-list.types.ts","../../src/components/structured-list/structured-list.vue","../../src/components/structured-list/components/structered-list-item/structured-list-item.vue"],"sourcesContent":["export const STRUCTURED_LIST_CONDENSED_INJECTION_KEY = Symbol('structured list condensed style injection key');\nexport const STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY = Symbol('structured list labels width injection key');\n","export type BentoStructuredListLayoutOptions = '25-75' | '33-66' | '42-58' | '50-50' | '75-25' | '66-33' | '58-42';\nexport const BentoStructuredListLayoutOptions = ['25-75', '33-66', '42-58', '50-50', '75-25', '66-33', '58-42'];\n","<template>\n <dl class=\"b-structured-list\">\n <slot />\n </dl>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, provide } from 'vue';\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '@/components/structured-list/structured-list.keys';\n import { BentoStructuredListLayoutOptions } from './structured-list.types';\n\n const props = defineProps({\n labelsWidth: { default: null },\n layout: { default: '33-66' }\n});\n\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n\n const computedLayout = computed(() =>\n BentoStructuredListLayoutOptions.includes(props.layout) ? props.layout : '33-66'\n );\n\n const computedLabelsWidth = computed(() => {\n if (isCondensed) {\n return '130px';\n }\n\n if (props.labelsWidth) {\n return `${props.labelsWidth}px`;\n }\n\n return `${computedLayout.value.split('-')[0]}%`;\n });\n\n provide(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, computedLabelsWidth);\n</script>\n\n<script lang=\"ts\">\n /**\n * This is a list used to display pairs of information in a clear and organized manner.\n * `BentoStructureListItem` should be used to pass the label/value pairs to the list.\n *\n * @example\n * import { BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredList, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Payment\">\n * <bento-payment-method label=\"Klarna\" type=\"Klarna\" />\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\">\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\" :value=\"123456\" />\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list.scss\" />\n","<template>\n <div class=\"b-structured-list-item\" :class=\"conditionalClasses\">\n <dt class=\"b-structured-list-item__label\" :style=\"computedLabelStyle\">\n <bento-typography :variant=\"labelTypographyVariant\">{{ label }}</bento-typography>\n <bento-info-icon v-if=\"labelInfo\" class=\"b-structured-list-item__icon\" :tooltip-text=\"labelInfo\" />\n </dt>\n <dd class=\"b-structured-list-item__value\" :class=\"valueConditionalClasses\">\n <slot />\n <copy v-if=\"copy\" class=\"b-structured-list-item__icon\" :text=\"copy\" @click=\"emitCopy\" />\n <bento-button\n v-if=\"search\"\n v-bento-tooltip-directive:top=\"searchTooltip ? searchTooltip : t('search')\"\n class=\"b-structured-list-item__icon\"\n variant=\"tertiary\"\n @click=\"search\"\n >\n <template #iconLeft>\n <search-icon :svg-title=\"t('search')\" />\n </template>\n </bento-button>\n </dd>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, ref, type Ref } from 'vue';\n\n // Components\n import { BentoButton } from '@/components/button';\n import { BentoInfoIcon } from '@/components/info-icon';\n import { BentoTypography } from '@/components/typography';\n import Copy from '@/components/internal/copy/copy.vue';\n import SearchIcon from '@adyen/ui-assets-icons-16/vue/search';\n\n // Utils\n import { useI18n } from '@/utils/ts/i18n';\n\n // Directives\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n\n // Keys\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '../../structured-list.keys';\n\n import messages from '../../messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const DEFAULT_LABELS_WIDTH = '33%';\n\n const props = defineProps({\n label: null,\n labelInfo: null,\n copy: null,\n search: { type: Function },\n searchTooltip: null,\n truncate: { type: Boolean }\n});\n\n const emit = defineEmits([\"copy\"]);\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n const labelsWidth = inject<Ref<string>>(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, ref(DEFAULT_LABELS_WIDTH));\n const computedLabelStyle = computed(() => `flex-basis:${labelsWidth.value}`);\n const conditionalClasses = computed(() => ({\n 'b-structured-list-item--condensed': isCondensed,\n }));\n\n const valueConditionalClasses = computed(() => ({\n 'b-structured-list-item__value--truncate': props.truncate,\n }));\n\n const emitCopy = () => {\n emit('copy', props.copy);\n };\n\n const labelTypographyVariant = computed(() => (isCondensed ? 'caption' : 'body'));\n</script>\n\n<script lang=\"ts\">\n /**\n * This is an item of the `BentoStructuredList` meant to be used only with that component.\n * It consists of a label/value pair, and also the optional copy and search modifiers.\n *\n * @example\n * import { BentoCurrencyISOCode, BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredListItem, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Shopper\" search='searchShopper' search-tooltip='Find shopper'>\n * <bento-typography>\n * 143442642\n * </bento-status>\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\" copy='123456'>\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\" :value=\"123456\" />\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list-item.scss\" />\n"],"names":["STRUCTURED_LIST_CONDENSED_INJECTION_KEY","STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY","BentoStructuredListLayoutOptions","__default__$1","isCondensed","inject","computedLayout","computed","props","computedLabelsWidth","provide","__default__","messages","DEFAULT_LABELS_WIDTH","t","useI18n","labelsWidth","ref","computedLabelStyle","conditionalClasses","valueConditionalClasses","emitCopy","emit","labelTypographyVariant"],"mappings":";;;;;;;;;;AAAO,MAAAA,IAAA,uBAAA,+CAAA,GACAC,IAAA,uBAAA,4CAAA,GCAAC,IAAA,CAAA,SAAA,SAAA,SAAA,SAAA,SAAA,SAAA,OAAA,GC6DHC,IAAA,CAAA;;;;;;;;iBA3CAC,IAAAC,EAAAL,GAAA,EAAA,GAEAM,IAAAC;AAAA,MAAuB,MAAAL,EAAA,SAAAM,EAAA,MAAA,IAAAA,EAAA,SAAA;AAAA,IACsD,GAG7EC,IAAAF,EAAA,MACIH,IACI,UAGJI,EAAA,cACI,GAAAA,EAAA,WAAA,OAGJ,GAAAF,EAAA,MAAA,MAAA,GAAA,EAAA,CAAA,CAAA,GAA4C;AAGhD,WAAAI,EAAAT,GAAAQ,CAAA;;;;;;;;;;;;;;;;;;;;;;;;GCqEAE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;iBA1DAC,IAAA,OAaA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GACAX,IAAAC,EAAAL,GAAA,EAAA,GACAgB,IAAAX,EAAAJ,GAAAgB,EAAAJ,CAAA,CAAA,GACAK,IAAAX,EAAA,MAAA,cAAAS,EAAA,KAAA,EAAA,GACAG,IAAAZ,EAAA,OAAA;AAAA,MAA2C,qCAAAH;AAAA,IACF,EAAA,GAGzCgB,IAAAb,EAAA,OAAA;AAAA,MAAgD,2CAAAC,EAAA;AAAA,IACK,EAAA,GAGrDa,IAAA,MAAA;AACI,MAAAC,EAAA,QAAAd,EAAA,IAAA;AAAA,IAAuB,GAG3Be,IAAAhB,EAAA,MAAAH,IAAA,YAAA,MAAA;;;;;;;;;;;;;;;;;;"}