@adyen/bento-vue3 1.41.0 → 1.43.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 (263) hide show
  1. package/dist/@types/components.d.ts +4 -0
  2. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-cell/data-grid-cell.vue.d.ts +15 -0
  3. package/dist/@types/packages/vue2/src/components/data-grid/components/data-grid-row/data-grid-row.vue.d.ts +1 -350
  4. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-calculate-column-width/use-calculate-column-width.types.d.ts +1 -0
  5. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-scroller/use-scroller.d.ts +1 -0
  6. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-selector/use-selector.d.ts +3 -2
  7. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.types.d.ts +3 -0
  8. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.vue.d.ts +33 -1
  9. package/dist/@types/packages/vue2/src/components/date-range-picker/components/date-range-picker-calendar/date-range-picker-calendar.vue.d.ts +7 -0
  10. package/dist/@types/packages/vue2/src/components/date-range-picker/date-range-picker.vue.d.ts +7 -0
  11. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/components/file-uploader-file-card-animation/file-uploader-file-card-animation.vue.d.ts +24 -0
  12. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/components/index.d.ts +1 -0
  13. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/composables/use-truncated-file-name.d.ts +10 -0
  14. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/file-uploader-file-card.types.d.ts +11 -0
  15. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/file-uploader-file-card.vue.d.ts +63 -0
  16. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/index.d.ts +1 -0
  17. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/utils/get-file-icon/get-file-icon.d.ts +8 -0
  18. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/utils/get-file-icon-color/get-file-icon-color.d.ts +8 -0
  19. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-file-card/utils/index.d.ts +2 -0
  20. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-restrictions/file-uploader-restrictions.types.d.ts +39 -0
  21. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-restrictions/file-uploader-restrictions.vue.d.ts +68 -0
  22. package/dist/@types/packages/vue2/src/components/file-uploader/components/file-uploader-restrictions/index.d.ts +1 -0
  23. package/dist/@types/packages/vue2/src/components/file-uploader/composables/index.d.ts +1 -0
  24. package/dist/@types/packages/vue2/src/components/file-uploader/composables/use-file-type-list/use-file-type-list.d.ts +11 -0
  25. package/dist/@types/packages/vue2/src/components/file-uploader/file-uploader.types.d.ts +99 -0
  26. package/dist/@types/packages/vue2/src/components/file-uploader/file-uploader.vue.d.ts +85 -0
  27. package/dist/@types/packages/vue2/src/components/file-uploader/index.d.ts +2 -0
  28. package/dist/@types/packages/vue2/src/components/file-uploader/utils/format-file-size/format-file-size.d.ts +9 -0
  29. package/dist/@types/packages/vue2/src/components/file-uploader/utils/get-file-type/get-file-type.d.ts +8 -0
  30. package/dist/@types/packages/vue2/src/components/file-uploader/utils/index.d.ts +3 -0
  31. package/dist/@types/packages/vue2/src/components/file-uploader/utils/read-file/read-file.d.ts +14 -0
  32. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/all-filters-modal.vue.d.ts +277 -37
  33. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/components/all-filters-modal-button/all-filters-modal-button.vue.d.ts +1 -1
  34. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter/base-filter.vue.d.ts +21 -6
  35. package/dist/@types/packages/vue2/src/components/filter-bar/components/base-filter-button/base-filter-button.vue.d.ts +1 -1
  36. package/dist/@types/packages/vue2/src/components/filter-bar/components/boolean-filter/boolean-filter.vue.d.ts +30 -6
  37. package/dist/@types/packages/vue2/src/components/filter-bar/components/date-filter/date-filter.vue.d.ts +30 -6
  38. package/dist/@types/packages/vue2/src/components/filter-bar/components/date-range-filter/date-range-filter.vue.d.ts +44 -6
  39. package/dist/@types/packages/vue2/src/components/filter-bar/components/filter-bar-button/filter-bar-button.vue.d.ts +5 -7
  40. package/dist/@types/packages/vue2/src/components/filter-bar/components/input-filter/input-filter.vue.d.ts +37 -6
  41. package/dist/@types/packages/vue2/src/components/filter-bar/components/input-with-dropdown-filter/input-with-dropdown-filter.vue.d.ts +8 -0
  42. package/dist/@types/packages/vue2/src/components/filter-bar/components/range-filter/range-filter.vue.d.ts +37 -6
  43. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/components/select-filter-button/select-filter-button.vue.d.ts +15 -0
  44. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/components/select-filter-dropdown/select-filter-dropdown.vue.d.ts +15 -0
  45. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/select-filter.props.d.ts +7 -0
  46. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/select-filter.vue.d.ts +9 -0
  47. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-avatar-filter/select-avatar-filter.vue.d.ts +24 -0
  48. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue.d.ts +9 -0
  49. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-currency-filter/select-currency-filter.vue.d.ts +24 -0
  50. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-payment-method-filter/select-payment-method-filter.vue.d.ts +24 -0
  51. package/dist/@types/packages/vue2/src/components/filter-bar/components/select-filter/variants/select-tag-filter/select-tag-filter.vue.d.ts +24 -0
  52. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.types.d.ts +4 -0
  53. package/dist/@types/packages/vue2/src/components/filter-bar/filter-bar.vue.d.ts +274 -30
  54. package/dist/@types/packages/vue2/src/components/input-field/input-field.vue.d.ts +3 -0
  55. package/dist/@types/packages/vue2/src/components/input-field-password/index.d.ts +3 -0
  56. package/dist/@types/packages/vue2/src/components/input-field-password/input-field-password.types.d.ts +77 -0
  57. package/dist/@types/packages/vue2/src/components/input-field-password/input-field-password.vue.d.ts +90 -0
  58. package/dist/@types/packages/vue2/src/components/input-field-password/utilities/input-field-password.validation.d.ts +37 -0
  59. package/dist/@types/packages/vue2/src/components/internal/tooltip/tooltip.vue.d.ts +43 -8
  60. package/dist/@types/packages/vue2/src/index.d.ts +2 -0
  61. package/dist/action-bar.js +1 -1
  62. package/dist/alert.js +1 -1
  63. package/dist/assets/accordion-item.css +1 -1
  64. package/dist/assets/action-bar.css +1 -1
  65. package/dist/assets/base-modal.css +1 -1
  66. package/dist/assets/card.css +1 -1
  67. package/dist/assets/data-grid.css +1 -1
  68. package/dist/assets/date-range-picker.css +1 -1
  69. package/dist/assets/dialog-page.css +1 -1
  70. package/dist/assets/file-uploader.css +1 -0
  71. package/dist/assets/filter-bar.css +1 -1
  72. package/dist/assets/input-field-password.css +1 -0
  73. package/dist/assets/input-field.css +1 -1
  74. package/dist/assets/inspector.css +1 -1
  75. package/dist/assets/menu.css +1 -1
  76. package/dist/assets/modal-fullscreen.css +1 -1
  77. package/dist/assets/popover.css +1 -1
  78. package/dist/assets/sidepanel.css +1 -1
  79. package/dist/assets/step.css +1 -1
  80. package/dist/assets/tooltip.css +1 -1
  81. package/dist/assets/typography.css +1 -1
  82. package/dist/button.js +2 -2
  83. package/dist/card.js +1 -1
  84. package/dist/checkbox.js +2 -2
  85. package/dist/chunks/{action-bar.BZIBGja0.js → action-bar.COQrEUYU.js} +5 -5
  86. package/dist/chunks/{action-bar.BZIBGja0.js.map → action-bar.COQrEUYU.js.map} +1 -1
  87. package/dist/chunks/{alert.CHddA_lK.js → alert.B9V6kUmo.js} +9 -9
  88. package/dist/chunks/{alert.CHddA_lK.js.map → alert.B9V6kUmo.js.map} +1 -1
  89. package/dist/chunks/{base-modal.6IqnDuvf.js → base-modal.ku0lyHOs.js} +2 -2
  90. package/dist/chunks/{base-modal.6IqnDuvf.js.map → base-modal.ku0lyHOs.js.map} +1 -1
  91. package/dist/chunks/{button-actions-with-menu.ByYlrFqZ.js → button-actions-with-menu.Bn7Kdx4v.js} +4 -4
  92. package/dist/chunks/{button-actions-with-menu.ByYlrFqZ.js.map → button-actions-with-menu.Bn7Kdx4v.js.map} +1 -1
  93. package/dist/chunks/{button-actions.ndsyVgzV.js → button-actions.Bjfo46Q_.js} +2 -2
  94. package/dist/chunks/{button-actions.ndsyVgzV.js.map → button-actions.Bjfo46Q_.js.map} +1 -1
  95. package/dist/chunks/{card.B6tMI3KP.js → card.D_XL2TWr.js} +2 -2
  96. package/dist/chunks/{card.B6tMI3KP.js.map → card.D_XL2TWr.js.map} +1 -1
  97. package/dist/chunks/{checkbox-group.Zf-GivDW.js → checkbox-group.BUmkYc2R.js} +4 -4
  98. package/dist/chunks/{checkbox-group.Zf-GivDW.js.map → checkbox-group.BUmkYc2R.js.map} +1 -1
  99. package/dist/chunks/{checkbox.DdMkyTo5.js → checkbox.L94hTcPY.js} +16 -16
  100. package/dist/chunks/{checkbox.DdMkyTo5.js.map → checkbox.L94hTcPY.js.map} +1 -1
  101. package/dist/chunks/{checkmark-circle-fill.ChV7Jy6r.js → checkmark-circle-fill.ClIf1E3H.js} +7 -7
  102. package/dist/chunks/{checkmark-circle-fill.ChV7Jy6r.js.map → checkmark-circle-fill.ClIf1E3H.js.map} +1 -1
  103. package/dist/chunks/{code-snippet.Dp_tDJ-S.js → code-snippet.DbUGxmYi.js} +5 -5
  104. package/dist/chunks/{code-snippet.Dp_tDJ-S.js.map → code-snippet.DbUGxmYi.js.map} +1 -1
  105. package/dist/chunks/{controls-group.RL8WrYdy.js → controls-group.Dg_YRS1e.js} +2 -2
  106. package/dist/chunks/{controls-group.RL8WrYdy.js.map → controls-group.Dg_YRS1e.js.map} +1 -1
  107. package/dist/chunks/{copy.dbbJppdL.js → copy.CnzLQyvJ.js} +2 -2
  108. package/dist/chunks/{copy.dbbJppdL.js.map → copy.CnzLQyvJ.js.map} +1 -1
  109. package/dist/chunks/{dashboard-section.BdRXcY4u.js → dashboard-section.YU5gKDEJ.js} +3 -3
  110. package/dist/chunks/{dashboard-section.BdRXcY4u.js.map → dashboard-section.YU5gKDEJ.js.map} +1 -1
  111. package/dist/chunks/{dashed-underline.D6ke20Vd.js → dashed-underline.BKfUevuM.js} +3 -3
  112. package/dist/chunks/{dashed-underline.D6ke20Vd.js.map → dashed-underline.BKfUevuM.js.map} +1 -1
  113. package/dist/chunks/{data-grid-template.CRxJLJsn.js → data-grid-template.DI27ou71.js} +2 -2
  114. package/dist/chunks/{data-grid-template.CRxJLJsn.js.map → data-grid-template.DI27ou71.js.map} +1 -1
  115. package/dist/chunks/data-grid.DgPWs1hH.js +3374 -0
  116. package/dist/chunks/data-grid.DgPWs1hH.js.map +1 -0
  117. package/dist/chunks/{date-picker.B6HK0sb2.js → date-picker.DDsfecHp.js} +3 -3
  118. package/dist/chunks/{date-picker.B6HK0sb2.js.map → date-picker.DDsfecHp.js.map} +1 -1
  119. package/dist/chunks/{date-range-picker.3iWt1Cd6.js → date-range-picker.DjPmRy0E.js} +205 -202
  120. package/dist/chunks/date-range-picker.DjPmRy0E.js.map +1 -0
  121. package/dist/chunks/dot.pQfhaKda.js +29 -0
  122. package/dist/chunks/dot.pQfhaKda.js.map +1 -0
  123. package/dist/chunks/{dropdown-tag.ChFJ9l5g.js → dropdown-tag.BKDmDRSv.js} +3 -3
  124. package/dist/chunks/{dropdown-tag.ChFJ9l5g.js.map → dropdown-tag.BKDmDRSv.js.map} +1 -1
  125. package/dist/chunks/{dropdown.CMKdLPHi.js → dropdown.DpjMobyf.js} +4 -4
  126. package/dist/chunks/{dropdown.CMKdLPHi.js.map → dropdown.DpjMobyf.js.map} +1 -1
  127. package/dist/chunks/{error-message.CmMyB-k9.js → error-message.BYXS0kUN.js} +2 -2
  128. package/dist/chunks/{error-message.CmMyB-k9.js.map → error-message.BYXS0kUN.js.map} +1 -1
  129. package/dist/chunks/es6.b4enG1py.js.map +1 -1
  130. package/dist/chunks/file-uploader.cRbwpcAw.js +1074 -0
  131. package/dist/chunks/file-uploader.cRbwpcAw.js.map +1 -0
  132. package/dist/chunks/filter-bar.BwJTrH5U.js +2867 -0
  133. package/dist/chunks/filter-bar.BwJTrH5U.js.map +1 -0
  134. package/dist/chunks/{footer-actions.DAlN9pd3.js → footer-actions.DvIVWqWv.js} +2 -2
  135. package/dist/chunks/{footer-actions.DAlN9pd3.js.map → footer-actions.DvIVWqWv.js.map} +1 -1
  136. package/dist/chunks/{form-layout-title.w0J-ymMW.js → form-layout-title.BqNDCnLk.js} +2 -2
  137. package/dist/chunks/{form-layout-title.w0J-ymMW.js.map → form-layout-title.BqNDCnLk.js.map} +1 -1
  138. package/dist/chunks/{header.DQmnYarZ.js → header.C0NBlBJv.js} +4 -4
  139. package/dist/chunks/{header.DQmnYarZ.js.map → header.C0NBlBJv.js.map} +1 -1
  140. package/dist/chunks/index.CWuzEfiV.js +6 -0
  141. package/dist/chunks/index.CWuzEfiV.js.map +1 -0
  142. package/dist/chunks/index.lHdwuJAx.js +366 -0
  143. package/dist/chunks/index.lHdwuJAx.js.map +1 -0
  144. package/dist/chunks/{info-icon.CNPSAUM6.js → info-icon.CUC0fwLb.js} +2 -2
  145. package/dist/chunks/{info-icon.CNPSAUM6.js.map → info-icon.CUC0fwLb.js.map} +1 -1
  146. package/dist/chunks/input-field-password.DxNS4MmO.js +306 -0
  147. package/dist/chunks/input-field-password.DxNS4MmO.js.map +1 -0
  148. package/dist/chunks/{input-field.Bk2p3kIb.js → input-field.BQKEQIZd.js} +84 -83
  149. package/dist/chunks/input-field.BQKEQIZd.js.map +1 -0
  150. package/dist/chunks/{layout-row.rzhGrBQ3.js → layout-row.DcyZ3DP3.js} +2 -2
  151. package/dist/chunks/{layout-row.rzhGrBQ3.js.map → layout-row.DcyZ3DP3.js.map} +1 -1
  152. package/dist/chunks/{listbox-option-tag.58u_cWFs.js → listbox-option-tag.DU_NVK_z.js} +2 -2
  153. package/dist/chunks/{listbox-option-tag.58u_cWFs.js.map → listbox-option-tag.DU_NVK_z.js.map} +1 -1
  154. package/dist/chunks/{loading-button.CHujR70I.js → loading-button.CNWhVIPK.js} +10 -10
  155. package/dist/chunks/{loading-button.CHujR70I.js.map → loading-button.CNWhVIPK.js.map} +1 -1
  156. package/dist/chunks/{menu.DXVN_WLr.js → menu.BpqOdkxR.js} +3 -3
  157. package/dist/chunks/{menu.DXVN_WLr.js.map → menu.BpqOdkxR.js.map} +1 -1
  158. package/dist/chunks/{modal-fullscreen.D96Avr2Q.js → modal-fullscreen.DtgTb1Xh.js} +2 -2
  159. package/dist/chunks/{modal-fullscreen.D96Avr2Q.js.map → modal-fullscreen.DtgTb1Xh.js.map} +1 -1
  160. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.ylWdiVwQ.js → modal.vue_vue_type_script_setup_true_lang.CjD91zJo.js} +4 -4
  161. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.ylWdiVwQ.js.map → modal.vue_vue_type_script_setup_true_lang.CjD91zJo.js.map} +1 -1
  162. package/dist/chunks/{pagination.D_4FRHE9.js → pagination.C34l_EYf.js} +2 -2
  163. package/dist/chunks/{pagination.D_4FRHE9.js.map → pagination.C34l_EYf.js.map} +1 -1
  164. package/dist/chunks/{popover.HArIkKve.js → popover.D9Zw4w9l.js} +2 -2
  165. package/dist/chunks/{popover.HArIkKve.js.map → popover.D9Zw4w9l.js.map} +1 -1
  166. package/dist/chunks/{promo-banner.BRn1iznD.js → promo-banner.CzR9ri5v.js} +2 -2
  167. package/dist/chunks/{promo-banner.BRn1iznD.js.map → promo-banner.CzR9ri5v.js.map} +1 -1
  168. package/dist/chunks/{radio-group.D94e5N12.js → radio-group.DIyCKfOQ.js} +4 -4
  169. package/dist/chunks/{radio-group.D94e5N12.js.map → radio-group.DIyCKfOQ.js.map} +1 -1
  170. package/dist/chunks/{search-bar.D_4u91te.js → search-bar.Dy0dBek2.js} +3 -3
  171. package/dist/chunks/{search-bar.D_4u91te.js.map → search-bar.Dy0dBek2.js.map} +1 -1
  172. package/dist/chunks/{secondary-nav.CQ3aLyrM.js → secondary-nav.DYFnrUIK.js} +3 -3
  173. package/dist/chunks/{secondary-nav.CQ3aLyrM.js.map → secondary-nav.DYFnrUIK.js.map} +1 -1
  174. package/dist/chunks/{segmented-control.CueLfseV.js → segmented-control.B5H5Wiyz.js} +2 -2
  175. package/dist/chunks/{segmented-control.CueLfseV.js.map → segmented-control.B5H5Wiyz.js.map} +1 -1
  176. package/dist/chunks/{selection-card-group.Du3Cwf47.js → selection-card-group.BY8o4PYF.js} +12 -12
  177. package/dist/chunks/{selection-card-group.Du3Cwf47.js.map → selection-card-group.BY8o4PYF.js.map} +1 -1
  178. package/dist/chunks/show.ChPQTrAT.js +64 -0
  179. package/dist/chunks/show.ChPQTrAT.js.map +1 -0
  180. package/dist/chunks/{sidepanel.CGbl5x5B.js → sidepanel.BywianGe.js} +2 -2
  181. package/dist/chunks/{sidepanel.CGbl5x5B.js.map → sidepanel.BywianGe.js.map} +1 -1
  182. package/dist/chunks/step.Db0UJ8mx.js +264 -0
  183. package/dist/chunks/step.Db0UJ8mx.js.map +1 -0
  184. package/dist/chunks/{structured-list-item.CujUEOTK.js → structured-list-item.C_6ju-IY.js} +4 -4
  185. package/dist/chunks/{structured-list-item.CujUEOTK.js.map → structured-list-item.C_6ju-IY.js.map} +1 -1
  186. package/dist/chunks/{summary-grid-item-custom.DF9waESp.js → summary-grid-item-custom.FxBnzHzb.js} +4 -4
  187. package/dist/chunks/{summary-grid-item-custom.DF9waESp.js.map → summary-grid-item-custom.FxBnzHzb.js.map} +1 -1
  188. package/dist/chunks/{tag.wfnhGWVG.js → tag.xvqrfTwk.js} +2 -2
  189. package/dist/chunks/{tag.wfnhGWVG.js.map → tag.xvqrfTwk.js.map} +1 -1
  190. package/dist/chunks/{teleport.L8qFCYpr.js → teleport.CI0k6eaC.js} +9 -9
  191. package/dist/chunks/teleport.CI0k6eaC.js.map +1 -0
  192. package/dist/chunks/{textarea.DlPNxnUQ.js → textarea.vAp6HFi9.js} +2 -2
  193. package/dist/chunks/{textarea.DlPNxnUQ.js.map → textarea.vAp6HFi9.js.map} +1 -1
  194. package/dist/chunks/{timeline-item.B8VvkDfR.js → timeline-item.ND_EMuwP.js} +5 -5
  195. package/dist/chunks/{timeline-item.B8VvkDfR.js.map → timeline-item.ND_EMuwP.js.map} +1 -1
  196. package/dist/chunks/tooltip.BvJoy09y.js +203 -0
  197. package/dist/chunks/tooltip.BvJoy09y.js.map +1 -0
  198. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.CGpbGgfc.js → tutorial.vue_vue_type_script_setup_true_lang.LBw_ALfS.js} +4 -4
  199. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.CGpbGgfc.js.map → tutorial.vue_vue_type_script_setup_true_lang.LBw_ALfS.js.map} +1 -1
  200. package/dist/chunks/{use-cached-selected-values.DaRzXFIt.js → use-cached-selected-values.BOZK76mN.js} +8 -5
  201. package/dist/chunks/{use-cached-selected-values.DaRzXFIt.js.map → use-cached-selected-values.BOZK76mN.js.map} +1 -1
  202. package/dist/chunks/{warning-filled.Dm_HhqzW.js → warning-filled.OUOUbA6k.js} +2 -2
  203. package/dist/chunks/{warning-filled.Dm_HhqzW.js.map → warning-filled.OUOUbA6k.js.map} +1 -1
  204. package/dist/code-snippet.js +1 -1
  205. package/dist/dashboard-template.js +1 -1
  206. package/dist/dashed-underline.js +1 -1
  207. package/dist/data-grid-template.js +1 -1
  208. package/dist/data-grid.js +1 -1
  209. package/dist/date-picker.js +1 -1
  210. package/dist/date-range-picker.js +1 -1
  211. package/dist/dropdown.js +3 -3
  212. package/dist/file-uploader.js +5 -0
  213. package/dist/file-uploader.js.map +1 -0
  214. package/dist/filter-bar.js +1 -1
  215. package/dist/form-layout.js +1 -1
  216. package/dist/header.js +1 -1
  217. package/dist/index.js +228 -219
  218. package/dist/index.js.map +1 -1
  219. package/dist/info-icon.js +1 -1
  220. package/dist/input-field-password.js +10 -0
  221. package/dist/input-field-password.js.map +1 -0
  222. package/dist/input-field.js +1 -1
  223. package/dist/internal.js +7 -7
  224. package/dist/layout.js +1 -1
  225. package/dist/menu.js +1 -1
  226. package/dist/modal-fullscreen.js +1 -1
  227. package/dist/modal.js +2 -2
  228. package/dist/pagination.js +1 -1
  229. package/dist/popover.js +1 -1
  230. package/dist/promo-banner.js +1 -1
  231. package/dist/radio-group.js +1 -1
  232. package/dist/search-bar.js +2 -2
  233. package/dist/secondary-nav.js +1 -1
  234. package/dist/segmented-control.js +1 -1
  235. package/dist/selection-card.js +1 -1
  236. package/dist/sidepanel.js +1 -1
  237. package/dist/stepper.js +1 -1
  238. package/dist/structured-list.js +1 -1
  239. package/dist/styles/bento-dark.css +98 -34
  240. package/dist/styles/bento-light.css +98 -34
  241. package/dist/styles/bento.css +98 -34
  242. package/dist/styles/legacy.css +106 -42
  243. package/dist/styles/styleguide.css +98 -34
  244. package/dist/summary-grid.js +1 -1
  245. package/dist/tag.js +1 -1
  246. package/dist/textarea.js +1 -1
  247. package/dist/timeline.js +1 -1
  248. package/dist/tutorial.js +1 -1
  249. package/dist/web-types.json +1 -1
  250. package/package.json +9 -8
  251. package/dist/chunks/data-grid.BC2tOBxm.js +0 -3229
  252. package/dist/chunks/data-grid.BC2tOBxm.js.map +0 -1
  253. package/dist/chunks/date-range-picker.3iWt1Cd6.js.map +0 -1
  254. package/dist/chunks/filter-bar.pKcJryD3.js +0 -2898
  255. package/dist/chunks/filter-bar.pKcJryD3.js.map +0 -1
  256. package/dist/chunks/index.ChdIlujs.js +0 -248
  257. package/dist/chunks/index.ChdIlujs.js.map +0 -1
  258. package/dist/chunks/input-field.Bk2p3kIb.js.map +0 -1
  259. package/dist/chunks/step.CwuThZ0G.js +0 -285
  260. package/dist/chunks/step.CwuThZ0G.js.map +0 -1
  261. package/dist/chunks/teleport.L8qFCYpr.js.map +0 -1
  262. package/dist/chunks/tooltip.BEl_LdFo.js +0 -188
  263. package/dist/chunks/tooltip.BEl_LdFo.js.map +0 -1
@@ -0,0 +1,64 @@
1
+ import { openBlock as e, createElementBlock as o, mergeProps as l, toDisplayString as n, createCommentVNode as L, createElementVNode as s } from "vue";
2
+ import { _ as p } from "./_plugin-vue_export-helper.CHgC5LLL.js";
3
+ import "../assets/cross.css";
4
+ let i = 0;
5
+ const g = {
6
+ beforeCreate() {
7
+ this.uuid = i.toString(), i += 1;
8
+ }
9
+ }, $ = { key: 0 };
10
+ function m(C, t, u, a, d, f) {
11
+ return e(), o("svg", l({ role: "img" }, C.$attrs, {
12
+ class: "ui-assets-icons-16",
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ width: "16",
15
+ height: "16",
16
+ fill: "none"
17
+ }), [
18
+ C.$attrs["svg-title"] ? (e(), o("title", $, n(C.$attrs["svg-title"]), 1)) : L("", !0),
19
+ t[0] || (t[0] = s("path", {
20
+ fill: "#00112C",
21
+ d: "M2.99035 14.0608L14.051 3.00011L12.9903 1.93945L1.92969 13.0001L2.99035 14.0608Z"
22
+ }, null, -1)),
23
+ t[1] || (t[1] = s("path", {
24
+ fill: "#00112C",
25
+ d: "M13.9404 5.23L12.8704 6.3C13.4704 6.97 13.9004 7.62 14.1304 8C13.4704 9.07 11.2504 12.25 8.00039 12.25C7.67039 12.25 7.34039 12.22 7.03039 12.14L5.80039 13.37C6.48039 13.61 7.21039 13.75 8.00039 13.75C12.7425 13.75 15.4838 8.69421 15.6649 8.36011C15.6671 8.35603 15.6689 8.35265 15.6704 8.35L15.8504 8L15.6704 7.65C15.6204 7.55 15.0204 6.43 13.9404 5.23Z"
26
+ }, null, -1)),
27
+ t[2] || (t[2] = s("path", {
28
+ fill: "#00112C",
29
+ d: "M8.96039 3.85C8.65039 3.78 8.33039 3.75 8.00039 3.75C4.75039 3.75 2.53039 6.93 1.87039 8C2.10039 8.38 2.53039 9.02 3.12039 9.69L2.06039 10.75C0.98039 9.56 0.380391 8.45 0.330391 8.35L0.150391 8L0.330391 7.65C0.331838 7.64735 0.333668 7.64397 0.33588 7.63989C0.517034 7.30578 3.25829 2.25 8.00039 2.25C8.79039 2.25 9.52039 2.39 10.1904 2.62L8.96039 3.85Z"
30
+ }, null, -1))
31
+ ], 16);
32
+ }
33
+ const S = /* @__PURE__ */ p(g, [["render", m]]);
34
+ let r = 0;
35
+ const w = {
36
+ beforeCreate() {
37
+ this.uuid = r.toString(), r += 1;
38
+ }
39
+ }, h = { key: 0 };
40
+ function M(C, t, u, a, d, f) {
41
+ return e(), o("svg", l({ role: "img" }, C.$attrs, {
42
+ class: "ui-assets-icons-16",
43
+ xmlns: "http://www.w3.org/2000/svg",
44
+ width: "16",
45
+ height: "16",
46
+ fill: "none"
47
+ }), [
48
+ C.$attrs["svg-title"] ? (e(), o("title", h, n(C.$attrs["svg-title"]), 1)) : L("", !0),
49
+ t[0] || (t[0] = s("path", {
50
+ fill: "#00112C",
51
+ d: "M8 5.25C6.48122 5.25 5.25 6.48122 5.25 8C5.25 9.51878 6.48122 10.75 8 10.75C9.51878 10.75 10.75 9.51878 10.75 8C10.75 6.48122 9.51878 5.25 8 5.25ZM6.75 8C6.75 7.30964 7.30964 6.75 8 6.75C8.69036 6.75 9.25 7.30964 9.25 8C9.25 8.69036 8.69036 9.25 8 9.25C7.30964 9.25 6.75 8.69036 6.75 8Z"
52
+ }, null, -1)),
53
+ t[1] || (t[1] = s("path", {
54
+ fill: "#00112C",
55
+ d: "M7.99964 2.25C5.50387 2.25 3.57073 3.66588 2.3086 4.9806C1.6704 5.64539 1.18078 6.30745 0.850599 6.80272C0.685043 7.05106 0.558349 7.2593 0.471981 7.40748C0.428769 7.48162 0.395568 7.54087 0.372564 7.58275C0.36106 7.60369 0.352097 7.6203 0.345701 7.63227L0.338032 7.64672L0.335646 7.65126L0.334488 7.65348L0.154297 8L0.334225 8.34601L0.999638 8C0.334225 8.34601 0.334814 8.34715 0.334814 8.34715L0.335646 8.34874L0.338032 8.35328L0.345701 8.36773C0.352097 8.3797 0.36106 8.39631 0.372564 8.41725C0.395568 8.45913 0.428769 8.51838 0.471981 8.59252C0.558349 8.7407 0.685043 8.94894 0.850599 9.19728C1.18078 9.69255 1.6704 10.3546 2.3086 11.0194C3.57073 12.3341 5.50387 13.75 7.99964 13.75C10.4954 13.75 12.4285 12.3341 13.6907 11.0194C14.3289 10.3546 14.8185 9.69255 15.1487 9.19728C15.3142 8.94894 15.4409 8.7407 15.5273 8.59252C15.5705 8.51838 15.6037 8.45913 15.6267 8.41725C15.6382 8.39631 15.6472 8.3797 15.6536 8.36773L15.6612 8.35328L15.6636 8.34874L15.6648 8.34652L15.845 8L15.6651 7.65399L14.9996 8C15.6651 7.65399 15.6645 7.65285 15.6645 7.65285L15.6636 7.65126L15.6612 7.64672L15.6536 7.63227C15.6472 7.6203 15.6382 7.60369 15.6267 7.58275C15.6037 7.54087 15.5705 7.48162 15.5273 7.40748C15.4409 7.2593 15.3142 7.05106 15.1487 6.80272C14.8185 6.30745 14.3289 5.64539 13.6907 4.9806C12.4285 3.66588 10.4954 2.25 7.99964 2.25ZM14.9996 8L15.6648 8.34652C15.6648 8.34652 15.6651 8.34601 14.9996 8ZM0.999638 8L0.334488 7.65348C0.334488 7.65348 0.334225 7.65399 0.999638 8ZM2.09867 8.36522C2.00649 8.22694 1.92852 8.10363 1.86519 8C1.92852 7.89637 2.00649 7.77306 2.09867 7.63478C2.39349 7.19255 2.82887 6.60461 3.39068 6.0194C4.52855 4.83412 6.09541 3.75 7.99964 3.75C9.90387 3.75 11.4707 4.83412 12.6086 6.0194C13.1704 6.60461 13.6058 7.19255 13.9006 7.63478C13.9928 7.77306 14.0708 7.89637 14.1341 8C14.0708 8.10363 13.9928 8.22694 13.9006 8.36522C13.6058 8.80745 13.1704 9.39539 12.6086 9.9806C11.4707 11.1659 9.90387 12.25 7.99964 12.25C6.09541 12.25 4.52855 11.1659 3.39068 9.9806C2.82887 9.39539 2.39349 8.80745 2.09867 8.36522Z"
56
+ }, null, -1))
57
+ ], 16);
58
+ }
59
+ const c = /* @__PURE__ */ p(w, [["render", M]]);
60
+ export {
61
+ S as H,
62
+ c as S
63
+ };
64
+ //# sourceMappingURL=show.ChPQTrAT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"show.ChPQTrAT.js","sources":["../../../../node_modules/.pnpm/@adyen+ui-assets-icons-16@4.1.0_vue@2.7.16/node_modules/@adyen/ui-assets-icons-16/dist/vue/hide.vue","../../../../node_modules/.pnpm/@adyen+ui-assets-icons-16@4.1.0_vue@2.7.16/node_modules/@adyen/ui-assets-icons-16/dist/vue/show.vue"],"sourcesContent":["\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><path fill=\"#00112C\" d=\"M2.99035 14.0608L14.051 3.00011L12.9903 1.93945L1.92969 13.0001L2.99035 14.0608Z\"/><path fill=\"#00112C\" d=\"M13.9404 5.23L12.8704 6.3C13.4704 6.97 13.9004 7.62 14.1304 8C13.4704 9.07 11.2504 12.25 8.00039 12.25C7.67039 12.25 7.34039 12.22 7.03039 12.14L5.80039 13.37C6.48039 13.61 7.21039 13.75 8.00039 13.75C12.7425 13.75 15.4838 8.69421 15.6649 8.36011C15.6671 8.35603 15.6689 8.35265 15.6704 8.35L15.8504 8L15.6704 7.65C15.6204 7.55 15.0204 6.43 13.9404 5.23Z\"/><path fill=\"#00112C\" d=\"M8.96039 3.85C8.65039 3.78 8.33039 3.75 8.00039 3.75C4.75039 3.75 2.53039 6.93 1.87039 8C2.10039 8.38 2.53039 9.02 3.12039 9.69L2.06039 10.75C0.98039 9.56 0.380391 8.45 0.330391 8.35L0.150391 8L0.330391 7.65C0.331838 7.64735 0.333668 7.64397 0.33588 7.63989C0.517034 7.30578 3.25829 2.25 8.00039 2.25C8.79039 2.25 9.52039 2.39 10.1904 2.62L8.96039 3.85Z\"/></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style>\n @import '../css/main.css';\n</style>\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><path fill=\"#00112C\" d=\"M8 5.25C6.48122 5.25 5.25 6.48122 5.25 8C5.25 9.51878 6.48122 10.75 8 10.75C9.51878 10.75 10.75 9.51878 10.75 8C10.75 6.48122 9.51878 5.25 8 5.25ZM6.75 8C6.75 7.30964 7.30964 6.75 8 6.75C8.69036 6.75 9.25 7.30964 9.25 8C9.25 8.69036 8.69036 9.25 8 9.25C7.30964 9.25 6.75 8.69036 6.75 8Z\"/><path fill=\"#00112C\" d=\"M7.99964 2.25C5.50387 2.25 3.57073 3.66588 2.3086 4.9806C1.6704 5.64539 1.18078 6.30745 0.850599 6.80272C0.685043 7.05106 0.558349 7.2593 0.471981 7.40748C0.428769 7.48162 0.395568 7.54087 0.372564 7.58275C0.36106 7.60369 0.352097 7.6203 0.345701 7.63227L0.338032 7.64672L0.335646 7.65126L0.334488 7.65348L0.154297 8L0.334225 8.34601L0.999638 8C0.334225 8.34601 0.334814 8.34715 0.334814 8.34715L0.335646 8.34874L0.338032 8.35328L0.345701 8.36773C0.352097 8.3797 0.36106 8.39631 0.372564 8.41725C0.395568 8.45913 0.428769 8.51838 0.471981 8.59252C0.558349 8.7407 0.685043 8.94894 0.850599 9.19728C1.18078 9.69255 1.6704 10.3546 2.3086 11.0194C3.57073 12.3341 5.50387 13.75 7.99964 13.75C10.4954 13.75 12.4285 12.3341 13.6907 11.0194C14.3289 10.3546 14.8185 9.69255 15.1487 9.19728C15.3142 8.94894 15.4409 8.7407 15.5273 8.59252C15.5705 8.51838 15.6037 8.45913 15.6267 8.41725C15.6382 8.39631 15.6472 8.3797 15.6536 8.36773L15.6612 8.35328L15.6636 8.34874L15.6648 8.34652L15.845 8L15.6651 7.65399L14.9996 8C15.6651 7.65399 15.6645 7.65285 15.6645 7.65285L15.6636 7.65126L15.6612 7.64672L15.6536 7.63227C15.6472 7.6203 15.6382 7.60369 15.6267 7.58275C15.6037 7.54087 15.5705 7.48162 15.5273 7.40748C15.4409 7.2593 15.3142 7.05106 15.1487 6.80272C14.8185 6.30745 14.3289 5.64539 13.6907 4.9806C12.4285 3.66588 10.4954 2.25 7.99964 2.25ZM14.9996 8L15.6648 8.34652C15.6648 8.34652 15.6651 8.34601 14.9996 8ZM0.999638 8L0.334488 7.65348C0.334488 7.65348 0.334225 7.65399 0.999638 8ZM2.09867 8.36522C2.00649 8.22694 1.92852 8.10363 1.86519 8C1.92852 7.89637 2.00649 7.77306 2.09867 7.63478C2.39349 7.19255 2.82887 6.60461 3.39068 6.0194C4.52855 4.83412 6.09541 3.75 7.99964 3.75C9.90387 3.75 11.4707 4.83412 12.6086 6.0194C13.1704 6.60461 13.6058 7.19255 13.9006 7.63478C13.9928 7.77306 14.0708 7.89637 14.1341 8C14.0708 8.10363 13.9928 8.22694 13.9006 8.36522C13.6058 8.80745 13.1704 9.39539 12.6086 9.9806C11.4707 11.1659 9.90387 12.25 7.99964 12.25C6.09541 12.25 4.52855 11.1659 3.39068 9.9806C2.82887 9.39539 2.39349 8.80745 2.09867 8.36522Z\"/></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style>\n @import '../css/main.css';\n</style>\n"],"names":["uuid$1","openBlock","createElementBlock","mergeProps","_ctx","createCommentVNode","uuid"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;;AARR,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;gFAFzHC,EAAA,IAAA,EAAA;AAAA;MAE8M,MAAA;AAAA,MAAe,GAAA;AAAA;;MAA4F,MAAA;AAAA,MAAe,GAAA;AAAA;;MAA8W,MAAA;AAAA,MAAe,GAAA;AAAA;;;;ACGjsB,IAAAC,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;;AARR,SAAAL,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;gFAFzHC,EAAA,IAAA,EAAA;AAAA;MAE8M,MAAA;AAAA,MAAe,GAAA;AAAA;;MAA0S,MAAA;AAAA,MAAe,GAAA;AAAA;;;;","x_google_ignoreList":[0,1]}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as S, openBlock as f, createBlock as T, unref as t, createSlots as K, withCtx as n, createElementVNode as E, createVNode as c, createTextVNode as J, toDisplayString as Y, renderSlot as O, toRefs as M, ref as i, computed as C, watch as j, nextTick as z, provide as A, createElementBlock as D, normalizeClass as H, withKeys as q, withModifiers as Q, withDirectives as W, createCommentVNode as X } from "vue";
2
2
  import { B as y, d as Z } from "./typography.DNzU41ah.js";
3
- import { F as ee } from "./footer-actions.DAlN9pd3.js";
3
+ import { F as ee } from "./footer-actions.DvIVWqWv.js";
4
4
  import { D as te, B as se, b as ae, a as ie } from "./dialog-page.CnDOg98_.js";
5
5
  import { _ as N } from "./_plugin-vue_export-helper.CHgC5LLL.js";
6
6
  import { B as ne } from "./button.pwNCxwPu.js";
@@ -251,4 +251,4 @@ export {
251
251
  ke as a,
252
252
  Ge as s
253
253
  };
254
- //# sourceMappingURL=sidepanel.CGbl5x5B.js.map
254
+ //# sourceMappingURL=sidepanel.BywianGe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidepanel.CGbl5x5B.js","sources":["../../../vue2/src/components/sidepanel/components/sidepanel-page.vue","../../../vue2/src/components/sidepanel/sidepanel.types.ts","../../../vue2/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 { PropType } from 'vue';\n\n import { 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, nextTick, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { BentoSidepanelEvent } from './sidepanel.types';\n import {\n BentoDialogPageAnimation,\n BentoDialogPageConfigData,\n 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 * Emits update event when page is changed internally\n */\n (e: BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page: string): void;\n /**\n * Emits close-sidepanel event when the sidepanel is closed\n */\n (e: BentoSidepanelEvent.UPDATE_IS_OPEN, isOpen: boolean): void;\n }>();\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<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\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) {\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.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 // Watching isOpen prop to toggle open/close the dialog element\n watch(\n () => isOpen.value,\n async () => {\n // Wait for sidepanel ref to be created\n await nextTick();\n\n if (!sidepanel.value) {\n return;\n }\n\n if (isOpen.value) {\n internalIsOpen.value = true;\n sidepanel.value.showModal();\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (sidepanel.value.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true }\n );\n\n // 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","props","__props","emit","__emit","activePage","isOpen","toRefs","t","useI18n","sidepanel","ref","pages","previousPages","animation","BentoDialogPageAnimation","isClosing","sidepanelId","generateUid","internalIsOpen","isAnimationActive","conditionalClasses","computed","closeSidepanelAfterAnimation","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","computedHideCloseButton","watch","nextTick","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":";;;;;;;;;;;;;4IA2IIA,KAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3IQ,IAAAC,IAAA,kBAAAC,OACRA,EAAA,qBAAA,sBACAA,EAAA,iBAAA,kBAFQA,IAAAD,KAAA,CAAA,CAAA;;;;;;;;;;;;;;GC6PRE,KAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAhNA,UAAAC,IAAAC,GA0CAC,IAAAC,GAYA,EAAA,YAAAC,GAAA,QAAAC,EAAA,IAAAC,EAAAN,CAAA,GACA,EAAA,GAAAO,EAAA,IAAAC,GAAA,EAAA,UAAAT,EAAA,CAAA,GACAU,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAA,CAAA,CAAA,GACAE,IAAAF,EAAA,CAAA,CAAA,GACAG,IAAAH,EAAAI,GAAA,uBAAA,GACAC,IAAAL,EAAA,EAAA,GACAM,IAAAC,GAAA,WAAA,GACAC,IAAAR,EAAA,EAAA,GACAS,IAAAT,EAAA,EAAA,GAGAU,IAAAC,EAAA,OAAA;AAAA,MAA2C,qBAAAN,EAAA;AAAA,MACR,0BAAAI,EAAA;AAAA,IACa,EAAA,GAIhDG,IAAA,MAAA;AACI,MAAAP,EAAA,UACIN,EAAA,MAAA,MAAA,GACAG,EAAA,MAAA,CAAA,KACIV,EAAAN,EAAA,oBAAAgB,EAAA,MAAA,CAAA,CAAA,GAEJA,EAAA,QAAA,CAAA,GACAG,EAAA,QAAA,IACAG,EAAA,QAAA,IACAhB,EAAAN,EAAA,gBAAA,EAAA;AAAA,IACJ,GAGJ2B,IAAA,MAAA;AACI,MAAAd,EAAA,MAAA,SAGAM,EAAA,QAAA;AAAA,IAAkB,GAGtBS,IAAA,MAAA;AACI,MAAAxB,EAAA,iBACIuB,EAAA;AAAA,IACJ,GAIJE,IAAAJ,EAAA,MACIrB,EAAA,oBAAA,OACIA,EAAA,kBAGJ,CAAAA,EAAA,aAAc;AAIlB,IAAA0B;AAAA,MAAA,MAAArB,EAAA;AAAA,MACiB,YAAA;AAKT,QAFA,MAAAsB,EAAA,GAEAlB,EAAA,UAIAJ,EAAA,SACIa,EAAA,QAAA,IACAT,EAAA,MAAA,UAAA,GACAG,EAAA,MAAA,UACIA,EAAA,MAAA,KAAAR,EAAA,KAAA,KACJK,EAAA,MAAA,QAEAc,EAAA;AAAA,MACJ;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;AAItB,UAAAK,IAAA,CAAAC,MAAA3B,EAAAN,EAAA,oBAAAiC,CAAA,GAGAC,IAAA,CAAAC,MAAA,MAAA;;AACI,MAAApB,EAAA,SAAAqB,IAAArB,EAAA,UAAA,gBAAAqB,EAAA,OAAA,CAAAC,MAAAA,MAAAF;AAAA,IAAqE,GAIzEG,IAAA,CAAAD,OACItB,EAAA,MAAA,KAAAsB,CAAA,GAEA,EAAA,gBAAAH,EAAAG,CAAA,EAAA;AAGJ,WAAAE,EAAAC,IAAA;AAAA,MAAqE,YAAAhC;AAAA,MACjE,WAAAS;AAAA,MACA,mBAAAM;AAAA,MACA,QAAAD;AAAA,MACQ,OAAAP;AAAA,MACR,eAAAC;AAAA,MACA,YAAAgB;AAAA,IACA,CAAA,GAEJO,EAAAE,IAAAH,CAAA,GAGAC,EAAAG,IAAAtB,CAAA,GAEA,CAAAhB,EAAA,iBAAAA,EAAA,oBAAA,QACIuC;AAAA,MAAA;AAAA,MACI;AAAA,MACA;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"sidepanel.BywianGe.js","sources":["../../../vue2/src/components/sidepanel/components/sidepanel-page.vue","../../../vue2/src/components/sidepanel/sidepanel.types.ts","../../../vue2/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 { PropType } from 'vue';\n\n import { 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, nextTick, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { BentoSidepanelEvent } from './sidepanel.types';\n import {\n BentoDialogPageAnimation,\n BentoDialogPageConfigData,\n 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 * Emits update event when page is changed internally\n */\n (e: BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page: string): void;\n /**\n * Emits close-sidepanel event when the sidepanel is closed\n */\n (e: BentoSidepanelEvent.UPDATE_IS_OPEN, isOpen: boolean): void;\n }>();\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<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\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) {\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.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 // Watching isOpen prop to toggle open/close the dialog element\n watch(\n () => isOpen.value,\n async () => {\n // Wait for sidepanel ref to be created\n await nextTick();\n\n if (!sidepanel.value) {\n return;\n }\n\n if (isOpen.value) {\n internalIsOpen.value = true;\n sidepanel.value.showModal();\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (sidepanel.value.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true }\n );\n\n // 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","props","__props","emit","__emit","activePage","isOpen","toRefs","t","useI18n","sidepanel","ref","pages","previousPages","animation","BentoDialogPageAnimation","isClosing","sidepanelId","generateUid","internalIsOpen","isAnimationActive","conditionalClasses","computed","closeSidepanelAfterAnimation","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","computedHideCloseButton","watch","nextTick","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":";;;;;;;;;;;;;4IA2IIA,KAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3IQ,IAAAC,IAAA,kBAAAC,OACRA,EAAA,qBAAA,sBACAA,EAAA,iBAAA,kBAFQA,IAAAD,KAAA,CAAA,CAAA;;;;;;;;;;;;;;GC6PRE,KAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAhNA,UAAAC,IAAAC,GA0CAC,IAAAC,GAYA,EAAA,YAAAC,GAAA,QAAAC,EAAA,IAAAC,EAAAN,CAAA,GACA,EAAA,GAAAO,EAAA,IAAAC,GAAA,EAAA,UAAAT,EAAA,CAAA,GACAU,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAA,CAAA,CAAA,GACAE,IAAAF,EAAA,CAAA,CAAA,GACAG,IAAAH,EAAAI,GAAA,uBAAA,GACAC,IAAAL,EAAA,EAAA,GACAM,IAAAC,GAAA,WAAA,GACAC,IAAAR,EAAA,EAAA,GACAS,IAAAT,EAAA,EAAA,GAGAU,IAAAC,EAAA,OAAA;AAAA,MAA2C,qBAAAN,EAAA;AAAA,MACR,0BAAAI,EAAA;AAAA,IACa,EAAA,GAIhDG,IAAA,MAAA;AACI,MAAAP,EAAA,UACIN,EAAA,MAAA,MAAA,GACAG,EAAA,MAAA,CAAA,KACIV,EAAAN,EAAA,oBAAAgB,EAAA,MAAA,CAAA,CAAA,GAEJA,EAAA,QAAA,CAAA,GACAG,EAAA,QAAA,IACAG,EAAA,QAAA,IACAhB,EAAAN,EAAA,gBAAA,EAAA;AAAA,IACJ,GAGJ2B,IAAA,MAAA;AACI,MAAAd,EAAA,MAAA,SAGAM,EAAA,QAAA;AAAA,IAAkB,GAGtBS,IAAA,MAAA;AACI,MAAAxB,EAAA,iBACIuB,EAAA;AAAA,IACJ,GAIJE,IAAAJ,EAAA,MACIrB,EAAA,oBAAA,OACIA,EAAA,kBAGJ,CAAAA,EAAA,aAAc;AAIlB,IAAA0B;AAAA,MAAA,MAAArB,EAAA;AAAA,MACiB,YAAA;AAKT,QAFA,MAAAsB,EAAA,GAEAlB,EAAA,UAIAJ,EAAA,SACIa,EAAA,QAAA,IACAT,EAAA,MAAA,UAAA,GACAG,EAAA,MAAA,UACIA,EAAA,MAAA,KAAAR,EAAA,KAAA,KACJK,EAAA,MAAA,QAEAc,EAAA;AAAA,MACJ;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;AAItB,UAAAK,IAAA,CAAAC,MAAA3B,EAAAN,EAAA,oBAAAiC,CAAA,GAGAC,IAAA,CAAAC,MAAA,MAAA;;AACI,MAAApB,EAAA,SAAAqB,IAAArB,EAAA,UAAA,gBAAAqB,EAAA,OAAA,CAAAC,MAAAA,MAAAF;AAAA,IAAqE,GAIzEG,IAAA,CAAAD,OACItB,EAAA,MAAA,KAAAsB,CAAA,GAEA,EAAA,gBAAAH,EAAAG,CAAA,EAAA;AAGJ,WAAAE,EAAAC,IAAA;AAAA,MAAqE,YAAAhC;AAAA,MACjE,WAAAS;AAAA,MACA,mBAAAM;AAAA,MACA,QAAAD;AAAA,MACQ,OAAAP;AAAA,MACR,eAAAC;AAAA,MACA,YAAAgB;AAAA,IACA,CAAA,GAEJO,EAAAE,IAAAH,CAAA,GAGAC,EAAAG,IAAAtB,CAAA,GAEA,CAAAhB,EAAA,iBAAAA,EAAA,oBAAA,QACIuC;AAAA,MAAA;AAAA,MACI;AAAA,MACA;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,264 @@
1
+ import { defineComponent as F, ref as i, computed as s, watch as O, provide as K, readonly as ne, openBlock as _, createElementBlock as T, withDirectives as U, mergeProps as se, toHandlers as ae, unref as d, renderSlot as $, createVNode as B, withCtx as E, createTextVNode as Z, toDisplayString as j, useSlots as oe, inject as le, onMounted as ue, onBeforeUnmount as re, normalizeClass as ie, createBlock as z, Fragment as pe, createElementVNode as ce, vShow as ve } from "vue";
2
+ import { B as P } from "./typography.DNzU41ah.js";
3
+ import "./events.FNmSWp_P.js";
4
+ import { B as R, a as de } from "./keyboard-navigation.C3QMVRKY.js";
5
+ import { u as me } from "./i18n.CPGoe9tN.js";
6
+ import { _ as G } from "./_plugin-vue_export-helper.CHgC5LLL.js";
7
+ import { B as be } from "./base-button.N4QTXNIp.js";
8
+ import { C as fe } from "./checkmark-small.DEc2T64_.js";
9
+ import { D as Se } from "./dot.pQfhaKda.js";
10
+ import "../assets/step.css";
11
+ const _e = (t) => {
12
+ function p(v) {
13
+ return ({ detail: c }) => {
14
+ var r;
15
+ c.preventDefault();
16
+ const u = t.value.indexOf(document.activeElement);
17
+ u < 0 || (r = t.value[u + v]) == null || r.focus();
18
+ };
19
+ }
20
+ const l = p(-1), o = p(1);
21
+ return {
22
+ [R.ARROW_DOWN]: o,
23
+ [R.ARROW_RIGHT]: o,
24
+ [R.ARROW_UP]: l,
25
+ [R.ARROW_LEFT]: l
26
+ };
27
+ }, ye = (t) => {
28
+ const p = t.buttonElement.value.parentElement, l = p.parentElement;
29
+ return Array.from(l.children).indexOf(p);
30
+ }, M = (t) => ({ registerStep: (o) => {
31
+ const v = ye(o);
32
+ t.value.splice(v, 0, {
33
+ stepContent: o.stepContent,
34
+ buttonElement: o.buttonElement,
35
+ substeps: o.substeps
36
+ });
37
+ }, removeStep: (o) => {
38
+ t.value.splice(
39
+ t.value.findIndex((v) => v.buttonElement === o.buttonElement.value),
40
+ 1
41
+ );
42
+ } }), w = Symbol("stepper state");
43
+ var H = /* @__PURE__ */ ((t) => (t.LINEAR = "linear", t.NON_LINEAR = "non-linear", t))(H || {}), W = /* @__PURE__ */ ((t) => (t.HORIZONTAL = "horizontal", t.VERTICAL = "vertical", t))(W || {});
44
+ const q = {
45
+ "en-US": {
46
+ step: "Step {currentIndex}/{totalSteps} {content}"
47
+ }
48
+ }, xe = { class: "b-stepper" }, ge = {
49
+ i18n: { messages: q },
50
+ name: "stepper"
51
+ }, Ee = /* @__PURE__ */ F({
52
+ ...ge,
53
+ props: {
54
+ /**
55
+ * Type of stepper; defines how the stepper should behave. Default: linear
56
+ * @values linear, non-linear
57
+ */
58
+ type: {
59
+ type: String,
60
+ default: "linear"
61
+ },
62
+ /**
63
+ * Stepper variant; defines how the stepper should be displayed. Default: vertical
64
+ * @values vertical, horizontal
65
+ */
66
+ variant: {
67
+ type: String,
68
+ default: "vertical"
69
+ },
70
+ /**
71
+ * Active step index
72
+ */
73
+ index: {
74
+ type: Number,
75
+ default: 0
76
+ }
77
+ },
78
+ emits: ["update:index"],
79
+ setup(t, { emit: p }) {
80
+ const l = t, o = p, { t: v } = me({ messages: q }), c = i([]), u = i(l.index), r = i(u.value), e = (n) => {
81
+ n > r.value && (r.value = n), u.value = n;
82
+ }, y = s(() => {
83
+ var n;
84
+ return (n = c.value[u.value]) == null ? void 0 : n.stepContent;
85
+ }), m = s(() => c.value.length), I = s(() => c.value.map(({ buttonElement: n }) => n)), C = s(() => l.variant === W.HORIZONTAL), b = s(
86
+ () => c.value.map(({ buttonElement: n, substeps: f }, S) => {
87
+ const V = u.value === S;
88
+ return !C.value && V ? [n].concat(f.map((g) => g.buttonElement)) : [n];
89
+ }).flat()
90
+ ), { registerStep: x, removeStep: A } = M(c), h = i({
91
+ activeStepIndex: u,
92
+ latestActiveStep: r,
93
+ steps: I,
94
+ type: l.type,
95
+ variant: l.variant,
96
+ navigateToStep: e,
97
+ registerStep: x,
98
+ removeStep: A
99
+ }), k = s(() => ({
100
+ "b-stepper__list--horizontal": C.value
101
+ }));
102
+ O(() => l.index, e), O(u, (n) => {
103
+ o("update:index", n);
104
+ });
105
+ const L = _e(b);
106
+ return K(w, ne(h)), (n, f) => (_(), T("nav", xe, [
107
+ U((_(), T("ol", se({
108
+ class: ["b-stepper__list", k.value]
109
+ }, ae(d(L), !0)), [
110
+ $(n.$slots, "default", {}, void 0, !0)
111
+ ], 16)), [
112
+ [d(de)]
113
+ ]),
114
+ B(d(P), {
115
+ el: "span",
116
+ variant: "body",
117
+ stronger: "",
118
+ class: "b-stepper__text-stepper"
119
+ }, {
120
+ default: E(() => [
121
+ Z(j(d(v)("step", { currentIndex: u.value + 1, totalSteps: m.value, content: y.value })), 1)
122
+ ]),
123
+ _: 1
124
+ })
125
+ ]));
126
+ }
127
+ }), De = /* @__PURE__ */ G(Ee, [["__scopeId", "data-v-3daeb439"]]), Ie = {
128
+ ref: "substepList",
129
+ class: "b-step__substep-list"
130
+ }, Ce = {
131
+ name: "step"
132
+ }, Ae = /* @__PURE__ */ F({
133
+ ...Ce,
134
+ props: {
135
+ /**
136
+ * Completed status. Used on non-linear steppers to indicate if the step is completed.
137
+ */
138
+ completed: {
139
+ type: Boolean,
140
+ default: !1
141
+ },
142
+ /**
143
+ * Active substep index
144
+ */
145
+ substepIndex: {
146
+ type: Number,
147
+ default: 0
148
+ }
149
+ },
150
+ emits: ["update:substep-index"],
151
+ setup(t, { emit: p }) {
152
+ const l = oe(), o = t, v = p, c = i(null), u = i(null), r = i([]), e = le(w), y = s(() => {
153
+ var a;
154
+ return (a = c.value) == null ? void 0 : a.$el;
155
+ }), m = s(() => e == null ? void 0 : e.value.steps.indexOf(y.value)), I = s(() => {
156
+ var a;
157
+ return (a = u.value) == null ? void 0 : a.$el.textContent;
158
+ }), C = s(() => r.value.map(({ buttonElement: a }) => a)), b = i(o.substepIndex), x = i(b.value), A = (a) => {
159
+ a > x.value && (x.value = a), b.value = a;
160
+ }, { registerStep: h, removeStep: k } = M(r), L = i({
161
+ activeStepIndex: b,
162
+ latestActiveStep: x,
163
+ type: e.value.type,
164
+ variant: e.value.variant,
165
+ steps: C,
166
+ isParentStep: !0,
167
+ navigateToStep: A,
168
+ registerStep: h,
169
+ removeStep: k
170
+ });
171
+ K(w, L), O(() => o.substepIndex, A), O(b, (a) => {
172
+ v("update:substep-index", a);
173
+ }), ue(() => {
174
+ if (!e)
175
+ throw new Error(
176
+ "BentoStep components should only be used inside BentoStepper or other BentoStep components."
177
+ );
178
+ e.value.registerStep({
179
+ buttonElement: y,
180
+ stepContent: I,
181
+ substeps: r
182
+ });
183
+ }), re(() => {
184
+ e.value.removeStep({
185
+ buttonElement: y,
186
+ stepContent: I,
187
+ substeps: r
188
+ });
189
+ });
190
+ const n = s(() => e.value.isParentStep), f = i(!1), S = s(() => (e == null ? void 0 : e.value.activeStepIndex) === m.value), V = s(
191
+ () => S.value && e.value.variant !== W.HORIZONTAL && !n.value && l.substeps
192
+ ), D = s(() => (e == null ? void 0 : e.value.type) === H.NON_LINEAR ? o.completed : (e == null ? void 0 : e.value.latestActiveStep) > m.value), g = s(
193
+ () => (e == null ? void 0 : e.value.type) === H.LINEAR && m.value > (e == null ? void 0 : e.value.latestActiveStep)
194
+ ), J = () => {
195
+ g.value || e.value.navigateToStep(m.value);
196
+ }, Q = s(() => S.value ? "step" : "false"), X = s(() => g.value.toString()), Y = s(() => f.value || m.value === 0 && !n.value ? "0" : "-1"), ee = s(() => ({
197
+ "b-step--active": S.value,
198
+ "b-step--completed": D.value,
199
+ "b-step--substep": n.value
200
+ }));
201
+ return (a, N) => (_(), T("li", {
202
+ class: ie([ee.value, "b-step"])
203
+ }, [
204
+ B(d(be), {
205
+ ref_key: "buttonComponent",
206
+ ref: c,
207
+ "aria-current": Q.value,
208
+ "aria-disabled": X.value,
209
+ class: "b-step__button",
210
+ type: "button",
211
+ tabindex: Y.value,
212
+ disabled: g.value,
213
+ onClick: J,
214
+ onFocus: N[0] || (N[0] = (te) => f.value = !0),
215
+ onBlur: N[1] || (N[1] = (te) => f.value = !1)
216
+ }, {
217
+ iconLeft: E(() => [
218
+ B(d(P), {
219
+ el: "span",
220
+ variant: "body",
221
+ stronger: "",
222
+ class: "b-step__index",
223
+ "aria-hidden": "true"
224
+ }, {
225
+ default: E(() => [
226
+ D.value ? (_(), z(d(fe), { key: 0 })) : n.value ? (_(), z(d(Se), { key: 2 })) : (_(), T(pe, { key: 1 }, [
227
+ Z(j(m.value + 1), 1)
228
+ ], 64))
229
+ ]),
230
+ _: 1
231
+ })
232
+ ]),
233
+ default: E(() => [
234
+ B(d(P), {
235
+ ref_key: "stepContent",
236
+ ref: u,
237
+ el: "span",
238
+ variant: "body",
239
+ stronger: S.value,
240
+ class: "b-step__content"
241
+ }, {
242
+ default: E(() => [
243
+ $(a.$slots, "default", {}, void 0, !0)
244
+ ]),
245
+ _: 3
246
+ }, 8, ["stronger"])
247
+ ]),
248
+ _: 3
249
+ }, 8, ["aria-current", "aria-disabled", "tabindex", "disabled"]),
250
+ U(ce("ul", Ie, [
251
+ $(a.$slots, "substeps", {}, void 0, !0)
252
+ ], 512), [
253
+ [ve, V.value]
254
+ ])
255
+ ], 2));
256
+ }
257
+ }), $e = /* @__PURE__ */ G(Ae, [["__scopeId", "data-v-1968679e"]]);
258
+ export {
259
+ H as B,
260
+ $e as a,
261
+ W as b,
262
+ De as s
263
+ };
264
+ //# sourceMappingURL=step.Db0UJ8mx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step.Db0UJ8mx.js","sources":["../../../vue2/src/components/stepper/composables/use-keyboard-navigation/use-keyboard-navigation.ts","../../../vue2/src/components/stepper/composables/use-step-register/use-step-register.ts","../../../vue2/src/components/stepper/stepper.keys.ts","../../../vue2/src/components/stepper/stepper.types.ts","../../../vue2/src/components/stepper/stepper.vue","../../../vue2/src/components/stepper/components/step/step.vue"],"sourcesContent":["import { Ref, UnwrapRef } from 'vue';\n\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types';\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<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<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 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: BentoStepperStepExposeState[] | Ref<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: 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', { currentIndex: activeStepIndex + 1, totalSteps: stepsAmount, content: currentStepContent })\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, 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 BentoStepperState,\n BentoStepperStepExposeState,\n 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<{\n /**\n * Event triggered when step is updated by the stepper\n */\n (e: 'update:index', index: number): void;\n }>();\n\n type MessageSchema = (typeof messages)['en-US'];\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const childrenSteps = ref<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</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 BentoStepperState,\n BentoStepperStepExposeState,\n BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from '../../stepper.types';\n import { Booleanish } from '@/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<{\n /**\n * Event triggered when substep is updated by the parent step\n */\n (e: 'update:substep-index', index: number): void;\n }>();\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<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","props","__props","emit","__emit","t","useI18n","ref","activeStepIndex","latestActiveStep","navigateToStep","index","currentStepContent","computed","stepsAmount","childrenStepsElements","buttonElement","isHorizontalVariant","allVisibleStepsElements","substeps","isStepActive","registerStep","removeStep","stepperState","conditionalClasses","watch","keyboardNavigationListeners","provide","readonly","__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,13 +1,13 @@
1
1
  import { defineComponent as h, inject as p, computed as o, provide as D, openBlock as r, createElementBlock as v, renderSlot as B, ref as N, normalizeClass as _, createElementVNode as f, normalizeStyle as W, createVNode as y, unref as e, withCtx as b, createTextVNode as $, toDisplayString as g, createBlock as u, createCommentVNode as d, withDirectives as U } from "vue";
2
2
  import { _ as S } from "./_plugin-vue_export-helper.CHgC5LLL.js";
3
3
  import { B as R } from "./button.pwNCxwPu.js";
4
- import { B as V } from "./info-icon.CNPSAUM6.js";
4
+ import { B as V } from "./info-icon.CUC0fwLb.js";
5
5
  import { B as j } from "./typography.DNzU41ah.js";
6
- import { C as O } from "./copy.dbbJppdL.js";
6
+ import { C as O } from "./copy.CnzLQyvJ.js";
7
7
  import { S as w } from "./search.EnLryD8V.js";
8
8
  import { u as A } from "./i18n.CPGoe9tN.js";
9
9
  import "./events.FNmSWp_P.js";
10
- import { B as J } from "./tooltip.BEl_LdFo.js";
10
+ import { B as J } from "./tooltip.BvJoy09y.js";
11
11
  import "../assets/structured-list-item.css";
12
12
  const C = Symbol("structured list condensed style injection key"), I = Symbol("structured list labels width injection key"), x = ["25-75", "33-66", "42-58", "50-50"], z = { class: "b-structured-list" }, F = {}, H = /* @__PURE__ */ h({
13
13
  ...F,
@@ -105,4 +105,4 @@ export {
105
105
  C as S,
106
106
  at as a
107
107
  };
108
- //# sourceMappingURL=structured-list-item.CujUEOTK.js.map
108
+ //# sourceMappingURL=structured-list-item.C_6ju-IY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"structured-list-item.CujUEOTK.js","sources":["../../../vue2/src/components/structured-list/structured-list.keys.ts","../../../vue2/src/components/structured-list/structured-list.types.ts","../../../vue2/src/components/structured-list/structured-list.vue","../../../vue2/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';\nexport const BentoStructuredListLayoutOptions = ['25-75', '33-66', '42-58', '50-50'];\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 = withDefaults(\n defineProps<{\n /**\n * Width of the labels container, in pixels. Overrides layout prop.\n */\n labelsWidth?: number;\n /**\n * The layout of the label value pair in percentage.\n * If labelsWidth is set, layout will be overriden by the static pixel value.\n *\n * If the value entered is not listed in the example\n * list below '33-66' will be applied\n * @example\n * '25-75'\n * '33-66'\n * '42-58'\n * '50-50'\n */\n layout?: BentoStructuredListLayoutOptions;\n }>(),\n {\n labelsWidth: null,\n layout: '33-66',\n }\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\" />\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, 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 /**\n * Label to display for the value\n */\n label: string;\n /**\n * Text to display in info icon tooltip in the label to display for the value\n */\n labelInfo?: string;\n /**\n * Text to copy when the user clicks `Copy` icon\n */\n copy?: string;\n /**\n * Function to trigger when user clicks `Search` icon\n */\n search?: (event: Event) => void;\n /**\n * Text to display when the user hovers over `Search` icon\n */\n searchTooltip?: string;\n /**\n * Truncates the value of the item\n */\n truncate?: boolean;\n }>();\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 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","props","__props","isCondensed","inject","computedLayout","computed","computedLabelsWidth","provide","__default__","messages","DEFAULT_LABELS_WIDTH","t","useI18n","labelsWidth","ref","computedLabelStyle","conditionalClasses","valueConditionalClasses","labelTypographyVariant"],"mappings":";;;;;;;;;;;AAAa,MAAAA,IAAA,OAAA,+CAAA,GACAC,IAAA,OAAA,4CAAA,GCANC,IAAA,CAAA,SAAA,SAAA,SAAA,OAAA,uCCkFHC,IAAA,CAAA;;;;;;;;AArEA,UAAAC,IAAAC,GA0BAC,IAAAC,EAAAP,GAAA,EAAA,GAEAQ,IAAAC;AAAA,MAAuB,MAAAP,EAAA,SAAAE,EAAA,MAAA,IAAAA,EAAA,SAAA;AAAA,IACsD,GAG7EM,IAAAD,EAAA,MACIH,IACI,UAGJF,EAAA,cACI,GAAAA,EAAA,WAAA,OAGJ,GAAAI,EAAA,MAAA,MAAA,GAAA,EAAA,CAAA,CAAA,GAA4C;AAGhD,WAAAG,EAAAV,GAAAS,CAAA;;;;;;;;;;;;;;GC4DAE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;AAtEA,UAAAC,IAAA,OAEAV,IAAAC,GA2BA,EAAA,GAAAU,EAAA,IAAAC,EAAA,EAAA,UAAAH,EAAA,CAAA,GACAP,IAAAC,EAAAP,GAAA,EAAA,GACAiB,IAAAV,EAAAN,GAAAiB,EAAAJ,CAAA,CAAA,GACAK,IAAAV,EAAA,MAAA,cAAAQ,EAAA,KAAA,EAAA,GACAG,IAAAX,EAAA,OAAA;AAAA,MAA2C,qCAAAH;AAAA,IACF,EAAA,GAGzCe,IAAAZ,EAAA,OAAA;AAAA,MAAgD,2CAAAL,EAAA;AAAA,IACK,EAAA,GAGrDkB,IAAAb,EAAA,MAAAH,IAAA,YAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"structured-list-item.C_6ju-IY.js","sources":["../../../vue2/src/components/structured-list/structured-list.keys.ts","../../../vue2/src/components/structured-list/structured-list.types.ts","../../../vue2/src/components/structured-list/structured-list.vue","../../../vue2/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';\nexport const BentoStructuredListLayoutOptions = ['25-75', '33-66', '42-58', '50-50'];\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 = withDefaults(\n defineProps<{\n /**\n * Width of the labels container, in pixels. Overrides layout prop.\n */\n labelsWidth?: number;\n /**\n * The layout of the label value pair in percentage.\n * If labelsWidth is set, layout will be overriden by the static pixel value.\n *\n * If the value entered is not listed in the example\n * list below '33-66' will be applied\n * @example\n * '25-75'\n * '33-66'\n * '42-58'\n * '50-50'\n */\n layout?: BentoStructuredListLayoutOptions;\n }>(),\n {\n labelsWidth: null,\n layout: '33-66',\n }\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\" />\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, 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 /**\n * Label to display for the value\n */\n label: string;\n /**\n * Text to display in info icon tooltip in the label to display for the value\n */\n labelInfo?: string;\n /**\n * Text to copy when the user clicks `Copy` icon\n */\n copy?: string;\n /**\n * Function to trigger when user clicks `Search` icon\n */\n search?: (event: Event) => void;\n /**\n * Text to display when the user hovers over `Search` icon\n */\n searchTooltip?: string;\n /**\n * Truncates the value of the item\n */\n truncate?: boolean;\n }>();\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 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","props","__props","isCondensed","inject","computedLayout","computed","computedLabelsWidth","provide","__default__","messages","DEFAULT_LABELS_WIDTH","t","useI18n","labelsWidth","ref","computedLabelStyle","conditionalClasses","valueConditionalClasses","labelTypographyVariant"],"mappings":";;;;;;;;;;;AAAa,MAAAA,IAAA,OAAA,+CAAA,GACAC,IAAA,OAAA,4CAAA,GCANC,IAAA,CAAA,SAAA,SAAA,SAAA,OAAA,uCCkFHC,IAAA,CAAA;;;;;;;;AArEA,UAAAC,IAAAC,GA0BAC,IAAAC,EAAAP,GAAA,EAAA,GAEAQ,IAAAC;AAAA,MAAuB,MAAAP,EAAA,SAAAE,EAAA,MAAA,IAAAA,EAAA,SAAA;AAAA,IACsD,GAG7EM,IAAAD,EAAA,MACIH,IACI,UAGJF,EAAA,cACI,GAAAA,EAAA,WAAA,OAGJ,GAAAI,EAAA,MAAA,MAAA,GAAA,EAAA,CAAA,CAAA,GAA4C;AAGhD,WAAAG,EAAAV,GAAAS,CAAA;;;;;;;;;;;;;;GC4DAE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;AAtEA,UAAAC,IAAA,OAEAV,IAAAC,GA2BA,EAAA,GAAAU,EAAA,IAAAC,EAAA,EAAA,UAAAH,EAAA,CAAA,GACAP,IAAAC,EAAAP,GAAA,EAAA,GACAiB,IAAAV,EAAAN,GAAAiB,EAAAJ,CAAA,CAAA,GACAK,IAAAV,EAAA,MAAA,cAAAQ,EAAA,KAAA,EAAA,GACAG,IAAAX,EAAA,OAAA;AAAA,MAA2C,qCAAAH;AAAA,IACF,EAAA,GAGzCe,IAAAZ,EAAA,OAAA;AAAA,MAAgD,2CAAAL,EAAA;AAAA,IACK,EAAA,GAGrDkB,IAAAb,EAAA,MAAAH,IAAA,YAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,10 +3,10 @@ import { u as k } from "./use-has-slot.B7eQSabc.js";
3
3
  import { S as q } from "./summary-grid.keys.BBbFrFGF.js";
4
4
  import { G as U } from "./grid-layout.CqLbbEzI.js";
5
5
  import { _ as T } from "./_plugin-vue_export-helper.CHgC5LLL.js";
6
- import { B as Y } from "./info-icon.CNPSAUM6.js";
6
+ import { B as Y } from "./info-icon.CUC0fwLb.js";
7
7
  import { B as W, a as V } from "./typography.DNzU41ah.js";
8
- import { B as X, a as L } from "./tag.wfnhGWVG.js";
9
- import { C as F } from "./copy.dbbJppdL.js";
8
+ import { B as X, a as L } from "./tag.xvqrfTwk.js";
9
+ import { C as F } from "./copy.CnzLQyvJ.js";
10
10
  import "../assets/summary-grid-item-custom.css";
11
11
  const H = S({
12
12
  name: "bento-summary-grid",
@@ -717,4 +717,4 @@ export {
717
717
  o as f,
718
718
  _e as s
719
719
  };
720
- //# sourceMappingURL=summary-grid-item-custom.DF9waESp.js.map
720
+ //# sourceMappingURL=summary-grid-item-custom.FxBnzHzb.js.map