@adyen/bento-vue2 2.0.0-rc.6 → 2.0.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 (304) hide show
  1. package/README.md +0 -38
  2. package/dist/@types/index.d.ts +78 -34
  3. package/dist/accordion.js +1 -1
  4. package/dist/action-bar.js +1 -1
  5. package/dist/ai-tag.js +1 -1
  6. package/dist/alert.js +1 -1
  7. package/dist/anchor-scroller.js +1 -1
  8. package/dist/assets/accordion-item.css +1 -1
  9. package/dist/assets/action-bar.css +1 -1
  10. package/dist/assets/ai-tag.css +1 -1
  11. package/dist/assets/anchor-scroller.css +1 -1
  12. package/dist/assets/base-modal.css +1 -1
  13. package/dist/assets/button-actions.css +1 -1
  14. package/dist/assets/calendar.css +1 -1
  15. package/dist/assets/card.css +1 -1
  16. package/dist/assets/checkbox-group.css +1 -1
  17. package/dist/assets/checkbox.css +1 -1
  18. package/dist/assets/data-grid-template.css +1 -1
  19. package/dist/assets/data-grid.css +1 -1
  20. package/dist/assets/date-picker.css +1 -1
  21. package/dist/assets/date-range-picker.css +1 -1
  22. package/dist/assets/dialog-page.css +1 -1
  23. package/dist/assets/dropdown.css +1 -1
  24. package/dist/assets/file-uploader.css +1 -1
  25. package/dist/assets/filter-bar.css +1 -1
  26. package/dist/assets/header-with-views.css +1 -1
  27. package/dist/assets/info-icon-with-popover.css +1 -1
  28. package/dist/assets/input-field-password.css +1 -1
  29. package/dist/assets/input-field.css +1 -1
  30. package/dist/assets/inspector.css +1 -1
  31. package/dist/assets/link.css +1 -1
  32. package/dist/assets/modal-fullscreen.css +1 -1
  33. package/dist/assets/navigation-menu-group.css +1 -1
  34. package/dist/assets/pagination.css +1 -1
  35. package/dist/assets/progress-bar.css +1 -1
  36. package/dist/assets/promo-banner.css +1 -1
  37. package/dist/assets/radio-group.css +1 -1
  38. package/dist/assets/rich-text-editor.css +1 -1
  39. package/dist/assets/secondary-nav.css +1 -1
  40. package/dist/assets/segmented-control.css +1 -1
  41. package/dist/assets/selection-card-group.css +1 -1
  42. package/dist/assets/sidepanel.css +1 -1
  43. package/dist/assets/tab.css +1 -1
  44. package/dist/assets/table-of-contents.css +1 -1
  45. package/dist/assets/tag.css +1 -1
  46. package/dist/assets/textarea.css +1 -1
  47. package/dist/assets/timeline-item.css +1 -1
  48. package/dist/assets/toggle.css +1 -1
  49. package/dist/button.js +3 -3
  50. package/dist/card.js +1 -1
  51. package/dist/checkbox.js +2 -2
  52. package/dist/chip.js +1 -1
  53. package/dist/chunks/{accordion-item.V3zpgTzM.js → accordion-item.DOj7vqeL.js} +2 -2
  54. package/dist/chunks/accordion-item.DOj7vqeL.js.map +1 -0
  55. package/dist/chunks/{action-bar.BhS26IWQ.js → action-bar.BsXW7BI2.js} +77 -67
  56. package/dist/chunks/action-bar.BsXW7BI2.js.map +1 -0
  57. package/dist/chunks/{ai-button.CeT3y12R.js → ai-button.BnFk5CzK.js} +2 -2
  58. package/dist/chunks/{ai-button.CeT3y12R.js.map → ai-button.BnFk5CzK.js.map} +1 -1
  59. package/dist/chunks/{ai-tag.C72E0L5z.js → ai-tag.D2Q0xhFK.js} +3 -3
  60. package/dist/chunks/ai-tag.D2Q0xhFK.js.map +1 -0
  61. package/dist/chunks/{alert.DrGpzkQI.js → alert.DJDHwVeR.js} +2 -2
  62. package/dist/chunks/{alert.DrGpzkQI.js.map → alert.DJDHwVeR.js.map} +1 -1
  63. package/dist/chunks/{anchor-scroller.DT7QZd5b.js → anchor-scroller.BbvghQxZ.js} +8 -8
  64. package/dist/chunks/anchor-scroller.BbvghQxZ.js.map +1 -0
  65. package/dist/chunks/{base-button.edpjvY15.js → base-button.DOhHyU7x.js} +2 -2
  66. package/dist/chunks/{base-button.edpjvY15.js.map → base-button.DOhHyU7x.js.map} +1 -1
  67. package/dist/chunks/{base-modal.BXDCTPAM.js → base-modal.CcmoTJdc.js} +90 -82
  68. package/dist/chunks/base-modal.CcmoTJdc.js.map +1 -0
  69. package/dist/chunks/{button-actions-with-menu.CgInFpmT.js → button-actions-with-menu.BY394ars.js} +2 -2
  70. package/dist/chunks/{button-actions-with-menu.CgInFpmT.js.map → button-actions-with-menu.BY394ars.js.map} +1 -1
  71. package/dist/chunks/{button-actions.DdAWQn3c.js → button-actions.bkcLUE1G.js} +5 -5
  72. package/dist/chunks/{button-actions.DdAWQn3c.js.map → button-actions.bkcLUE1G.js.map} +1 -1
  73. package/dist/chunks/{button.CBqJGWy5.js → button.DII5Ifwa.js} +2 -2
  74. package/dist/chunks/{button.CBqJGWy5.js.map → button.DII5Ifwa.js.map} +1 -1
  75. package/dist/chunks/{calendar.Avy_89bW.js → calendar.CXdLEeN4.js} +5 -5
  76. package/dist/chunks/calendar.CXdLEeN4.js.map +1 -0
  77. package/dist/chunks/{card.C-e-dnNE.js → card.b9PEJ7hm.js} +57 -49
  78. package/dist/chunks/card.b9PEJ7hm.js.map +1 -0
  79. package/dist/chunks/{checkbox-group.DKSC-XM9.js → checkbox-group.UYN1ljai.js} +6 -6
  80. package/dist/chunks/checkbox-group.UYN1ljai.js.map +1 -0
  81. package/dist/chunks/{checkbox.CZM7Q3Zi.js → checkbox.Co4HoHKF.js} +15 -15
  82. package/dist/chunks/checkbox.Co4HoHKF.js.map +1 -0
  83. package/dist/chunks/{chip.CCBRXSGa.js → chip.DRsJylWl.js} +2 -2
  84. package/dist/chunks/{chip.CCBRXSGa.js.map → chip.DRsJylWl.js.map} +1 -1
  85. package/dist/chunks/{code-snippet.Dius_4s_.js → code-snippet.CnThWqVb.js} +5 -5
  86. package/dist/chunks/{code-snippet.Dius_4s_.js.map → code-snippet.CnThWqVb.js.map} +1 -1
  87. package/dist/chunks/{copy.CXHEw5S0.js → copy.CSk1rCRo.js} +2 -2
  88. package/dist/chunks/{copy.CXHEw5S0.js.map → copy.CSk1rCRo.js.map} +1 -1
  89. package/dist/chunks/{cross-circle-fill-small.Doaiq7Wx.js → cross-circle-fill-small.CZN966bc.js} +2 -2
  90. package/dist/chunks/cross-circle-fill-small.CZN966bc.js.map +1 -0
  91. package/dist/chunks/{dashboard-section.MA5pmdOu.js → dashboard-section.CYEoNH9Q.js} +3 -3
  92. package/dist/chunks/{dashboard-section.MA5pmdOu.js.map → dashboard-section.CYEoNH9Q.js.map} +1 -1
  93. package/dist/chunks/{dashed-underline.B7PRJBq4.js → dashed-underline.CzKc-fJW.js} +2 -2
  94. package/dist/chunks/{dashed-underline.B7PRJBq4.js.map → dashed-underline.CzKc-fJW.js.map} +1 -1
  95. package/dist/chunks/{data-grid-template.BEM5__ib.js → data-grid-template.DCwzh2G7.js} +4 -4
  96. package/dist/chunks/{data-grid-template.BEM5__ib.js.map → data-grid-template.DCwzh2G7.js.map} +1 -1
  97. package/dist/chunks/{data-grid.B9Htvwxc.js → data-grid.B1lI07ze.js} +19 -19
  98. package/dist/chunks/data-grid.B1lI07ze.js.map +1 -0
  99. package/dist/chunks/{date-picker.CnRL1L1b.js → date-picker.gDsw8bn1.js} +7 -7
  100. package/dist/chunks/date-picker.gDsw8bn1.js.map +1 -0
  101. package/dist/chunks/{date-range-picker.ucOMFCrT.js → date-range-picker.CqixIJxG.js} +10 -10
  102. package/dist/chunks/{date-range-picker.ucOMFCrT.js.map → date-range-picker.CqixIJxG.js.map} +1 -1
  103. package/dist/chunks/{date-time-picker.DvEpFiBu.js → date-time-picker.Bktntun4.js} +5 -5
  104. package/dist/chunks/{date-time-picker.DvEpFiBu.js.map → date-time-picker.Bktntun4.js.map} +1 -1
  105. package/dist/chunks/{dialog-page.CEVl-RI4.js → dialog-page.Bct3zOQO.js} +2 -2
  106. package/dist/chunks/{dialog-page.CEVl-RI4.js.map → dialog-page.Bct3zOQO.js.map} +1 -1
  107. package/dist/chunks/{draggable-handle.CJ2udN5Z.js → draggable-handle.DgVdGC1V.js} +2 -2
  108. package/dist/chunks/{draggable-handle.CJ2udN5Z.js.map → draggable-handle.DgVdGC1V.js.map} +1 -1
  109. package/dist/chunks/{draggable.D9_-DZ-l.js → draggable.DYKdXdbj.js} +2 -2
  110. package/dist/chunks/{draggable.D9_-DZ-l.js.map → draggable.DYKdXdbj.js.map} +1 -1
  111. package/dist/chunks/{dropdown-tag.BEzzqw23.js → dropdown-tag.Dk7SooVv.js} +3 -3
  112. package/dist/chunks/{dropdown-tag.BEzzqw23.js.map → dropdown-tag.Dk7SooVv.js.map} +1 -1
  113. package/dist/chunks/{dropdown.Bkl-FGT4.js → dropdown.Bnq4kP7k.js} +9 -9
  114. package/dist/chunks/dropdown.Bnq4kP7k.js.map +1 -0
  115. package/dist/chunks/{empty-state.CCnSOrRQ.js → empty-state.C2wjdE3y.js} +3 -3
  116. package/dist/chunks/{empty-state.CCnSOrRQ.js.map → empty-state.C2wjdE3y.js.map} +1 -1
  117. package/dist/chunks/es6.yPcTMnSH.js.map +1 -1
  118. package/dist/chunks/{file-uploader.BRedpY0J.js → file-uploader.DllKBmP8.js} +6 -6
  119. package/dist/chunks/file-uploader.DllKBmP8.js.map +1 -0
  120. package/dist/chunks/{filter-bar.Di-vepKR.js → filter-bar.DXpLhnxG.js} +572 -591
  121. package/dist/chunks/filter-bar.DXpLhnxG.js.map +1 -0
  122. package/dist/chunks/{fixed-scroller.QHqymN36.js → fixed-scroller.YC4bZifw.js} +2 -2
  123. package/dist/chunks/{fixed-scroller.QHqymN36.js.map → fixed-scroller.YC4bZifw.js.map} +1 -1
  124. package/dist/chunks/{footer-actions.Hs92lEbc.js → footer-actions.C9STwwcv.js} +3 -3
  125. package/dist/chunks/{footer-actions.Hs92lEbc.js.map → footer-actions.C9STwwcv.js.map} +1 -1
  126. package/dist/chunks/{form-layout-title.CCsmZ9E8.js → form-layout-title.C0lwzPZz.js} +2 -2
  127. package/dist/chunks/{form-layout-title.CCsmZ9E8.js.map → form-layout-title.C0lwzPZz.js.map} +1 -1
  128. package/dist/chunks/generate-uid.DBWe4g6T.js.map +1 -1
  129. package/dist/chunks/{header-with-views.CRmtYRDr.js → header-with-views.HwbE278X.js} +665 -661
  130. package/dist/chunks/{header-with-views.CRmtYRDr.js.map → header-with-views.HwbE278X.js.map} +1 -1
  131. package/dist/chunks/{header.JBgD0-kG.js → header.CmyqVXuG.js} +4 -4
  132. package/dist/chunks/{header.JBgD0-kG.js.map → header.CmyqVXuG.js.map} +1 -1
  133. package/dist/chunks/{info-icon-with-popover.B8URkh7g.js → info-icon-with-popover.BvYyGm4D.js} +3 -3
  134. package/dist/chunks/info-icon-with-popover.BvYyGm4D.js.map +1 -0
  135. package/dist/chunks/{input-field-password.Dbl53ZX_.js → input-field-password.9bWhLud0.js} +5 -5
  136. package/dist/chunks/input-field-password.9bWhLud0.js.map +1 -0
  137. package/dist/chunks/{input-field-phone-number.BdZDHzrf.js → input-field-phone-number.CCn1N9St.js} +2 -2
  138. package/dist/chunks/{input-field-phone-number.BdZDHzrf.js.map → input-field-phone-number.CCn1N9St.js.map} +1 -1
  139. package/dist/chunks/{input-field.LPEj6r0i.js → input-field.D912rZS_.js} +3 -3
  140. package/dist/chunks/input-field.D912rZS_.js.map +1 -0
  141. package/dist/chunks/{input-time.uqE8FS62.js → input-time.CXMuvF9N.js} +3 -3
  142. package/dist/chunks/{input-time.uqE8FS62.js.map → input-time.CXMuvF9N.js.map} +1 -1
  143. package/dist/chunks/{inspector-page.B8HHiZB3.js → inspector-page.BRC_7uro.js} +3 -3
  144. package/dist/chunks/{inspector-page.B8HHiZB3.js.map → inspector-page.BRC_7uro.js.map} +1 -1
  145. package/dist/chunks/{inspector.CcXe5K4v.js → inspector.IOtNex1r.js} +3 -3
  146. package/dist/chunks/inspector.IOtNex1r.js.map +1 -0
  147. package/dist/chunks/{link.BzIDMKgE.js → link.Cls8XShm.js} +4 -4
  148. package/dist/chunks/link.Cls8XShm.js.map +1 -0
  149. package/dist/chunks/{list-item.Bcqodg1-.js → list-item.HjabBEb8.js} +3 -3
  150. package/dist/chunks/{list-item.Bcqodg1-.js.map → list-item.HjabBEb8.js.map} +1 -1
  151. package/dist/chunks/{listbox-option-tag.B08qQaBW.js → listbox-option-tag.DhNxvqRO.js} +2 -2
  152. package/dist/chunks/{listbox-option-tag.B08qQaBW.js.map → listbox-option-tag.DhNxvqRO.js.map} +1 -1
  153. package/dist/chunks/{modal-fullscreen.Bo2wcyxV.js → modal-fullscreen.Bi1bQs4Z.js} +6 -6
  154. package/dist/chunks/modal-fullscreen.Bi1bQs4Z.js.map +1 -0
  155. package/dist/chunks/{modal.pzXwZQtG.js → modal.B3-pmL5s.js} +5 -5
  156. package/dist/chunks/{modal.pzXwZQtG.js.map → modal.B3-pmL5s.js.map} +1 -1
  157. package/dist/chunks/{navigation-menu-group.CKVu4No8.js → navigation-menu-group.B-AV49Bn.js} +6 -6
  158. package/dist/chunks/navigation-menu-group.B-AV49Bn.js.map +1 -0
  159. package/dist/chunks/{pagination.D4uye85j.js → pagination.cI_pc6oE.js} +5 -5
  160. package/dist/chunks/pagination.cI_pc6oE.js.map +1 -0
  161. package/dist/chunks/{progress-bar.CeSR79Ue.js → progress-bar.RlF3a0Gb.js} +2 -2
  162. package/dist/chunks/progress-bar.RlF3a0Gb.js.map +1 -0
  163. package/dist/chunks/{promo-banner.BzTq9SMT.js → promo-banner.B5szTysj.js} +7 -7
  164. package/dist/chunks/{promo-banner.BzTq9SMT.js.map → promo-banner.B5szTysj.js.map} +1 -1
  165. package/dist/chunks/{radio-group.70MGuwY1.js → radio-group.CvsQDlHi.js} +4 -4
  166. package/dist/chunks/radio-group.CvsQDlHi.js.map +1 -0
  167. package/dist/chunks/{rich-text-editor.wa-8sYrf.js → rich-text-editor.DNmVJilP.js} +6 -6
  168. package/dist/chunks/{rich-text-editor.wa-8sYrf.js.map → rich-text-editor.DNmVJilP.js.map} +1 -1
  169. package/dist/chunks/{search-bar.C900XBUm.js → search-bar.--4KVNkf.js} +3 -3
  170. package/dist/chunks/{search-bar.C900XBUm.js.map → search-bar.--4KVNkf.js.map} +1 -1
  171. package/dist/chunks/{secondary-nav.Dv3WA-JA.js → secondary-nav.CXtDQAay.js} +5 -5
  172. package/dist/chunks/secondary-nav.CXtDQAay.js.map +1 -0
  173. package/dist/chunks/{segmented-control.CxOLPKpX.js → segmented-control.nYpRQTGc.js} +2 -2
  174. package/dist/chunks/segmented-control.nYpRQTGc.js.map +1 -0
  175. package/dist/chunks/{selection-card-group.DNHKvN7F.js → selection-card-group.DjFWMqVZ.js} +21 -21
  176. package/dist/chunks/selection-card-group.DjFWMqVZ.js.map +1 -0
  177. package/dist/chunks/{sidepanel.lCym69kV.js → sidepanel.CntIcmx-.js} +6 -6
  178. package/dist/chunks/sidepanel.CntIcmx-.js.map +1 -0
  179. package/dist/chunks/{step.DWC-MMij.js → step.BCa9IOWB.js} +2 -2
  180. package/dist/chunks/{step.DWC-MMij.js.map → step.BCa9IOWB.js.map} +1 -1
  181. package/dist/chunks/{structured-list-item.DozZFSKW.js → structured-list-item.Bhe0CH1M.js} +3 -3
  182. package/dist/chunks/{structured-list-item.DozZFSKW.js.map → structured-list-item.Bhe0CH1M.js.map} +1 -1
  183. package/dist/chunks/{summary-grid.types.W9PBumap.js → summary-grid.types.C70ED6WD.js} +4 -4
  184. package/dist/chunks/{summary-grid.types.W9PBumap.js.map → summary-grid.types.C70ED6WD.js.map} +1 -1
  185. package/dist/chunks/{tab.5rS16WWy.js → tab.BK1sIJAJ.js} +38 -38
  186. package/dist/chunks/tab.BK1sIJAJ.js.map +1 -0
  187. package/dist/chunks/{table-of-contents.f_6G1qFS.js → table-of-contents.BTy95Rrs.js} +2 -2
  188. package/dist/chunks/table-of-contents.BTy95Rrs.js.map +1 -0
  189. package/dist/chunks/tag.Dz1FQSZb.js +56 -0
  190. package/dist/chunks/tag.Dz1FQSZb.js.map +1 -0
  191. package/dist/chunks/{textarea.BGm1lgyY.js → textarea.CcV9U3I7.js} +4 -4
  192. package/dist/chunks/textarea.CcV9U3I7.js.map +1 -0
  193. package/dist/chunks/{timeline-item.Ctso54I1.js → timeline-item.BG2by0xf.js} +9 -9
  194. package/dist/chunks/{timeline-item.Ctso54I1.js.map → timeline-item.BG2by0xf.js.map} +1 -1
  195. package/dist/chunks/title-details.ChwPP7C5.js +119 -0
  196. package/dist/chunks/title-details.ChwPP7C5.js.map +1 -0
  197. package/dist/chunks/{toast.DL_9zlHB.js → toast.CO6ByH3n.js} +2 -2
  198. package/dist/chunks/{toast.DL_9zlHB.js.map → toast.CO6ByH3n.js.map} +1 -1
  199. package/dist/chunks/{toggle.BkTeqKsx.js → toggle.Dgh7aw1D.js} +2 -2
  200. package/dist/chunks/toggle.Dgh7aw1D.js.map +1 -0
  201. package/dist/chunks/tooltip.DFYc5NKM.js.map +1 -1
  202. package/dist/chunks/{tutorial.FPpVdWTS.js → tutorial.K0aOQWIg.js} +2 -2
  203. package/dist/chunks/{tutorial.FPpVdWTS.js.map → tutorial.K0aOQWIg.js.map} +1 -1
  204. package/dist/chunks/use-bento-toast-controller.A5xraVqa.js.map +1 -1
  205. package/dist/chunks/{use-date-input-formatter.BzLbx82k.js → use-date-input-formatter.MgbFwUqJ.js} +2 -2
  206. package/dist/chunks/{use-date-input-formatter.BzLbx82k.js.map → use-date-input-formatter.MgbFwUqJ.js.map} +1 -1
  207. package/dist/chunks/use-dynamic-date-fns-locale.Bpb2DeYR.js +39 -0
  208. package/dist/chunks/use-dynamic-date-fns-locale.Bpb2DeYR.js.map +1 -0
  209. package/dist/code-snippet.js +1 -1
  210. package/dist/dashboard-template.js +1 -1
  211. package/dist/dashed-underline.js +1 -1
  212. package/dist/data-grid-template.js +1 -1
  213. package/dist/data-grid.js +1 -1
  214. package/dist/date-picker.js +2 -2
  215. package/dist/date-range-picker.js +2 -2
  216. package/dist/date-time-picker.js +1 -1
  217. package/dist/draggable.js +2 -2
  218. package/dist/dropdown.js +2 -2
  219. package/dist/empty-state.js +1 -1
  220. package/dist/file-uploader.js +1 -1
  221. package/dist/filter-bar.js +1 -1
  222. package/dist/form-layout.js +1 -1
  223. package/dist/header-with-views.js +1 -1
  224. package/dist/header.js +1 -1
  225. package/dist/index.js +64 -64
  226. package/dist/input-field-password.js +1 -1
  227. package/dist/input-field-phone-number.js +1 -1
  228. package/dist/input-field.js +1 -1
  229. package/dist/input-time.js +1 -1
  230. package/dist/inspector.js +2 -2
  231. package/dist/internal.js +10 -10
  232. package/dist/link.js +1 -1
  233. package/dist/list.js +1 -1
  234. package/dist/menu.js +1 -1
  235. package/dist/modal-fullscreen.js +1 -1
  236. package/dist/modal.js +2 -2
  237. package/dist/navigation-menu.js +1 -1
  238. package/dist/pagination.js +1 -1
  239. package/dist/popover.js +1 -1
  240. package/dist/progress-bar.js +1 -1
  241. package/dist/promo-banner.js +1 -1
  242. package/dist/radio-group.js +1 -1
  243. package/dist/rich-text-editor.js +1 -1
  244. package/dist/search-bar.js +2 -2
  245. package/dist/secondary-nav.js +1 -1
  246. package/dist/segmented-control.js +1 -1
  247. package/dist/selection-card.js +1 -1
  248. package/dist/sidepanel.js +1 -1
  249. package/dist/stepper.js +1 -1
  250. package/dist/structured-list.js +1 -1
  251. package/dist/styles/bento-dark.css +3 -3
  252. package/dist/styles/bento-light.css +4 -4
  253. package/dist/styles/bento.css +4 -4
  254. package/dist/styles/legacy.css +4 -4
  255. package/dist/styles/styleguide.css +4 -4
  256. package/dist/styles/utility.css +4 -4
  257. package/dist/summary-grid.js +1 -1
  258. package/dist/table-of-contents.js +1 -1
  259. package/dist/tabs.js +1 -1
  260. package/dist/tag.js +1 -1
  261. package/dist/textarea.js +1 -1
  262. package/dist/timeline.js +1 -1
  263. package/dist/toast.js +1 -1
  264. package/dist/toggle.js +1 -1
  265. package/dist/tutorial.js +1 -1
  266. package/dist/web-types.json +65 -3
  267. package/package.json +6 -6
  268. package/dist/chunks/accordion-item.V3zpgTzM.js.map +0 -1
  269. package/dist/chunks/action-bar.BhS26IWQ.js.map +0 -1
  270. package/dist/chunks/ai-tag.C72E0L5z.js.map +0 -1
  271. package/dist/chunks/anchor-scroller.DT7QZd5b.js.map +0 -1
  272. package/dist/chunks/base-modal.BXDCTPAM.js.map +0 -1
  273. package/dist/chunks/calendar.Avy_89bW.js.map +0 -1
  274. package/dist/chunks/card.C-e-dnNE.js.map +0 -1
  275. package/dist/chunks/checkbox-group.DKSC-XM9.js.map +0 -1
  276. package/dist/chunks/checkbox.CZM7Q3Zi.js.map +0 -1
  277. package/dist/chunks/cross-circle-fill-small.Doaiq7Wx.js.map +0 -1
  278. package/dist/chunks/data-grid.B9Htvwxc.js.map +0 -1
  279. package/dist/chunks/date-picker.CnRL1L1b.js.map +0 -1
  280. package/dist/chunks/dropdown.Bkl-FGT4.js.map +0 -1
  281. package/dist/chunks/file-uploader.BRedpY0J.js.map +0 -1
  282. package/dist/chunks/filter-bar.Di-vepKR.js.map +0 -1
  283. package/dist/chunks/info-icon-with-popover.B8URkh7g.js.map +0 -1
  284. package/dist/chunks/input-field-password.Dbl53ZX_.js.map +0 -1
  285. package/dist/chunks/input-field.LPEj6r0i.js.map +0 -1
  286. package/dist/chunks/inspector.CcXe5K4v.js.map +0 -1
  287. package/dist/chunks/link.BzIDMKgE.js.map +0 -1
  288. package/dist/chunks/modal-fullscreen.Bo2wcyxV.js.map +0 -1
  289. package/dist/chunks/navigation-menu-group.CKVu4No8.js.map +0 -1
  290. package/dist/chunks/pagination.D4uye85j.js.map +0 -1
  291. package/dist/chunks/progress-bar.CeSR79Ue.js.map +0 -1
  292. package/dist/chunks/radio-group.70MGuwY1.js.map +0 -1
  293. package/dist/chunks/secondary-nav.Dv3WA-JA.js.map +0 -1
  294. package/dist/chunks/segmented-control.CxOLPKpX.js.map +0 -1
  295. package/dist/chunks/selection-card-group.DNHKvN7F.js.map +0 -1
  296. package/dist/chunks/sidepanel.lCym69kV.js.map +0 -1
  297. package/dist/chunks/tab.5rS16WWy.js.map +0 -1
  298. package/dist/chunks/table-of-contents.f_6G1qFS.js.map +0 -1
  299. package/dist/chunks/tag.DSzato7w.js +0 -50
  300. package/dist/chunks/tag.DSzato7w.js.map +0 -1
  301. package/dist/chunks/textarea.BGm1lgyY.js.map +0 -1
  302. package/dist/chunks/title-details.Dwm8V6Zg.js +0 -151
  303. package/dist/chunks/title-details.Dwm8V6Zg.js.map +0 -1
  304. package/dist/chunks/toggle.BkTeqKsx.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"code-snippet.Dius_4s_.js","sources":["../../src/components/code-snippet/highlight.ts","../../src/components/code-snippet/code-snippet.types.ts","../../../../node_modules/.pnpm/codemirror-lang-csv@0.1.1/node_modules/codemirror-lang-csv/dist/index.js","../../src/components/code-snippet/utils/get-lang-loader.ts","../../src/components/code-snippet/utils/indent-same-as-line-before-extension.ts","../../src/components/code-snippet/code-snippet.vue"],"sourcesContent":["import { HighlightStyle, syntaxHighlighting } from '@codemirror/language';\nimport { tags as t } from '@lezer/highlight';\nimport {\n BColorLabelOnBackgroundCriticalWeak,\n BColorLabelOnBackgroundHighlightWeak,\n BColorLabelOnBackgroundSuccessWeak,\n BColorLabelOnBackgroundWarningWeak,\n} from '@adyen/bento-design-tokens/dist/js/bento/es6';\nimport { type BentoCodeSnippetSupportedLanguage } from './code-snippet.types';\n\nconst lightThemeColors = {\n red: BColorLabelOnBackgroundCriticalWeak,\n orange: BColorLabelOnBackgroundWarningWeak,\n green: BColorLabelOnBackgroundSuccessWeak,\n blue: BColorLabelOnBackgroundHighlightWeak,\n invalid: '#ffffff',\n};\n\nconst highlightStyle = (colors, language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`) =>\n HighlightStyle.define([\n {\n tag: t.keyword,\n color: colors.red,\n },\n {\n tag: [t.name, t.deleted, t.character, t.propertyName, t.macroName],\n color: colors.green,\n },\n {\n tag: [t.function(t.variableName), t.labelName],\n color: colors.blue,\n },\n {\n tag: [t.color, t.constant(t.name), t.standard(t.name)],\n color: colors.red,\n },\n {\n tag: [t.definition(t.name), ...(language !== 'json' ? [t.separator] : [])],\n color: colors.red,\n },\n {\n tag: [t.typeName, t.className, t.number, t.changed, t.annotation, t.modifier, t.self, t.namespace],\n color: colors.orange,\n },\n {\n tag: [t.operator, t.operatorKeyword, t.url, t.escape, t.regexp, t.link, t.special(t.string)],\n color: colors.blue,\n },\n {\n tag: [t.meta, t.comment],\n color: colors.orange,\n },\n {\n tag: t.strong,\n fontWeight: 'bold',\n },\n {\n tag: t.emphasis,\n fontStyle: 'italic',\n },\n {\n tag: t.strikethrough,\n textDecoration: 'line-through',\n },\n {\n tag: t.link,\n color: colors.orange,\n textDecoration: 'underline',\n },\n {\n tag: t.heading,\n fontWeight: 'bold',\n color: colors.blue,\n },\n {\n tag: [t.atom, t.bool, t.special(t.variableName)],\n color: colors.red,\n },\n {\n tag: [t.processingInstruction, t.string, t.inserted],\n color: colors.blue,\n },\n {\n tag: t.invalid,\n color: colors.invalid,\n },\n ]);\n\nexport const lightThemeHighlight = (\n language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`\n) => syntaxHighlighting(highlightStyle(lightThemeColors, language));\n","/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCodeSnippetVariant {\n INLINE = 'inline',\n SINGLELINE = 'singleline',\n MULTILINE = 'multiline',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCodeSnippetSupportedLanguage {\n JSON = 'json',\n XML = 'xml',\n JAVA = 'java',\n JAVASCRIPT = 'javascript',\n PYTHON = 'python',\n CSV = 'csv',\n}\n\nexport enum BentoCodeSnippetEvent {\n ACTION = 'action',\n CHANGE = 'change',\n}\n\nexport interface BentoCodeSnippetProps {\n /**\n * Displays a button that when clicked will emit an action event\n * Leaves to the parent component the logic of what to do with it\n */\n actionable?: boolean;\n\n /**\n * Displays a button that when clicked will emit a run event\n * Leaves to the parent component the logic of what to do with it\n */\n actionableText?: string;\n\n /**\n * The code content\n */\n content?: string;\n\n /**\n * Displays a button that can expand the codeblock into a modal to easily\n * view large blocks of code.\n */\n expandable?: boolean;\n\n /**\n * Allows editing of the code-snippet content by the user\n */\n editable?: boolean;\n\n /**\n * Language name for syntax highlighting rules\n */\n lang?: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`;\n\n /**\n * Label to show in the action-bar, describing the language\n */\n langLabel?: string;\n\n /**\n * Toggles the loading indicator within the action bar\n */\n loading?: boolean;\n\n /**\n * Defines the variant of code-snippet\n */\n variant?: BentoCodeSnippetVariant | `${BentoCodeSnippetVariant}`;\n}\n","import { LRParser } from '@lezer/lr';\nimport { LRLanguage, LanguageSupport } from '@codemirror/language';\nimport { styleTags, tags } from '@lezer/highlight';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = LRParser.deserialize({\n version: 14,\n states: \"nQVQPOOOOQO'#Ce'#CeOOQO'#Ca'#CaQVQPOOOOQO-E6_-E6_\",\n stateData: \"g~OWOS~OQPORPOSPO~OQRSR~\",\n goto: \"eYPPPPPZPPPaQRORSRTQOR\",\n nodeNames: \"⚠ Program String Separator Value\",\n maxTerm: 9,\n skippedNodes: [0],\n repeatNodeCount: 1,\n tokenData: \"'Y~RZOYtYZ!cZrtrs!hs|t|}'T}!]t!]!^'T!^;'St;'S;=`!]<%lOt~yUS~OYtZ|t}!]t!^;'St;'S;=`!]<%lOt~!`P;=`<%lt~!hOW~~!m]S~OY!hYZ#fZr!hrs%Ss|!h|}#f}!]!h!]!^#f!^#O!h#O#P%m#P;'S!h;'S;=`&}<%lO!h~#iVOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|<%lO#f~$TOQ~~$WRO;'S#f;'S;=`$a;=`O#f~$dWOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|;=`<%l#f<%lO#f~%PP;=`<%l#f~%ZUQ~S~OYtZ|t}!]t!^;'St;'S;=`!]<%lOt~%rYS~OY!hYZ#fZ|!h|}#f}!]!h!]!^#f!^;'S!h;'S;=`&b;=`<%l#f<%lO!h~&eWOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|;=`<%l!h<%lO#f~'QP;=`<%l!h~'YOR~\",\n tokenizers: [0],\n topRules: {\"Program\":[0,1]},\n tokenPrec: 18\n});\n\nconst csvLanguage = LRLanguage.define({\n parser: parser.configure({\n props: [\n styleTags({\n Separator: tags.separator,\n Value: tags.string,\n String: tags.string,\n LineComment: tags.lineComment,\n \"( )\": tags.paren,\n }),\n ],\n }),\n});\nfunction csv() {\n return new LanguageSupport(csvLanguage);\n}\n\nexport { csv, csvLanguage };\n","import { BentoCodeSnippetSupportedLanguage } from '@/components/code-snippet/code-snippet.types';\nimport { json } from '@codemirror/lang-json';\nimport { xml } from '@codemirror/lang-xml';\nimport { javascript } from '@codemirror/lang-javascript';\nimport { java } from '@codemirror/lang-java';\nimport { python } from '@codemirror/lang-python';\nimport { csv } from 'codemirror-lang-csv';\nimport type { LanguageSupport } from '@codemirror/language';\n\n/**\n * TODO: This should be handled with dynamic imports,\n * without relying on importing every single language/package available.\n * These supported types need to be kept in line with the ones in packages/vue2/src/components/code-snippet/code-snippet.types.ts enum\n */\nconst importsMap: Record<BentoCodeSnippetSupportedLanguage, () => LanguageSupport> = {\n [BentoCodeSnippetSupportedLanguage.JSON]: json,\n [BentoCodeSnippetSupportedLanguage.XML]: xml,\n [BentoCodeSnippetSupportedLanguage.JAVASCRIPT]: javascript,\n [BentoCodeSnippetSupportedLanguage.JAVA]: java,\n [BentoCodeSnippetSupportedLanguage.PYTHON]: python,\n [BentoCodeSnippetSupportedLanguage.CSV]: csv,\n};\n\n/**\n * Returns a language loder for `CodeMirror`.\n * Supported languages: json, xml, javascript & java\n *\n * @param language Language to be used\n * @returns Language configuration loader to be used in codemirror\n */\nexport const getLangLoader = (language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`) => {\n const loadLang = async () => importsMap[language];\n\n return loadLang;\n};\n","import { EditorSelection, type EditorState, type SelectionRange } from '@codemirror/state';\n\n/**\n * Calculate indentation for a new line based on line before it.\n * @param state - The editor state\n * @param line - the selection range, in this case one line\n * @returns the indentation string to be pre-pended on a new line.\n */\nconst getIndentation = (state: EditorState, line: SelectionRange) => {\n const currentLine = state.doc.lineAt(line.from);\n const indentMatch = /^\\s*/.exec(currentLine.text);\n return indentMatch ? indentMatch[0] : '';\n};\n\n/**\n * This extension to codemirror will, upon pressing the 'Enter' key, indent the new line\n * the same as the line before it.\n */\nexport const INDENT_SAME_AS_LINE_BEFORE = {\n key: 'Enter',\n run: ({ state, dispatch }) => {\n const changes = state.changeByRange(range => {\n const indentation = getIndentation(state, range);\n const newText = `\\n${indentation}`;\n return {\n changes: { from: range.from, to: range.to, insert: newText },\n range: EditorSelection.cursor(range.from + newText.length),\n };\n });\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: 'input' }));\n return true;\n },\n};\n\nexport default INDENT_SAME_AS_LINE_BEFORE;\n","<template>\n <div class=\"b-code-snippet\" :class=\"conditionalClasses\">\n <section v-if=\"!isInlineVariant\" class=\"b-code-snippet__action-bar\">\n <div class=\"b-code-snippet__action-bar--start\">\n <bento-dropdown\n v-if=\"availableLanguages.length > 0\"\n v-model=\"selectedLanguage\"\n v-bind=\"$props\"\n :disabled=\"availableLanguages.length === 1\"\n :items=\"availableLanguages\"\n class=\"b-code-snippet__language-picker\"\n />\n <bento-typography el=\"span\" stronger>\n {{ displayedLang }}\n </bento-typography>\n </div>\n <div class=\"b-code-snippet__action-bar--end\">\n <bento-loading-indicator v-if=\"loading\" />\n <copy v-if=\"currentContents !== null\" class=\"b-structured-list__icon\" :text=\"currentContents\" />\n <bento-button\n v-if=\"expandable\"\n variant=\"tertiary\"\n condensed\n :aria-label=\"t('expand')\"\n @click=\"showModal = true\"\n >\n <template #iconLeft>\n <expand-icon />\n </template>\n </bento-button>\n <bento-button v-if=\"actionable\" variant=\"primary\" tertiary condensed @click=\"onActionClicked\">\n <template #iconLeft>\n <bento-typography el=\"span\" class=\"b-code-snippet__action-button\">\n {{ runText }}\n </bento-typography>\n </template>\n </bento-button>\n </div>\n </section>\n <code v-if=\"content || editable\" class=\"b-code-snippet__code-area\">\n <div ref=\"container\" class=\"b-code-snippet__code-area-content\" :class=\"codeAreaContentConditionalClasses\" />\n </code>\n <section v-else>\n <slot name=\"empty-state\">\n <!-- TODO: switch with empty-state component when ready -->\n <div class=\"b-code-snippet__empty-state\">{{ t('nothingToDisplay') }}</div>\n </slot>\n </section>\n <base-modal\n v-if=\"expandable\"\n class=\"b-code-snippet__modal\"\n :hide-close-button=\"true\"\n :custom-padding=\"'0px'\"\n :is-dismissible=\"true\"\n :is-open=\"showModal\"\n size=\"large\"\n @close-modal=\"showModal = false\"\n >\n <template #content>\n <bento-code-snippet v-bind=\"{ ...$props, expandable: false }\" />\n </template>\n </base-modal>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, type HTMLAttributes, onMounted, ref, shallowRef, useAttrs, watch, watchEffect } from 'vue';\n import { EditorView, highlightActiveLine, keymap, lineNumbers } from '@codemirror/view';\n import { Compartment, EditorState } from '@codemirror/state';\n import { history, indentWithTab } from '@codemirror/commands';\n import { lightThemeHighlight } from './highlight';\n import { getLangLoader, INDENT_SAME_AS_LINE_BEFORE } from './utils';\n import { BentoDropdown } from '@/components/dropdown';\n import { BentoButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { BentoLoadingIndicator } from '@/components/loading-indicator';\n import { useI18n } from '@/utils/ts/i18n';\n import { Copy } from '@/internal';\n import {\n BentoCodeSnippetEvent,\n type BentoCodeSnippetProps,\n BentoCodeSnippetSupportedLanguage,\n BentoCodeSnippetVariant,\n } from './code-snippet.types';\n import ExpandIcon from '@adyen/ui-assets-icons-16/vue/expand';\n import BaseModal from '@/components/modal/components/base-modal/base-modal.vue';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n actionable: { type: Boolean, default: false },\n actionableText: { default: null },\n content: { default: '' },\n expandable: { type: Boolean, default: false },\n editable: { type: Boolean, default: false },\n lang: { default: BentoCodeSnippetSupportedLanguage.JSON },\n langLabel: { default: null },\n loading: { type: Boolean, default: false },\n variant: { default: BentoCodeSnippetVariant.MULTILINE }\n});\n\n const emit = defineEmits([BentoCodeSnippetEvent.ACTION, BentoCodeSnippetEvent.CHANGE]);\n\n const attrs = useAttrs();\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // language\n const selectedLanguage = ref<string | null>(null);\n const availableLanguages = []; // TODO: implement\n const displayedLang = computed(() => props.langLabel ?? props.lang.toUpperCase());\n\n const isInlineVariant = computed(() => props.variant === BentoCodeSnippetVariant.INLINE);\n\n const conditionalClasses = computed(() => ({\n 'b-code-snippet--inline': isInlineVariant.value,\n 'b-code-snippet--scrollable': !isInlineVariant.value,\n }));\n\n const codeAreaContentConditionalClasses = computed(() => ({\n 'b-code-snippet__code-area-content--editable': props.editable,\n }));\n\n const loadLang = getLangLoader(props.lang);\n\n const container = shallowRef<HTMLDivElement>();\n const editor = shallowRef<EditorView>();\n const languageConf = new Compartment();\n const editorTheme = new Compartment();\n const editorReadOnly = new Compartment();\n const editorAttributes = new Compartment();\n\n const currentContents = ref(null);\n const contentLength = ref(0);\n\n const runText = computed(() => props.actionableText || t('run'));\n\n onMounted(async () => {\n const language = await loadLang();\n\n // alongside the updateListener plugin it acts as a watcher of changes to the editor state\n currentContents.value = props.content;\n const updateCurrentContents = ({ state }) => {\n currentContents.value = state.doc.toString();\n };\n\n const extensions = [\n highlightActiveLine(),\n keymap.of([indentWithTab, INDENT_SAME_AS_LINE_BEFORE]),\n languageConf.of(language()),\n editorTheme.of(lightThemeHighlight(props.lang)),\n editorReadOnly.of(EditorState.readOnly.of(!props.editable)),\n editorAttributes.of(\n EditorView.contentAttributes.of({\n 'aria-label': (attrs['aria-label'] as HTMLAttributes['aria-label']) ?? t('codeSnippet'),\n ...(!isInlineVariant.value && { tabindex: '0' }),\n })\n ),\n EditorView.updateListener.of(content => updateCurrentContents(content)),\n ];\n\n if (props.variant === 'multiline') {\n extensions.push([lineNumbers(), history()]);\n }\n\n const state = EditorState.create({\n doc: props.content,\n extensions: [...extensions],\n });\n contentLength.value = state.doc.length;\n\n editor.value = new EditorView({\n state,\n parent: container.value,\n });\n });\n watch(\n () => props.content,\n () => {\n if (props.content !== currentContents.value) {\n const upcomingContentLength = props.content.length;\n editor.value.dispatch({\n changes: {\n from: 0,\n to: contentLength.value,\n insert: props.content,\n },\n });\n contentLength.value = upcomingContentLength;\n }\n }\n );\n\n const onActionClicked = () => {\n emit(BentoCodeSnippetEvent.ACTION, currentContents.value);\n };\n\n watchEffect(() => {\n if (currentContents.value !== null) {\n emit(BentoCodeSnippetEvent.CHANGE, currentContents.value);\n }\n });\n\n const showModal = ref(false);\n</script>\n\n<script lang=\"ts\">\n /**\n * A code-snippet is a container to display code in a readable way.\n * Come with added functionalities like syntax highlighting, editing and actioning the code\n *\n * @example\n * import { BentoCodeSnippet } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCodeSnippet },\n * template: `\n * <bento-code-snippet :variant=\"BentoCodeSnippetVariant.MULTILINE\" content=\"{ example: 1234 }\" />\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-code-snippet',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./code-snippet.scss\"></style>\n"],"names":["lightThemeColors","BColorLabelOnBackgroundCriticalWeak","BColorLabelOnBackgroundWarningWeak","BColorLabelOnBackgroundSuccessWeak","BColorLabelOnBackgroundHighlightWeak","highlightStyle","colors","language","HighlightStyle","tags","lightThemeHighlight","syntaxHighlighting","BentoCodeSnippetVariant","BentoCodeSnippetVariant2","BentoCodeSnippetSupportedLanguage","BentoCodeSnippetSupportedLanguage2","BentoCodeSnippetEvent","BentoCodeSnippetEvent2","parser","LRParser","csvLanguage","LRLanguage","styleTags","csv","LanguageSupport","importsMap","json","xml","javascript","java","python","getLangLoader","getIndentation","state","line","currentLine","indentMatch","INDENT_SAME_AS_LINE_BEFORE","dispatch","changes","range","newText","EditorSelection","__default__","messages","attrs","useAttrs","t","useI18n","selectedLanguage","ref","availableLanguages","displayedLang","computed","props","isInlineVariant","conditionalClasses","codeAreaContentConditionalClasses","loadLang","container","shallowRef","editor","languageConf","Compartment","editorTheme","editorReadOnly","editorAttributes","currentContents","contentLength","runText","onMounted","updateCurrentContents","state2","extensions","highlightActiveLine","keymap","indentWithTab","EditorState","EditorView","content","lineNumbers","history","watch","upcomingContentLength","onActionClicked","emit","watchEffect","showModal"],"mappings":"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","x_google_ignoreList":[2]}
1
+ {"version":3,"file":"code-snippet.CnThWqVb.js","sources":["../../src/components/code-snippet/highlight.ts","../../src/components/code-snippet/code-snippet.types.ts","../../../../node_modules/.pnpm/codemirror-lang-csv@0.1.1/node_modules/codemirror-lang-csv/dist/index.js","../../src/components/code-snippet/utils/get-lang-loader.ts","../../src/components/code-snippet/utils/indent-same-as-line-before-extension.ts","../../src/components/code-snippet/code-snippet.vue"],"sourcesContent":["import { HighlightStyle, syntaxHighlighting } from '@codemirror/language';\nimport { tags as t } from '@lezer/highlight';\nimport {\n BColorLabelOnBackgroundCriticalWeak,\n BColorLabelOnBackgroundHighlightWeak,\n BColorLabelOnBackgroundSuccessWeak,\n BColorLabelOnBackgroundWarningWeak,\n} from '@adyen/bento-design-tokens/dist/js/bento/es6';\nimport { type BentoCodeSnippetSupportedLanguage } from './code-snippet.types';\n\nconst lightThemeColors = {\n red: BColorLabelOnBackgroundCriticalWeak,\n orange: BColorLabelOnBackgroundWarningWeak,\n green: BColorLabelOnBackgroundSuccessWeak,\n blue: BColorLabelOnBackgroundHighlightWeak,\n invalid: '#ffffff',\n};\n\nconst highlightStyle = (colors, language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`) =>\n HighlightStyle.define([\n {\n tag: t.keyword,\n color: colors.red,\n },\n {\n tag: [t.name, t.deleted, t.character, t.propertyName, t.macroName],\n color: colors.green,\n },\n {\n tag: [t.function(t.variableName), t.labelName],\n color: colors.blue,\n },\n {\n tag: [t.color, t.constant(t.name), t.standard(t.name)],\n color: colors.red,\n },\n {\n tag: [t.definition(t.name), ...(language !== 'json' ? [t.separator] : [])],\n color: colors.red,\n },\n {\n tag: [t.typeName, t.className, t.number, t.changed, t.annotation, t.modifier, t.self, t.namespace],\n color: colors.orange,\n },\n {\n tag: [t.operator, t.operatorKeyword, t.url, t.escape, t.regexp, t.link, t.special(t.string)],\n color: colors.blue,\n },\n {\n tag: [t.meta, t.comment],\n color: colors.orange,\n },\n {\n tag: t.strong,\n fontWeight: 'bold',\n },\n {\n tag: t.emphasis,\n fontStyle: 'italic',\n },\n {\n tag: t.strikethrough,\n textDecoration: 'line-through',\n },\n {\n tag: t.link,\n color: colors.orange,\n textDecoration: 'underline',\n },\n {\n tag: t.heading,\n fontWeight: 'bold',\n color: colors.blue,\n },\n {\n tag: [t.atom, t.bool, t.special(t.variableName)],\n color: colors.red,\n },\n {\n tag: [t.processingInstruction, t.string, t.inserted],\n color: colors.blue,\n },\n {\n tag: t.invalid,\n color: colors.invalid,\n },\n ]);\n\nexport const lightThemeHighlight = (\n language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`\n) => syntaxHighlighting(highlightStyle(lightThemeColors, language));\n","/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCodeSnippetVariant {\n INLINE = 'inline',\n SINGLELINE = 'singleline',\n MULTILINE = 'multiline',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCodeSnippetSupportedLanguage {\n JSON = 'json',\n XML = 'xml',\n JAVA = 'java',\n JAVASCRIPT = 'javascript',\n PYTHON = 'python',\n CSV = 'csv',\n}\n\nexport enum BentoCodeSnippetEvent {\n ACTION = 'action',\n CHANGE = 'change',\n}\n\nexport interface BentoCodeSnippetProps {\n /**\n * Displays a button that when clicked will emit an action event\n * Leaves to the parent component the logic of what to do with it\n */\n actionable?: boolean;\n\n /**\n * Displays a button that when clicked will emit a run event\n * Leaves to the parent component the logic of what to do with it\n */\n actionableText?: string;\n\n /**\n * The code content\n */\n content?: string;\n\n /**\n * Displays a button that can expand the codeblock into a modal to easily\n * view large blocks of code.\n */\n expandable?: boolean;\n\n /**\n * Allows editing of the code-snippet content by the user\n */\n editable?: boolean;\n\n /**\n * Language name for syntax highlighting rules\n */\n lang?: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`;\n\n /**\n * Label to show in the action-bar, describing the language\n */\n langLabel?: string;\n\n /**\n * Toggles the loading indicator within the action bar\n */\n loading?: boolean;\n\n /**\n * Defines the variant of code-snippet\n */\n variant?: BentoCodeSnippetVariant | `${BentoCodeSnippetVariant}`;\n}\n","import { LRParser } from '@lezer/lr';\nimport { LRLanguage, LanguageSupport } from '@codemirror/language';\nimport { styleTags, tags } from '@lezer/highlight';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = LRParser.deserialize({\n version: 14,\n states: \"nQVQPOOOOQO'#Ce'#CeOOQO'#Ca'#CaQVQPOOOOQO-E6_-E6_\",\n stateData: \"g~OWOS~OQPORPOSPO~OQRSR~\",\n goto: \"eYPPPPPZPPPaQRORSRTQOR\",\n nodeNames: \"⚠ Program String Separator Value\",\n maxTerm: 9,\n skippedNodes: [0],\n repeatNodeCount: 1,\n tokenData: \"'Y~RZOYtYZ!cZrtrs!hs|t|}'T}!]t!]!^'T!^;'St;'S;=`!]<%lOt~yUS~OYtZ|t}!]t!^;'St;'S;=`!]<%lOt~!`P;=`<%lt~!hOW~~!m]S~OY!hYZ#fZr!hrs%Ss|!h|}#f}!]!h!]!^#f!^#O!h#O#P%m#P;'S!h;'S;=`&}<%lO!h~#iVOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|<%lO#f~$TOQ~~$WRO;'S#f;'S;=`$a;=`O#f~$dWOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|;=`<%l#f<%lO#f~%PP;=`<%l#f~%ZUQ~S~OYtZ|t}!]t!^;'St;'S;=`!]<%lOt~%rYS~OY!hYZ#fZ|!h|}#f}!]!h!]!^#f!^;'S!h;'S;=`&b;=`<%l#f<%lO!h~&eWOr#frs$Os#O#f#O#P$T#P;'S#f;'S;=`$|;=`<%l!h<%lO#f~'QP;=`<%l!h~'YOR~\",\n tokenizers: [0],\n topRules: {\"Program\":[0,1]},\n tokenPrec: 18\n});\n\nconst csvLanguage = LRLanguage.define({\n parser: parser.configure({\n props: [\n styleTags({\n Separator: tags.separator,\n Value: tags.string,\n String: tags.string,\n LineComment: tags.lineComment,\n \"( )\": tags.paren,\n }),\n ],\n }),\n});\nfunction csv() {\n return new LanguageSupport(csvLanguage);\n}\n\nexport { csv, csvLanguage };\n","import { BentoCodeSnippetSupportedLanguage } from '@/components/code-snippet/code-snippet.types';\nimport { json } from '@codemirror/lang-json';\nimport { xml } from '@codemirror/lang-xml';\nimport { javascript } from '@codemirror/lang-javascript';\nimport { java } from '@codemirror/lang-java';\nimport { python } from '@codemirror/lang-python';\nimport { csv } from 'codemirror-lang-csv';\nimport type { LanguageSupport } from '@codemirror/language';\n\n/**\n * TODO: This should be handled with dynamic imports,\n * without relying on importing every single language/package available.\n * These supported types need to be kept in line with the ones in packages/vue2/src/components/code-snippet/code-snippet.types.ts enum\n */\nconst importsMap: Record<BentoCodeSnippetSupportedLanguage, () => LanguageSupport> = {\n [BentoCodeSnippetSupportedLanguage.JSON]: json,\n [BentoCodeSnippetSupportedLanguage.XML]: xml,\n [BentoCodeSnippetSupportedLanguage.JAVASCRIPT]: javascript,\n [BentoCodeSnippetSupportedLanguage.JAVA]: java,\n [BentoCodeSnippetSupportedLanguage.PYTHON]: python,\n [BentoCodeSnippetSupportedLanguage.CSV]: csv,\n};\n\n/**\n * Returns a language loder for `CodeMirror`.\n * Supported languages: json, xml, javascript & java\n *\n * @param language Language to be used\n * @returns Language configuration loader to be used in codemirror\n */\nexport const getLangLoader = (language: BentoCodeSnippetSupportedLanguage | `${BentoCodeSnippetSupportedLanguage}`) => {\n const loadLang = async () => importsMap[language];\n\n return loadLang;\n};\n","import { EditorSelection, type EditorState, type SelectionRange } from '@codemirror/state';\n\n/**\n * Calculate indentation for a new line based on line before it.\n * @param state - The editor state\n * @param line - the selection range, in this case one line\n * @returns the indentation string to be pre-pended on a new line.\n */\nconst getIndentation = (state: EditorState, line: SelectionRange) => {\n const currentLine = state.doc.lineAt(line.from);\n const indentMatch = /^\\s*/.exec(currentLine.text);\n return indentMatch ? indentMatch[0] : '';\n};\n\n/**\n * This extension to codemirror will, upon pressing the 'Enter' key, indent the new line\n * the same as the line before it.\n */\nexport const INDENT_SAME_AS_LINE_BEFORE = {\n key: 'Enter',\n run: ({ state, dispatch }) => {\n const changes = state.changeByRange(range => {\n const indentation = getIndentation(state, range);\n const newText = `\\n${indentation}`;\n return {\n changes: { from: range.from, to: range.to, insert: newText },\n range: EditorSelection.cursor(range.from + newText.length),\n };\n });\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: 'input' }));\n return true;\n },\n};\n\nexport default INDENT_SAME_AS_LINE_BEFORE;\n","<template>\n <div class=\"b-code-snippet\" :class=\"conditionalClasses\">\n <section v-if=\"!isInlineVariant\" class=\"b-code-snippet__action-bar\">\n <div class=\"b-code-snippet__action-bar--start\">\n <bento-dropdown\n v-if=\"availableLanguages.length > 0\"\n v-model=\"selectedLanguage\"\n v-bind=\"$props\"\n :disabled=\"availableLanguages.length === 1\"\n :items=\"availableLanguages\"\n class=\"b-code-snippet__language-picker\"\n />\n <bento-typography el=\"span\" stronger>\n {{ displayedLang }}\n </bento-typography>\n </div>\n <div class=\"b-code-snippet__action-bar--end\">\n <bento-loading-indicator v-if=\"loading\" />\n <copy v-if=\"currentContents !== null\" class=\"b-structured-list__icon\" :text=\"currentContents\" />\n <bento-button\n v-if=\"expandable\"\n variant=\"tertiary\"\n condensed\n :aria-label=\"t('expand')\"\n @click=\"showModal = true\"\n >\n <template #iconLeft>\n <expand-icon />\n </template>\n </bento-button>\n <bento-button v-if=\"actionable\" variant=\"primary\" tertiary condensed @click=\"onActionClicked\">\n <template #iconLeft>\n <bento-typography el=\"span\" class=\"b-code-snippet__action-button\">\n {{ runText }}\n </bento-typography>\n </template>\n </bento-button>\n </div>\n </section>\n <code v-if=\"content || editable\" class=\"b-code-snippet__code-area\">\n <div ref=\"container\" class=\"b-code-snippet__code-area-content\" :class=\"codeAreaContentConditionalClasses\" />\n </code>\n <section v-else>\n <slot name=\"empty-state\">\n <!-- TODO: switch with empty-state component when ready -->\n <div class=\"b-code-snippet__empty-state\">{{ t('nothingToDisplay') }}</div>\n </slot>\n </section>\n <base-modal\n v-if=\"expandable\"\n class=\"b-code-snippet__modal\"\n :hide-close-button=\"true\"\n :custom-padding=\"'0px'\"\n :is-dismissible=\"true\"\n :is-open=\"showModal\"\n size=\"large\"\n @close-modal=\"showModal = false\"\n >\n <template #content>\n <bento-code-snippet v-bind=\"{ ...$props, expandable: false }\" />\n </template>\n </base-modal>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, type HTMLAttributes, onMounted, ref, shallowRef, useAttrs, watch, watchEffect } from 'vue';\n import { EditorView, highlightActiveLine, keymap, lineNumbers } from '@codemirror/view';\n import { Compartment, EditorState } from '@codemirror/state';\n import { history, indentWithTab } from '@codemirror/commands';\n import { lightThemeHighlight } from './highlight';\n import { getLangLoader, INDENT_SAME_AS_LINE_BEFORE } from './utils';\n import { BentoDropdown } from '@/components/dropdown';\n import { BentoButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { BentoLoadingIndicator } from '@/components/loading-indicator';\n import { useI18n } from '@/utils/ts/i18n';\n import { Copy } from '@/internal';\n import {\n BentoCodeSnippetEvent,\n type BentoCodeSnippetProps,\n BentoCodeSnippetSupportedLanguage,\n BentoCodeSnippetVariant,\n } from './code-snippet.types';\n import ExpandIcon from '@adyen/ui-assets-icons-16/vue/expand';\n import BaseModal from '@/components/modal/components/base-modal/base-modal.vue';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n actionable: { type: Boolean, default: false },\n actionableText: { default: null },\n content: { default: '' },\n expandable: { type: Boolean, default: false },\n editable: { type: Boolean, default: false },\n lang: { default: BentoCodeSnippetSupportedLanguage.JSON },\n langLabel: { default: null },\n loading: { type: Boolean, default: false },\n variant: { default: BentoCodeSnippetVariant.MULTILINE }\n});\n\n const emit = defineEmits([BentoCodeSnippetEvent.ACTION, BentoCodeSnippetEvent.CHANGE]);\n\n const attrs = useAttrs();\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // language\n const selectedLanguage = ref<string | null>(null);\n const availableLanguages = []; // TODO: implement\n const displayedLang = computed(() => props.langLabel ?? props.lang.toUpperCase());\n\n const isInlineVariant = computed(() => props.variant === BentoCodeSnippetVariant.INLINE);\n\n const conditionalClasses = computed(() => ({\n 'b-code-snippet--inline': isInlineVariant.value,\n 'b-code-snippet--scrollable': !isInlineVariant.value,\n }));\n\n const codeAreaContentConditionalClasses = computed(() => ({\n 'b-code-snippet__code-area-content--editable': props.editable,\n }));\n\n const loadLang = getLangLoader(props.lang);\n\n const container = shallowRef<HTMLDivElement>();\n const editor = shallowRef<EditorView>();\n const languageConf = new Compartment();\n const editorTheme = new Compartment();\n const editorReadOnly = new Compartment();\n const editorAttributes = new Compartment();\n\n const currentContents = ref(null);\n const contentLength = ref(0);\n\n const runText = computed(() => props.actionableText || t('run'));\n\n onMounted(async () => {\n const language = await loadLang();\n\n // alongside the updateListener plugin it acts as a watcher of changes to the editor state\n currentContents.value = props.content;\n const updateCurrentContents = ({ state }) => {\n currentContents.value = state.doc.toString();\n };\n\n const extensions = [\n highlightActiveLine(),\n keymap.of([indentWithTab, INDENT_SAME_AS_LINE_BEFORE]),\n languageConf.of(language()),\n editorTheme.of(lightThemeHighlight(props.lang)),\n editorReadOnly.of(EditorState.readOnly.of(!props.editable)),\n editorAttributes.of(\n EditorView.contentAttributes.of({\n 'aria-label': (attrs['aria-label'] as HTMLAttributes['aria-label']) ?? t('codeSnippet'),\n ...(!isInlineVariant.value && { tabindex: '0' }),\n })\n ),\n EditorView.updateListener.of(content => updateCurrentContents(content)),\n ];\n\n if (props.variant === 'multiline') {\n extensions.push([lineNumbers(), history()]);\n }\n\n const state = EditorState.create({\n doc: props.content,\n extensions: [...extensions],\n });\n contentLength.value = state.doc.length;\n\n editor.value = new EditorView({\n state,\n parent: container.value,\n });\n });\n watch(\n () => props.content,\n () => {\n if (props.content !== currentContents.value) {\n const upcomingContentLength = props.content.length;\n editor.value.dispatch({\n changes: {\n from: 0,\n to: contentLength.value,\n insert: props.content,\n },\n });\n contentLength.value = upcomingContentLength;\n }\n }\n );\n\n const onActionClicked = () => {\n emit(BentoCodeSnippetEvent.ACTION, currentContents.value);\n };\n\n watchEffect(() => {\n if (currentContents.value !== null) {\n emit(BentoCodeSnippetEvent.CHANGE, currentContents.value);\n }\n });\n\n const showModal = ref(false);\n</script>\n\n<script lang=\"ts\">\n /**\n * A code-snippet is a container to display code in a readable way.\n * Come with added functionalities like syntax highlighting, editing and actioning the code\n *\n * @example\n * import { BentoCodeSnippet } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCodeSnippet },\n * template: `\n * <bento-code-snippet :variant=\"BentoCodeSnippetVariant.MULTILINE\" content=\"{ example: 1234 }\" />\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-code-snippet',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./code-snippet.scss\"></style>\n"],"names":["lightThemeColors","BColorLabelOnBackgroundCriticalWeak","BColorLabelOnBackgroundWarningWeak","BColorLabelOnBackgroundSuccessWeak","BColorLabelOnBackgroundHighlightWeak","highlightStyle","colors","language","HighlightStyle","tags","lightThemeHighlight","syntaxHighlighting","BentoCodeSnippetVariant","BentoCodeSnippetVariant2","BentoCodeSnippetSupportedLanguage","BentoCodeSnippetSupportedLanguage2","BentoCodeSnippetEvent","BentoCodeSnippetEvent2","parser","LRParser","csvLanguage","LRLanguage","styleTags","csv","LanguageSupport","importsMap","json","xml","javascript","java","python","getLangLoader","getIndentation","state","line","currentLine","indentMatch","INDENT_SAME_AS_LINE_BEFORE","dispatch","changes","range","newText","EditorSelection","__default__","messages","attrs","useAttrs","t","useI18n","selectedLanguage","ref","availableLanguages","displayedLang","computed","props","isInlineVariant","conditionalClasses","codeAreaContentConditionalClasses","loadLang","container","shallowRef","editor","languageConf","Compartment","editorTheme","editorReadOnly","editorAttributes","currentContents","contentLength","runText","onMounted","updateCurrentContents","state2","extensions","highlightActiveLine","keymap","indentWithTab","EditorState","EditorView","content","lineNumbers","history","watch","upcomingContentLength","onActionClicked","emit","watchEffect","showModal"],"mappings":"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","x_google_ignoreList":[2]}
@@ -1,5 +1,5 @@
1
1
  import { getCurrentInstance as C, defineComponent as f, ref as c, computed as s } from "vue";
2
- import { B as m } from "./button.CBqJGWy5.js";
2
+ import { B as m } from "./button.DII5Ifwa.js";
3
3
  import { b as v } from "./popper-container.Cj3AWXSd.js";
4
4
  import { u as x } from "./index.CPOlyau9.js";
5
5
  /* empty css */
@@ -92,4 +92,4 @@ export {
92
92
  A as C,
93
93
  n as a
94
94
  };
95
- //# sourceMappingURL=copy.CXHEw5S0.js.map
95
+ //# sourceMappingURL=copy.CSk1rCRo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"copy.CXHEw5S0.js","sources":["../../src/components/internal/copy/copy.types.ts","../../../ui-assets/icons-16/dist/vue/copy.vue","../../src/components/internal/copy/copy.vue"],"sourcesContent":["import { type PopperContainerPosition } from '@/components/popper-container';\nimport type { BentoButton } from '@/components/button';\n\nexport enum CopyTooltipState {\n DEFAULT = 'default',\n COPYING = 'copying',\n ERROR = 'error',\n}\n\ntype ButtonProps = InstanceType<typeof BentoButton>['$props'];\nexport interface BentoCopyButtonProps {\n variant?: ButtonProps['variant'];\n condensed?: ButtonProps['condensed'];\n disabled?: ButtonProps['disabled'];\n}\n\nexport interface BentoCopyProps {\n /**\n * Object containing props to change the menu button appearance. Accepts the same props present in BentoButton.\n */\n button?: BentoCopyButtonProps;\n /**\n * Sets the button text of the copy button.\n */\n buttonText?: string;\n /**\n * Defines the string that will get copied to the clipboard\n */\n text: string;\n /**\n * Position the tooltip should take if space is available. Defaults to 'top'\n */\n tooltipPosition?: PopperContainerPosition;\n}\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=\"#001222\" d=\"M8 1.25C9.51878 1.25 10.75 2.48122 10.75 4V5.25H12C13.5188 5.25 14.75 6.48122 14.75 8V12C14.75 13.5188 13.5188 14.75 12 14.75H8C6.48122 14.75 5.25 13.5188 5.25 12V10.75H4C2.48122 10.75 1.25 9.51878 1.25 8V4C1.25 2.48122 2.48122 1.25 4 1.25H8ZM8 6.75C7.30964 6.75 6.75 7.30964 6.75 8V12C6.75 12.6904 7.30964 13.25 8 13.25H12C12.6904 13.25 13.25 12.6904 13.25 12V8C13.25 7.30964 12.6904 6.75 12 6.75H8ZM4 2.75C3.30964 2.75 2.75 3.30964 2.75 4V8C2.75 8.69036 3.30964 9.25 4 9.25H5.25V8C5.25 6.48122 6.48122 5.25 8 5.25H9.25V4C9.25 3.30964 8.69036 2.75 8 2.75H4Z\"/></svg>\n</template>\n<script setup>\n import { getCurrentInstance } from 'vue';\n import '../css/main.css';\n\n const instance = getCurrentInstance();\n const uuid = String(instance?.uid ?? instance?.proxy?._uid);\n</script>\n","<template>\n <div class=\"b-copy\" @mouseleave=\"resetText\" @focusout=\"resetText\">\n <span v-if=\"$slots.default\" v-bento-tooltip-directive:[tooltipPosition]=\"copyText\" @click=\"onClickCopy\">\n <slot />\n </span>\n <bento-button\n v-else\n v-bento-tooltip-directive:[tooltipPosition]=\"copyText\"\n v-bind=\"button\"\n @click=\"onClickCopy\"\n >\n <template #iconLeft>\n <copy-icon :svg-title=\"svgTitle\" />\n </template>\n <template v-if=\"buttonText\" #default>\n {{ buttonText }}\n </template>\n </bento-button>\n <div v-if=\"showScreenReaderAlert\" role=\"alert\" class=\"b-copy__screen-reader-alert\">{{ t('copied') }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref } from 'vue';\n import { BentoButton } from '@/components/button';\n import { PopperContainerPosition } from '@/components/popper-container';\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n import { useI18n } from '@/utils/ts/i18n';\n import { type BentoCopyButtonProps, type BentoCopyProps, CopyTooltipState } from './copy.types';\n import CopyIcon from '@adyen/ui-assets-icons-16/vue/copy';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const emit = defineEmits([\"click\"]);\n\n const props = defineProps({\n button: { default: () => ({ variant: 'tertiary' }) as BentoCopyButtonProps },\n buttonText: { default: undefined },\n text: null,\n tooltipPosition: { default: PopperContainerPosition.TOP }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const copyState = ref<CopyTooltipState>(CopyTooltipState.DEFAULT);\n\n const showScreenReaderAlert = ref(false);\n const onClickCopy = async (event: MouseEvent) => {\n try {\n await navigator.clipboard.writeText(props.text);\n copyState.value = CopyTooltipState.COPYING;\n showScreenReaderAlert.value = true;\n } catch {\n copyState.value = CopyTooltipState.ERROR;\n }\n\n emit('click', event);\n };\n\n const resetText = () => {\n copyState.value = CopyTooltipState.DEFAULT;\n showScreenReaderAlert.value = false;\n };\n\n const copyText = computed(() => {\n switch (copyState.value) {\n case CopyTooltipState.COPYING:\n return t('copied');\n case CopyTooltipState.ERROR:\n return t('copyFailed');\n default:\n return t('copy');\n }\n });\n\n const svgTitle = computed(() => (props.buttonText ? undefined : t('copy')));\n</script>\n\n<script lang=\"ts\">\n /**\n * An internal button component that copies text to the user's clipboard.\n *\n * @example\n * import { Copy } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { Copy },\n * template: `\n * <copy :text=\"textToCopy\" />\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'copy',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./copy.scss\" />\n"],"names":["CopyTooltipState","CopyTooltipState2","instance","getCurrentInstance","uuid","__default__","messages","useI18n","copyState","ref","showScreenReaderAlert","onClickCopy","event","props","emit","resetText","copyText","computed","svgTitle"],"mappings":";;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,QAAA,SAHQA,IAAAD,KAAA,CAAA,CAAA;;;;ACEZ,UAAAE,IAAAC,EAAA,GAIAC,IAAA,OAAAF,GAAA,OAAAA,GAAA,OAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GCmFIG,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;;iBApDA,EAAA,EAAA,IAAAC,EAAA,GACAC,IAAAC,EAAAT,EAAA,OAAA,GAEAU,IAAAD,EAAA,EAAA,GACAE,IAAA,OAAAC,MAAA;AACI,UAAA;AACI,cAAA,UAAA,UAAA,UAAAC,EAAA,IAAA,GACAL,EAAA,QAAAR,EAAA,SACAU,EAAA,QAAA;AAAA,MAA8B,QAAA;AAE9B,QAAAF,EAAA,QAAAR,EAAA;AAAA,MAAmC;AAGvC,MAAAc,EAAA,SAAAF,CAAA;AAAA,IAAmB,GAGvBG,IAAA,MAAA;AACI,MAAAP,EAAA,QAAAR,EAAA,SACAU,EAAA,QAAA;AAAA,IAA8B,GAGlCM,IAAAC,EAAA,MAAA;AACI,cAAAT,EAAA,OAAA;AAAA,QAAyB,KAAAR,EAAA;AAEjB,iBAAA,EAAA,QAAA;AAAA,QAAiB,KAAAA,EAAA;AAEjB,iBAAA,EAAA,YAAA;AAAA,QAAqB;AAErB,iBAAA,EAAA,MAAA;AAAA,MAAe;AAAA,IACvB,CAAA,GAGJkB,IAAAD,EAAA,MAAAJ,EAAA,aAAA,SAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"copy.CSk1rCRo.js","sources":["../../src/components/internal/copy/copy.types.ts","../../../ui-assets/icons-16/dist/vue/copy.vue","../../src/components/internal/copy/copy.vue"],"sourcesContent":["import { type PopperContainerPosition } from '@/components/popper-container';\nimport type { BentoButton } from '@/components/button';\n\nexport enum CopyTooltipState {\n DEFAULT = 'default',\n COPYING = 'copying',\n ERROR = 'error',\n}\n\ntype ButtonProps = InstanceType<typeof BentoButton>['$props'];\nexport interface BentoCopyButtonProps {\n variant?: ButtonProps['variant'];\n condensed?: ButtonProps['condensed'];\n disabled?: ButtonProps['disabled'];\n}\n\nexport interface BentoCopyProps {\n /**\n * Object containing props to change the menu button appearance. Accepts the same props present in BentoButton.\n */\n button?: BentoCopyButtonProps;\n /**\n * Sets the button text of the copy button.\n */\n buttonText?: string;\n /**\n * Defines the string that will get copied to the clipboard\n */\n text: string;\n /**\n * Position the tooltip should take if space is available. Defaults to 'top'\n */\n tooltipPosition?: PopperContainerPosition;\n}\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=\"#001222\" d=\"M8 1.25C9.51878 1.25 10.75 2.48122 10.75 4V5.25H12C13.5188 5.25 14.75 6.48122 14.75 8V12C14.75 13.5188 13.5188 14.75 12 14.75H8C6.48122 14.75 5.25 13.5188 5.25 12V10.75H4C2.48122 10.75 1.25 9.51878 1.25 8V4C1.25 2.48122 2.48122 1.25 4 1.25H8ZM8 6.75C7.30964 6.75 6.75 7.30964 6.75 8V12C6.75 12.6904 7.30964 13.25 8 13.25H12C12.6904 13.25 13.25 12.6904 13.25 12V8C13.25 7.30964 12.6904 6.75 12 6.75H8ZM4 2.75C3.30964 2.75 2.75 3.30964 2.75 4V8C2.75 8.69036 3.30964 9.25 4 9.25H5.25V8C5.25 6.48122 6.48122 5.25 8 5.25H9.25V4C9.25 3.30964 8.69036 2.75 8 2.75H4Z\"/></svg>\n</template>\n<script setup>\n import { getCurrentInstance } from 'vue';\n import '../css/main.css';\n\n const instance = getCurrentInstance();\n const uuid = String(instance?.uid ?? instance?.proxy?._uid);\n</script>\n","<template>\n <div class=\"b-copy\" @mouseleave=\"resetText\" @focusout=\"resetText\">\n <span v-if=\"$slots.default\" v-bento-tooltip-directive:[tooltipPosition]=\"copyText\" @click=\"onClickCopy\">\n <slot />\n </span>\n <bento-button\n v-else\n v-bento-tooltip-directive:[tooltipPosition]=\"copyText\"\n v-bind=\"button\"\n @click=\"onClickCopy\"\n >\n <template #iconLeft>\n <copy-icon :svg-title=\"svgTitle\" />\n </template>\n <template v-if=\"buttonText\" #default>\n {{ buttonText }}\n </template>\n </bento-button>\n <div v-if=\"showScreenReaderAlert\" role=\"alert\" class=\"b-copy__screen-reader-alert\">{{ t('copied') }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref } from 'vue';\n import { BentoButton } from '@/components/button';\n import { PopperContainerPosition } from '@/components/popper-container';\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n import { useI18n } from '@/utils/ts/i18n';\n import { type BentoCopyButtonProps, type BentoCopyProps, CopyTooltipState } from './copy.types';\n import CopyIcon from '@adyen/ui-assets-icons-16/vue/copy';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const emit = defineEmits([\"click\"]);\n\n const props = defineProps({\n button: { default: () => ({ variant: 'tertiary' }) as BentoCopyButtonProps },\n buttonText: { default: undefined },\n text: null,\n tooltipPosition: { default: PopperContainerPosition.TOP }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const copyState = ref<CopyTooltipState>(CopyTooltipState.DEFAULT);\n\n const showScreenReaderAlert = ref(false);\n const onClickCopy = async (event: MouseEvent) => {\n try {\n await navigator.clipboard.writeText(props.text);\n copyState.value = CopyTooltipState.COPYING;\n showScreenReaderAlert.value = true;\n } catch {\n copyState.value = CopyTooltipState.ERROR;\n }\n\n emit('click', event);\n };\n\n const resetText = () => {\n copyState.value = CopyTooltipState.DEFAULT;\n showScreenReaderAlert.value = false;\n };\n\n const copyText = computed(() => {\n switch (copyState.value) {\n case CopyTooltipState.COPYING:\n return t('copied');\n case CopyTooltipState.ERROR:\n return t('copyFailed');\n default:\n return t('copy');\n }\n });\n\n const svgTitle = computed(() => (props.buttonText ? undefined : t('copy')));\n</script>\n\n<script lang=\"ts\">\n /**\n * An internal button component that copies text to the user's clipboard.\n *\n * @example\n * import { Copy } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { Copy },\n * template: `\n * <copy :text=\"textToCopy\" />\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'copy',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./copy.scss\" />\n"],"names":["CopyTooltipState","CopyTooltipState2","instance","getCurrentInstance","uuid","__default__","messages","useI18n","copyState","ref","showScreenReaderAlert","onClickCopy","event","props","emit","resetText","copyText","computed","svgTitle"],"mappings":";;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,QAAA,SAHQA,IAAAD,KAAA,CAAA,CAAA;;;;ACEZ,UAAAE,IAAAC,EAAA,GAIAC,IAAA,OAAAF,GAAA,OAAAA,GAAA,OAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GCmFIG,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;;iBApDA,EAAA,EAAA,IAAAC,EAAA,GACAC,IAAAC,EAAAT,EAAA,OAAA,GAEAU,IAAAD,EAAA,EAAA,GACAE,IAAA,OAAAC,MAAA;AACI,UAAA;AACI,cAAA,UAAA,UAAA,UAAAC,EAAA,IAAA,GACAL,EAAA,QAAAR,EAAA,SACAU,EAAA,QAAA;AAAA,MAA8B,QAAA;AAE9B,QAAAF,EAAA,QAAAR,EAAA;AAAA,MAAmC;AAGvC,MAAAc,EAAA,SAAAF,CAAA;AAAA,IAAmB,GAGvBG,IAAA,MAAA;AACI,MAAAP,EAAA,QAAAR,EAAA,SACAU,EAAA,QAAA;AAAA,IAA8B,GAGlCM,IAAAC,EAAA,MAAA;AACI,cAAAT,EAAA,OAAA;AAAA,QAAyB,KAAAR,EAAA;AAEjB,iBAAA,EAAA,QAAA;AAAA,QAAiB,KAAAA,EAAA;AAEjB,iBAAA,EAAA,YAAA;AAAA,QAAqB;AAErB,iBAAA,EAAA,MAAA;AAAA,MAAe;AAAA,IACvB,CAAA,GAGJkB,IAAAD,EAAA,MAAAJ,EAAA,aAAA,SAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
@@ -10,7 +10,7 @@ const l = {
10
10
  };
11
11
  var i = function() {
12
12
  var t = this, s = t._self._c;
13
- return t._self._setupProxy, 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: "M2.25 8C2.25 4.82436 4.82436 2.25 8 2.25C11.1756 2.25 13.75 4.82436 13.75 8C13.75 11.1756 11.1756 13.75 8 13.75C4.82436 13.75 2.25 11.1756 2.25 8ZM7.00011 5.93945L5.93945 7.00011L6.93945 8.00011L5.93945 9.00011L7.00011 10.0608L8.00011 9.06077L9.00011 10.0608L10.0608 9.00011L9.06077 8.00011L10.0608 7.00011L9.00011 5.93945L8.00011 6.93945L7.00011 5.93945Z" } })]);
13
+ return t._self._setupProxy, 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: "M8 2.25C11.1756 2.25 13.75 4.82436 13.75 8C13.75 11.1756 11.1756 13.75 8 13.75C4.82436 13.75 2.25 11.1756 2.25 8C2.25 4.82436 4.82436 2.25 8 2.25ZM8 6.93945L6.53027 5.46973L5.46973 6.53027L6.93945 8L5.46973 9.46973L6.53027 10.5303L8 9.06055L9.46973 10.5303L10.5303 9.46973L9.06055 8L10.5303 6.53027L9.46973 5.46973L8 6.93945Z" } })]);
14
14
  }, o = [], _ = /* @__PURE__ */ n(
15
15
  l,
16
16
  i,
@@ -23,4 +23,4 @@ const f = _.exports;
23
23
  export {
24
24
  f as C
25
25
  };
26
- //# sourceMappingURL=cross-circle-fill-small.Doaiq7Wx.js.map
26
+ //# sourceMappingURL=cross-circle-fill-small.CZN966bc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cross-circle-fill-small.CZN966bc.js","sources":["../../../ui-assets/icons-16/dist/vue/cross-circle-fill-small.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=\"M8 2.25C11.1756 2.25 13.75 4.82436 13.75 8C13.75 11.1756 11.1756 13.75 8 13.75C4.82436 13.75 2.25 11.1756 2.25 8C2.25 4.82436 4.82436 2.25 8 2.25ZM8 6.93945L6.53027 5.46973L5.46973 6.53027L6.93945 8L5.46973 9.46973L6.53027 10.5303L8 9.06055L9.46973 10.5303L10.5303 9.46973L9.06055 8L10.5303 6.53027L9.46973 5.46973L8 6.93945Z\"/></svg>\n</template>\n<script setup>\n import { getCurrentInstance } from 'vue';\n import '../css/main.css';\n\n const instance = getCurrentInstance();\n const uuid = String(instance?.uid ?? instance?.proxy?._uid);\n</script>\n"],"names":["instance","getCurrentInstance","uuid"],"mappings":";;;;;;AAQI,UAAMA,IAAWC,EAAkB,GAC7BC,IAAO,OAAOF,GAAU,OAAOA,GAAU,OAAO,IAAI;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as h, useSlots as m, ref as _, computed as o, watch as p, onUnmounted as g, onMounted as w } from "vue";
2
- import { B as v } from "./header.JBgD0-kG.js";
3
- import { a as $, B as I } from "./tab.5rS16WWy.js";
2
+ import { B as v } from "./header.CmyqVXuG.js";
3
+ import { a as $, B as I } from "./tab.BK1sIJAJ.js";
4
4
  import { a as R } from "./index.CL3TXc0a.js";
5
5
  import { o as x } from "./resize.Bqks3WUm.js";
6
6
  import { u as C } from "./use-has-slot.C9lQZ6nz.js";
@@ -95,4 +95,4 @@ export {
95
95
  X as a,
96
96
  Y as d
97
97
  };
98
- //# sourceMappingURL=dashboard-section.MA5pmdOu.js.map
98
+ //# sourceMappingURL=dashboard-section.CYEoNH9Q.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-section.MA5pmdOu.js","sources":["../../src/templates/dashboard-template/dashboard-template.vue","../../src/templates/dashboard-template/components/dashboard-section/dashboard-section.vue"],"sourcesContent":["<template>\n <main class=\"b-dashboard-template\">\n <bento-header v-bind=\"header\" variant=\"page\" class=\"b-dashboard-template__header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n <div class=\"b-dashboard-template__top-section\" :class=\"dashboardTopSectionConditionalClasses\">\n <div\n v-if=\"hasSlot('filters')\"\n ref=\"filtersRef\"\n class=\"b-dashboard-template__filters\"\n :class=\"dashboardFiltersConditionalClasses\"\n data-testid=\"filters\"\n >\n <slot name=\"filters\" />\n </div>\n\n <bento-tabs\n v-if=\"tabsSlots.length > 1\"\n ref=\"tabsRef\"\n :active-tab-index=\"tabs.activeTabIndex\"\n :sticky=\"stickyTabs\"\n :sticky-options=\"computedTabsOptions\"\n data-testid=\"tabs\"\n >\n <bento-tab v-for=\"(_item, index) in tabsSlots\" :key=\"`tab-${index}`\" :title=\"getTabTitle(index)\">\n <div class=\"b-dashboard-template__container b-dashboard-template__container--tabs\">\n <slot :name=\"`tab-${index + 1}`\" />\n </div>\n </bento-tab>\n </bento-tabs>\n <div v-else class=\"b-dashboard-template__container\">\n <slot />\n </div>\n </div>\n </main>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onUnmounted, ref, useSlots, watch } from 'vue';\n import { BentoHeader } from '@/components/header';\n import { BentoTab, BentoTabs } from '@/components/tabs';\n import { useWindowScroll } from '@vueuse/core';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import { useHasSlot } from '@/composables';\n import type { BentoDashboardTemplateHeader, BentoDashboardTemplateTabs } from './dashboard-template.types';\n\n const props = defineProps({\n header: null,\n tabs: { default: undefined },\n stickyTabs: { type: Boolean, default: false },\n stickyFilters: { type: Boolean, default: false }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const tabsRef = ref<InstanceType<typeof BentoTabs>>();\n const filtersRef = ref<HTMLDivElement>(null);\n const isFiltersPinned = ref(false);\n let filtersElementObserver: ResizeObserver | null = null;\n const tabsPosition = ref(0);\n\n const hasStickyFilters = computed(() => filtersRef.value && props.stickyFilters);\n const hasStickyTabs = computed(() => tabsRef.value && props.stickyTabs);\n\n const dashboardFiltersConditionalClasses = computed(() => ({\n 'b-dashboard-template__filters--sticky': props.stickyFilters,\n 'b-dashboard-template__filters--show-border':\n hasStickyFilters.value && !hasStickyTabs.value && isFiltersPinned.value,\n }));\n\n const dashboardTopSectionConditionalClasses = computed(() => ({\n 'b-dashboard-template__top-section--sticky': props.stickyTabs || props.stickyFilters,\n }));\n\n const tabsSlots = computed(() => Object.keys(slots).filter(el => el?.includes('tab-')));\n\n const getTabTitle = (index: number) => props?.tabs.tabs?.[index]?.title ?? `Tab ${index + 1}`;\n\n const computedTabsOptions = computed(() => (tabsPosition.value ? { top: tabsPosition.value } : undefined));\n\n const { y } = useWindowScroll();\n\n watch(\n () => filtersRef.value,\n () => {\n if (!filtersElementObserver && filtersRef.value) {\n filtersElementObserver = observeSizeOfElement(filtersRef.value, () => {\n if (filtersRef.value && hasStickyTabs.value) {\n const filtersHeight = filtersRef.value.offsetHeight;\n tabsPosition.value = hasStickyFilters.value ? filtersHeight : 0;\n }\n });\n }\n }\n );\n\n watch(\n () => y.value,\n () => {\n if (hasStickyFilters.value) {\n isFiltersPinned.value = filtersRef.value?.getBoundingClientRect().top === 0;\n }\n }\n );\n\n onUnmounted(() => {\n filtersElementObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Dashboard template is a full page template used to visualize data on pages such as data dashboards and reports.\n *\n * @example\n * import { BentoDashboardTemplate, BentoDashboardSection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashboardTemplate, BentoDashboardSection },\n * template: `\n * <bento-dashboard-template :header=\"{ title: 'Dashboard'}\" :tabs=\"tabs: [{ title: 'Tab 1' }, { title: 'Tab 2' }]\" sticky-tabs sticky-filters>\n * <template #tab-1>\n * <bento-dashboard-section :header=\"{ title: 'Section'}\">\n * <template #controls>\n * // Add your controls here\n * </template>\n * // Add your content here\n * </bento-dashboard-section>\n * </template>\n * <template #tab-2>\n * <bento-dashboard-section :header=\"{ title: 'Section'}\">\n * // Add your content here\n * </bento-dashboard-section>\n * </template>\n * </bento-dashboard-template>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashboard-template.scss\" />\n","<template>\n <div class=\"b-dashboard-section\" :class=\"conditionalClasses\">\n <bento-header v-bind=\"header\" variant=\"component\" class=\"b-dashboard-template__header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n <div v-if=\"hasSlot('controls')\" class=\"b-dashboard-section__controls\">\n <slot name=\"controls\"></slot>\n </div>\n <div v-if=\"!hasSlot('content-col-1') && !hasSlot('content-col-2')\" class=\"b-dashboard-section__content\">\n <slot name=\"default\"></slot>\n </div>\n <div v-else class=\"b-dashboard-section__columns\">\n <div class=\"b-dashboard-section__content\"><slot name=\"content-col-1\"></slot></div>\n <div class=\"b-dashboard-section__content\"><slot name=\"content-col-2\"></slot></div>\n </div>\n <bento-divider class=\"b-dashboard-section__divider\" />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n import { BentoHeader } from '@/components/header';\n import { BentoDivider } from '@/components/divider';\n import { useHasSlot } from '@/composables';\n import type { BentoDashboardTemplateHeader } from '../../dashboard-template.types';\n\n const props = defineProps({\n header: null,\n halfWidth: { type: Boolean, default: false }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const conditionalClasses = computed(() => ({\n 'b-dashboard-section--half-width': props.halfWidth,\n }));\n\n onMounted(() => {\n if ((hasSlot('content-col-1') || hasSlot('content-col-2')) && props.halfWidth) {\n throw new Error('`content-col-1` and `content-col-2` cannot be used with half-width prop');\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Dashboard section is subcomponent of Dashboard template meant to be used to create the different sections within the page.\n *\n * @example\n * import { BentoDashboardSection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashboardSection },\n * template: `\n * <bento-dashboard-section :header=\"{ title: 'Section' }\" half-width>\n * <template #controls>\n * // Add your controls here\n * </template>\n * // You can render content with two cols\n * <template #content-col-1>\n * // Add your content here\n * </template>\n * <template #content-col-2>\n * // Add your content here\n * </template>\n * // Or you can render full width content by using default slot\n * // Add your content here\n * </bento-dashboard-section>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashboard-section.scss\" />\n"],"names":["__default__$1","slots","useSlots","hasSlot","useHasSlot","tabsRef","ref","filtersRef","isFiltersPinned","filtersElementObserver","tabsPosition","hasStickyFilters","computed","props","hasStickyTabs","dashboardFiltersConditionalClasses","dashboardTopSectionConditionalClasses","tabsSlots","el","getTabTitle","index","computedTabsOptions","y","useWindowScroll","watch","observeSizeOfElement","filtersHeight","onUnmounted","__default__","conditionalClasses","onMounted"],"mappings":";;;;;;;;;AA6II,MAAAA,IAAA,CAAA;;;;;;;;;;iBAtFAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEAI,IAAAC,EAAA,GACAC,IAAAD,EAAA,IAAA,GACAE,IAAAF,EAAA,EAAA;AACA,QAAAG,IAAA;AACA,UAAAC,IAAAJ,EAAA,CAAA,GAEAK,IAAAC,EAAA,MAAAL,EAAA,SAAAM,EAAA,aAAA,GACAC,IAAAF,EAAA,MAAAP,EAAA,SAAAQ,EAAA,UAAA,GAEAE,IAAAH,EAAA,OAAA;AAAA,MAA2D,yCAAAC,EAAA;AAAA,MACR,8CAAAF,EAAA,SAAA,CAAAG,EAAA,SAAAN,EAAA;AAAA,IAEuB,EAAA,GAG1EQ,IAAAJ,EAAA,OAAA;AAAA,MAA8D,6CAAAC,EAAA,cAAAA,EAAA;AAAA,IACa,EAAA,GAG3EI,IAAAL,EAAA,MAAA,OAAA,KAAAX,CAAA,EAAA,OAAA,CAAAiB,MAAAA,GAAA,SAAA,MAAA,CAAA,CAAA,GAEAC,IAAA,CAAAC,MAAAP,GAAA,KAAA,OAAAO,CAAA,GAAA,SAAA,OAAAA,IAAA,CAAA,IAEAC,IAAAT,EAAA,MAAAF,EAAA,QAAA,EAAA,KAAAA,EAAA,MAAA,IAAA,MAAA,GAEA,EAAA,GAAAY,EAAA,IAAAC,EAAA;AAEA,WAAAC;AAAA,MAAA,MAAAjB,EAAA;AAAA,MACqB,MAAA;AAEb,QAAA,CAAAE,KAAAF,EAAA,UACIE,IAAAgB,EAAAlB,EAAA,OAAA,MAAA;AACI,cAAAA,EAAA,SAAAO,EAAA,OAAA;AACI,kBAAAY,IAAAnB,EAAA,MAAA;AACA,YAAAG,EAAA,QAAAC,EAAA,QAAAe,IAAA;AAAA,UAA8D;AAAA,QAClE,CAAA;AAAA,MAER;AAAA,IACJ,GAGJF;AAAA,MAAA,MAAAF,EAAA;AAAA,MACY,MAAA;AAEJ,QAAAX,EAAA,UACIH,EAAA,QAAAD,EAAA,OAAA,sBAAA,EAAA,QAAA;AAAA,MACJ;AAAA,IACJ,GAGJoB,EAAA,MAAA;AACI,MAAAlB,GAAA,WAAA;AAAA,IAAmC,CAAA;;;;;;;;;;;;;;;;;;qBCnCvCmB,IAAA,CAAA;;;;;;;;iBAzCA3B,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEA4B,IAAAjB,EAAA,OAAA;AAAA,MAA2C,mCAAAC,EAAA;AAAA,IACE,EAAA;AAG7C,WAAAiB,EAAA,MAAA;AACI,WAAA3B,EAAA,eAAA,KAAAA,EAAA,eAAA,MAAAU,EAAA;AACI,cAAA,IAAA,MAAA,yEAAA;AAAA,IACJ,CAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dashboard-section.CYEoNH9Q.js","sources":["../../src/templates/dashboard-template/dashboard-template.vue","../../src/templates/dashboard-template/components/dashboard-section/dashboard-section.vue"],"sourcesContent":["<template>\n <main class=\"b-dashboard-template\">\n <bento-header v-bind=\"header\" variant=\"page\" class=\"b-dashboard-template__header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n <div class=\"b-dashboard-template__top-section\" :class=\"dashboardTopSectionConditionalClasses\">\n <div\n v-if=\"hasSlot('filters')\"\n ref=\"filtersRef\"\n class=\"b-dashboard-template__filters\"\n :class=\"dashboardFiltersConditionalClasses\"\n data-testid=\"filters\"\n >\n <slot name=\"filters\" />\n </div>\n\n <bento-tabs\n v-if=\"tabsSlots.length > 1\"\n ref=\"tabsRef\"\n :active-tab-index=\"tabs.activeTabIndex\"\n :sticky=\"stickyTabs\"\n :sticky-options=\"computedTabsOptions\"\n data-testid=\"tabs\"\n >\n <bento-tab v-for=\"(_item, index) in tabsSlots\" :key=\"`tab-${index}`\" :title=\"getTabTitle(index)\">\n <div class=\"b-dashboard-template__container b-dashboard-template__container--tabs\">\n <slot :name=\"`tab-${index + 1}`\" />\n </div>\n </bento-tab>\n </bento-tabs>\n <div v-else class=\"b-dashboard-template__container\">\n <slot />\n </div>\n </div>\n </main>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onUnmounted, ref, useSlots, watch } from 'vue';\n import { BentoHeader } from '@/components/header';\n import { BentoTab, BentoTabs } from '@/components/tabs';\n import { useWindowScroll } from '@vueuse/core';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import { useHasSlot } from '@/composables';\n import type { BentoDashboardTemplateHeader, BentoDashboardTemplateTabs } from './dashboard-template.types';\n\n const props = defineProps({\n header: null,\n tabs: { default: undefined },\n stickyTabs: { type: Boolean, default: false },\n stickyFilters: { type: Boolean, default: false }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const tabsRef = ref<InstanceType<typeof BentoTabs>>();\n const filtersRef = ref<HTMLDivElement>(null);\n const isFiltersPinned = ref(false);\n let filtersElementObserver: ResizeObserver | null = null;\n const tabsPosition = ref(0);\n\n const hasStickyFilters = computed(() => filtersRef.value && props.stickyFilters);\n const hasStickyTabs = computed(() => tabsRef.value && props.stickyTabs);\n\n const dashboardFiltersConditionalClasses = computed(() => ({\n 'b-dashboard-template__filters--sticky': props.stickyFilters,\n 'b-dashboard-template__filters--show-border':\n hasStickyFilters.value && !hasStickyTabs.value && isFiltersPinned.value,\n }));\n\n const dashboardTopSectionConditionalClasses = computed(() => ({\n 'b-dashboard-template__top-section--sticky': props.stickyTabs || props.stickyFilters,\n }));\n\n const tabsSlots = computed(() => Object.keys(slots).filter(el => el?.includes('tab-')));\n\n const getTabTitle = (index: number) => props?.tabs.tabs?.[index]?.title ?? `Tab ${index + 1}`;\n\n const computedTabsOptions = computed(() => (tabsPosition.value ? { top: tabsPosition.value } : undefined));\n\n const { y } = useWindowScroll();\n\n watch(\n () => filtersRef.value,\n () => {\n if (!filtersElementObserver && filtersRef.value) {\n filtersElementObserver = observeSizeOfElement(filtersRef.value, () => {\n if (filtersRef.value && hasStickyTabs.value) {\n const filtersHeight = filtersRef.value.offsetHeight;\n tabsPosition.value = hasStickyFilters.value ? filtersHeight : 0;\n }\n });\n }\n }\n );\n\n watch(\n () => y.value,\n () => {\n if (hasStickyFilters.value) {\n isFiltersPinned.value = filtersRef.value?.getBoundingClientRect().top === 0;\n }\n }\n );\n\n onUnmounted(() => {\n filtersElementObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Dashboard template is a full page template used to visualize data on pages such as data dashboards and reports.\n *\n * @example\n * import { BentoDashboardTemplate, BentoDashboardSection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashboardTemplate, BentoDashboardSection },\n * template: `\n * <bento-dashboard-template :header=\"{ title: 'Dashboard'}\" :tabs=\"tabs: [{ title: 'Tab 1' }, { title: 'Tab 2' }]\" sticky-tabs sticky-filters>\n * <template #tab-1>\n * <bento-dashboard-section :header=\"{ title: 'Section'}\">\n * <template #controls>\n * // Add your controls here\n * </template>\n * // Add your content here\n * </bento-dashboard-section>\n * </template>\n * <template #tab-2>\n * <bento-dashboard-section :header=\"{ title: 'Section'}\">\n * // Add your content here\n * </bento-dashboard-section>\n * </template>\n * </bento-dashboard-template>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashboard-template.scss\" />\n","<template>\n <div class=\"b-dashboard-section\" :class=\"conditionalClasses\">\n <bento-header v-bind=\"header\" variant=\"component\" class=\"b-dashboard-template__header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n <div v-if=\"hasSlot('controls')\" class=\"b-dashboard-section__controls\">\n <slot name=\"controls\"></slot>\n </div>\n <div v-if=\"!hasSlot('content-col-1') && !hasSlot('content-col-2')\" class=\"b-dashboard-section__content\">\n <slot name=\"default\"></slot>\n </div>\n <div v-else class=\"b-dashboard-section__columns\">\n <div class=\"b-dashboard-section__content\"><slot name=\"content-col-1\"></slot></div>\n <div class=\"b-dashboard-section__content\"><slot name=\"content-col-2\"></slot></div>\n </div>\n <bento-divider class=\"b-dashboard-section__divider\" />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n import { BentoHeader } from '@/components/header';\n import { BentoDivider } from '@/components/divider';\n import { useHasSlot } from '@/composables';\n import type { BentoDashboardTemplateHeader } from '../../dashboard-template.types';\n\n const props = defineProps({\n header: null,\n halfWidth: { type: Boolean, default: false }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const conditionalClasses = computed(() => ({\n 'b-dashboard-section--half-width': props.halfWidth,\n }));\n\n onMounted(() => {\n if ((hasSlot('content-col-1') || hasSlot('content-col-2')) && props.halfWidth) {\n throw new Error('`content-col-1` and `content-col-2` cannot be used with half-width prop');\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Dashboard section is subcomponent of Dashboard template meant to be used to create the different sections within the page.\n *\n * @example\n * import { BentoDashboardSection } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashboardSection },\n * template: `\n * <bento-dashboard-section :header=\"{ title: 'Section' }\" half-width>\n * <template #controls>\n * // Add your controls here\n * </template>\n * // You can render content with two cols\n * <template #content-col-1>\n * // Add your content here\n * </template>\n * <template #content-col-2>\n * // Add your content here\n * </template>\n * // Or you can render full width content by using default slot\n * // Add your content here\n * </bento-dashboard-section>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashboard-section.scss\" />\n"],"names":["__default__$1","slots","useSlots","hasSlot","useHasSlot","tabsRef","ref","filtersRef","isFiltersPinned","filtersElementObserver","tabsPosition","hasStickyFilters","computed","props","hasStickyTabs","dashboardFiltersConditionalClasses","dashboardTopSectionConditionalClasses","tabsSlots","el","getTabTitle","index","computedTabsOptions","y","useWindowScroll","watch","observeSizeOfElement","filtersHeight","onUnmounted","__default__","conditionalClasses","onMounted"],"mappings":";;;;;;;;;AA6II,MAAAA,IAAA,CAAA;;;;;;;;;;iBAtFAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEAI,IAAAC,EAAA,GACAC,IAAAD,EAAA,IAAA,GACAE,IAAAF,EAAA,EAAA;AACA,QAAAG,IAAA;AACA,UAAAC,IAAAJ,EAAA,CAAA,GAEAK,IAAAC,EAAA,MAAAL,EAAA,SAAAM,EAAA,aAAA,GACAC,IAAAF,EAAA,MAAAP,EAAA,SAAAQ,EAAA,UAAA,GAEAE,IAAAH,EAAA,OAAA;AAAA,MAA2D,yCAAAC,EAAA;AAAA,MACR,8CAAAF,EAAA,SAAA,CAAAG,EAAA,SAAAN,EAAA;AAAA,IAEuB,EAAA,GAG1EQ,IAAAJ,EAAA,OAAA;AAAA,MAA8D,6CAAAC,EAAA,cAAAA,EAAA;AAAA,IACa,EAAA,GAG3EI,IAAAL,EAAA,MAAA,OAAA,KAAAX,CAAA,EAAA,OAAA,CAAAiB,MAAAA,GAAA,SAAA,MAAA,CAAA,CAAA,GAEAC,IAAA,CAAAC,MAAAP,GAAA,KAAA,OAAAO,CAAA,GAAA,SAAA,OAAAA,IAAA,CAAA,IAEAC,IAAAT,EAAA,MAAAF,EAAA,QAAA,EAAA,KAAAA,EAAA,MAAA,IAAA,MAAA,GAEA,EAAA,GAAAY,EAAA,IAAAC,EAAA;AAEA,WAAAC;AAAA,MAAA,MAAAjB,EAAA;AAAA,MACqB,MAAA;AAEb,QAAA,CAAAE,KAAAF,EAAA,UACIE,IAAAgB,EAAAlB,EAAA,OAAA,MAAA;AACI,cAAAA,EAAA,SAAAO,EAAA,OAAA;AACI,kBAAAY,IAAAnB,EAAA,MAAA;AACA,YAAAG,EAAA,QAAAC,EAAA,QAAAe,IAAA;AAAA,UAA8D;AAAA,QAClE,CAAA;AAAA,MAER;AAAA,IACJ,GAGJF;AAAA,MAAA,MAAAF,EAAA;AAAA,MACY,MAAA;AAEJ,QAAAX,EAAA,UACIH,EAAA,QAAAD,EAAA,OAAA,sBAAA,EAAA,QAAA;AAAA,MACJ;AAAA,IACJ,GAGJoB,EAAA,MAAA;AACI,MAAAlB,GAAA,WAAA;AAAA,IAAmC,CAAA;;;;;;;;;;;;;;;;;;qBCnCvCmB,IAAA,CAAA;;;;;;;;iBAzCA3B,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEA4B,IAAAjB,EAAA,OAAA;AAAA,MAA2C,mCAAAC,EAAA;AAAA,IACE,EAAA;AAG7C,WAAAiB,EAAA,MAAA;AACI,WAAA3B,EAAA,eAAA,KAAAA,EAAA,eAAA,MAAAU,EAAA;AACI,cAAA,IAAA,MAAA,yEAAA;AAAA,IACJ,CAAA;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as v, useSlots as u, ref as c, computed as i, watch as f } from "vue";
2
- import { e as m, h as _ } from "./button-actions.DdAWQn3c.js";
2
+ import { e as m, h as _ } from "./button-actions.bkcLUE1G.js";
3
3
  import { u as h } from "./use-has-slot.C9lQZ6nz.js";
4
4
  import { B as T } from "./typography.D1OZJbEa.js";
5
5
  import { b as B } from "./tooltip.DFYc5NKM.js";
@@ -51,4 +51,4 @@ const k = w.exports;
51
51
  export {
52
52
  k as B
53
53
  };
54
- //# sourceMappingURL=dashed-underline.B7PRJBq4.js.map
54
+ //# sourceMappingURL=dashed-underline.CzKc-fJW.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dashed-underline.B7PRJBq4.js","sources":["../../src/components/dashed-underline/dashed-underline.vue"],"sourcesContent":["<template>\n <span\n ref=\"element\"\n v-bento-tooltip-directive:[tooltipPosition]=\"tooltipText\"\n class=\"b-dashed-underline\"\n tabindex=\"0\"\n v-on=\"hoverEvents\"\n >\n <span class=\"b-dashed-underline__content\">\n <slot></slot>\n </span>\n <bento-teleport v-if=\"element && hasPopover\" :disabled=\"teleport?.disabled\" :to=\"teleport?.to\">\n <span v-on=\"hoverEvents\">\n <bento-popover\n :open=\"isOpen\"\n :target-element=\"element\"\n :position=\"popoverPosition\"\n role=\"tooltip\"\n :fit-content=\"popoverSize === 'fit-content' || undefined\"\n :large=\"popoverSize === 'large' || undefined\"\n :small=\"popoverSize === 'small' || undefined\"\n :title=\"popoverTitle\"\n disable-focus-trap\n >\n <slot name=\"popover-content\">\n <bento-typography>\n {{ popoverText }}\n </bento-typography>\n </slot>\n </bento-popover>\n </span>\n </bento-teleport>\n </span>\n</template>\n\n<script lang=\"ts\" setup>\n import { computed, ref, useSlots, watch } from 'vue';\n import { BentoPopover } from '@/components/popover';\n import { useBentoDelayedHover } from '@/composables';\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives/tooltip/index';\n import { BentoTypography } from '@/components/typography';\n import { useHasSlot } from '@/composables';\n import { BentoTeleport } from '@/internal';\n import { type BentoDashedUnderlineProps } from './dashed-underline.types';\n\n const props = defineProps({\n popoverText: { default: null },\n popoverTitle: { default: null },\n popoverPosition: { default: 'top' },\n popoverSize: { default: 'fit-content' },\n teleport: { default: () => ({\n disabled: true,\n }) },\n tooltipText: { default: null },\n tooltipPosition: { default: 'top' }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const element = ref<HTMLSpanElement>(null);\n\n const { isOpen, hoverEvents } = useBentoDelayedHover();\n\n const hasPopover = computed(() => props.popoverText || hasSlot('popover-content'));\n\n const shouldShowTooltipPopoverError = computed(() => !props.tooltipText && !hasPopover.value);\n\n watch(\n shouldShowTooltipPopoverError,\n value => {\n if (value) {\n throw new Error(\n 'BentoDashedUnderline requires either a tooltip or a popover to be configured. Check the docs for more info.'\n );\n }\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * Provides a dashed underline to text, indicating that more information is available on\n * hover or focus. The additional information is displayed in a tooltip or a popover.\n *\n * @example\n * import { BentoDashedUnderline } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashedUnderline },\n * template: `\n * <p>\n * This is some <bento-dashed-underline tooltip-text=\"A short explanation\">annotated text</bento-dashed-underline>.\n * </p>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashed-underline.scss\" />\n"],"names":["__default__","slots","useSlots","hasSlot","useHasSlot","element","ref","isOpen","hoverEvents","useBentoDelayedHover","hasPopover","computed","props","shouldShowTooltipPopoverError","watch","value"],"mappings":";;;;;;;;AAkGI,MAAAA,IAAA,CAAA;;;;;;;;;;;;;;;iBAzCAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEAI,IAAAC,EAAA,IAAA,GAEA,EAAA,QAAAC,GAAA,aAAAC,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAA,MAAAC,EAAA,eAAAT,EAAA,iBAAA,CAAA,GAEAU,IAAAF,EAAA,MAAA,CAAAC,EAAA,eAAA,CAAAF,EAAA,KAAA;AAEA,WAAAI;AAAA,MAAAD;AAAA,MACI,CAAAE,MAAA;AAEI,YAAAA;AACI,gBAAA,IAAA;AAAA,YAAU;AAAA,UACN;AAAA,MAER;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dashed-underline.CzKc-fJW.js","sources":["../../src/components/dashed-underline/dashed-underline.vue"],"sourcesContent":["<template>\n <span\n ref=\"element\"\n v-bento-tooltip-directive:[tooltipPosition]=\"tooltipText\"\n class=\"b-dashed-underline\"\n tabindex=\"0\"\n v-on=\"hoverEvents\"\n >\n <span class=\"b-dashed-underline__content\">\n <slot></slot>\n </span>\n <bento-teleport v-if=\"element && hasPopover\" :disabled=\"teleport?.disabled\" :to=\"teleport?.to\">\n <span v-on=\"hoverEvents\">\n <bento-popover\n :open=\"isOpen\"\n :target-element=\"element\"\n :position=\"popoverPosition\"\n role=\"tooltip\"\n :fit-content=\"popoverSize === 'fit-content' || undefined\"\n :large=\"popoverSize === 'large' || undefined\"\n :small=\"popoverSize === 'small' || undefined\"\n :title=\"popoverTitle\"\n disable-focus-trap\n >\n <slot name=\"popover-content\">\n <bento-typography>\n {{ popoverText }}\n </bento-typography>\n </slot>\n </bento-popover>\n </span>\n </bento-teleport>\n </span>\n</template>\n\n<script lang=\"ts\" setup>\n import { computed, ref, useSlots, watch } from 'vue';\n import { BentoPopover } from '@/components/popover';\n import { useBentoDelayedHover } from '@/composables';\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives/tooltip/index';\n import { BentoTypography } from '@/components/typography';\n import { useHasSlot } from '@/composables';\n import { BentoTeleport } from '@/internal';\n import { type BentoDashedUnderlineProps } from './dashed-underline.types';\n\n const props = defineProps({\n popoverText: { default: null },\n popoverTitle: { default: null },\n popoverPosition: { default: 'top' },\n popoverSize: { default: 'fit-content' },\n teleport: { default: () => ({\n disabled: true,\n }) },\n tooltipText: { default: null },\n tooltipPosition: { default: 'top' }\n});\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const element = ref<HTMLSpanElement>(null);\n\n const { isOpen, hoverEvents } = useBentoDelayedHover();\n\n const hasPopover = computed(() => props.popoverText || hasSlot('popover-content'));\n\n const shouldShowTooltipPopoverError = computed(() => !props.tooltipText && !hasPopover.value);\n\n watch(\n shouldShowTooltipPopoverError,\n value => {\n if (value) {\n throw new Error(\n 'BentoDashedUnderline requires either a tooltip or a popover to be configured. Check the docs for more info.'\n );\n }\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * Provides a dashed underline to text, indicating that more information is available on\n * hover or focus. The additional information is displayed in a tooltip or a popover.\n *\n * @example\n * import { BentoDashedUnderline } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDashedUnderline },\n * template: `\n * <p>\n * This is some <bento-dashed-underline tooltip-text=\"A short explanation\">annotated text</bento-dashed-underline>.\n * </p>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./dashed-underline.scss\" />\n"],"names":["__default__","slots","useSlots","hasSlot","useHasSlot","element","ref","isOpen","hoverEvents","useBentoDelayedHover","hasPopover","computed","props","shouldShowTooltipPopoverError","watch","value"],"mappings":";;;;;;;;AAkGI,MAAAA,IAAA,CAAA;;;;;;;;;;;;;;;iBAzCAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEAI,IAAAC,EAAA,IAAA,GAEA,EAAA,QAAAC,GAAA,aAAAC,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAA,MAAAC,EAAA,eAAAT,EAAA,iBAAA,CAAA,GAEAU,IAAAF,EAAA,MAAA,CAAAC,EAAA,eAAA,CAAAF,EAAA,KAAA;AAEA,WAAAI;AAAA,MAAAD;AAAA,MACI,CAAAE,MAAA;AAEI,YAAAA;AACI,gBAAA,IAAA;AAAA,YAAU;AAAA,UACN;AAAA,MAER;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;;;;;;;;;;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as R, useSlots as S, ref as r, computed as s, provide as I, toRef as u } from "vue";
2
- import { B as h } from "./header.JBgD0-kG.js";
3
- import { B } from "./inspector.CcXe5K4v.js";
4
- import { a as x, B as A } from "./tab.5rS16WWy.js";
2
+ import { B as h } from "./header.CmyqVXuG.js";
3
+ import { B } from "./inspector.IOtNex1r.js";
4
+ import { a as x, B as A } from "./tab.BK1sIJAJ.js";
5
5
  import { u as E } from "./use-has-slot.C9lQZ6nz.js";
6
6
  import { D } from "./data-grid-template.keys.VezYtHtM.js";
7
7
  import { n as G } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
@@ -99,4 +99,4 @@ const q = $.exports;
99
99
  export {
100
100
  q as d
101
101
  };
102
- //# sourceMappingURL=data-grid-template.BEM5__ib.js.map
102
+ //# sourceMappingURL=data-grid-template.DCwzh2G7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid-template.BEM5__ib.js","sources":["../../src/templates/data-grid-template/data-grid-template.vue"],"sourcesContent":["<template>\n <main class=\"b-data-grid-template\">\n <bento-inspector v-bind=\"computedInspectorProps\" ref=\"inspectorRef\" v-on=\"inspectorEvents\">\n <template #page>\n <div class=\"b-data-grid-template__header\">\n <slot name=\"header\">\n <bento-header v-bind=\"header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n </slot>\n </div>\n\n <div\n v-if=\"hasSlot('additionalContent')\"\n ref=\"additionalContentRef\"\n class=\"b-data-grid-template__additional-content\"\n :class=\"additionalContentConditionalClasses\"\n >\n <slot name=\"additionalContent\" />\n </div>\n\n <bento-tabs\n v-if=\"tabsSlots.length > 1\"\n ref=\"tabsRef\"\n :active-tab-index=\"tabs.activeTabIndex\"\n :sticky=\"stickyTabs\"\n :sticky-options=\"stickyAdditionalContent ? { top: computedStickyAdditionalContentHeight } : null\"\n @update:active-tab-index=\"emitTabs\"\n >\n <bento-tab v-for=\"(_item, index) in tabsSlots\" :key=\"`tab-${index}`\" :title=\"getTabTitle(index)\">\n <slot :name=\"`tab-${index + 1}`\" />\n </bento-tab>\n </bento-tabs>\n\n <slot v-else />\n </template>\n\n <template #content>\n <slot name=\"inspector-content\" />\n </template>\n </bento-inspector>\n </main>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoHeader } from '@/components/header';\n import { BentoInspector } from '@/components/inspector';\n import { BentoTab, BentoTabs } from '@/components/tabs';\n import { useHasSlot } from '@/composables';\n import { computed, type PropType, provide, type Ref, ref, toRef, type UnwrapRef, useSlots } from 'vue';\n import { DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY } from './data-grid-template.keys';\n import type {\n BentoDataGridTemplateDataGrid,\n BentoDataGridTemplateHeader,\n BentoDataGridTemplateInspector,\n BentoDataGridTemplateTabs,\n } from './data-grid-template.types';\n\n const props = defineProps({\n /**\n * The header that goes to the top of the template\n */\n header: {\n type: Object as PropType<BentoDataGridTemplateHeader>,\n default: undefined,\n },\n\n /**\n * All the tab properties that can be set on the inner tab components.\n * - tabs.activeTabIndex: the currenly active tab index.\n * - tabs.tabs: an array of BentoTab props, the first item in the array will affect the `tab-1` slot and so on.\n */\n tabs: {\n type: Object as PropType<BentoDataGridTemplateTabs>,\n default: undefined,\n },\n\n /**\n * Renders the additional content slot with a sticky positioning\n */\n stickyAdditionalContent: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Renders the tabs with a sticky positioning\n */\n stickyTabs: {\n type: Boolean,\n default: false,\n },\n\n /**\n * All the inspector properties that can be set on the inner inspector component.\n */\n inspector: {\n type: Object as PropType<BentoDataGridTemplateInspector>,\n default: undefined,\n },\n });\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const emit = defineEmits([\"update:tabs\", \"update:is-open:inspector\", \"update:active-page:inspector\", \"expand:inspector\"]);\n\n const tabsRef = ref(null);\n const additionalContentRef = ref(null);\n const inspectorRef = ref(null);\n\n const additionalContentConditionalClasses = computed(() => ({\n 'b-data-grid-template__additional-content--sticky': props.stickyAdditionalContent,\n }));\n\n const computedInspectorProps = computed(() => ({\n title: '',\n ...props.inspector,\n }));\n\n const computedStickyAdditionalContentHeight = computed(() => additionalContentRef?.value?.offsetHeight);\n\n const computedTabsRef = computed(() => tabsRef.value?.$refs?.tablistwrapper);\n\n const tabsSlots = computed(() => Object.keys(slots).filter(el => el?.includes('tab-')));\n\n const inspectorEvents = computed(() => ({\n 'update:is-open': (value: boolean) => emit('update:is-open:inspector', value),\n 'update:active-page': (value: string) => emit('update:active-page:inspector', value),\n expand: (value: boolean) => emit('expand:inspector', value),\n }));\n\n const emitTabs = (newActiveTabIndex: number) => {\n emit('update:tabs', { ...props.tabs, activeTabIndex: newActiveTabIndex });\n };\n\n const getTabTitle = (index: number) => props?.tabs.tabs?.[index]?.title ?? `Tab ${index + 1}`;\n\n const registerDatagridInDataGridTemplate: BentoDataGridTemplateDataGrid = () => {\n const isDataGridTemplate = true;\n const stickyTabs: Ref<boolean> = toRef(props, 'stickyTabs');\n const stickyAdditionalContent: Ref<boolean> = toRef(props, 'stickyAdditionalContent');\n const tabsRef: Ref<UnwrapRef<HTMLDivElement>> | null = computedTabsRef;\n const additionalContentSlotRef: Ref<UnwrapRef<HTMLDivElement>> | null = additionalContentRef;\n\n // return values to the Tab component\n return {\n isDataGridTemplate,\n stickyTabs,\n tabsRef,\n stickyAdditionalContent,\n additionalContentSlotRef,\n };\n };\n\n provide(DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY, registerDatagridInDataGridTemplate);\n</script>\n\n<script lang=\"ts\">\n /**\n * The data grid template is a restrictive, full-page data grid used to display information from a data set.\n * You can use this data grid template when your user needs a clear overview of data or a way of organizing and analyzing the data in their own way.\n * This data grid template shouldn’t be confused with the data grid.\n *\n * @example\n * import { BentoDataGridTemplate } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDataGridTemplate },\n * template: `\n * // If you want to display multiple data grids in the same page (they will be rendered in different tabs)\n * <bento-data-grid-template>\n * <template #tab-1><bento-data-grid v-bind=\"your-data-grid-args\" title=\"Title for tab 1\"/></template>\n * <template #tab-2><bento-data-grid v-bind=\"your-data-grid-args\" title=\"Title for tab 2\"/></template>\n * </bento-data-grid-template>\n * // Alternatively, if you only want to pass one data grid to your template:\n * <bento-data-grid-template>\n * <template #default><bento-data-grid v-bind=\"your-data-grid-args\"/></template>\n * </bento-data-grid-template>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./data-grid-template.scss\" />\n"],"names":["__default__","slots","useSlots","hasSlot","useHasSlot","tabsRef","ref","additionalContentRef","inspectorRef","additionalContentConditionalClasses","computed","props","computedInspectorProps","computedStickyAdditionalContentHeight","computedTabsRef","tabsSlots","el","inspectorEvents","value","emit","emitTabs","newActiveTabIndex","getTabTitle","index","registerDatagridInDataGridTemplate","stickyTabs","toRef","stickyAdditionalContent","provide","DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY"],"mappings":";;;;;;;;AAuLI,MAAAA,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAhFAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAIAI,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAA,IAAA,GACAE,IAAAF,EAAA,IAAA,GAEAG,IAAAC,EAAA,OAAA;AAAA,MAA4D,oDAAAC,EAAA;AAAA,IACE,EAAA,GAG9DC,IAAAF,EAAA,OAAA;AAAA,MAA+C,OAAA;AAAA,MACpC,GAAAC,EAAA;AAAA,IACE,EAAA,GAGbE,IAAAH,EAAA,MAAAH,GAAA,OAAA,YAAA,GAEAO,IAAAJ,EAAA,MAAAL,EAAA,OAAA,OAAA,cAAA,GAEAU,IAAAL,EAAA,MAAA,OAAA,KAAAT,CAAA,EAAA,OAAA,CAAAe,MAAAA,GAAA,SAAA,MAAA,CAAA,CAAA,GAEAC,IAAAP,EAAA,OAAA;AAAA,MAAwC,kBAAA,CAAAQ,MAAAC,EAAA,4BAAAD,CAAA;AAAA,MACwC,sBAAA,CAAAA,MAAAC,EAAA,gCAAAD,CAAA;AAAA,MACO,QAAA,CAAAA,MAAAC,EAAA,oBAAAD,CAAA;AAAA,IACzB,EAAA,GAG9DE,IAAA,CAAAC,MAAA;AACI,MAAAF,EAAA,eAAA,EAAA,GAAAR,EAAA,MAAA,gBAAAU,EAAA,CAAA;AAAA,IAAwE,GAG5EC,IAAA,CAAAC,MAAAZ,GAAA,KAAA,OAAAY,CAAA,GAAA,SAAA,OAAAA,IAAA,CAAA,IAEAC,IAAA,MAAA;AAEI,YAAAC,IAAAC,EAAAf,GAAA,YAAA,GACAgB,IAAAD,EAAAf,GAAA,yBAAA;AAKA,aAAA;AAAA,QAAO;AAAA,QACH,YAAAc;AAAA,QACA,SANJX;AAAA,QAOI,yBAAAa;AAAA,QACA,0BAPJpB;AAAA,MAQI;AAAA,IACJ;AAGJ,WAAAqB,EAAAC,GAAAL,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"data-grid-template.DCwzh2G7.js","sources":["../../src/templates/data-grid-template/data-grid-template.vue"],"sourcesContent":["<template>\n <main class=\"b-data-grid-template\">\n <bento-inspector v-bind=\"computedInspectorProps\" ref=\"inspectorRef\" v-on=\"inspectorEvents\">\n <template #page>\n <div class=\"b-data-grid-template__header\">\n <slot name=\"header\">\n <bento-header v-bind=\"header\">\n <template v-if=\"hasSlot('infoIconTooltipContent')\" #infoIconTooltipContent>\n <slot name=\"infoIconTooltipContent\" />\n </template>\n </bento-header>\n </slot>\n </div>\n\n <div\n v-if=\"hasSlot('additionalContent')\"\n ref=\"additionalContentRef\"\n class=\"b-data-grid-template__additional-content\"\n :class=\"additionalContentConditionalClasses\"\n >\n <slot name=\"additionalContent\" />\n </div>\n\n <bento-tabs\n v-if=\"tabsSlots.length > 1\"\n ref=\"tabsRef\"\n :active-tab-index=\"tabs.activeTabIndex\"\n :sticky=\"stickyTabs\"\n :sticky-options=\"stickyAdditionalContent ? { top: computedStickyAdditionalContentHeight } : null\"\n @update:active-tab-index=\"emitTabs\"\n >\n <bento-tab v-for=\"(_item, index) in tabsSlots\" :key=\"`tab-${index}`\" :title=\"getTabTitle(index)\">\n <slot :name=\"`tab-${index + 1}`\" />\n </bento-tab>\n </bento-tabs>\n\n <slot v-else />\n </template>\n\n <template #content>\n <slot name=\"inspector-content\" />\n </template>\n </bento-inspector>\n </main>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoHeader } from '@/components/header';\n import { BentoInspector } from '@/components/inspector';\n import { BentoTab, BentoTabs } from '@/components/tabs';\n import { useHasSlot } from '@/composables';\n import { computed, type PropType, provide, type Ref, ref, toRef, type UnwrapRef, useSlots } from 'vue';\n import { DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY } from './data-grid-template.keys';\n import type {\n BentoDataGridTemplateDataGrid,\n BentoDataGridTemplateHeader,\n BentoDataGridTemplateInspector,\n BentoDataGridTemplateTabs,\n } from './data-grid-template.types';\n\n const props = defineProps({\n /**\n * The header that goes to the top of the template\n */\n header: {\n type: Object as PropType<BentoDataGridTemplateHeader>,\n default: undefined,\n },\n\n /**\n * All the tab properties that can be set on the inner tab components.\n * - tabs.activeTabIndex: the currenly active tab index.\n * - tabs.tabs: an array of BentoTab props, the first item in the array will affect the `tab-1` slot and so on.\n */\n tabs: {\n type: Object as PropType<BentoDataGridTemplateTabs>,\n default: undefined,\n },\n\n /**\n * Renders the additional content slot with a sticky positioning\n */\n stickyAdditionalContent: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Renders the tabs with a sticky positioning\n */\n stickyTabs: {\n type: Boolean,\n default: false,\n },\n\n /**\n * All the inspector properties that can be set on the inner inspector component.\n */\n inspector: {\n type: Object as PropType<BentoDataGridTemplateInspector>,\n default: undefined,\n },\n });\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const emit = defineEmits([\"update:tabs\", \"update:is-open:inspector\", \"update:active-page:inspector\", \"expand:inspector\"]);\n\n const tabsRef = ref(null);\n const additionalContentRef = ref(null);\n const inspectorRef = ref(null);\n\n const additionalContentConditionalClasses = computed(() => ({\n 'b-data-grid-template__additional-content--sticky': props.stickyAdditionalContent,\n }));\n\n const computedInspectorProps = computed(() => ({\n title: '',\n ...props.inspector,\n }));\n\n const computedStickyAdditionalContentHeight = computed(() => additionalContentRef?.value?.offsetHeight);\n\n const computedTabsRef = computed(() => tabsRef.value?.$refs?.tablistwrapper);\n\n const tabsSlots = computed(() => Object.keys(slots).filter(el => el?.includes('tab-')));\n\n const inspectorEvents = computed(() => ({\n 'update:is-open': (value: boolean) => emit('update:is-open:inspector', value),\n 'update:active-page': (value: string) => emit('update:active-page:inspector', value),\n expand: (value: boolean) => emit('expand:inspector', value),\n }));\n\n const emitTabs = (newActiveTabIndex: number) => {\n emit('update:tabs', { ...props.tabs, activeTabIndex: newActiveTabIndex });\n };\n\n const getTabTitle = (index: number) => props?.tabs.tabs?.[index]?.title ?? `Tab ${index + 1}`;\n\n const registerDatagridInDataGridTemplate: BentoDataGridTemplateDataGrid = () => {\n const isDataGridTemplate = true;\n const stickyTabs: Ref<boolean> = toRef(props, 'stickyTabs');\n const stickyAdditionalContent: Ref<boolean> = toRef(props, 'stickyAdditionalContent');\n const tabsRef: Ref<UnwrapRef<HTMLDivElement>> | null = computedTabsRef;\n const additionalContentSlotRef: Ref<UnwrapRef<HTMLDivElement>> | null = additionalContentRef;\n\n // return values to the Tab component\n return {\n isDataGridTemplate,\n stickyTabs,\n tabsRef,\n stickyAdditionalContent,\n additionalContentSlotRef,\n };\n };\n\n provide(DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY, registerDatagridInDataGridTemplate);\n</script>\n\n<script lang=\"ts\">\n /**\n * The data grid template is a restrictive, full-page data grid used to display information from a data set.\n * You can use this data grid template when your user needs a clear overview of data or a way of organizing and analyzing the data in their own way.\n * This data grid template shouldn’t be confused with the data grid.\n *\n * @example\n * import { BentoDataGridTemplate } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDataGridTemplate },\n * template: `\n * // If you want to display multiple data grids in the same page (they will be rendered in different tabs)\n * <bento-data-grid-template>\n * <template #tab-1><bento-data-grid v-bind=\"your-data-grid-args\" title=\"Title for tab 1\"/></template>\n * <template #tab-2><bento-data-grid v-bind=\"your-data-grid-args\" title=\"Title for tab 2\"/></template>\n * </bento-data-grid-template>\n * // Alternatively, if you only want to pass one data grid to your template:\n * <bento-data-grid-template>\n * <template #default><bento-data-grid v-bind=\"your-data-grid-args\"/></template>\n * </bento-data-grid-template>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./data-grid-template.scss\" />\n"],"names":["__default__","slots","useSlots","hasSlot","useHasSlot","tabsRef","ref","additionalContentRef","inspectorRef","additionalContentConditionalClasses","computed","props","computedInspectorProps","computedStickyAdditionalContentHeight","computedTabsRef","tabsSlots","el","inspectorEvents","value","emit","emitTabs","newActiveTabIndex","getTabTitle","index","registerDatagridInDataGridTemplate","stickyTabs","toRef","stickyAdditionalContent","provide","DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY"],"mappings":";;;;;;;;AAuLI,MAAAA,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAhFAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAIAI,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAA,IAAA,GACAE,IAAAF,EAAA,IAAA,GAEAG,IAAAC,EAAA,OAAA;AAAA,MAA4D,oDAAAC,EAAA;AAAA,IACE,EAAA,GAG9DC,IAAAF,EAAA,OAAA;AAAA,MAA+C,OAAA;AAAA,MACpC,GAAAC,EAAA;AAAA,IACE,EAAA,GAGbE,IAAAH,EAAA,MAAAH,GAAA,OAAA,YAAA,GAEAO,IAAAJ,EAAA,MAAAL,EAAA,OAAA,OAAA,cAAA,GAEAU,IAAAL,EAAA,MAAA,OAAA,KAAAT,CAAA,EAAA,OAAA,CAAAe,MAAAA,GAAA,SAAA,MAAA,CAAA,CAAA,GAEAC,IAAAP,EAAA,OAAA;AAAA,MAAwC,kBAAA,CAAAQ,MAAAC,EAAA,4BAAAD,CAAA;AAAA,MACwC,sBAAA,CAAAA,MAAAC,EAAA,gCAAAD,CAAA;AAAA,MACO,QAAA,CAAAA,MAAAC,EAAA,oBAAAD,CAAA;AAAA,IACzB,EAAA,GAG9DE,IAAA,CAAAC,MAAA;AACI,MAAAF,EAAA,eAAA,EAAA,GAAAR,EAAA,MAAA,gBAAAU,EAAA,CAAA;AAAA,IAAwE,GAG5EC,IAAA,CAAAC,MAAAZ,GAAA,KAAA,OAAAY,CAAA,GAAA,SAAA,OAAAA,IAAA,CAAA,IAEAC,IAAA,MAAA;AAEI,YAAAC,IAAAC,EAAAf,GAAA,YAAA,GACAgB,IAAAD,EAAAf,GAAA,yBAAA;AAKA,aAAA;AAAA,QAAO;AAAA,QACH,YAAAc;AAAA,QACA,SANJX;AAAA,QAOI,yBAAAa;AAAA,QACA,0BAPJpB;AAAA,MAQI;AAAA,IACJ;AAGJ,WAAAqB,EAAAC,GAAAL,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,47 +1,47 @@
1
1
  import { ref as _, onMounted as be, nextTick as q, watch as ee, onUnmounted as _t, reactive as ke, toRefs as $e, computed as f, watchEffect as En, onBeforeUpdate as yn, getCurrentInstance as re, defineComponent as te, inject as ie, toRef as Be, useSlots as We, provide as ye } from "vue";
2
2
  import { C as Ln } from "./checkmark-circle-fill.Ds9Mwqpi.js";
3
- import { W as Tn } from "./alert.DrGpzkQI.js";
3
+ import { W as Tn } from "./alert.DJDHwVeR.js";
4
4
  /* empty css */
5
5
  import { n as V } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
6
6
  import { C as Ct } from "./cross.szJ_ZUTI.js";
7
7
  import { N as ot } from "./minus-small.CAycYt5H.js";
8
8
  import { b as On } from "./popper-container.Cj3AWXSd.js";
9
9
  import { E as W, b as vt, B as In, T as Nn } from "./tooltip.DFYc5NKM.js";
10
- import { B as Dn } from "./dashed-underline.B7PRJBq4.js";
10
+ import { B as Dn } from "./dashed-underline.CzKc-fJW.js";
11
11
  import { B as pe, p as pt } from "./typography.D1OZJbEa.js";
12
12
  import { u as me } from "./index.CPOlyau9.js";
13
- import { B as Mn } from "./tag.DSzato7w.js";
14
- import { B as xn } from "./action-bar.BhS26IWQ.js";
15
- import { B as Fn } from "./pagination.D4uye85j.js";
13
+ import { B as Mn } from "./tag.Dz1FQSZb.js";
14
+ import { B as xn } from "./action-bar.BsXW7BI2.js";
15
+ import { B as Fn } from "./pagination.cI_pc6oE.js";
16
16
  import { B as Ge } from "./loading-indicator.PxbRzshH.js";
17
17
  import { u as Ve } from "./use-has-slot.C9lQZ6nz.js";
18
18
  import { u as Pn } from "./use-touch-device.DTqFAbXh.js";
19
19
  import { g as Te } from "./generate-uid.DBWe4g6T.js";
20
- import { a as zn } from "./filter-bar.Di-vepKR.js";
21
- import { B as Bn } from "./empty-state.CCnSOrRQ.js";
20
+ import { a as zn } from "./filter-bar.DXpLhnxG.js";
21
+ import { B as Bn } from "./empty-state.C2wjdE3y.js";
22
22
  import { E as Un } from "./tabs.keys.B4qGhjp2.js";
23
23
  import { D as kn } from "./data-grid-template.keys.VezYtHtM.js";
24
24
  import { h as $n } from "./index.CL3TXc0a.js";
25
25
  import { o as ht } from "./resize.Bqks3WUm.js";
26
26
  import "./index.Cl4_42j5.js";
27
27
  import { g as bt } from "./focus-trap.fd6_d2EW.js";
28
- import { B as wt } from "./checkbox.CZM7Q3Zi.js";
29
- import { B as St } from "./button.CBqJGWy5.js";
30
- import { c as He, f as Rt, h as Wn, b as Gn, a as Vn, O as st, D as Hn } from "./button-actions.DdAWQn3c.js";
31
- import { E as lt } from "./link.BzIDMKgE.js";
32
- import { C as at } from "./copy.CXHEw5S0.js";
28
+ import { B as wt } from "./checkbox.Co4HoHKF.js";
29
+ import { B as St } from "./button.DII5Ifwa.js";
30
+ import { c as He, f as Rt, h as Wn, b as Gn, a as Vn, O as st, D as Hn } from "./button-actions.bkcLUE1G.js";
31
+ import { E as lt } from "./link.Cls8XShm.js";
32
+ import { C as at } from "./copy.CSk1rCRo.js";
33
33
  import { C as Zn } from "./chevron-down.B_QiVCoO.js";
34
34
  import { C as jn } from "./chevron-up.YQRo8uKs.js";
35
35
  import { u as qn } from "./use-expandable-content-height.Bdd9hQwq.js";
36
36
  import { B as Kn } from "./info-icon.B-FAeceD.js";
37
- import { j as Yn, f as Xn } from "./dropdown.Bkl-FGT4.js";
37
+ import { j as Yn, f as Xn } from "./dropdown.Bnq4kP7k.js";
38
38
  import { B as it } from "./popover.types.DvIwSAAp.js";
39
39
  import { A as Jn } from "./arrow-left.BBflhjQa.js";
40
40
  import { A as Qn } from "./arrow-right.2jTnMmVP.js";
41
41
  import { H as eo, S as to } from "./show.Cs2jT9TJ.js";
42
42
  import { l as rt } from "./events.BQOQSSb7.js";
43
- import { B as At } from "./toggle.BkTeqKsx.js";
44
- import { B as no } from "./search-bar.C900XBUm.js";
43
+ import { B as At } from "./toggle.Dgh7aw1D.js";
44
+ import { B as no } from "./search-bar.--4KVNkf.js";
45
45
  import { S as oo } from "./search.Bzm6F8rR.js";
46
46
  import { B as so } from "./directive.D1-d-C2K.js";
47
47
  import "../assets/data-grid.css";
@@ -1341,7 +1341,7 @@ var ps = function() {
1341
1341
  hs,
1342
1342
  !1,
1343
1343
  null,
1344
- "0e477266"
1344
+ "6aa10b79"
1345
1345
  );
1346
1346
  const ws = bs.exports, Tt = {
1347
1347
  "de-DE": { filterBar: "Filter", gettingYourData: "Ihre Daten werden abgerufen", loading: "Laden", noResults: "Keine Ergebnisse", pagination: "Paginierung", selectRow: "Zeile auswählen", showMore: "Mehr anzeigen", sortAscending: "{field} aufsteigend sortieren", sortDescending: "{field} absteigend sortieren", sortInactive: "{field} Sortierung inaktiv" },
@@ -2401,7 +2401,7 @@ var qs = function() {
2401
2401
  Ks,
2402
2402
  !1,
2403
2403
  null,
2404
- "4c57a740"
2404
+ "93233429"
2405
2405
  );
2406
2406
  const Xs = Ys.exports, Js = {
2407
2407
  __name: "warning-circle-fill",
@@ -3249,7 +3249,7 @@ var Bl = function() {
3249
3249
  Ul,
3250
3250
  !1,
3251
3251
  null,
3252
- "b804a5d7"
3252
+ "5a91b708"
3253
3253
  );
3254
3254
  const za = kl.exports;
3255
3255
  export {
@@ -3264,4 +3264,4 @@ export {
3264
3264
  ve as h,
3265
3265
  ae as i
3266
3266
  };
3267
- //# sourceMappingURL=data-grid.B9Htvwxc.js.map
3267
+ //# sourceMappingURL=data-grid.B1lI07ze.js.map