@adyen/bento-vue2 1.81.0 → 1.82.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 (580) hide show
  1. package/README.md +1 -1
  2. package/dist/@types/components.d.ts +196 -0
  3. package/dist/@types/index.d.ts +17585 -0
  4. package/dist/@types/use-form-v4.d.ts +86 -0
  5. package/dist/accordion.js +6 -0
  6. package/dist/accordion.js.map +1 -0
  7. package/dist/action-bar.js +5 -0
  8. package/dist/action-bar.js.map +1 -0
  9. package/dist/alert.js +8 -0
  10. package/dist/alert.js.map +1 -0
  11. package/dist/assets/accordion-item.css +1 -0
  12. package/dist/assets/action-bar.css +1 -0
  13. package/dist/assets/ai-button.css +1 -0
  14. package/dist/assets/alert.css +1 -0
  15. package/dist/assets/avatar.css +1 -0
  16. package/dist/assets/base-button.css +1 -0
  17. package/dist/assets/base-modal.css +1 -0
  18. package/dist/assets/button-actions-with-menu.css +1 -0
  19. package/dist/assets/button-actions.css +1 -0
  20. package/dist/assets/button.css +1 -0
  21. package/dist/assets/calendar.css +1 -0
  22. package/dist/assets/card.css +1 -0
  23. package/dist/assets/checkbox-group.css +1 -0
  24. package/dist/assets/checkbox-input.css +1 -0
  25. package/dist/assets/checkbox.css +1 -0
  26. package/dist/assets/chip.css +1 -0
  27. package/dist/assets/code-snippet.css +1 -0
  28. package/dist/assets/controls-group.css +1 -0
  29. package/dist/assets/copy.css +1 -0
  30. package/dist/assets/country.css +1 -0
  31. package/dist/assets/currency.css +1 -0
  32. package/dist/assets/dashboard-section.css +1 -0
  33. package/dist/assets/dashed-underline.css +1 -0
  34. package/dist/assets/data-grid-template.css +1 -0
  35. package/dist/assets/data-grid.css +1 -0
  36. package/dist/assets/date-picker.css +1 -0
  37. package/dist/assets/date-range-picker.css +1 -0
  38. package/dist/assets/date.css +1 -0
  39. package/dist/assets/dialog-page.css +1 -0
  40. package/dist/assets/divider.css +1 -0
  41. package/dist/assets/dropdown-default-textbox.css +1 -0
  42. package/dist/assets/dropdown-tag.css +1 -0
  43. package/dist/assets/dropdown.css +1 -0
  44. package/dist/assets/empty-state.css +1 -0
  45. package/dist/assets/field-label.css +1 -0
  46. package/dist/assets/file-uploader.css +1 -0
  47. package/dist/assets/filter-bar.css +1 -0
  48. package/dist/assets/fixed-scroller.css +1 -0
  49. package/dist/assets/focus-trap.css +1 -0
  50. package/dist/assets/footer-actions.css +1 -0
  51. package/dist/assets/form-layout-title.css +1 -0
  52. package/dist/assets/grid-layout.css +1 -0
  53. package/dist/assets/header-meta.css +1 -0
  54. package/dist/assets/header-with-views.css +1 -0
  55. package/dist/assets/header.css +1 -0
  56. package/dist/assets/index.css +1 -0
  57. package/dist/assets/info-icon.css +1 -0
  58. package/dist/assets/input-field-password.css +1 -0
  59. package/dist/assets/input-field-phone-number.css +1 -0
  60. package/dist/assets/input-field.css +1 -0
  61. package/dist/assets/inspector.css +1 -0
  62. package/dist/assets/layout-row.css +1 -0
  63. package/dist/assets/link.css +1 -0
  64. package/dist/assets/listbox-option-tag.css +1 -0
  65. package/dist/assets/loading-indicator.css +1 -0
  66. package/dist/assets/main.css +1 -0
  67. package/dist/assets/modal-fullscreen.css +1 -0
  68. package/dist/assets/pagination.css +1 -0
  69. package/dist/assets/payment-method.css +1 -0
  70. package/dist/assets/popper-container.css +1 -0
  71. package/dist/assets/promo-banner.css +1 -0
  72. package/dist/assets/radio-group.css +1 -0
  73. package/dist/assets/radio-input.css +1 -0
  74. package/dist/assets/rich-text-editor.css +1 -0
  75. package/dist/assets/search-bar.css +1 -0
  76. package/dist/assets/secondary-nav.css +1 -0
  77. package/dist/assets/segmented-control.css +1 -0
  78. package/dist/assets/selection-card-group.css +1 -0
  79. package/dist/assets/sidepanel.css +1 -0
  80. package/dist/assets/status.css +1 -0
  81. package/dist/assets/step.css +1 -0
  82. package/dist/assets/structured-list-item.css +1 -0
  83. package/dist/assets/summary-grid.css +1 -0
  84. package/dist/assets/tab.css +1 -0
  85. package/dist/assets/tag.css +1 -0
  86. package/dist/assets/textarea.css +1 -0
  87. package/dist/assets/timeline-item.css +1 -0
  88. package/dist/assets/toast.css +1 -0
  89. package/dist/assets/toggle.css +1 -0
  90. package/dist/assets/tooltip.css +1 -0
  91. package/dist/assets/tutorial.css +1 -0
  92. package/dist/assets/typography.css +1 -0
  93. package/dist/assets/use-cached-selected-values.css +1 -0
  94. package/dist/avatar.js +5 -0
  95. package/dist/avatar.js.map +1 -0
  96. package/dist/button.js +18 -0
  97. package/dist/button.js.map +1 -0
  98. package/dist/card.js +7 -0
  99. package/dist/card.js.map +1 -0
  100. package/dist/checkbox.js +11 -0
  101. package/dist/checkbox.js.map +1 -0
  102. package/dist/chip.js +5 -0
  103. package/dist/chip.js.map +1 -0
  104. package/dist/chunks/1-generic-use.CZhwP2Yc.js +5 -0
  105. package/dist/chunks/1-generic-use.CZhwP2Yc.js.map +1 -0
  106. package/dist/chunks/1-generic-use.R6x8PEGA.js +5 -0
  107. package/dist/chunks/1-generic-use.R6x8PEGA.js.map +1 -0
  108. package/dist/chunks/2-generic-use.CNKjB4B7.js +5 -0
  109. package/dist/chunks/2-generic-use.CNKjB4B7.js.map +1 -0
  110. package/dist/chunks/2-generic-use.w0fUhovx.js +5 -0
  111. package/dist/chunks/2-generic-use.w0fUhovx.js.map +1 -0
  112. package/dist/chunks/3-generic-use.BLEzR04g.js +5 -0
  113. package/dist/chunks/3-generic-use.BLEzR04g.js.map +1 -0
  114. package/dist/chunks/3-generic-use.D3NFHgI4.js +5 -0
  115. package/dist/chunks/3-generic-use.D3NFHgI4.js.map +1 -0
  116. package/dist/chunks/4-generic-use.CULEpvgj.js +5 -0
  117. package/dist/chunks/4-generic-use.CULEpvgj.js.map +1 -0
  118. package/dist/chunks/4-generic-use.D82y3n39.js +5 -0
  119. package/dist/chunks/4-generic-use.D82y3n39.js.map +1 -0
  120. package/dist/chunks/_plugin-vue2_normalizer.CeySl7Fu.js +11 -0
  121. package/dist/chunks/_plugin-vue2_normalizer.CeySl7Fu.js.map +1 -0
  122. package/dist/chunks/accordion-item.G1q4zgBG.js +117 -0
  123. package/dist/chunks/accordion-item.G1q4zgBG.js.map +1 -0
  124. package/dist/chunks/action-bar.Dhl3T4j-.js +160 -0
  125. package/dist/chunks/action-bar.Dhl3T4j-.js.map +1 -0
  126. package/dist/chunks/adding-payment-methods.BJZLPxtM.js +5 -0
  127. package/dist/chunks/adding-payment-methods.BJZLPxtM.js.map +1 -0
  128. package/dist/chunks/adding-payment-methods.Dle8zt43.js +5 -0
  129. package/dist/chunks/adding-payment-methods.Dle8zt43.js.map +1 -0
  130. package/dist/chunks/adyen-giving.Ffw_DlJK.js +5 -0
  131. package/dist/chunks/adyen-giving.Ffw_DlJK.js.map +1 -0
  132. package/dist/chunks/adyen-giving.LiKHj_jY.js +5 -0
  133. package/dist/chunks/adyen-giving.LiKHj_jY.js.map +1 -0
  134. package/dist/chunks/ai-button.DBwtNkyS.js +67 -0
  135. package/dist/chunks/ai-button.DBwtNkyS.js.map +1 -0
  136. package/dist/chunks/alert.SZPP58tl.js +103 -0
  137. package/dist/chunks/alert.SZPP58tl.js.map +1 -0
  138. package/dist/chunks/aria-label.CaUURpnB.js +13 -0
  139. package/dist/chunks/aria-label.CaUURpnB.js.map +1 -0
  140. package/dist/chunks/avatar.CeDqq2Z-.js +71 -0
  141. package/dist/chunks/avatar.CeDqq2Z-.js.map +1 -0
  142. package/dist/chunks/base-button.BdST9XT3.js +86 -0
  143. package/dist/chunks/base-button.BdST9XT3.js.map +1 -0
  144. package/dist/chunks/base-modal.C-UqIAY8.js +310 -0
  145. package/dist/chunks/base-modal.C-UqIAY8.js.map +1 -0
  146. package/dist/chunks/bin.Ddb69cr1.js +24 -0
  147. package/dist/chunks/bin.Ddb69cr1.js.map +1 -0
  148. package/dist/chunks/button-actions-with-menu.KKq9Cuk1.js +85 -0
  149. package/dist/chunks/button-actions-with-menu.KKq9Cuk1.js.map +1 -0
  150. package/dist/chunks/button-actions.N3D-Bb_x.js +1035 -0
  151. package/dist/chunks/button-actions.N3D-Bb_x.js.map +1 -0
  152. package/dist/chunks/button-actions.types.BptAXjD8.js +8 -0
  153. package/dist/chunks/button-actions.types.BptAXjD8.js.map +1 -0
  154. package/dist/chunks/button.CS_kdxYh.js +110 -0
  155. package/dist/chunks/button.CS_kdxYh.js.map +1 -0
  156. package/dist/chunks/calendar.Bhj58zR3.js +1832 -0
  157. package/dist/chunks/calendar.Bhj58zR3.js.map +1 -0
  158. package/dist/chunks/card.BYWF_Zvo.js +137 -0
  159. package/dist/chunks/card.BYWF_Zvo.js.map +1 -0
  160. package/dist/chunks/checkbox-group.CIIa-cYP.js +142 -0
  161. package/dist/chunks/checkbox-group.CIIa-cYP.js.map +1 -0
  162. package/dist/chunks/checkbox-input.B0NsfSNR.js +117 -0
  163. package/dist/chunks/checkbox-input.B0NsfSNR.js.map +1 -0
  164. package/dist/chunks/checkbox.CiWvdg8S.js +178 -0
  165. package/dist/chunks/checkbox.CiWvdg8S.js.map +1 -0
  166. package/dist/chunks/checkmark-circle-fill.BttTCjrM.js +24 -0
  167. package/dist/chunks/checkmark-circle-fill.BttTCjrM.js.map +1 -0
  168. package/dist/chunks/checkmark-small.DVDtD4HQ.js +24 -0
  169. package/dist/chunks/checkmark-small.DVDtD4HQ.js.map +1 -0
  170. package/dist/chunks/chevron-down.eYtgv5ly.js +24 -0
  171. package/dist/chunks/chevron-down.eYtgv5ly.js.map +1 -0
  172. package/dist/chunks/chevron-left.BS24hEFa.js +43 -0
  173. package/dist/chunks/chevron-left.BS24hEFa.js.map +1 -0
  174. package/dist/chunks/chevron-up.d8cwIlA_.js +24 -0
  175. package/dist/chunks/chevron-up.d8cwIlA_.js.map +1 -0
  176. package/dist/chunks/chip.B0DRDvaa.js +63 -0
  177. package/dist/chunks/chip.B0DRDvaa.js.map +1 -0
  178. package/dist/chunks/click-outside.C1Ud8AA2.js +23 -0
  179. package/dist/chunks/click-outside.C1Ud8AA2.js.map +1 -0
  180. package/dist/chunks/code-snippet.BMzhRl4c.js +268 -0
  181. package/dist/chunks/code-snippet.BMzhRl4c.js.map +1 -0
  182. package/dist/chunks/codemirror.Cy7iSLbd.js +14628 -0
  183. package/dist/chunks/codemirror.Cy7iSLbd.js.map +1 -0
  184. package/dist/chunks/constructNow.BhymNmy5.js +8 -0
  185. package/dist/chunks/constructNow.BhymNmy5.js.map +1 -0
  186. package/dist/chunks/controls-group.GchVWe7h.js +84 -0
  187. package/dist/chunks/controls-group.GchVWe7h.js.map +1 -0
  188. package/dist/chunks/copy.DauzzgJV.js +96 -0
  189. package/dist/chunks/copy.DauzzgJV.js.map +1 -0
  190. package/dist/chunks/country.B3z3-QRY.js +69 -0
  191. package/dist/chunks/country.B3z3-QRY.js.map +1 -0
  192. package/dist/chunks/country.types.C0Q_hhgJ.js +269 -0
  193. package/dist/chunks/country.types.C0Q_hhgJ.js.map +1 -0
  194. package/dist/chunks/cross-circle-fill-small.DfxDedRr.js +24 -0
  195. package/dist/chunks/cross-circle-fill-small.DfxDedRr.js.map +1 -0
  196. package/dist/chunks/cross-circle-fill.DTDtgLMf.js +24 -0
  197. package/dist/chunks/cross-circle-fill.DTDtgLMf.js.map +1 -0
  198. package/dist/chunks/cross-small.CoQUe8SS.js +24 -0
  199. package/dist/chunks/cross-small.CoQUe8SS.js.map +1 -0
  200. package/dist/chunks/cross.CC_B-vG-.js +24 -0
  201. package/dist/chunks/cross.CC_B-vG-.js.map +1 -0
  202. package/dist/chunks/currency.Cwhzzxw2.js +114 -0
  203. package/dist/chunks/currency.Cwhzzxw2.js.map +1 -0
  204. package/dist/chunks/dashboard-section.CgAfEay4.js +102 -0
  205. package/dist/chunks/dashboard-section.CgAfEay4.js.map +1 -0
  206. package/dist/chunks/dashed-underline.CMdNukpN.js +77 -0
  207. package/dist/chunks/dashed-underline.CMdNukpN.js.map +1 -0
  208. package/dist/chunks/data-grid-template.keys.VezYtHtM.js +5 -0
  209. package/dist/chunks/data-grid-template.keys.VezYtHtM.js.map +1 -0
  210. package/dist/chunks/data-grid-template.m4hsFMe2.js +111 -0
  211. package/dist/chunks/data-grid-template.m4hsFMe2.js.map +1 -0
  212. package/dist/chunks/data-grid.rAVOFiTv.js +3294 -0
  213. package/dist/chunks/data-grid.rAVOFiTv.js.map +1 -0
  214. package/dist/chunks/date-format.B8RU7D42.js +17 -0
  215. package/dist/chunks/date-format.B8RU7D42.js.map +1 -0
  216. package/dist/chunks/date-picker.nLuHJgOC.js +169 -0
  217. package/dist/chunks/date-picker.nLuHJgOC.js.map +1 -0
  218. package/dist/chunks/date-picker.types.Ckt7zxGy.js +5 -0
  219. package/dist/chunks/date-picker.types.Ckt7zxGy.js.map +1 -0
  220. package/dist/chunks/date-range-picker.D2MKhVMf.js +906 -0
  221. package/dist/chunks/date-range-picker.D2MKhVMf.js.map +1 -0
  222. package/dist/chunks/date-range-picker.types.Ckt7zxGy.js +5 -0
  223. package/dist/chunks/date-range-picker.types.Ckt7zxGy.js.map +1 -0
  224. package/dist/chunks/date.C1z2TXzM.js +160 -0
  225. package/dist/chunks/date.C1z2TXzM.js.map +1 -0
  226. package/dist/chunks/debounce.DUTu11PS.js +10 -0
  227. package/dist/chunks/debounce.DUTu11PS.js.map +1 -0
  228. package/dist/chunks/delight.CDBAFnwC.js +5 -0
  229. package/dist/chunks/delight.CDBAFnwC.js.map +1 -0
  230. package/dist/chunks/delight.xKDCvvaS.js +5 -0
  231. package/dist/chunks/delight.xKDCvvaS.js.map +1 -0
  232. package/dist/chunks/dialog-page.krM2wQpm.js +131 -0
  233. package/dist/chunks/dialog-page.krM2wQpm.js.map +1 -0
  234. package/dist/chunks/differenceInMonths.Cab3nOsb.js +1590 -0
  235. package/dist/chunks/differenceInMonths.Cab3nOsb.js.map +1 -0
  236. package/dist/chunks/directive.Cbdox5VL.js +23 -0
  237. package/dist/chunks/directive.Cbdox5VL.js.map +1 -0
  238. package/dist/chunks/divider.DX5gwN7p.js +35 -0
  239. package/dist/chunks/divider.DX5gwN7p.js.map +1 -0
  240. package/dist/chunks/dot.BW9SneIk.js +24 -0
  241. package/dist/chunks/dot.BW9SneIk.js.map +1 -0
  242. package/dist/chunks/dropdown-default-textbox.uWZMxeI7.js +350 -0
  243. package/dist/chunks/dropdown-default-textbox.uWZMxeI7.js.map +1 -0
  244. package/dist/chunks/dropdown-tag.BnqOBdMp.js +294 -0
  245. package/dist/chunks/dropdown-tag.BnqOBdMp.js.map +1 -0
  246. package/dist/chunks/dropdown.BijF56Y7.js +714 -0
  247. package/dist/chunks/dropdown.BijF56Y7.js.map +1 -0
  248. package/dist/chunks/empty-state.BsdRxzS2.js +106 -0
  249. package/dist/chunks/empty-state.BsdRxzS2.js.map +1 -0
  250. package/dist/chunks/es6.MoTTyETW.js +12 -0
  251. package/dist/chunks/es6.MoTTyETW.js.map +1 -0
  252. package/dist/chunks/events.BQOQSSb7.js +44 -0
  253. package/dist/chunks/events.BQOQSSb7.js.map +1 -0
  254. package/dist/chunks/expand.Bbielaja.js +24 -0
  255. package/dist/chunks/expand.Bbielaja.js.map +1 -0
  256. package/dist/chunks/field-label.DHGAa4cq.js +121 -0
  257. package/dist/chunks/field-label.DHGAa4cq.js.map +1 -0
  258. package/dist/chunks/file-uploader.D2s5qccE.js +1917 -0
  259. package/dist/chunks/file-uploader.D2s5qccE.js.map +1 -0
  260. package/dist/chunks/filter-bar.DISI1jAU.js +2472 -0
  261. package/dist/chunks/filter-bar.DISI1jAU.js.map +1 -0
  262. package/dist/chunks/fixed-scroller.CgVOf5VE.js +106 -0
  263. package/dist/chunks/fixed-scroller.CgVOf5VE.js.map +1 -0
  264. package/dist/chunks/focus-trap.CNIU5jOz.js +1168 -0
  265. package/dist/chunks/focus-trap.CNIU5jOz.js.map +1 -0
  266. package/dist/chunks/footer-actions.CFZwikg0.js +96 -0
  267. package/dist/chunks/footer-actions.CFZwikg0.js.map +1 -0
  268. package/dist/chunks/form-field.D_2g7vaP.js +10 -0
  269. package/dist/chunks/form-field.D_2g7vaP.js.map +1 -0
  270. package/dist/chunks/form-layout-title.B_oVSX5b.js +197 -0
  271. package/dist/chunks/form-layout-title.B_oVSX5b.js.map +1 -0
  272. package/dist/chunks/form-layout.types.bZW9iR6_.js +5 -0
  273. package/dist/chunks/form-layout.types.bZW9iR6_.js.map +1 -0
  274. package/dist/chunks/generate-uid.NJ8tVoha.js +32 -0
  275. package/dist/chunks/generate-uid.NJ8tVoha.js.map +1 -0
  276. package/dist/chunks/get-slot-text.Bjb9dTSV.js +12 -0
  277. package/dist/chunks/get-slot-text.Bjb9dTSV.js.map +1 -0
  278. package/dist/chunks/getRoundingMethod.C3eaeGLR.js +10 -0
  279. package/dist/chunks/getRoundingMethod.C3eaeGLR.js.map +1 -0
  280. package/dist/chunks/getTimezoneOffsetInMilliseconds.B7sxiukN.js +484 -0
  281. package/dist/chunks/getTimezoneOffsetInMilliseconds.B7sxiukN.js.map +1 -0
  282. package/dist/chunks/grid-layout.1aIiz2N_.js +76 -0
  283. package/dist/chunks/grid-layout.1aIiz2N_.js.map +1 -0
  284. package/dist/chunks/header-meta.D0UdrdVf.js +170 -0
  285. package/dist/chunks/header-meta.D0UdrdVf.js.map +1 -0
  286. package/dist/chunks/header-with-views.BjZkBSI0.js +1591 -0
  287. package/dist/chunks/header-with-views.BjZkBSI0.js.map +1 -0
  288. package/dist/chunks/header.QYvN86kI.js +103 -0
  289. package/dist/chunks/header.QYvN86kI.js.map +1 -0
  290. package/dist/chunks/image.C2D2hKat.js +56 -0
  291. package/dist/chunks/image.C2D2hKat.js.map +1 -0
  292. package/dist/chunks/index.B6WW_F-J.js +31 -0
  293. package/dist/chunks/index.B6WW_F-J.js.map +1 -0
  294. package/dist/chunks/index.BDK4hwK_.js +593 -0
  295. package/dist/chunks/index.BDK4hwK_.js.map +1 -0
  296. package/dist/chunks/index.Cl4_42j5.js +8 -0
  297. package/dist/chunks/index.Cl4_42j5.js.map +1 -0
  298. package/dist/chunks/info-icon.iKLaNff6.js +37 -0
  299. package/dist/chunks/info-icon.iKLaNff6.js.map +1 -0
  300. package/dist/chunks/info.CcMZ4aGg.js +24 -0
  301. package/dist/chunks/info.CcMZ4aGg.js.map +1 -0
  302. package/dist/chunks/input-field-password.BeRjHhu6.js +270 -0
  303. package/dist/chunks/input-field-password.BeRjHhu6.js.map +1 -0
  304. package/dist/chunks/input-field-phone-number.DLOUy8_E.js +3324 -0
  305. package/dist/chunks/input-field-phone-number.DLOUy8_E.js.map +1 -0
  306. package/dist/chunks/input-field.B1Q1-zLo.js +171 -0
  307. package/dist/chunks/input-field.B1Q1-zLo.js.map +1 -0
  308. package/dist/chunks/inspector.C6bbjQC0.js +117 -0
  309. package/dist/chunks/inspector.C6bbjQC0.js.map +1 -0
  310. package/dist/chunks/inspector.types.DyHwE18g.js +5 -0
  311. package/dist/chunks/inspector.types.DyHwE18g.js.map +1 -0
  312. package/dist/chunks/internal-error.BLZodVBE.js +5 -0
  313. package/dist/chunks/internal-error.BLZodVBE.js.map +1 -0
  314. package/dist/chunks/internal-error.BmrwJFpR.js +5 -0
  315. package/dist/chunks/internal-error.BmrwJFpR.js.map +1 -0
  316. package/dist/chunks/keyboard-navigation.DWmhelVv.js +66 -0
  317. package/dist/chunks/keyboard-navigation.DWmhelVv.js.map +1 -0
  318. package/dist/chunks/layout-row.DwdZbpVG.js +87 -0
  319. package/dist/chunks/layout-row.DwdZbpVG.js.map +1 -0
  320. package/dist/chunks/link.D8qpqg3W.js +95 -0
  321. package/dist/chunks/link.D8qpqg3W.js.map +1 -0
  322. package/dist/chunks/listbox-option-tag.CK628fjn.js +44 -0
  323. package/dist/chunks/listbox-option-tag.CK628fjn.js.map +1 -0
  324. package/dist/chunks/loading-indicator.PxbRzshH.js +42 -0
  325. package/dist/chunks/loading-indicator.PxbRzshH.js.map +1 -0
  326. package/dist/chunks/minus-small.DJacLGTw.js +27 -0
  327. package/dist/chunks/minus-small.DJacLGTw.js.map +1 -0
  328. package/dist/chunks/modal-fullscreen.UqZgbaDw.js +221 -0
  329. package/dist/chunks/modal-fullscreen.UqZgbaDw.js.map +1 -0
  330. package/dist/chunks/modal.DCgB0pA2.js +445 -0
  331. package/dist/chunks/modal.DCgB0pA2.js.map +1 -0
  332. package/dist/chunks/no-results-found.Bg_ZcEid.js +5 -0
  333. package/dist/chunks/no-results-found.Bg_ZcEid.js.map +1 -0
  334. package/dist/chunks/no-results-found.BqvYsBR6.js +5 -0
  335. package/dist/chunks/no-results-found.BqvYsBR6.js.map +1 -0
  336. package/dist/chunks/notifications-cleared.BMZk37uf.js +5 -0
  337. package/dist/chunks/notifications-cleared.BMZk37uf.js.map +1 -0
  338. package/dist/chunks/notifications-cleared.C7W9ZXY7.js +5 -0
  339. package/dist/chunks/notifications-cleared.C7W9ZXY7.js.map +1 -0
  340. package/dist/chunks/on-click-outside.D9aY9g8G.js +101 -0
  341. package/dist/chunks/on-click-outside.D9aY9g8G.js.map +1 -0
  342. package/dist/chunks/page-not-found.COJLPVaU.js +5 -0
  343. package/dist/chunks/page-not-found.COJLPVaU.js.map +1 -0
  344. package/dist/chunks/page-not-found.DWW6W-PZ.js +5 -0
  345. package/dist/chunks/page-not-found.DWW6W-PZ.js.map +1 -0
  346. package/dist/chunks/pagination.CylAnOyc.js +338 -0
  347. package/dist/chunks/pagination.CylAnOyc.js.map +1 -0
  348. package/dist/chunks/payment-method.C8Ie97qE.js +76 -0
  349. package/dist/chunks/payment-method.C8Ie97qE.js.map +1 -0
  350. package/dist/chunks/payment-method.types.BqtH7RM2.js +5 -0
  351. package/dist/chunks/payment-method.types.BqtH7RM2.js.map +1 -0
  352. package/dist/chunks/planned-maintenance.C61sWB9h.js +5 -0
  353. package/dist/chunks/planned-maintenance.C61sWB9h.js.map +1 -0
  354. package/dist/chunks/planned-maintenance.jmWYTdet.js +5 -0
  355. package/dist/chunks/planned-maintenance.jmWYTdet.js.map +1 -0
  356. package/dist/chunks/popover.types.WDh5ggr3.js +6 -0
  357. package/dist/chunks/popover.types.WDh5ggr3.js.map +1 -0
  358. package/dist/chunks/popper-container.Cdokz_NE.js +1404 -0
  359. package/dist/chunks/popper-container.Cdokz_NE.js.map +1 -0
  360. package/dist/chunks/promo-banner.DikQcQU2.js +70 -0
  361. package/dist/chunks/promo-banner.DikQcQU2.js.map +1 -0
  362. package/dist/chunks/radio-group.Cr7UcYij.js +178 -0
  363. package/dist/chunks/radio-group.Cr7UcYij.js.map +1 -0
  364. package/dist/chunks/radio-input.kzb4gxLW.js +90 -0
  365. package/dist/chunks/radio-input.kzb4gxLW.js.map +1 -0
  366. package/dist/chunks/referrals.BvtT-kQS.js +5 -0
  367. package/dist/chunks/referrals.BvtT-kQS.js.map +1 -0
  368. package/dist/chunks/referrals.aX8WZigH.js +5 -0
  369. package/dist/chunks/referrals.aX8WZigH.js.map +1 -0
  370. package/dist/chunks/refresh.arF7jP-l.js +24 -0
  371. package/dist/chunks/refresh.arF7jP-l.js.map +1 -0
  372. package/dist/chunks/resize.Bqks3WUm.js +15 -0
  373. package/dist/chunks/resize.Bqks3WUm.js.map +1 -0
  374. package/dist/chunks/rich-text-editor.NKPFP8Ss.js +6203 -0
  375. package/dist/chunks/rich-text-editor.NKPFP8Ss.js.map +1 -0
  376. package/dist/chunks/search-bar.VctrP6lp.js +98 -0
  377. package/dist/chunks/search-bar.VctrP6lp.js.map +1 -0
  378. package/dist/chunks/search.D53Ia3rC.js +24 -0
  379. package/dist/chunks/search.D53Ia3rC.js.map +1 -0
  380. package/dist/chunks/secondary-nav.jpMeWSZj.js +112 -0
  381. package/dist/chunks/secondary-nav.jpMeWSZj.js.map +1 -0
  382. package/dist/chunks/segmented-control._CuB62pG.js +113 -0
  383. package/dist/chunks/segmented-control._CuB62pG.js.map +1 -0
  384. package/dist/chunks/segmented-control.types.BHRLV8KU.js +5 -0
  385. package/dist/chunks/segmented-control.types.BHRLV8KU.js.map +1 -0
  386. package/dist/chunks/selection-card-group.jykyd9iE.js +240 -0
  387. package/dist/chunks/selection-card-group.jykyd9iE.js.map +1 -0
  388. package/dist/chunks/show.B_mKPF6I.js +43 -0
  389. package/dist/chunks/show.B_mKPF6I.js.map +1 -0
  390. package/dist/chunks/sidepanel.CP-b8Zcg.js +210 -0
  391. package/dist/chunks/sidepanel.CP-b8Zcg.js.map +1 -0
  392. package/dist/chunks/status.types.BpMK-6IT.js +36 -0
  393. package/dist/chunks/status.types.BpMK-6IT.js.map +1 -0
  394. package/dist/chunks/step.4hMAy8v_.js +217 -0
  395. package/dist/chunks/step.4hMAy8v_.js.map +1 -0
  396. package/dist/chunks/structured-list-item.BLJabJwA.js +90 -0
  397. package/dist/chunks/structured-list-item.BLJabJwA.js.map +1 -0
  398. package/dist/chunks/success.DhioLvPD.js +5 -0
  399. package/dist/chunks/success.DhioLvPD.js.map +1 -0
  400. package/dist/chunks/success.nNwxJRBS.js +5 -0
  401. package/dist/chunks/success.nNwxJRBS.js.map +1 -0
  402. package/dist/chunks/summary-grid.keys.Xx-W5a2w.js +6 -0
  403. package/dist/chunks/summary-grid.keys.Xx-W5a2w.js.map +1 -0
  404. package/dist/chunks/summary-grid.types.B0w2S_9r.js +337 -0
  405. package/dist/chunks/summary-grid.types.B0w2S_9r.js.map +1 -0
  406. package/dist/chunks/tab.DXE68qVf.js +192 -0
  407. package/dist/chunks/tab.DXE68qVf.js.map +1 -0
  408. package/dist/chunks/tabs.keys.B4qGhjp2.js +7 -0
  409. package/dist/chunks/tabs.keys.B4qGhjp2.js.map +1 -0
  410. package/dist/chunks/tag.7fp_M9Au.js +44 -0
  411. package/dist/chunks/tag.7fp_M9Au.js.map +1 -0
  412. package/dist/chunks/textarea.Ci9sKDFy.js +173 -0
  413. package/dist/chunks/textarea.Ci9sKDFy.js.map +1 -0
  414. package/dist/chunks/timeline-item.DcIQ-Q1T.js +255 -0
  415. package/dist/chunks/timeline-item.DcIQ-Q1T.js.map +1 -0
  416. package/dist/chunks/toast.DGvNp4ZM.js +171 -0
  417. package/dist/chunks/toast.DGvNp4ZM.js.map +1 -0
  418. package/dist/chunks/toggle.D2wmNu7m.js +108 -0
  419. package/dist/chunks/toggle.D2wmNu7m.js.map +1 -0
  420. package/dist/chunks/tooltip.BcQ24pKP.js +189 -0
  421. package/dist/chunks/tooltip.BcQ24pKP.js.map +1 -0
  422. package/dist/chunks/truncate.BfIl_-71.js +8 -0
  423. package/dist/chunks/truncate.BfIl_-71.js.map +1 -0
  424. package/dist/chunks/tutorial.Co2F7l0B.js +347 -0
  425. package/dist/chunks/tutorial.Co2F7l0B.js.map +1 -0
  426. package/dist/chunks/typography.hlOAxsEn.js +87 -0
  427. package/dist/chunks/typography.hlOAxsEn.js.map +1 -0
  428. package/dist/chunks/upload-files.5wQwbfkp.js +5 -0
  429. package/dist/chunks/upload-files.5wQwbfkp.js.map +1 -0
  430. package/dist/chunks/upload-files.jTQY6y2X.js +5 -0
  431. package/dist/chunks/upload-files.jTQY6y2X.js.map +1 -0
  432. package/dist/chunks/use-bento-toast-controller.BhtohoS1.js +52 -0
  433. package/dist/chunks/use-bento-toast-controller.BhtohoS1.js.map +1 -0
  434. package/dist/chunks/use-cached-selected-values.BYiLNRRi.js +1343 -0
  435. package/dist/chunks/use-cached-selected-values.BYiLNRRi.js.map +1 -0
  436. package/dist/chunks/use-country-items.B3Cd3Tdo.js +30 -0
  437. package/dist/chunks/use-country-items.B3Cd3Tdo.js.map +1 -0
  438. package/dist/chunks/use-country-phon-code.Bui3zD6W.js +5621 -0
  439. package/dist/chunks/use-country-phon-code.Bui3zD6W.js.map +1 -0
  440. package/dist/chunks/use-default-slot-validator.BDn0wkYP.js +13 -0
  441. package/dist/chunks/use-default-slot-validator.BDn0wkYP.js.map +1 -0
  442. package/dist/chunks/use-expandable-content-height.GkjjbmPy.js +17 -0
  443. package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -0
  444. package/dist/chunks/use-form-layout-loading.CWbjZiwP.js +12 -0
  445. package/dist/chunks/use-form-layout-loading.CWbjZiwP.js.map +1 -0
  446. package/dist/chunks/use-has-slot.C9lQZ6nz.js +6 -0
  447. package/dist/chunks/use-has-slot.C9lQZ6nz.js.map +1 -0
  448. package/dist/chunks/warning-filled.CbJ1pcB2.js +24 -0
  449. package/dist/chunks/warning-filled.CbJ1pcB2.js.map +1 -0
  450. package/dist/chunks/wrong-environment.BOsyKdRI.js +5 -0
  451. package/dist/chunks/wrong-environment.BOsyKdRI.js.map +1 -0
  452. package/dist/chunks/wrong-environment.BiHTPtbJ.js +5 -0
  453. package/dist/chunks/wrong-environment.BiHTPtbJ.js.map +1 -0
  454. package/dist/click-outside.js +5 -0
  455. package/dist/click-outside.js.map +1 -0
  456. package/dist/code-snippet.js +8 -0
  457. package/dist/code-snippet.js.map +1 -0
  458. package/dist/country.js +12 -0
  459. package/dist/country.js.map +1 -0
  460. package/dist/currency.js +6 -0
  461. package/dist/currency.js.map +1 -0
  462. package/dist/dashboard-template.js +6 -0
  463. package/dist/dashboard-template.js.map +1 -0
  464. package/dist/dashed-underline.js +5 -0
  465. package/dist/dashed-underline.js.map +1 -0
  466. package/dist/data-grid-template.js +5 -0
  467. package/dist/data-grid-template.js.map +1 -0
  468. package/dist/data-grid.js +13 -0
  469. package/dist/data-grid.js.map +1 -0
  470. package/dist/date-picker.js +10 -0
  471. package/dist/date-picker.js.map +1 -0
  472. package/dist/date-range-picker.js +10 -0
  473. package/dist/date-range-picker.js.map +1 -0
  474. package/dist/date.js +6 -0
  475. package/dist/date.js.map +1 -0
  476. package/dist/divider.js +5 -0
  477. package/dist/divider.js.map +1 -0
  478. package/dist/dropdown.js +16 -0
  479. package/dist/dropdown.js.map +1 -0
  480. package/dist/empty-state.js +8 -0
  481. package/dist/empty-state.js.map +1 -0
  482. package/dist/file-uploader.js +5 -0
  483. package/dist/file-uploader.js.map +1 -0
  484. package/dist/filter-bar.js +9 -0
  485. package/dist/filter-bar.js.map +1 -0
  486. package/dist/focus-trap.js +5 -0
  487. package/dist/focus-trap.js.map +1 -0
  488. package/dist/fonts/fonts.css +2 -0
  489. package/dist/form-layout.js +8 -0
  490. package/dist/form-layout.js.map +1 -0
  491. package/dist/header-with-views.js +5 -0
  492. package/dist/header-with-views.js.map +1 -0
  493. package/dist/header.js +5 -0
  494. package/dist/header.js.map +1 -0
  495. package/dist/image.js +7 -0
  496. package/dist/image.js.map +1 -0
  497. package/dist/index.js +442 -0
  498. package/dist/index.js.map +1 -0
  499. package/dist/info-icon.js +5 -0
  500. package/dist/info-icon.js.map +1 -0
  501. package/dist/input-field-password.js +10 -0
  502. package/dist/input-field-password.js.map +1 -0
  503. package/dist/input-field-phone-number.js +6 -0
  504. package/dist/input-field-phone-number.js.map +1 -0
  505. package/dist/input-field.js +10 -0
  506. package/dist/input-field.js.map +1 -0
  507. package/dist/inspector.js +7 -0
  508. package/dist/inspector.js.map +1 -0
  509. package/dist/internal.js +45 -0
  510. package/dist/internal.js.map +1 -0
  511. package/dist/layout.js +6 -0
  512. package/dist/layout.js.map +1 -0
  513. package/dist/link.js +6 -0
  514. package/dist/link.js.map +1 -0
  515. package/dist/loading-indicator.js +6 -0
  516. package/dist/loading-indicator.js.map +1 -0
  517. package/dist/menu.js +6 -0
  518. package/dist/menu.js.map +1 -0
  519. package/dist/modal-fullscreen.js +6 -0
  520. package/dist/modal-fullscreen.js.map +1 -0
  521. package/dist/modal.js +14 -0
  522. package/dist/modal.js.map +1 -0
  523. package/dist/pagination.js +5 -0
  524. package/dist/pagination.js.map +1 -0
  525. package/dist/payment-method.js +7 -0
  526. package/dist/payment-method.js.map +1 -0
  527. package/dist/popover.js +7 -0
  528. package/dist/popover.js.map +1 -0
  529. package/dist/popper-container.js +9 -0
  530. package/dist/popper-container.js.map +1 -0
  531. package/dist/promo-banner.js +7 -0
  532. package/dist/promo-banner.js.map +1 -0
  533. package/dist/radio-group.js +9 -0
  534. package/dist/radio-group.js.map +1 -0
  535. package/dist/rich-text-editor.js +5 -0
  536. package/dist/rich-text-editor.js.map +1 -0
  537. package/dist/search-bar.js +9 -0
  538. package/dist/search-bar.js.map +1 -0
  539. package/dist/secondary-nav.js +5 -0
  540. package/dist/secondary-nav.js.map +1 -0
  541. package/dist/segmented-control.js +7 -0
  542. package/dist/segmented-control.js.map +1 -0
  543. package/dist/selection-card.js +7 -0
  544. package/dist/selection-card.js.map +1 -0
  545. package/dist/sidepanel.js +7 -0
  546. package/dist/sidepanel.js.map +1 -0
  547. package/dist/status.js +6 -0
  548. package/dist/status.js.map +1 -0
  549. package/dist/stepper.js +8 -0
  550. package/dist/stepper.js.map +1 -0
  551. package/dist/structured-list.js +6 -0
  552. package/dist/structured-list.js.map +1 -0
  553. package/dist/styles/bento-dark.css +2133 -0
  554. package/dist/styles/bento-light.css +2132 -0
  555. package/dist/styles/bento.css +2132 -0
  556. package/dist/styles/legacy.css +2132 -0
  557. package/dist/styles/styleguide.css +2187 -0
  558. package/dist/styles/utility.css +1002 -0
  559. package/dist/summary-grid.js +12 -0
  560. package/dist/summary-grid.js.map +1 -0
  561. package/dist/tabs.js +6 -0
  562. package/dist/tabs.js.map +1 -0
  563. package/dist/tag.js +6 -0
  564. package/dist/tag.js.map +1 -0
  565. package/dist/textarea.js +5 -0
  566. package/dist/textarea.js.map +1 -0
  567. package/dist/timeline.js +10 -0
  568. package/dist/timeline.js.map +1 -0
  569. package/dist/toast.js +5 -0
  570. package/dist/toast.js.map +1 -0
  571. package/dist/toggle.js +7 -0
  572. package/dist/toggle.js.map +1 -0
  573. package/dist/tutorial.js +5 -0
  574. package/dist/tutorial.js.map +1 -0
  575. package/dist/typography.js +8 -0
  576. package/dist/typography.js.map +1 -0
  577. package/dist/use-form-v4.js +8300 -0
  578. package/dist/use-form-v4.js.map +1 -0
  579. package/dist/web-types.json +17262 -0
  580. package/package.json +27 -24
@@ -0,0 +1,310 @@
1
+ import { defineComponent as T, useSlots as Y, ref as c, computed as l, inject as Q, watch as w, nextTick as X, onUnmounted as Z, useAttrs as V, toRefs as tt, onMounted as et, provide as D } from "vue";
2
+ import { B as at } from "./button.CS_kdxYh.js";
3
+ import { B as ot } from "./focus-trap.CNIU5jOz.js";
4
+ import { u as j } from "./use-has-slot.C9lQZ6nz.js";
5
+ import { u as nt } from "./index.B6WW_F-J.js";
6
+ import { j as st } from "./button-actions.N3D-Bb_x.js";
7
+ import { g as lt } from "./generate-uid.NJ8tVoha.js";
8
+ import { C as it } from "./cross.CC_B-vG-.js";
9
+ import { D as ut, B as ct, b as rt, a as dt } from "./dialog-page.krM2wQpm.js";
10
+ import { B as mt } from "./typography.hlOAxsEn.js";
11
+ import { F as pt } from "./footer-actions.CFZwikg0.js";
12
+ import { o as ft } from "./resize.Bqks3WUm.js";
13
+ import { a as gt, G as _t } from "./grid-layout.1aIiz2N_.js";
14
+ import { n as q } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
15
+ import { B as vt } from "./directive.Cbdox5VL.js";
16
+ import "../assets/base-modal.css";
17
+ var yt = /* @__PURE__ */ ((a) => (a.DEFAULT = "default", a.DIALOG = "dialog", a))(yt || {}), Ct = /* @__PURE__ */ ((a) => (a.DEFAULT = "BentoModalDefault", a.DIALOG = "BentoModalDialog", a))(Ct || {}), G = /* @__PURE__ */ ((a) => (a.SMALL = "small", a.MEDIUM = "medium", a.LARGE = "large", a))(G || {}), E = /* @__PURE__ */ ((a) => (a.SMALLER = "smaller", a.EQUAL = "equal", a.BIGGER = "bigger", a))(E || {}), F = /* @__PURE__ */ ((a) => (a.DIALOG = "dialog", a.ALERT_DIALOG = "alertdialog", a))(F || {}), ht = /* @__PURE__ */ ((a) => (a.CONFIRMATION = "confirmation", a.DESTRUCTIVE = "destructive", a.INFO = "info", a.ACKNOWLEDGEMENT = "acknowledgement", a))(ht || {}), At = /* @__PURE__ */ ((a) => (a.CLOSE_MODAL = "close-modal", a))(At || {});
18
+ const Lt = {
19
+ "en-US": {
20
+ ariaLabelFallback: "modal",
21
+ close: "Close"
22
+ },
23
+ "ja-JP": {
24
+ close: "閉じる"
25
+ },
26
+ "pt-BR": {
27
+ close: "Fechar"
28
+ }
29
+ }, W = /* @__PURE__ */ Symbol("modal config data injection key"), bt = T({}), Pt = /* @__PURE__ */ T({
30
+ ...bt,
31
+ __name: "modal-page",
32
+ props: {
33
+ actions: { default: null },
34
+ actionsLabel: { default: null },
35
+ columnsSize: { default: E.SMALLER },
36
+ customPadding: { default: null },
37
+ destructiveActions: { type: Boolean, default: !1 },
38
+ withColumnLayout: { type: Boolean, default: !1 },
39
+ pageId: { default: void 0 },
40
+ previousPage: { default: void 0 }
41
+ },
42
+ setup(a) {
43
+ const e = a, o = 26, t = Y(), n = j(t), r = c(null), O = l(() => ({
44
+ "b-modal-page--custom-padding": e.customPadding
45
+ })), I = l(() => {
46
+ var u;
47
+ return {
48
+ "b-modal-page__content--with-header": n("default"),
49
+ "b-modal-page__content--with-actions": n("actions") || ((u = e.actions) == null ? void 0 : u.length)
50
+ };
51
+ }), R = l(() => {
52
+ if (!e.customPadding)
53
+ return {};
54
+ const u = {
55
+ paddingLeft: e.customPadding,
56
+ paddingRight: e.customPadding
57
+ }, i = { ...u, paddingTop: void 0, paddingBottom: void 0 };
58
+ return n("default") || (i.paddingTop = e.customPadding), n("actions") || (i.paddingBottom = e.customPadding), {
59
+ header: {
60
+ ...u,
61
+ paddingTop: e.customPadding,
62
+ paddingRight: `${parseInt(e.customPadding, 10) + o}px`,
63
+ flex: 1
64
+ },
65
+ content: i,
66
+ actions: { ...u, paddingBottom: e.customPadding },
67
+ backButton: { top: e.customPadding, paddingLeft: e.customPadding }
68
+ };
69
+ }), d = l(() => e.withColumnLayout && L.value === G.LARGE), f = l(() => e.columnsSize === E.SMALLER ? [
70
+ { small: 4, medium: 4, large: 4 },
71
+ { small: 8, medium: 8, large: 8 }
72
+ ] : e.columnsSize === E.BIGGER ? [
73
+ { small: 8, medium: 8, large: 8 },
74
+ { small: 4, medium: 4, large: 4 }
75
+ ] : [
76
+ { small: 6, medium: 6, large: 6 },
77
+ { small: 6, medium: 6, large: 6 }
78
+ ]), { activePage: g, height: _, isAnimationActive: m, pageCustomPadding: B, showCloseButton: x, size: L } = Q(W), h = l(() => g.value === e.pageId || !g.value);
79
+ let p = null;
80
+ return w(
81
+ () => g.value,
82
+ async (u, i) => {
83
+ var A, k;
84
+ h.value && (await X(), _.value = `${(k = (A = r.value) == null ? void 0 : A.$el) == null ? void 0 : k.clientHeight}px`, B.value = e.customPadding, m.value = i !== void 0, p = ft(r.value, () => {
85
+ var v, P;
86
+ const b = `${(P = (v = r.value) == null ? void 0 : v.$el) == null ? void 0 : P.clientHeight}px`;
87
+ b && b !== _.value && (_.value = b);
88
+ }));
89
+ },
90
+ { immediate: !0 }
91
+ ), Z(() => {
92
+ p == null || p.disconnect();
93
+ }), { __sfc: !0, CLOSE_BUTTON_ICON_WIDTH: o, slots: t, hasSlot: n, page: r, props: e, modalPageConditionalClasses: O, modalContentConditionalClasses: I, customPaddingStyles: R, hasColumnLayout: d, computedColumnWidth: f, activePage: g, height: _, isAnimationActive: m, pageCustomPadding: B, showCloseButton: x, size: L, isCurrentPage: h, pageElementObserver: p, BentoTypography: mt, GridLayout: _t, GridLayoutContainerType: gt, FooterActions: pt, DialogPage: ut };
94
+ }
95
+ });
96
+ var St = function() {
97
+ var n;
98
+ var e = this, o = e._self._c, t = e._self._setupProxy;
99
+ return o(t.DialogPage, { ref: "page", staticClass: "b-modal-page", class: t.modalPageConditionalClasses, attrs: { "page-id": e.pageId, "always-show-border": t.hasColumnLayout, "back-button-styling": (n = t.customPaddingStyles) == null ? void 0 : n.backButton, "previous-page": e.previousPage }, on: { animationend: function(r) {
100
+ t.isAnimationActive = !1;
101
+ } }, scopedSlots: e._u([t.hasSlot("default") || t.showCloseButton ? { key: "header", fn: function() {
102
+ return [o("div", { staticClass: "b-modal-page__header-container", style: t.customPaddingStyles.header }, [o("div", { staticClass: "b-modal-page__header" }, [o(t.BentoTypography, { staticClass: "b-modal-page__title", attrs: { el: "span", variant: "title", stronger: "" } }, [t.hasSlot("default") ? e._t("default") : e._e()], 2)], 1)])];
103
+ }, proxy: !0 } : null, { key: "content", fn: function() {
104
+ return [o("div", { staticClass: "b-modal-page__content", class: t.modalContentConditionalClasses, style: t.customPaddingStyles.content }, [t.hasSlot("content") || t.hasSlot("content-col-1") && t.hasSlot("content-col-2") ? o(t.BentoTypography, { attrs: { el: "div" } }, [t.hasColumnLayout ? o(t.GridLayout, { staticClass: "b-modal-page__grid", attrs: { "column-width": t.computedColumnWidth, "container-type": t.GridLayoutContainerType.NORMAL, "no-gap": "" }, scopedSlots: e._u([{ key: "col-1", fn: function() {
105
+ return [e._t("content-col-1")];
106
+ }, proxy: !0 }, { key: "col-2", fn: function() {
107
+ return [e._t("content-col-2")];
108
+ }, proxy: !0 }], null, !0) }) : e._t("content")], 2) : e._e()], 1)];
109
+ }, proxy: !0 }, t.hasSlot("actions") ? { key: "footer", fn: function() {
110
+ return [o("div", { staticClass: "b-modal-page__actions-container", style: t.customPaddingStyles.actions }, [o("div", { staticClass: "b-modal-page__actions", attrs: { "aria-label": "modal actions" } }, [e._t("actions")], 2)])];
111
+ }, proxy: !0 } : e.actions && e.actions.length > 0 ? { key: "footer", fn: function() {
112
+ return [o("div", { staticClass: "b-modal-page__actions-container", style: t.customPaddingStyles.actions }, [o(t.FooterActions, { attrs: { actions: e.actions, "actions-label": e.actionsLabel, "destructive-actions": e.destructiveActions } })], 1)];
113
+ }, proxy: !0 } : null], null, !0) });
114
+ }, Et = [], Ot = /* @__PURE__ */ q(
115
+ Pt,
116
+ St,
117
+ Et,
118
+ !1,
119
+ null,
120
+ "a4b63aa0"
121
+ );
122
+ const It = Ot.exports, Bt = T({
123
+ i18n: { messages: Lt },
124
+ name: "base-modal"
125
+ }), kt = /* @__PURE__ */ T({
126
+ ...Bt,
127
+ props: {
128
+ /**
129
+ * List of actions that will be used to render the buttons.
130
+ * First element in the list will be rendered as "primary".
131
+ * All elements after the first will be rendered as "secondary".
132
+ * But you may change the color of 1-st action to red with 'critial' key
133
+ * Not more than 3 action buttons can be provided
134
+ * Or 2 action buttons and 1 Label for them
135
+ *
136
+ * Each object in the list should have a `title`, an `event` and
137
+ * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.
138
+ *
139
+ * `title`: Button's text.
140
+ *
141
+ * `event`: Event triggered when clicking the Button.
142
+ *
143
+ * `icon`: Vue Icon from the library `@adyen/ui-assets-icons-16`.
144
+ *
145
+ * ```
146
+ * [{
147
+ * title: 'Primary',2
148
+ * event: () => { ... },
149
+ * icon: FourPeopleIcon
150
+ * }, {
151
+ * title: 'Secondary',
152
+ * event: () => { ... }
153
+ * }]
154
+ * ```
155
+ */
156
+ actions: {
157
+ type: Array,
158
+ default: null
159
+ },
160
+ /**
161
+ * The id of the current active page
162
+ * Should be the same id as the BentoModalPage to be displayed
163
+ */
164
+ activePage: {
165
+ type: String,
166
+ default: null
167
+ },
168
+ /**
169
+ * If a column layout is provided, it renders the respective left column width variant. This can be smaller than the second column, the same size as the second column or bigger than the second column.
170
+ */
171
+ columnsSize: {
172
+ type: String,
173
+ default: E.SMALLER
174
+ },
175
+ /**
176
+ * If provided, manages the padding of the whole modal container
177
+ */
178
+ customPadding: { type: String, default: null },
179
+ /**
180
+ * If passed - sets first button color to red
181
+ */
182
+ destructiveActions: { type: Boolean, default: !1 },
183
+ /**
184
+ * Hides a cross icon on the right side of the title
185
+ */
186
+ hideCloseButton: { type: Boolean, required: !0 },
187
+ /**
188
+ * Sets the open attribute on the dialog element, use isOpen instead to toggle modal visbility.
189
+ */
190
+ initiallyOpen: { type: Boolean, default: !1 },
191
+ /**
192
+ * If set to true, it allows the modal to be closed by clicking outside of it
193
+ */
194
+ isDismissible: { type: Boolean, required: !0 },
195
+ /**
196
+ * Controls the modal's state from the outside. Set it to true to open the modal
197
+ */
198
+ isOpen: { type: Boolean, required: !0 },
199
+ /**
200
+ * Defines whether the modal will be an alert modal
201
+ */
202
+ modalRole: { type: String, default: F.DIALOG },
203
+ /**
204
+ * Sets the width of the modal
205
+ */
206
+ size: {
207
+ type: String,
208
+ default: G.SMALL
209
+ },
210
+ /**
211
+ * If provided, renders the modal's content in a two-column layout an wth dividers separating its content
212
+ */
213
+ withColumnLayout: { type: Boolean, default: !1 }
214
+ },
215
+ emits: ["update:active-page", "close-modal"],
216
+ setup(a, { expose: e, emit: o }) {
217
+ const t = a, n = 500, { t: r } = nt(), O = Y(), I = V(), R = j(O), d = c(null), f = c(!1), g = lt("modal"), _ = l(() => t.isDismissible && !t.hideCloseButton), m = c(t.customPadding), B = l(() => m.value ? { top: m.value, right: m.value } : {}), x = l(() => I["aria-label"] ?? r("ariaLabelFallback")), L = l(() => t.withColumnLayout && t.size === G.LARGE), h = () => {
218
+ d.value.showModal();
219
+ }, p = () => {
220
+ o("close-modal");
221
+ }, u = () => {
222
+ f.value && (d.value.close(), y.value[0] && o("update:active-page", y.value[0]), y.value = [], f.value = !1, p());
223
+ }, i = () => {
224
+ d.value.open && (f.value = !0);
225
+ }, A = (s) => {
226
+ s && s.preventDefault(), !(!t.isDismissible && t.modalRole === F.DIALOG) && i();
227
+ }, k = () => {
228
+ t.isDismissible && A();
229
+ }, b = l(() => ({
230
+ [`b-modal-base__container--${t.size}`]: t.size,
231
+ "b-modal-base__container--hide": f.value,
232
+ "b-modal-base__container--column-layout": L.value,
233
+ "b-modal-base__container--animation": M.value
234
+ }));
235
+ w(
236
+ () => [t.isOpen, d.value],
237
+ ([s, C], [, N]) => {
238
+ if (!C)
239
+ return;
240
+ s ? (h(), y.value.length || y.value.push(v.value)) : !N || i();
241
+ }
242
+ ), w(
243
+ () => t.actions,
244
+ () => {
245
+ var s, C;
246
+ ((C = (s = t.actions) == null ? void 0 : s[0]) == null ? void 0 : C.state) === "success" && setTimeout(i, n);
247
+ },
248
+ { deep: !0 }
249
+ ), et(() => {
250
+ t.isOpen && d.value && h();
251
+ }), e({
252
+ internalModalActionClose: A
253
+ }), D(st, g);
254
+ const { activePage: v, isOpen: P, size: z } = tt(t), U = c(ct.TRANSITION_LEVEL_DEEPER), S = c([]), y = c([]), $ = (s) => o("update:active-page", s), H = (s) => () => {
255
+ var C;
256
+ S.value = (C = S.value) == null ? void 0 : C.filter((N) => N !== s);
257
+ }, J = (s) => (s && S.value.push(s), { unregisterPage: H(s) }), K = c(""), M = c(!1);
258
+ return D(W, {
259
+ activePage: v,
260
+ height: K,
261
+ isAnimationActive: M,
262
+ pageCustomPadding: m,
263
+ showCloseButton: _,
264
+ size: z
265
+ }), D(rt, {
266
+ activePage: v,
267
+ animation: U,
268
+ isOpen: P,
269
+ pages: S,
270
+ previousPages: y,
271
+ updatePage: $
272
+ }), D(dt, J), { __sfc: !0, LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME: n, t: r, slots: O, attrs: I, hasSlot: R, modal: d, isClosing: f, modalId: g, emit: o, props: t, showCloseButton: _, pageCustomPadding: m, customPaddingStyles: B, computedAriaLabel: x, hasColumnLayout: L, openModal: h, emitCloseEvent: p, closeModalAfterAnimation: u, startCloseModalAnimation: i, internalModalActionClose: A, closeModalOnClickOutside: k, modalConditionalClasses: b, activePage: v, isOpen: P, size: z, animation: U, pages: S, previousPages: y, updatePage: $, unregisterPage: H, registerPage: J, height: K, isAnimationActive: M, BentoButton: at, BentoFocusTrap: ot, vBentoClickOutsideDirective: vt, BentoModalPage: It, CrossIcon: it };
273
+ }
274
+ });
275
+ var Dt = function() {
276
+ var e = this, o = e._self._c, t = e._self._setupProxy;
277
+ return o("div", { staticClass: "b-modal-base" }, [o("dialog", { ref: "modal", staticClass: "b-modal-base__container", class: t.modalConditionalClasses, style: { height: t.height }, attrs: { role: e.modalRole, "aria-label": t.computedAriaLabel, open: e.initiallyOpen }, on: { animationend: t.closeModalAfterAnimation, keydown: function(n) {
278
+ return !n.type.indexOf("key") && e._k(n.keyCode, "esc", 27, n.key, ["Esc", "Escape"]) ? null : t.internalModalActionClose.apply(null, arguments);
279
+ } } }, [t.isOpen || e.initiallyOpen ? o(t.BentoFocusTrap, { directives: [{ name: "bento-click-outside-directive", rawName: "v-bento-click-outside-directive", value: t.closeModalOnClickOutside, expression: "closeModalOnClickOutside" }], attrs: { id: t.modalId } }, [t.showCloseButton ? o(t.BentoButton, { staticClass: "b-modal-base__close-button", style: t.customPaddingStyles, attrs: { variant: "tertiary", type: "button" }, on: { click: t.internalModalActionClose } }, [o(t.CrossIcon, { attrs: { "svg-title": t.t("close") } })], 1) : e._e(), t.props.activePage ? [e._t("default")] : o(t.BentoModalPage, { attrs: { "with-column-layout": e.withColumnLayout, size: t.size, "custom-padding": e.customPadding, "columns-size": e.columnsSize }, scopedSlots: e._u([t.hasSlot("default") ? { key: "default", fn: function() {
280
+ return [e._t("default")];
281
+ }, proxy: !0 } : null, t.hasSlot("content-col-1") ? { key: "content-col-1", fn: function() {
282
+ return [e._t("content-col-1")];
283
+ }, proxy: !0 } : null, t.hasSlot("content-col-2") ? { key: "content-col-2", fn: function() {
284
+ return [e._t("content-col-2")];
285
+ }, proxy: !0 } : null, t.hasSlot("content") ? { key: "content", fn: function() {
286
+ return [e._t("content")];
287
+ }, proxy: !0 } : null, t.hasSlot("actions") ? { key: "actions", fn: function() {
288
+ return [e._t("actions")];
289
+ }, proxy: !0 } : null], null, !0) })], 2) : e._e()], 1)]);
290
+ }, Gt = [], Tt = /* @__PURE__ */ q(
291
+ kt,
292
+ Dt,
293
+ Gt,
294
+ !1,
295
+ null,
296
+ "5f696aad"
297
+ );
298
+ const Qt = Tt.exports;
299
+ export {
300
+ yt as B,
301
+ Ct as a,
302
+ G as b,
303
+ E as c,
304
+ F as d,
305
+ ht as e,
306
+ At as f,
307
+ It as g,
308
+ Qt as h
309
+ };
310
+ //# sourceMappingURL=base-modal.C-UqIAY8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-modal.C-UqIAY8.js","sources":["../../src/components/modal/modal.types.ts","../../src/components/modal/modal.keys.ts","../../src/components/modal/components/modal-page/modal-page.vue","../../src/components/modal/components/base-modal/base-modal.vue"],"sourcesContent":["import { type ComputedRef, type Ref } from 'vue';\n\n/**\n * Public\n */\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalVariant {\n DEFAULT = 'default',\n DIALOG = 'dialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalVariantMapping {\n DEFAULT = 'BentoModalDefault',\n DIALOG = 'BentoModalDialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalSize {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalColumnLayoutVariant {\n SMALLER = 'smaller',\n EQUAL = 'equal',\n BIGGER = 'bigger',\n}\n\nexport enum BentoModalRole {\n DIALOG = 'dialog',\n ALERT_DIALOG = 'alertdialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalDialogType {\n CONFIRMATION = 'confirmation',\n DESTRUCTIVE = 'destructive',\n INFO = 'info',\n ACKNOWLEDGEMENT = 'acknowledgement',\n}\n\nexport enum BentoModalEvent {\n CLOSE_MODAL = 'close-modal',\n}\n\n/**\n * Private\n */\nexport interface BentoModalConfigData {\n activePage: Ref<string>;\n height: Ref<string>;\n isAnimationActive: Ref<boolean>;\n pageCustomPadding: Ref<string>;\n showCloseButton: ComputedRef<boolean>;\n size: Ref<BentoModalSize | `${BentoModalSize}`>;\n}\n","export const MODAL_CONFIG_INJECTION_KEY = Symbol('modal config data injection key');\n","<template>\n <dialog-page\n ref=\"page\"\n class=\"b-modal-page\"\n :class=\"modalPageConditionalClasses\"\n :page-id=\"pageId\"\n :always-show-border=\"hasColumnLayout\"\n :back-button-styling=\"customPaddingStyles?.backButton\"\n :previous-page=\"previousPage\"\n @animationend=\"isAnimationActive = false\"\n >\n <template v-if=\"hasSlot('default') || showCloseButton\" #header>\n <div class=\"b-modal-page__header-container\" :style=\"customPaddingStyles.header\">\n <div class=\"b-modal-page__header\">\n <bento-typography class=\"b-modal-page__title\" el=\"span\" variant=\"title\" stronger>\n <slot v-if=\"hasSlot('default')\" />\n </bento-typography>\n </div>\n </div>\n </template>\n\n <template #content>\n <div\n class=\"b-modal-page__content\"\n :class=\"modalContentConditionalClasses\"\n :style=\"customPaddingStyles.content\"\n >\n <bento-typography\n v-if=\"hasSlot('content') || (hasSlot('content-col-1') && hasSlot('content-col-2'))\"\n el=\"div\"\n >\n <grid-layout\n v-if=\"hasColumnLayout\"\n :column-width=\"computedColumnWidth\"\n :container-type=\"GridLayoutContainerType.NORMAL\"\n no-gap\n class=\"b-modal-page__grid\"\n >\n <template #col-1><slot name=\"content-col-1\"></slot></template>\n <template #col-2><slot name=\"content-col-2\"></slot></template>\n </grid-layout>\n <slot v-else name=\"content\" />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"hasSlot('actions')\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.actions\">\n <div aria-label=\"modal actions\" class=\"b-modal-page__actions\">\n <slot name=\"actions\" />\n </div>\n </div>\n </template>\n <template v-else-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.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 { computed, defineComponent, inject, nextTick, onUnmounted, ref, useSlots, watch } from 'vue';\n import {\n BentoModalColumnLayoutVariant,\n type BentoModalConfigData,\n BentoModalSize,\n } from '@/components/modal/modal.types';\n import { BentoTypography } from '@/components/typography';\n import { GridLayout, GridLayoutContainerType } from '@/internal';\n import { useHasSlot } from '@/composables';\n\n import { FooterActions } from '@/components/internal/footer-actions';\n\n import DialogPage from '@/internal/dialog-page/dialog-page.vue';\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import type { BentoModalPageProps } from './modal-page.types';\n\n const CLOSE_BUTTON_ICON_WIDTH = 26;\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const page = ref<InstanceType<typeof DialogPage>>(null);\n\n const props = defineProps({\n actions: { default: null },\n actionsLabel: { default: null },\n columnsSize: { default: BentoModalColumnLayoutVariant.SMALLER },\n customPadding: { default: null },\n destructiveActions: { type: Boolean, default: false },\n withColumnLayout: { type: Boolean, default: false },\n pageId: { default: undefined },\n previousPage: { default: undefined }\n});\n\n const modalPageConditionalClasses = computed(() => ({\n 'b-modal-page--custom-padding': props.customPadding,\n }));\n\n const modalContentConditionalClasses = computed(() => ({\n 'b-modal-page__content--with-header': hasSlot('default'),\n 'b-modal-page__content--with-actions': hasSlot('actions') || props.actions?.length,\n }));\n\n // Setting custom padding styles\n const customPaddingStyles = computed(() => {\n if (!props.customPadding) {\n return {};\n }\n\n const xPadding = {\n paddingLeft: props.customPadding,\n paddingRight: props.customPadding,\n };\n\n const content = { ...xPadding, paddingTop: undefined, paddingBottom: undefined };\n\n if (!hasSlot('default')) {\n content.paddingTop = props.customPadding;\n }\n\n if (!hasSlot('actions')) {\n content.paddingBottom = props.customPadding;\n }\n\n return {\n header: {\n ...xPadding,\n paddingTop: props.customPadding,\n paddingRight: `${parseInt(props.customPadding, 10) + CLOSE_BUTTON_ICON_WIDTH}px`,\n flex: 1,\n },\n content,\n actions: { ...xPadding, paddingBottom: props.customPadding },\n backButton: { top: props.customPadding, paddingLeft: props.customPadding },\n };\n });\n\n // Column layout styles\n const hasColumnLayout = computed(() => props.withColumnLayout && size.value === BentoModalSize.LARGE);\n\n const computedColumnWidth = computed(() => {\n if (props.columnsSize === BentoModalColumnLayoutVariant.SMALLER) {\n return [\n { small: 4, medium: 4, large: 4 },\n { small: 8, medium: 8, large: 8 },\n ];\n }\n if (props.columnsSize === BentoModalColumnLayoutVariant.BIGGER) {\n return [\n { small: 8, medium: 8, large: 8 },\n { small: 4, medium: 4, large: 4 },\n ];\n }\n return [\n { small: 6, medium: 6, large: 6 },\n { small: 6, medium: 6, large: 6 },\n ];\n });\n\n // Register page to parent component and inject data from parent component\n const { activePage, height, isAnimationActive, pageCustomPadding, showCloseButton, size } =\n inject<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY);\n\n const isCurrentPage = computed(() => activePage.value === props.pageId || !activePage.value);\n\n // Animation\n // Set resize observer on mount of update the height of the dialog on resize\n let pageElementObserver: ResizeObserver | null = null;\n\n // Watching activePage changes to set the height of the page and set isAnimationActive\n watch(\n () => activePage.value,\n async (value, oldValue) => {\n if (isCurrentPage.value) {\n await nextTick();\n height.value = `${page.value?.$el?.clientHeight}px`;\n pageCustomPadding.value = props.customPadding;\n // only set isAnimationActive to true if its going from two different pages and not from null to the first page\n isAnimationActive.value = oldValue !== undefined;\n\n pageElementObserver = observeSizeOfElement(page.value, () => {\n const pageHeight = `${page.value?.$el?.clientHeight}px`;\n if (pageHeight && pageHeight !== height.value) {\n height.value = pageHeight;\n }\n });\n }\n },\n { immediate: true }\n );\n\n // Disconnect observer on unmounting the page\n onUnmounted(() => {\n pageElementObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * ModalPage is used to render different pages of the Modal component\n *\n * @example\n * import { BentoModal, BentoModalPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoModal, BentoModalPage },\n * template: `\n * <bento-modal active-page='page1' :is-open='true'>\n * <bento-modal-page\n * pageId='page1'\n * actions-label='Move to next page'\n * :actions=\"[\n * {\n * title: 'Next page',\n * event: () => {\n * activePage.value = 'page2';\n * },\n * }]\">\n * Page 1\n * <template #content>\n * Page 1 content\n * </template>\n * </bento-modal-page>\n * <bento-modal-page\n * pageId='page2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Page 2\n * <template #content>\n * Page 2 content\n * </template>\n * </bento-modal-page>\n * </bento-modal>\n * `\n * }\n */\n export default defineComponent({});\n</script>\n\n<style lang=\"scss\" scoped src=\"./modal-page.scss\" />\n","<template>\n <div class=\"b-modal-base\">\n <dialog\n ref=\"modal\"\n :role=\"modalRole\"\n :aria-label=\"computedAriaLabel\"\n :style=\"{ height: height }\"\n class=\"b-modal-base__container\"\n :class=\"modalConditionalClasses\"\n :open=\"initiallyOpen\"\n @animationend=\"closeModalAfterAnimation\"\n @keydown.esc=\"internalModalActionClose\"\n >\n <bento-focus-trap\n v-if=\"isOpen || initiallyOpen\"\n :id=\"modalId\"\n v-bento-click-outside-directive=\"closeModalOnClickOutside\"\n >\n <bento-button\n v-if=\"showCloseButton\"\n class=\"b-modal-base__close-button\"\n variant=\"tertiary\"\n type=\"button\"\n :style=\"customPaddingStyles\"\n @click=\"internalModalActionClose\"\n >\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n <template v-if=\"props.activePage\">\n <slot />\n </template>\n <bento-modal-page\n v-else\n :with-column-layout=\"withColumnLayout\"\n :size=\"size\"\n :custom-padding=\"customPadding\"\n :columns-size=\"columnsSize\"\n >\n <template v-if=\"hasSlot('default')\" #default>\n <slot></slot>\n </template>\n <template v-if=\"hasSlot('content-col-1')\" #content-col-1\n ><slot name=\"content-col-1\"></slot\n ></template>\n <template v-if=\"hasSlot('content-col-2')\" #content-col-2\n ><slot name=\"content-col-2\"></slot\n ></template>\n <template v-if=\"hasSlot('content')\" #content><slot name=\"content\"></slot></template>\n <template v-if=\"hasSlot('actions')\" #actions><slot name=\"actions\"></slot></template>\n </bento-modal-page>\n </bento-focus-trap>\n </dialog>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import {\n computed,\n defineComponent,\n onMounted,\n type PropType,\n provide,\n ref,\n toRefs,\n useAttrs,\n useSlots,\n watch,\n } from 'vue';\n import {\n BentoModalColumnLayoutVariant,\n type BentoModalConfigData,\n BentoModalRole,\n BentoModalSize,\n } from '@/components/modal/modal.types';\n import { BentoButton, type BentoButtonActionsList } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import { useHasSlot } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { MODAL_DIALOG_ID_INJECTION_KEY } from '@/components/modal/components/base-modal/base-modal.keys';\n import { generateUid } from '@/core/utils/ts';\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n import messages from './messages.json';\n\n import { BentoModalPage } from '@/components/modal/components/modal-page';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n type MessageSchema = (typeof messages)['en-US'];\n const LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME = 500;\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const slots = useSlots();\n const attrs = useAttrs();\n const hasSlot = useHasSlot(slots);\n const modal = ref<HTMLDialogElement>(null);\n const isClosing = ref(false);\n const modalId = generateUid('modal');\n\n const emit = defineEmits([\"update:active-page\", \"close-modal\"]);\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n * But you may change the color of 1-st action to red with 'critial' key\n * Not more than 3 action buttons can be provided\n * Or 2 action buttons and 1 Label for them\n *\n * Each object in the list should have a `title`, an `event` and\n * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.\n *\n * `title`: Button's text.\n *\n * `event`: Event triggered when clicking the Button.\n *\n * `icon`: Vue Icon from the library `@adyen/ui-assets-icons-16`.\n *\n * ```\n * [{\n * title: 'Primary',2\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 * The id of the current active page\n * Should be the same id as the BentoModalPage to be displayed\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If a column layout is provided, it renders the respective left column width variant. This can be smaller than the second column, the same size as the second column or bigger than the second column.\n */\n columnsSize: {\n type: String as PropType<BentoModalColumnLayoutVariant>,\n default: BentoModalColumnLayoutVariant.SMALLER,\n },\n\n /**\n * If provided, manages the padding of the whole modal container\n */\n customPadding: { type: String, default: null },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: { type: Boolean, default: false },\n\n /**\n * Hides a cross icon on the right side of the title\n */\n hideCloseButton: { type: Boolean, required: true },\n\n /**\n * Sets the open attribute on the dialog element, use isOpen instead to toggle modal visbility.\n */\n initiallyOpen: { type: Boolean, default: false },\n\n /**\n * If set to true, it allows the modal to be closed by clicking outside of it\n */\n isDismissible: { type: Boolean, required: true },\n\n /**\n * Controls the modal's state from the outside. Set it to true to open the modal\n */\n isOpen: { type: Boolean, required: true },\n\n /**\n * Defines whether the modal will be an alert modal\n */\n modalRole: { type: String, default: BentoModalRole.DIALOG },\n\n /**\n * Sets the width of the modal\n */\n size: {\n type: String as PropType<BentoModalSize | `${BentoModalSize}`>,\n default: BentoModalSize.SMALL,\n },\n\n /**\n * If provided, renders the modal's content in a two-column layout an wth dividers separating its content\n */\n withColumnLayout: { type: Boolean, default: false },\n });\n\n const showCloseButton = computed(() => props.isDismissible && !props.hideCloseButton);\n\n const pageCustomPadding = ref(props.customPadding);\n\n const customPaddingStyles = computed(() => {\n if (!pageCustomPadding.value) {\n return {};\n }\n\n return { top: pageCustomPadding.value, right: pageCustomPadding.value };\n });\n\n const computedAriaLabel = computed(() => (attrs['aria-label'] as string) ?? (t('ariaLabelFallback') as string));\n const hasColumnLayout = computed(() => props.withColumnLayout && props.size === BentoModalSize.LARGE);\n\n const openModal = (): void => {\n modal.value.showModal();\n };\n\n const emitCloseEvent = (): void => {\n emit('close-modal');\n };\n\n // Handle closing and closing animation for dialog element\n const closeModalAfterAnimation = () => {\n if (isClosing.value) {\n modal.value.close();\n if (previousPages.value[0]) {\n emit('update:active-page', previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n emitCloseEvent();\n }\n };\n\n const startCloseModalAnimation = () => {\n if (!modal.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n /**\n * If the user has pressed escape, clicked outside or clicked the close icon.\n * Needs to be called from outside, following the \"dialog.close()\" pattern,\n * when the closing event is triggered outside of the \"base-modal\"\n * component (e.g. from a closing action).\n */\n const internalModalActionClose = (event?: Event) => {\n if (event) {\n event.preventDefault();\n }\n if (!props.isDismissible && props.modalRole === BentoModalRole.DIALOG) {\n return;\n }\n startCloseModalAnimation();\n };\n\n const closeModalOnClickOutside = () => {\n if (props.isDismissible) {\n internalModalActionClose();\n }\n };\n\n const modalConditionalClasses = computed(() => ({\n [`b-modal-base__container--${props.size}`]: props.size,\n 'b-modal-base__container--hide': isClosing.value,\n 'b-modal-base__container--column-layout': hasColumnLayout.value,\n 'b-modal-base__container--animation': isAnimationActive.value,\n }));\n\n watch(\n () => [props.isOpen, modal.value],\n ([newIsOpen, newModalValue], [, oldModalValue]): void => {\n if (!newModalValue) {\n return;\n }\n\n const isFirstMutation = !oldModalValue;\n if (newIsOpen) {\n openModal();\n // add the first page to the array when the modal opens\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (!isFirstMutation) {\n startCloseModalAnimation();\n }\n }\n );\n\n // If the first button is a loading button then close the modal have 0.5 seconds\n // if the state is changed to 'success'.\n watch(\n () => props.actions,\n () => {\n if (props.actions?.[0]?.state === 'success') {\n setTimeout(startCloseModalAnimation, LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME);\n }\n },\n { deep: true }\n );\n\n onMounted(() => {\n if (props.isOpen && modal.value) {\n openModal();\n }\n });\n\n /**\n * Expose methods through its 'ref'\n */\n defineExpose({\n internalModalActionClose,\n });\n\n // Let's Children components know they are inside a Modal (dialog element)\n provide(MODAL_DIALOG_ID_INJECTION_KEY, modalId);\n\n // Modal pagination\n const { activePage, isOpen, size } = toRefs(props);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n\n const pages = ref<Array<string>>([]);\n const previousPages = ref([]);\n\n const updatePage = page => emit('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 if (pageId) {\n pages.value.push(pageId);\n }\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n const height = ref('');\n const isAnimationActive = ref(false);\n\n provide<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY, {\n activePage,\n height,\n isAnimationActive,\n pageCustomPadding,\n showCloseButton,\n size,\n });\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isOpen,\n pages,\n previousPages,\n updatePage,\n });\n\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n</script>\n\n<script lang=\"ts\">\n /**\n * Dialog container. It creates a dialog HTML element for the modal to use.\n *\n * @example\n * import BaseModal from './components/base-modal/base-modal.vue';\n *\n * export default {\n * components: { BaseModal },\n * template: `\n * <base-modal\n * :hide-close-button=\"true\"\n * :is-dismissible=\"false\"\n * :is-open=\"isOpen\"\n * @close-modal=\"isOpen = false\"\n * >\n * <template #content-col-1>\n * // Content on the left side column\n * </template>\n *\n * <template #content-col-2>\n * // Content on the right side column\n * </template>\n *\n * <template v-if=\"actions\" #actions>\n * <footer-actions :actions=\"actions\" />\n * </template>\n * </base-modal>\n * `,\n * setup() {\n * const isOpen = ref(true)\n * const footerActions = [{\n * title: 'Primary action',\n * event: () => { ... }\n * }]\n * }\n * }\n */\n export default defineComponent({\n i18n: { messages },\n name: 'base-modal',\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./base-modal.scss\" />\n"],"names":["BentoModalVariant","BentoModalVariant2","BentoModalVariantMapping","BentoModalVariantMapping2","BentoModalSize","BentoModalSize2","BentoModalColumnLayoutVariant","BentoModalColumnLayoutVariant2","BentoModalRole","BentoModalRole2","BentoModalDialogType","BentoModalDialogType2","BentoModalEvent","BentoModalEvent2","MODAL_CONFIG_INJECTION_KEY","__default__$1","defineComponent","CLOSE_BUTTON_ICON_WIDTH","slots","useSlots","hasSlot","useHasSlot","page","ref","modalPageConditionalClasses","computed","props","modalContentConditionalClasses","_a","customPaddingStyles","xPadding","content","hasColumnLayout","size","computedColumnWidth","activePage","height","isAnimationActive","pageCustomPadding","showCloseButton","inject","isCurrentPage","pageElementObserver","watch","value","oldValue","nextTick","_b","observeSizeOfElement","pageHeight","onUnmounted","__default__","messages","LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME","t","useI18n","attrs","useAttrs","modal","isClosing","modalId","generateUid","computedAriaLabel","openModal","emitCloseEvent","emit","closeModalAfterAnimation","previousPages","startCloseModalAnimation","internalModalActionClose","event","closeModalOnClickOutside","modalConditionalClasses","newIsOpen","newModalValue","oldModalValue","onMounted","expose","provide","MODAL_DIALOG_ID_INJECTION_KEY","isOpen","toRefs","animation","BentoDialogPageAnimation","pages","updatePage","unregisterPage","pageIdToRemove","pageId","registerPage","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /* empty css */
2
+ import { n as e } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
3
+ let r = 0;
4
+ const a = {
5
+ beforeCreate() {
6
+ this.uuid = r.toString(), r += 1;
7
+ }
8
+ };
9
+ var i = function() {
10
+ var t = this, s = t._self._c;
11
+ return s("svg", t._b({ staticClass: "ui-assets-icons-16", attrs: { role: "img", xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", fill: "none" } }, "svg", t.$attrs, !1), [t.$attrs["svg-title"] ? s("title", [t._v(t._s(t.$attrs["svg-title"]))]) : t._e(), s("path", { attrs: { fill: "#001222", d: "M7.25 12.75H5.75V6.25H7.25V12.75Z" } }), s("path", { attrs: { fill: "#001222", d: "M10.25 12.75H8.75V6.25H10.25V12.75Z" } }), s("path", { attrs: { fill: "#001222", d: "M9.55957 0.25C10.7392 0.25 11.799 1.00369 12.1719 2.13379L12.542 3.25H14.75V4.75H13.6758L12.9072 13.2471C12.7823 14.6665 11.5854 15.75 10.1699 15.75H5.82031C4.40484 15.75 3.20795 14.6665 3.08301 13.2471L2.31445 4.75H1.25V3.25H3.45801L3.82812 2.13379C4.20101 1.00369 5.26078 0.25 6.44043 0.25H9.55957ZM4.57715 13.1123V13.1143C4.63305 13.754 5.17638 14.25 5.82031 14.25H10.1699C10.8139 14.25 11.3572 13.754 11.4131 13.1143V13.1123L12.1689 4.75H3.82129L4.57715 13.1123ZM6.44043 1.75C5.90065 1.75 5.41955 2.0955 5.25195 2.60449L5.03809 3.25H10.9619L10.748 2.60547C10.5805 2.09648 10.0994 1.75 9.55957 1.75H6.44043Z" } })]);
12
+ }, n = [], l = /* @__PURE__ */ e(
13
+ a,
14
+ i,
15
+ n,
16
+ !1,
17
+ null,
18
+ null
19
+ );
20
+ const c = l.exports;
21
+ export {
22
+ c as B
23
+ };
24
+ //# sourceMappingURL=bin.Ddb69cr1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.Ddb69cr1.js","sources":["../../../ui-assets/icons-16/dist/vue/bin.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=\"#001222\" d=\"M7.25 12.75H5.75V6.25H7.25V12.75Z\"/><path fill=\"#001222\" d=\"M10.25 12.75H8.75V6.25H10.25V12.75Z\"/><path fill=\"#001222\" d=\"M9.55957 0.25C10.7392 0.25 11.799 1.00369 12.1719 2.13379L12.542 3.25H14.75V4.75H13.6758L12.9072 13.2471C12.7823 14.6665 11.5854 15.75 10.1699 15.75H5.82031C4.40484 15.75 3.20795 14.6665 3.08301 13.2471L2.31445 4.75H1.25V3.25H3.45801L3.82812 2.13379C4.20101 1.00369 5.26078 0.25 6.44043 0.25H9.55957ZM4.57715 13.1123V13.1143C4.63305 13.754 5.17638 14.25 5.82031 14.25H10.1699C10.8139 14.25 11.3572 13.754 11.4131 13.1143V13.1123L12.1689 4.75H3.82129L4.57715 13.1123ZM6.44043 1.75C5.90065 1.75 5.41955 2.0955 5.25195 2.60449L5.03809 3.25H10.9619L10.748 2.60547C10.5805 2.09648 10.0994 1.75 9.55957 1.75H6.44043Z\"/></svg>\n</template>\n<script>\n import '../css/main.css';\n\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n"],"names":["uuid","_sfc_main"],"mappings":";;AAOA,IAAAA,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;"}
@@ -0,0 +1,85 @@
1
+ import { ref as v, watch as A, nextTick as m, defineComponent as w, toRef as b, computed as _, provide as h } from "vue";
2
+ import { M as y, e as B, f as C, B as M } from "./button-actions.N3D-Bb_x.js";
3
+ import { u as T } from "./index.BDK4hwK_.js";
4
+ import { n as N } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
5
+ import "../assets/button-actions-with-menu.css";
6
+ const W = (p) => {
7
+ const { breakpoint: t, container: o, defaultActionsCount: e, offset: s } = p, { width: l } = T(), i = v(e.value), r = 150, u = async () => {
8
+ var n;
9
+ await m();
10
+ const c = o.value.clientWidth, a = r * i.value + (((n = s == null ? void 0 : s.value) == null ? void 0 : n.offsetWidth) ?? 0) + r;
11
+ c >= a && i.value < e.value && (i.value += 1, await u());
12
+ }, d = async () => {
13
+ var n;
14
+ await m();
15
+ const c = o.value.clientWidth, a = r * i.value + (((n = s == null ? void 0 : s.value) == null ? void 0 : n.offsetWidth) ?? 0);
16
+ c < a && i.value > 0 && (i.value -= 1, await d());
17
+ };
18
+ return A([l, o], async ([c, a], [n]) => {
19
+ if (!a || !e || c > t)
20
+ return;
21
+ await m(), c > n ? await u() : await d();
22
+ }), A(e, async (c) => {
23
+ i.value = c, t && l.value <= t && o.value && await d();
24
+ }), {
25
+ displayedActionsCount: i
26
+ };
27
+ }, E = {}, I = /* @__PURE__ */ w({
28
+ ...E,
29
+ __name: "button-actions-with-menu",
30
+ props: {
31
+ actions: null,
32
+ actionsLayout: { default: "buttons-end" },
33
+ disableResponsiveBehavior: { type: Boolean, default: !1 },
34
+ displayedActions: { default: void 0 },
35
+ inverse: { type: Boolean, default: !1 },
36
+ hideDisplayedActionsBreakpoint: { default: 0 },
37
+ menuPosition: { default: "bottom-start" }
38
+ },
39
+ setup(p) {
40
+ const t = p, o = b(t, "inverse"), e = v(null), s = v(null), l = v(!1), i = _(() => {
41
+ const a = t.hideDisplayedActionsBreakpoint ? u.value : t.displayedActions;
42
+ return t.actions.slice(0, a);
43
+ }), r = _(() => {
44
+ var a;
45
+ return (a = s == null ? void 0 : s.value) == null ? void 0 : a.$el;
46
+ }), { displayedActionsCount: u } = W({
47
+ breakpoint: t.hideDisplayedActionsBreakpoint,
48
+ container: e,
49
+ defaultActionsCount: b(t, "displayedActions"),
50
+ offset: r
51
+ });
52
+ h(y, o), t.disableResponsiveBehavior || h(B, { buttonActionsWithMenu: e, menu: s, stackButtons: l });
53
+ const d = _(() => ({
54
+ "b-button-actions-with-menu__container-wrapper--buttons-end": t.actionsLayout === "buttons-end",
55
+ "b-button-actions-with-menu__container-wrapper--buttons-start": t.actionsLayout === "buttons-start",
56
+ "b-button-actions-with-menu__container-wrapper--stacked-buttons": l.value
57
+ })), c = _(() => u.value === void 0 || u.value >= t.actions.length ? [] : t.actions.slice(u.value, t.actions.length).flatMap((n) => n.data ? n.data : {
58
+ text: n.title,
59
+ handler: () => {
60
+ var f;
61
+ return (f = n.event) == null ? void 0 : f.call(n, {});
62
+ },
63
+ icon: n.icon,
64
+ critical: n.critical,
65
+ disabled: n.disabled
66
+ }));
67
+ return { __sfc: !0, props: t, inverseRef: o, buttonActionsWithMenu: e, menu: s, stackButtons: l, computedActions: i, computedMenuRef: r, displayedActionsCount: u, conditionalClasses: d, computedMenuActions: c, BentoButtonActions: M, BentoMenu: C };
68
+ }
69
+ });
70
+ var R = function() {
71
+ var t = this, o = t._self._c, e = t._self._setupProxy;
72
+ return o("div", { staticClass: "b-button-actions-with-menu" }, [o("div", { ref: "buttonActionsWithMenu", staticClass: "b-button-actions-with-menu__container-wrapper", class: e.conditionalClasses, attrs: { role: "group" } }, [o(e.BentoButtonActions, { attrs: { actions: e.computedActions, inverse: t.inverse, layout: t.actionsLayout } }), e.computedMenuActions.length ? o(e.BentoMenu, { ref: "menu", attrs: { data: e.computedMenuActions, "menu-position": t.menuPosition } }) : t._e()], 1)]);
73
+ }, k = [], g = /* @__PURE__ */ N(
74
+ I,
75
+ R,
76
+ k,
77
+ !1,
78
+ null,
79
+ "36190b44"
80
+ );
81
+ const S = g.exports;
82
+ export {
83
+ S as B
84
+ };
85
+ //# sourceMappingURL=button-actions-with-menu.KKq9Cuk1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-actions-with-menu.KKq9Cuk1.js","sources":["../../src/components/internal/button-actions-with-menu/composables/use-responsive-actions.ts","../../src/components/internal/button-actions-with-menu/button-actions-with-menu.vue"],"sourcesContent":["import { useWindowSize } from '@vueuse/core';\nimport { nextTick, ref, type Ref, watch } from 'vue';\n\ninterface UseResponsiveActionsProps {\n breakpoint?: number;\n container: Ref<HTMLElement>;\n defaultActionsCount: Ref<number>;\n offset?: Ref<HTMLElement>;\n}\n\nexport const useResponsiveActions = (props: UseResponsiveActionsProps) => {\n const { breakpoint, container, defaultActionsCount, offset } = props;\n\n const { width: windowWidth } = useWindowSize();\n\n const displayedActionsCount = ref(defaultActionsCount.value);\n\n const AVERAGE_BUTTON_WIDTH = 150; // button size + gap\n\n const showActions = async () => {\n await nextTick();\n\n const availableSpace = container.value.clientWidth;\n const totalActionWidth =\n AVERAGE_BUTTON_WIDTH * displayedActionsCount.value +\n (offset?.value?.offsetWidth ?? 0) +\n AVERAGE_BUTTON_WIDTH;\n\n // Only add actions if there's enough space and we haven't reached max\n if (availableSpace >= totalActionWidth && displayedActionsCount.value < defaultActionsCount.value) {\n displayedActionsCount.value += 1;\n\n await showActions(); // keep trying to show more\n }\n };\n\n const hideActions = async () => {\n await nextTick();\n\n const availableSpace = container.value.clientWidth;\n const totalActionWidth = AVERAGE_BUTTON_WIDTH * displayedActionsCount.value + (offset?.value?.offsetWidth ?? 0);\n\n // Hide actions if they overflow the container\n if (availableSpace < totalActionWidth && displayedActionsCount.value > 0) {\n displayedActionsCount.value -= 1;\n\n await hideActions(); // keep hiding until it fits\n }\n };\n\n watch([windowWidth, container], async ([newWidth, containerEl], [oldWidth]) => {\n if (!containerEl || !defaultActionsCount || newWidth > breakpoint) {\n return;\n }\n\n await nextTick();\n\n const isIncreasing = newWidth > oldWidth;\n\n if (isIncreasing) {\n await showActions();\n } else {\n await hideActions();\n }\n });\n\n watch(defaultActionsCount, async count => {\n displayedActionsCount.value = count;\n\n if (breakpoint && windowWidth.value <= breakpoint && container.value) {\n await hideActions();\n }\n });\n\n return {\n displayedActionsCount,\n };\n};\n","<template>\n <div class=\"b-button-actions-with-menu\">\n <div\n ref=\"buttonActionsWithMenu\"\n role=\"group\"\n class=\"b-button-actions-with-menu__container-wrapper\"\n :class=\"conditionalClasses\"\n >\n <bento-button-actions :actions=\"computedActions\" :inverse=\"inverse\" :layout=\"actionsLayout\" />\n <bento-menu\n v-if=\"computedMenuActions.length\"\n ref=\"menu\"\n :data=\"computedMenuActions\"\n :menu-position=\"menuPosition\"\n />\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoButtonActions } from '@/components/button';\n import { type BentoMenuItem } from '@/components/menu/components/menu-item/menu-item.types';\n import { MENU_INVERSE_INJECTION_KEY } from '@/components/menu/menu.keys';\n import BentoMenu from '@/components/menu/menu.vue';\n import { computed, provide, ref, toRef } from 'vue';\n import { BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY } from './button-actions-with-menu.keys';\n import { type ButtonActionsWithMenuProps } from './button-actions-with-menu.types';\n import { useResponsiveActions } from './composables/use-responsive-actions';\n\n const props = defineProps({\n actions: null,\n actionsLayout: { default: 'buttons-end' },\n disableResponsiveBehavior: { type: Boolean, default: false },\n displayedActions: { default: undefined },\n inverse: { type: Boolean, default: false },\n hideDisplayedActionsBreakpoint: { default: 0 },\n menuPosition: { default: 'bottom-start' }\n});\n\n const inverseRef = toRef(props, 'inverse');\n const buttonActionsWithMenu = ref<HTMLDivElement>(null);\n const menu = ref(null);\n const stackButtons = ref(false);\n\n const computedActions = computed(() => {\n const displayedActionsLimit = props.hideDisplayedActionsBreakpoint\n ? displayedActionsCount.value\n : props.displayedActions;\n\n return props.actions.slice(0, displayedActionsLimit);\n });\n const computedMenuRef = computed(() => menu?.value?.$el);\n\n const { displayedActionsCount } = useResponsiveActions({\n breakpoint: props.hideDisplayedActionsBreakpoint,\n container: buttonActionsWithMenu,\n defaultActionsCount: toRef(props, 'displayedActions'),\n offset: computedMenuRef,\n });\n\n provide(MENU_INVERSE_INJECTION_KEY, inverseRef);\n\n if (!props.disableResponsiveBehavior) {\n provide(BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY, { buttonActionsWithMenu, menu, stackButtons });\n }\n\n const conditionalClasses = computed(() => ({\n [`b-button-actions-with-menu__container-wrapper--buttons-end`]: props.actionsLayout === 'buttons-end',\n [`b-button-actions-with-menu__container-wrapper--buttons-start`]: props.actionsLayout === 'buttons-start',\n [`b-button-actions-with-menu__container-wrapper--stacked-buttons`]: stackButtons.value,\n }));\n\n const computedMenuActions = computed(() => {\n if (displayedActionsCount.value === undefined || displayedActionsCount.value >= props.actions.length) {\n return [];\n }\n\n const actionsToProcess = props.actions.slice(displayedActionsCount.value, props.actions.length);\n\n return actionsToProcess.flatMap<BentoMenuItem>(action => {\n if (!action.data) {\n return {\n text: action.title,\n handler: () => action.event?.({} as Event),\n icon: action.icon,\n critical: action.critical,\n disabled: action.disabled,\n };\n }\n\n return action.data;\n });\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * An internal button actions component with the option to display some of the actions in a menu.\n *\n * @example\n * <button-actions-with-menu\n * :actions=\"[\n * {\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon,\n * link: {\n * variant: 'default',\n * external: true,\n * to: 'https://www.adyen.com/'\n * },\n * },\n * {\n * title: 'Secondary',\n * event: () => { ... }\n * disabled: true,\n * variant: BentoButtonVariant.PRIMARY,\n * critical: true\n * }]\"\n * :displayedActions=\"2\"\n * />\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./button-actions-with-menu.scss\" />\n"],"names":["useResponsiveActions","props","breakpoint","container","defaultActionsCount","offset","windowWidth","useWindowSize","displayedActionsCount","ref","AVERAGE_BUTTON_WIDTH","showActions","nextTick","availableSpace","totalActionWidth","_a","hideActions","watch","newWidth","containerEl","oldWidth","count","__default__","inverseRef","toRef","buttonActionsWithMenu","menu","stackButtons","computedActions","computed","displayedActionsLimit","computedMenuRef","provide","MENU_INVERSE_INJECTION_KEY","BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY","conditionalClasses","computedMenuActions","action"],"mappings":"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"}