@adyen/bento-vue2 1.83.0 → 1.83.1

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 (164) hide show
  1. package/dist/@types/index.d.ts +1242 -1229
  2. package/dist/assets/accordion-item.css +1 -1
  3. package/dist/assets/action-bar.css +1 -1
  4. package/dist/assets/base-modal.css +1 -1
  5. package/dist/assets/button-actions.css +1 -1
  6. package/dist/assets/card.css +1 -1
  7. package/dist/assets/data-grid.css +1 -1
  8. package/dist/assets/dialog-page.css +1 -1
  9. package/dist/assets/file-uploader.css +1 -1
  10. package/dist/assets/filter-bar.css +1 -1
  11. package/dist/assets/inspector.css +1 -1
  12. package/dist/assets/modal-fullscreen.css +1 -1
  13. package/dist/assets/selection-card-group.css +1 -1
  14. package/dist/assets/sidepanel.css +1 -1
  15. package/dist/checkbox.js +2 -2
  16. package/dist/chunks/1-generic-use.CZhwP2Yc.js.map +1 -1
  17. package/dist/chunks/1-generic-use.R6x8PEGA.js.map +1 -1
  18. package/dist/chunks/2-generic-use.CNKjB4B7.js.map +1 -1
  19. package/dist/chunks/2-generic-use.w0fUhovx.js.map +1 -1
  20. package/dist/chunks/3-generic-use.BLEzR04g.js.map +1 -1
  21. package/dist/chunks/3-generic-use.D3NFHgI4.js.map +1 -1
  22. package/dist/chunks/4-generic-use.CULEpvgj.js.map +1 -1
  23. package/dist/chunks/4-generic-use.D82y3n39.js.map +1 -1
  24. package/dist/chunks/accordion-item.DeV8s0oW.js.map +1 -1
  25. package/dist/chunks/adding-payment-methods.BJZLPxtM.js.map +1 -1
  26. package/dist/chunks/adding-payment-methods.Dle8zt43.js.map +1 -1
  27. package/dist/chunks/adyen-giving.Ffw_DlJK.js.map +1 -1
  28. package/dist/chunks/adyen-giving.LiKHj_jY.js.map +1 -1
  29. package/dist/chunks/alert.BlJBrD8c.js.map +1 -1
  30. package/dist/chunks/aria-label.CaUURpnB.js.map +1 -1
  31. package/dist/chunks/avatar.CUCH3CTc.js.map +1 -1
  32. package/dist/chunks/base-button.IN4bpcds.js.map +1 -1
  33. package/dist/chunks/base-modal.L39wmqVD.js.map +1 -1
  34. package/dist/chunks/button-actions-with-menu.CQlsQa_f.js.map +1 -1
  35. package/dist/chunks/button-actions.BWVq6OZQ.js.map +1 -1
  36. package/dist/chunks/button-actions.types.BptAXjD8.js.map +1 -1
  37. package/dist/chunks/button.C5GvPqe5.js.map +1 -1
  38. package/dist/chunks/calendar.DCLyThOl.js.map +1 -1
  39. package/dist/chunks/card.CktheSva.js.map +1 -1
  40. package/dist/chunks/{checkbox-group.DKkaWwMI.js → checkbox-group.BUXnMhO8.js} +2 -2
  41. package/dist/chunks/{checkbox-group.DKkaWwMI.js.map → checkbox-group.BUXnMhO8.js.map} +1 -1
  42. package/dist/chunks/{checkbox.B_W1TGP2.js → checkbox.DgPVHJnT.js} +18 -18
  43. package/dist/chunks/{checkbox.B_W1TGP2.js.map → checkbox.DgPVHJnT.js.map} +1 -1
  44. package/dist/chunks/click-outside.C1Ud8AA2.js.map +1 -1
  45. package/dist/chunks/code-snippet.1_edHDaZ.js.map +1 -1
  46. package/dist/chunks/codemirror.Cy7iSLbd.js.map +1 -1
  47. package/dist/chunks/copy.I2GvwCvt.js.map +1 -1
  48. package/dist/chunks/country.types.C0Q_hhgJ.js.map +1 -1
  49. package/dist/chunks/currency.DYZr_RDk.js.map +1 -1
  50. package/dist/chunks/data-grid-template.keys.VezYtHtM.js.map +1 -1
  51. package/dist/chunks/{data-grid.CVjZ1tKw.js → data-grid.CsVqTwy0.js} +671 -671
  52. package/dist/chunks/{data-grid.CVjZ1tKw.js.map → data-grid.CsVqTwy0.js.map} +1 -1
  53. package/dist/chunks/date-format.B8RU7D42.js.map +1 -1
  54. package/dist/chunks/date-picker.types.Ckt7zxGy.js.map +1 -1
  55. package/dist/chunks/date-range-picker.Bw1yPTu-.js.map +1 -1
  56. package/dist/chunks/date-range-picker.types.Ckt7zxGy.js.map +1 -1
  57. package/dist/chunks/date.DBWzp0So.js.map +1 -1
  58. package/dist/chunks/debounce.DUTu11PS.js.map +1 -1
  59. package/dist/chunks/delight.CDBAFnwC.js.map +1 -1
  60. package/dist/chunks/delight.xKDCvvaS.js.map +1 -1
  61. package/dist/chunks/dialog-page.Dn-WbcxU.js.map +1 -1
  62. package/dist/chunks/differenceInMonths.Cab3nOsb.js.map +1 -1
  63. package/dist/chunks/directive.Cbdox5VL.js.map +1 -1
  64. package/dist/chunks/divider.DX5gwN7p.js.map +1 -1
  65. package/dist/chunks/dropdown-default-textbox.Cq68tN9F.js.map +1 -1
  66. package/dist/chunks/dropdown.Dt0_ZUBn.js.map +1 -1
  67. package/dist/chunks/empty-state.jVTWhJW7.js.map +1 -1
  68. package/dist/chunks/events.BQOQSSb7.js.map +1 -1
  69. package/dist/chunks/file-uploader.G6mr6RuA.js.map +1 -1
  70. package/dist/chunks/{filter-bar.CgJA4tIt.js → filter-bar.DNA9QblV.js} +3 -3
  71. package/dist/chunks/filter-bar.DNA9QblV.js.map +1 -0
  72. package/dist/chunks/focus-trap.CNIU5jOz.js.map +1 -1
  73. package/dist/chunks/form-field.D_2g7vaP.js.map +1 -1
  74. package/dist/chunks/form-layout.types.bZW9iR6_.js.map +1 -1
  75. package/dist/chunks/generate-uid.NJ8tVoha.js.map +1 -1
  76. package/dist/chunks/getRoundingMethod.C3eaeGLR.js.map +1 -1
  77. package/dist/chunks/getTimezoneOffsetInMilliseconds.B7sxiukN.js.map +1 -1
  78. package/dist/chunks/grid-layout.1aIiz2N_.js.map +1 -1
  79. package/dist/chunks/{header-with-views.3fF_V6F9.js → header-with-views.lzT3kGpo.js} +2 -2
  80. package/dist/chunks/{header-with-views.3fF_V6F9.js.map → header-with-views.lzT3kGpo.js.map} +1 -1
  81. package/dist/chunks/header.D76MKCdS.js.map +1 -1
  82. package/dist/chunks/image.C2D2hKat.js.map +1 -1
  83. package/dist/chunks/index.B6WW_F-J.js.map +1 -1
  84. package/dist/chunks/index.BDK4hwK_.js.map +1 -1
  85. package/dist/chunks/input-field-password.C7zjyp7f.js.map +1 -1
  86. package/dist/chunks/input-field-phone-number.DwuTziSU.js.map +1 -1
  87. package/dist/chunks/input-field.DsT4AWXC.js.map +1 -1
  88. package/dist/chunks/inspector.types.DyHwE18g.js.map +1 -1
  89. package/dist/chunks/internal-error.BLZodVBE.js.map +1 -1
  90. package/dist/chunks/internal-error.BmrwJFpR.js.map +1 -1
  91. package/dist/chunks/keyboard-navigation.DWmhelVv.js.map +1 -1
  92. package/dist/chunks/layout-row.BPX00mio.js.map +1 -1
  93. package/dist/chunks/link.BoDUCYmM.js.map +1 -1
  94. package/dist/chunks/loading-indicator.PxbRzshH.js.map +1 -1
  95. package/dist/chunks/minus-small.DJacLGTw.js.map +1 -1
  96. package/dist/chunks/modal.6hFEbnZM.js.map +1 -1
  97. package/dist/chunks/no-results-found.Bg_ZcEid.js.map +1 -1
  98. package/dist/chunks/no-results-found.BqvYsBR6.js.map +1 -1
  99. package/dist/chunks/notifications-cleared.BMZk37uf.js.map +1 -1
  100. package/dist/chunks/notifications-cleared.C7W9ZXY7.js.map +1 -1
  101. package/dist/chunks/on-click-outside.D9aY9g8G.js.map +1 -1
  102. package/dist/chunks/page-not-found.COJLPVaU.js.map +1 -1
  103. package/dist/chunks/page-not-found.DWW6W-PZ.js.map +1 -1
  104. package/dist/chunks/payment-method.BKXLPDC9.js.map +1 -1
  105. package/dist/chunks/payment-method.types.BqtH7RM2.js.map +1 -1
  106. package/dist/chunks/planned-maintenance.C61sWB9h.js.map +1 -1
  107. package/dist/chunks/planned-maintenance.jmWYTdet.js.map +1 -1
  108. package/dist/chunks/popover.types.WDh5ggr3.js.map +1 -1
  109. package/dist/chunks/popper-container.Cdokz_NE.js.map +1 -1
  110. package/dist/chunks/promo-banner.D3aG5wnp.js.map +1 -1
  111. package/dist/chunks/radio-group.DTZwsfwW.js.map +1 -1
  112. package/dist/chunks/radio-input.kzb4gxLW.js.map +1 -1
  113. package/dist/chunks/referrals.BvtT-kQS.js.map +1 -1
  114. package/dist/chunks/referrals.aX8WZigH.js.map +1 -1
  115. package/dist/chunks/resize.Bqks3WUm.js.map +1 -1
  116. package/dist/chunks/{rich-text-editor.BbvfrqHl.js → rich-text-editor.B0ivi3UG.js} +2 -2
  117. package/dist/chunks/{rich-text-editor.BbvfrqHl.js.map → rich-text-editor.B0ivi3UG.js.map} +1 -1
  118. package/dist/chunks/search-bar.Bpk-PuYT.js.map +1 -1
  119. package/dist/chunks/secondary-nav.BGOYJrsB.js.map +1 -1
  120. package/dist/chunks/segmented-control.types.BHRLV8KU.js.map +1 -1
  121. package/dist/chunks/{selection-card-group.BWLjFcea.js → selection-card-group.CLqWoLSN.js} +10 -10
  122. package/dist/chunks/{selection-card-group.BWLjFcea.js.map → selection-card-group.CLqWoLSN.js.map} +1 -1
  123. package/dist/chunks/sidepanel.C5SvJNMR.js.map +1 -1
  124. package/dist/chunks/status.types.Cv5XN4zL.js.map +1 -1
  125. package/dist/chunks/step.mqn8E6dm.js.map +1 -1
  126. package/dist/chunks/structured-list-item.CbXDKwsF.js.map +1 -1
  127. package/dist/chunks/success.DhioLvPD.js.map +1 -1
  128. package/dist/chunks/success.nNwxJRBS.js.map +1 -1
  129. package/dist/chunks/summary-grid.keys.Xx-W5a2w.js.map +1 -1
  130. package/dist/chunks/summary-grid.types.haWi7oaf.js.map +1 -1
  131. package/dist/chunks/tab.ZQfGp_FP.js.map +1 -1
  132. package/dist/chunks/tabs.keys.B4qGhjp2.js.map +1 -1
  133. package/dist/chunks/tag.B1Ywhgvc.js.map +1 -1
  134. package/dist/chunks/textarea.DfR2o1lz.js.map +1 -1
  135. package/dist/chunks/timeline-item.rLqeBsyz.js.map +1 -1
  136. package/dist/chunks/toggle.227XgEc7.js.map +1 -1
  137. package/dist/chunks/tooltip.C6YCavPw.js.map +1 -1
  138. package/dist/chunks/truncate.BfIl_-71.js.map +1 -1
  139. package/dist/chunks/{tutorial.DdRGxTC5.js → tutorial.DA775wec.js} +4 -4
  140. package/dist/chunks/{tutorial.DdRGxTC5.js.map → tutorial.DA775wec.js.map} +1 -1
  141. package/dist/chunks/typography.Bq-EGj9y.js.map +1 -1
  142. package/dist/chunks/upload-files.5wQwbfkp.js.map +1 -1
  143. package/dist/chunks/upload-files.jTQY6y2X.js.map +1 -1
  144. package/dist/chunks/use-bento-toast-controller.MmyZXtME.js.map +1 -1
  145. package/dist/chunks/use-cached-selected-values.DIKJ8yNE.js.map +1 -1
  146. package/dist/chunks/use-country-items.B3Cd3Tdo.js.map +1 -1
  147. package/dist/chunks/use-country-phon-code.Bui3zD6W.js.map +1 -1
  148. package/dist/chunks/use-default-slot-validator.BDn0wkYP.js.map +1 -1
  149. package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -1
  150. package/dist/chunks/use-form-layout-loading.CWbjZiwP.js.map +1 -1
  151. package/dist/chunks/wrong-environment.BOsyKdRI.js.map +1 -1
  152. package/dist/chunks/wrong-environment.BiHTPtbJ.js.map +1 -1
  153. package/dist/data-grid.js +1 -1
  154. package/dist/filter-bar.js +1 -1
  155. package/dist/header-with-views.js +1 -1
  156. package/dist/index.js +8 -8
  157. package/dist/index.js.map +1 -1
  158. package/dist/rich-text-editor.js +1 -1
  159. package/dist/selection-card.js +1 -1
  160. package/dist/tutorial.js +1 -1
  161. package/dist/use-form-v4.js.map +1 -1
  162. package/dist/web-types.json +3 -3
  163. package/package.json +8 -8
  164. package/dist/chunks/filter-bar.CgJA4tIt.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"copy.I2GvwCvt.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>\n import '../css/main.css';\n\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n","<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","uuid","_sfc_main$1","__default__","messages","t","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;ACIZ,IAAAE,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;GC8EIE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;;iBApDA,EAAA,GAAAC,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,iBAAAM,EAAA,QAAA;AAAA,QAAiB,KAAAN,EAAA;AAEjB,iBAAAM,EAAA,YAAA;AAAA,QAAqB;AAErB,iBAAAA,EAAA,MAAA;AAAA,MAAe;AAAA,IACvB,CAAA,GAGJY,IAAAD,EAAA,MAAAJ,EAAA,aAAA,SAAAP,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"copy.I2GvwCvt.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>\n import '../css/main.css';\n\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n","<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","uuid","_sfc_main$1","__default__","messages","t","useI18n","copyState","ref","showScreenReaderAlert","onClickCopy","event","props","emit","resetText","copyText","computed","svgTitle"],"mappings":";;;;;;;;AAGY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,QAAA,SAHQA,IAAAD,KAAA,CAAA,CAAA;ACIZ,IAAAE,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;GC8EIE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;;iBApDA,EAAA,GAAAC,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,iBAAAM,EAAA,QAAA;AAAA,QAAiB,KAAAN,EAAA;AAEjB,iBAAAM,EAAA,YAAA;AAAA,QAAqB;AAErB,iBAAAA,EAAA,MAAA;AAAA,MAAe;AAAA,IACvB,CAAA,GAGJY,IAAAD,EAAA,MAAAJ,EAAA,aAAA,SAAAP,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"country.types.C0Q_hhgJ.js","sources":["../../src/components/country/composables/use-country-capital/use-country-capital.ts","../../src/components/country/country.types.ts"],"sourcesContent":["import { type MaybeRef } from '@/types/maybe-ref';\nimport { computed, ref } from 'vue';\nimport messages from './messages.json';\n\n/**\n * Maps an ISO code to the country's translated capital city.\n *\n * @returns a translated country name\n */\nexport const useCountryCapital = (code: MaybeRef<string>, locale: MaybeRef<string>, useFallback = true) => {\n const countryCode = ref(code);\n const languageLocale = ref(locale);\n return computed<string>(() => {\n const normalizedCode = countryCode?.value?.toUpperCase();\n const translatedCountryName =\n messages[languageLocale.value]?.[normalizedCode] ??\n messages['en-US']?.[normalizedCode] ??\n (useFallback ? normalizedCode : null);\n return translatedCountryName;\n });\n};\n\nexport default useCountryCapital;\n","/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoCountryVariant {\n ISO = 'iso',\n NAME = 'name',\n PHONE_CODE = 'phone_code',\n CAPITAL = 'capital',\n /** deprecated Use any of the other BentoCountry variants instead OR BentoTypography component for custom text */\n CUSTOM = 'custom',\n}\n\nexport enum BentoCountryCode {\n BD = 'BD',\n BE = 'BE',\n BF = 'BF',\n BG = 'BG',\n BA = 'BA',\n BB = 'BB',\n WF = 'WF',\n BL = 'BL',\n BM = 'BM',\n BN = 'BN',\n BO = 'BO',\n BH = 'BH',\n BI = 'BI',\n BJ = 'BJ',\n BT = 'BT',\n JM = 'JM',\n BV = 'BV',\n BW = 'BW',\n WS = 'WS',\n BQ = 'BQ',\n BR = 'BR',\n BS = 'BS',\n JE = 'JE',\n BY = 'BY',\n BZ = 'BZ',\n RU = 'RU',\n RW = 'RW',\n RS = 'RS',\n TL = 'TL',\n RE = 'RE',\n TM = 'TM',\n TJ = 'TJ',\n RO = 'RO',\n TK = 'TK',\n GW = 'GW',\n GU = 'GU',\n GT = 'GT',\n GS = 'GS',\n GR = 'GR',\n GQ = 'GQ',\n GP = 'GP',\n JP = 'JP',\n GY = 'GY',\n GG = 'GG',\n GF = 'GF',\n GE = 'GE',\n GD = 'GD',\n GB = 'GB',\n GA = 'GA',\n SV = 'SV',\n GN = 'GN',\n GM = 'GM',\n GL = 'GL',\n GI = 'GI',\n GH = 'GH',\n OM = 'OM',\n TN = 'TN',\n JO = 'JO',\n HR = 'HR',\n HT = 'HT',\n HU = 'HU',\n HK = 'HK',\n HN = 'HN',\n HM = 'HM',\n VE = 'VE',\n PR = 'PR',\n PS = 'PS',\n PW = 'PW',\n PT = 'PT',\n SJ = 'SJ',\n PY = 'PY',\n IQ = 'IQ',\n PA = 'PA',\n PF = 'PF',\n PG = 'PG',\n PE = 'PE',\n PK = 'PK',\n PH = 'PH',\n PN = 'PN',\n PL = 'PL',\n PM = 'PM',\n ZM = 'ZM',\n EH = 'EH',\n EE = 'EE',\n EG = 'EG',\n ZA = 'ZA',\n EC = 'EC',\n IT = 'IT',\n VN = 'VN',\n SB = 'SB',\n ET = 'ET',\n SO = 'SO',\n ZW = 'ZW',\n SA = 'SA',\n ES = 'ES',\n ER = 'ER',\n ME = 'ME',\n MD = 'MD',\n MG = 'MG',\n MF = 'MF',\n MA = 'MA',\n MC = 'MC',\n UZ = 'UZ',\n MM = 'MM',\n ML = 'ML',\n MO = 'MO',\n MN = 'MN',\n MH = 'MH',\n MK = 'MK',\n MU = 'MU',\n MT = 'MT',\n MW = 'MW',\n MV = 'MV',\n MQ = 'MQ',\n MP = 'MP',\n MS = 'MS',\n MR = 'MR',\n IM = 'IM',\n UG = 'UG',\n TZ = 'TZ',\n MY = 'MY',\n MX = 'MX',\n IL = 'IL',\n FR = 'FR',\n IO = 'IO',\n SH = 'SH',\n FI = 'FI',\n FJ = 'FJ',\n FK = 'FK',\n FM = 'FM',\n FO = 'FO',\n NI = 'NI',\n NL = 'NL',\n NO = 'NO',\n NA = 'NA',\n VU = 'VU',\n NC = 'NC',\n NE = 'NE',\n NF = 'NF',\n NG = 'NG',\n NZ = 'NZ',\n NP = 'NP',\n NR = 'NR',\n NU = 'NU',\n CK = 'CK',\n XK = 'XK',\n CI = 'CI',\n CH = 'CH',\n CO = 'CO',\n CN = 'CN',\n CM = 'CM',\n CL = 'CL',\n CC = 'CC',\n CA = 'CA',\n CG = 'CG',\n CF = 'CF',\n CD = 'CD',\n CZ = 'CZ',\n CY = 'CY',\n CX = 'CX',\n CR = 'CR',\n CW = 'CW',\n CV = 'CV',\n CU = 'CU',\n SZ = 'SZ',\n SY = 'SY',\n SX = 'SX',\n KG = 'KG',\n KE = 'KE',\n SS = 'SS',\n SR = 'SR',\n KI = 'KI',\n KH = 'KH',\n KN = 'KN',\n KM = 'KM',\n ST = 'ST',\n SK = 'SK',\n KR = 'KR',\n SI = 'SI',\n KP = 'KP',\n KW = 'KW',\n SN = 'SN',\n SM = 'SM',\n SL = 'SL',\n SC = 'SC',\n KZ = 'KZ',\n KY = 'KY',\n SG = 'SG',\n SE = 'SE',\n SD = 'SD',\n DO = 'DO',\n DM = 'DM',\n DJ = 'DJ',\n DK = 'DK',\n VG = 'VG',\n DE = 'DE',\n YE = 'YE',\n DZ = 'DZ',\n US = 'US',\n UY = 'UY',\n YT = 'YT',\n UM = 'UM',\n LB = 'LB',\n LC = 'LC',\n LA = 'LA',\n TV = 'TV',\n TW = 'TW',\n TT = 'TT',\n TR = 'TR',\n LK = 'LK',\n LI = 'LI',\n LV = 'LV',\n TO = 'TO',\n LT = 'LT',\n LU = 'LU',\n LR = 'LR',\n LS = 'LS',\n TH = 'TH',\n TF = 'TF',\n TG = 'TG',\n TD = 'TD',\n TC = 'TC',\n LY = 'LY',\n VA = 'VA',\n VC = 'VC',\n AE = 'AE',\n AD = 'AD',\n AG = 'AG',\n AF = 'AF',\n AI = 'AI',\n VI = 'VI',\n IS = 'IS',\n IR = 'IR',\n AM = 'AM',\n AL = 'AL',\n AO = 'AO',\n AQ = 'AQ',\n AS = 'AS',\n AR = 'AR',\n AU = 'AU',\n AT = 'AT',\n AW = 'AW',\n IN = 'IN',\n AX = 'AX',\n AZ = 'AZ',\n IE = 'IE',\n ID = 'ID',\n UA = 'UA',\n QA = 'QA',\n MZ = 'MZ',\n UNKNOWN = 'ZZ',\n}\n\nexport interface BentoCountryProps {\n /**\n * Two character country code ([ISO 3166-1 alpha-2 format](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).\n */\n code?: BentoCountryCode | `${BentoCountryCode}`;\n\n /**\n * Custom label text.\n */\n label?: string;\n\n /**\n * Which label variant to display.\n * @values iso, name, phone_code, capital\n */\n variant?: BentoCountryVariant | `${BentoCountryVariant}`;\n}\n"],"names":["useCountryCapital","code","locale","useFallback","countryCode","ref","languageLocale","computed","normalizedCode","_a","_b","messages","_c","BentoCountryVariant","BentoCountryCode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GASaA,IAAoB,CAACC,GAAwBC,GAA0BC,IAAc,OAAS;AACvG,QAAMC,IAAcC,EAAIJ,CAAI,GACtBK,IAAiBD,EAAIH,CAAM;AACjC,SAAOK,EAAiB,MAAM;;AAC1B,UAAMC,KAAiBC,IAAAL,KAAA,gBAAAA,EAAa,UAAb,gBAAAK,EAAoB;AAK3C,aAHIC,IAAAC,EAASL,EAAe,KAAK,MAA7B,gBAAAI,EAAiCF,SACjCI,IAAAD,EAAS,OAAO,MAAhB,gBAAAC,EAAoBJ,QACnBL,IAAcK,IAAiB;AAAA,EAExC,CAAC;AACL;ACjBO,IAAKK,sBAAAA,OACRA,EAAA,MAAM,OACNA,EAAA,OAAO,QACPA,EAAA,aAAa,cACbA,EAAA,UAAU,WAEVA,EAAA,SAAS,UANDA,IAAAA,KAAA,CAAA,CAAA,GASAC,sBAAAA,OACRA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,UAAU,MA3PFA,IAAAA,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"country.types.C0Q_hhgJ.js","sources":["../../src/components/country/composables/use-country-capital/use-country-capital.ts","../../src/components/country/country.types.ts"],"sourcesContent":["import { type MaybeRef } from '@/types/maybe-ref';\nimport { computed, ref } from 'vue';\nimport messages from './messages.json';\n\n/**\n * Maps an ISO code to the country's translated capital city.\n *\n * @returns a translated country name\n */\nexport const useCountryCapital = (code: MaybeRef<string>, locale: MaybeRef<string>, useFallback = true) => {\n const countryCode = ref(code);\n const languageLocale = ref(locale);\n return computed<string>(() => {\n const normalizedCode = countryCode?.value?.toUpperCase();\n const translatedCountryName =\n messages[languageLocale.value]?.[normalizedCode] ??\n messages['en-US']?.[normalizedCode] ??\n (useFallback ? normalizedCode : null);\n return translatedCountryName;\n });\n};\n\nexport default useCountryCapital;\n","/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoCountryVariant {\n ISO = 'iso',\n NAME = 'name',\n PHONE_CODE = 'phone_code',\n CAPITAL = 'capital',\n /** deprecated Use any of the other BentoCountry variants instead OR BentoTypography component for custom text */\n CUSTOM = 'custom',\n}\n\nexport enum BentoCountryCode {\n BD = 'BD',\n BE = 'BE',\n BF = 'BF',\n BG = 'BG',\n BA = 'BA',\n BB = 'BB',\n WF = 'WF',\n BL = 'BL',\n BM = 'BM',\n BN = 'BN',\n BO = 'BO',\n BH = 'BH',\n BI = 'BI',\n BJ = 'BJ',\n BT = 'BT',\n JM = 'JM',\n BV = 'BV',\n BW = 'BW',\n WS = 'WS',\n BQ = 'BQ',\n BR = 'BR',\n BS = 'BS',\n JE = 'JE',\n BY = 'BY',\n BZ = 'BZ',\n RU = 'RU',\n RW = 'RW',\n RS = 'RS',\n TL = 'TL',\n RE = 'RE',\n TM = 'TM',\n TJ = 'TJ',\n RO = 'RO',\n TK = 'TK',\n GW = 'GW',\n GU = 'GU',\n GT = 'GT',\n GS = 'GS',\n GR = 'GR',\n GQ = 'GQ',\n GP = 'GP',\n JP = 'JP',\n GY = 'GY',\n GG = 'GG',\n GF = 'GF',\n GE = 'GE',\n GD = 'GD',\n GB = 'GB',\n GA = 'GA',\n SV = 'SV',\n GN = 'GN',\n GM = 'GM',\n GL = 'GL',\n GI = 'GI',\n GH = 'GH',\n OM = 'OM',\n TN = 'TN',\n JO = 'JO',\n HR = 'HR',\n HT = 'HT',\n HU = 'HU',\n HK = 'HK',\n HN = 'HN',\n HM = 'HM',\n VE = 'VE',\n PR = 'PR',\n PS = 'PS',\n PW = 'PW',\n PT = 'PT',\n SJ = 'SJ',\n PY = 'PY',\n IQ = 'IQ',\n PA = 'PA',\n PF = 'PF',\n PG = 'PG',\n PE = 'PE',\n PK = 'PK',\n PH = 'PH',\n PN = 'PN',\n PL = 'PL',\n PM = 'PM',\n ZM = 'ZM',\n EH = 'EH',\n EE = 'EE',\n EG = 'EG',\n ZA = 'ZA',\n EC = 'EC',\n IT = 'IT',\n VN = 'VN',\n SB = 'SB',\n ET = 'ET',\n SO = 'SO',\n ZW = 'ZW',\n SA = 'SA',\n ES = 'ES',\n ER = 'ER',\n ME = 'ME',\n MD = 'MD',\n MG = 'MG',\n MF = 'MF',\n MA = 'MA',\n MC = 'MC',\n UZ = 'UZ',\n MM = 'MM',\n ML = 'ML',\n MO = 'MO',\n MN = 'MN',\n MH = 'MH',\n MK = 'MK',\n MU = 'MU',\n MT = 'MT',\n MW = 'MW',\n MV = 'MV',\n MQ = 'MQ',\n MP = 'MP',\n MS = 'MS',\n MR = 'MR',\n IM = 'IM',\n UG = 'UG',\n TZ = 'TZ',\n MY = 'MY',\n MX = 'MX',\n IL = 'IL',\n FR = 'FR',\n IO = 'IO',\n SH = 'SH',\n FI = 'FI',\n FJ = 'FJ',\n FK = 'FK',\n FM = 'FM',\n FO = 'FO',\n NI = 'NI',\n NL = 'NL',\n NO = 'NO',\n NA = 'NA',\n VU = 'VU',\n NC = 'NC',\n NE = 'NE',\n NF = 'NF',\n NG = 'NG',\n NZ = 'NZ',\n NP = 'NP',\n NR = 'NR',\n NU = 'NU',\n CK = 'CK',\n XK = 'XK',\n CI = 'CI',\n CH = 'CH',\n CO = 'CO',\n CN = 'CN',\n CM = 'CM',\n CL = 'CL',\n CC = 'CC',\n CA = 'CA',\n CG = 'CG',\n CF = 'CF',\n CD = 'CD',\n CZ = 'CZ',\n CY = 'CY',\n CX = 'CX',\n CR = 'CR',\n CW = 'CW',\n CV = 'CV',\n CU = 'CU',\n SZ = 'SZ',\n SY = 'SY',\n SX = 'SX',\n KG = 'KG',\n KE = 'KE',\n SS = 'SS',\n SR = 'SR',\n KI = 'KI',\n KH = 'KH',\n KN = 'KN',\n KM = 'KM',\n ST = 'ST',\n SK = 'SK',\n KR = 'KR',\n SI = 'SI',\n KP = 'KP',\n KW = 'KW',\n SN = 'SN',\n SM = 'SM',\n SL = 'SL',\n SC = 'SC',\n KZ = 'KZ',\n KY = 'KY',\n SG = 'SG',\n SE = 'SE',\n SD = 'SD',\n DO = 'DO',\n DM = 'DM',\n DJ = 'DJ',\n DK = 'DK',\n VG = 'VG',\n DE = 'DE',\n YE = 'YE',\n DZ = 'DZ',\n US = 'US',\n UY = 'UY',\n YT = 'YT',\n UM = 'UM',\n LB = 'LB',\n LC = 'LC',\n LA = 'LA',\n TV = 'TV',\n TW = 'TW',\n TT = 'TT',\n TR = 'TR',\n LK = 'LK',\n LI = 'LI',\n LV = 'LV',\n TO = 'TO',\n LT = 'LT',\n LU = 'LU',\n LR = 'LR',\n LS = 'LS',\n TH = 'TH',\n TF = 'TF',\n TG = 'TG',\n TD = 'TD',\n TC = 'TC',\n LY = 'LY',\n VA = 'VA',\n VC = 'VC',\n AE = 'AE',\n AD = 'AD',\n AG = 'AG',\n AF = 'AF',\n AI = 'AI',\n VI = 'VI',\n IS = 'IS',\n IR = 'IR',\n AM = 'AM',\n AL = 'AL',\n AO = 'AO',\n AQ = 'AQ',\n AS = 'AS',\n AR = 'AR',\n AU = 'AU',\n AT = 'AT',\n AW = 'AW',\n IN = 'IN',\n AX = 'AX',\n AZ = 'AZ',\n IE = 'IE',\n ID = 'ID',\n UA = 'UA',\n QA = 'QA',\n MZ = 'MZ',\n UNKNOWN = 'ZZ',\n}\n\nexport interface BentoCountryProps {\n /**\n * Two character country code ([ISO 3166-1 alpha-2 format](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).\n */\n code?: BentoCountryCode | `${BentoCountryCode}`;\n\n /**\n * Custom label text.\n */\n label?: string;\n\n /**\n * Which label variant to display.\n * @values iso, name, phone_code, capital\n */\n variant?: BentoCountryVariant | `${BentoCountryVariant}`;\n}\n"],"names":["useCountryCapital","code","locale","useFallback","countryCode","ref","languageLocale","computed","normalizedCode","_a","_b","messages","_c","BentoCountryVariant","BentoCountryCode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GASaA,IAAoB,CAACC,GAAwBC,GAA0BC,IAAc,OAAS;AACjG,QAAAC,IAAcC,EAAIJ,CAAI,GACtBK,IAAiBD,EAAIH,CAAM;AACjC,SAAOK,EAAiB,MAAM;;AACpB,UAAAC,KAAiBC,IAAAL,KAAA,gBAAAA,EAAa,UAAb,gBAAAK,EAAoB;AAKpC,aAHHC,IAAAC,EAASL,EAAe,KAAK,MAA7B,gBAAAI,EAAiCF,SACjCI,IAAAD,EAAS,OAAO,MAAhB,gBAAAC,EAAoBJ,QACnBL,IAAcK,IAAiB;AAAA,EAC7B,CACV;AACL;ACjBY,IAAAK,sBAAAA,OACRA,EAAA,MAAM,OACNA,EAAA,OAAO,QACPA,EAAA,aAAa,cACbA,EAAA,UAAU,WAEVA,EAAA,SAAS,UANDA,IAAAA,KAAA,CAAA,CAAA,GASAC,sBAAAA,OACRA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,KAAK,MACLA,EAAA,UAAU,MA3PFA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"currency.DYZr_RDk.js","sources":["../../src/utils/ts/currency/currency-map.ts","../../src/utils/ts/currency/currency.ts","../../src/composables/use-bento-currency/use-bento-currency.ts","../../src/components/currency/currency.types.ts","../../src/components/currency/currency.vue"],"sourcesContent":["export interface CurrencyMap {\n exponent: number;\n currencies: Array<string>;\n}\n\n/**\n * Contains mapping configuration between currency code and exponent for amount in the corresponding currency.\n * https://docs.adyen.com/development-resources/currency-codes\n *\n * @internal\n */\nexport const currencyMap: Array<CurrencyMap> = [\n {\n exponent: 0,\n currencies: [\n 'CVE',\n 'DJF',\n 'GNF',\n 'IDR',\n 'JPY',\n 'KMF',\n 'KRW',\n 'PYG',\n 'RWF',\n 'UGX',\n 'VND',\n 'VUV',\n 'XAF',\n 'XOF',\n 'XPF',\n ],\n },\n {\n exponent: 1,\n currencies: ['MRO'],\n },\n {\n exponent: 3,\n currencies: ['BHD', 'IQD', 'JOD', 'KWD', 'LYD', 'OMR', 'TND'],\n },\n];\n","import { currencyMap, type CurrencyMap } from './currency-map';\nimport { type CurrencyAmount } from './currency.types';\n\n/**\n * Returns exponent for specified currency code that do not adhere to the ISO 4217 standard.\n */\nexport const getNonStandardCurrency = (currency: string): CurrencyMap =>\n currencyMap.find(item => item.currencies.includes(currency));\n\n/**\n * Returns the number of minor units (decimal places) for a given currency.\n * The function uses an internal map for currencies with non-standard decimal places and defaults to 2 for all others.\n *\n * @param currency - The three-letter ISO 4217 currency code (e.g., 'USD', 'JPY').\n * @returns The number of decimal places for the currency.\n *\n * @example\n * getMinorUnitDigits('USD'); // Returns 2\n * getMinorUnitDigits('JPY'); // Returns 0\n */\nexport function getMinorUnitDigits(currency: string): number {\n const exception = getNonStandardCurrency(currency);\n\n return exception?.exponent ?? 2;\n}\n\n/**\n * Converts a currency amount from minor units to major units.\n *\n * @param amount The amount in minor units (e.g., cents).\n * @param currency The three-letter ISO 4217 currency code.\n * @returns The amount in major units (e.g., dollars).\n */\nexport const getNormalizedAmount = (amount: CurrencyAmount['value'], currency: string) =>\n amount / 10 ** getMinorUnitDigits(currency);\n","import { getMinorUnitDigits, getNonStandardCurrency, getNormalizedAmount } from '@/utils/ts/currency';\nimport { useI18n } from '@/utils/ts/i18n';\nimport { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\nimport { type BentoCurrencyISOCode } from '../../components/currency/currency.types';\n\nexport interface UseBentoCurrencyFormatCurrencyOptions {\n currency: `${BentoCurrencyISOCode}`;\n currencySign?: Intl.NumberFormatOptions['currencySign'];\n majorUnits?: boolean;\n}\n\n/**\n * A composable that returns a fully formatted and localized currency string.\n * It enforces the format `[localized number][non-breaking space][ISO code]`.\n *\n * @remarks\n * The formatting process involves several steps:\n * 1. It safely resolves the input `value`, whether it's from a prop or a slot, into a valid number.\n *\n * 2. If `majorUnits` is false, it converts the amount from minor units to major units\n * (e.g., cents to dollars) by dividing by 10 to the power of the currency's\n * decimal places (the \"exponent\"). For example, `12345 / (10 ** 2)` becomes `123.45`.\n *\n * 3. It determines the correct number of decimal places, respecting any non-standard\n * currency exceptions.\n *\n * 4. It uses `vue-i18n` to format the number with the correct sign placement and decimal/thousand\n * separators for the current locale, then manually reconstructs the string to ensure\n * the ISO code is always at the end.\n *\n * @returns An object with a function to format the currency string.\n */\nexport function useBentoCurrency() {\n const { n } = useI18n();\n\n const DEFAULT_CURRENCY = 'USD';\n const DEFAULT_CURRENCY_SIGN = 'standard';\n\n /**\n * Formats a given amount into a localized currency string with a specific structure.\n *\n * This function ensures that the output format is always `[localized number][non-breaking space][ISO code]`,\n * providing a consistent and predictable currency representation across different locales.\n *\n * @param amount The numeric value to be formatted. If `formatOptions.majorUnits` is `false` or undefined,\n * this value is treated as being in the currency's minor units (e.g., cents).\n * @param formatOptions An optional object containing options for currency formatting.\n * - `currency`: The 3-letter ISO currency code (e.g., `'USD'`, `'EUR'`). Defaults to `'USD'`.\n * - `currencySign`: The currency sign to use. Can be `'standard'` or `'accounting'`. Defaults to `'standard'`. In `accounting` mode, negative values are typically wrapped in parentheses.\n * - `majorUnits`: Set to `true` if the `amount` is already in major units (e.g., dollars instead of cents). Defaults to `false`.\n *\n * @returns A fully formatted and localized currency string (e.g., \"1,234.56 EUR\").\n */\n const formatCurrency = (amount: string | number, formatOptions?: UseBentoCurrencyFormatCurrencyOptions): string => {\n const targetCurrency = formatOptions?.currency ?? DEFAULT_CURRENCY;\n\n // Parse and Fallback\n const parsedValue = Number(amount) || 0;\n\n if (isNaN(Number(amount))) {\n printDevelopmentWarning(\n 'The value provided is not a valid string with numbers or valid number. Falling back to 0.'\n );\n }\n\n // Normalize Amount\n const normalizedAmount = formatOptions?.majorUnits\n ? parsedValue\n : getNormalizedAmount(parsedValue, targetCurrency);\n\n // Determine Precision\n const fractionDigits = getNonStandardCurrency(targetCurrency)?.exponent ?? getMinorUnitDigits(targetCurrency);\n\n // Format with Locale\n const localizedCurrencyString = n(normalizedAmount, {\n style: 'currency',\n currency: targetCurrency,\n currencySign: formatOptions?.currencySign ?? DEFAULT_CURRENCY_SIGN,\n currencyDisplay: 'code',\n minimumFractionDigits: fractionDigits,\n maximumFractionDigits: fractionDigits,\n });\n\n // Enforce Standard Format: `[number][nbsp][code]`\n const isoCodeRegex = new RegExp(`\\\\s*${targetCurrency}\\\\s*`);\n const numberPart = localizedCurrencyString.replace(isoCodeRegex, '');\n\n return `${numberPart}\\u00A0${targetCurrency}`;\n };\n\n return {\n formatCurrency,\n };\n}\n","export interface BentoCurrencyProps {\n /**\n * Currency code based on the ISO 4217 standard\n */\n currency?: BentoCurrencyISOCode | `${BentoCurrencyISOCode}`;\n\n /**\n * Disable the default typography for the component. Only use this when the component is inside another typography component.\n */\n disableTypography?: boolean;\n\n /**\n * Accepts currency value in major units instead of minor ones\n */\n majorUnits?: boolean;\n\n /**\n * Currency value to be formatted\n */\n value?: number;\n\n /**\n * Determines how the currency symbol and negative values are displayed.\n * This is only applicable to certain countries such as `en-US`.\n *\n * - `'standard'`: Default format (e.g., `-1,234.56 USD`).\n * - `'accounting'`: Uses accounting conventions, such as wrapping negative numbers in parentheses (e.g., `(1,234.56) USD`).\n *\n * @default 'standard'\n */\n currencySign?: Intl.NumberFormatOptions['currencySign'];\n}\n\nexport enum BentoCurrencyISOCode {\n AED = 'AED',\n AFA = 'AFA',\n ALL = 'ALL',\n AMD = 'AMD',\n ANG = 'ANG',\n AOA = 'AOA',\n ARS = 'ARS',\n AUD = 'AUD',\n AWG = 'AWG',\n AZN = 'AZN',\n BAM = 'BAM',\n BBD = 'BBD',\n BDT = 'BDT',\n BEF = 'BEF',\n BGN = 'BGN',\n BHD = 'BHD',\n BIF = 'BIF',\n BMD = 'BMD',\n BND = 'BND',\n BOB = 'BOB',\n BRL = 'BRL',\n BSD = 'BSD',\n BTC = 'BTC',\n BTN = 'BTN',\n BWP = 'BWP',\n BYR = 'BYR',\n BZD = 'BZD',\n CAD = 'CAD',\n CDF = 'CDF',\n CHF = 'CHF',\n CLF = 'CLF',\n CLP = 'CLP',\n CNY = 'CNY',\n COP = 'COP',\n CRC = 'CRC',\n CUC = 'CUC',\n CVE = 'CVE',\n CZK = 'CZK',\n DEM = 'DEM',\n DJF = 'DJF',\n DKK = 'DKK',\n DOP = 'DOP',\n DZD = 'DZD',\n EEK = 'EEK',\n EGP = 'EGP',\n ERN = 'ERN',\n ETB = 'ETB',\n EUR = 'EUR',\n FJD = 'FJD',\n FKP = 'FKP',\n GBP = 'GBP',\n GEL = 'GEL',\n GHS = 'GHS',\n GIP = 'GIP',\n GMD = 'GMD',\n GNF = 'GNF',\n GRD = 'GRD',\n GTQ = 'GTQ',\n GYD = 'GYD',\n HKD = 'HKD',\n HNL = 'HNL',\n HRK = 'HRK',\n HTG = 'HTG',\n HUF = 'HUF',\n IDR = 'IDR',\n ILS = 'ILS',\n INR = 'INR',\n IQD = 'IQD',\n IRR = 'IRR',\n ISK = 'ISK',\n ITL = 'ITL',\n JMD = 'JMD',\n JOD = 'JOD',\n JPY = 'JPY',\n KES = 'KES',\n KGS = 'KGS',\n KHR = 'KHR',\n KMF = 'KMF',\n KPW = 'KPW',\n KRW = 'KRW',\n KWD = 'KWD',\n KYD = 'KYD',\n KZT = 'KZT',\n LAK = 'LAK',\n LBP = 'LBP',\n LKR = 'LKR',\n LRD = 'LRD',\n LSL = 'LSL',\n LTC = 'LTC',\n LTL = 'LTL',\n LVL = 'LVL',\n LYD = 'LYD',\n MAD = 'MAD',\n MDL = 'MDL',\n MGA = 'MGA',\n MKD = 'MKD',\n MMK = 'MMK',\n MNT = 'MNT',\n MOP = 'MOP',\n MRO = 'MRO',\n MRU = 'MRU',\n MUR = 'MUR',\n MVR = 'MVR',\n MWK = 'MWK',\n MXN = 'MXN',\n MYR = 'MYR',\n MZM = 'MZM',\n NAD = 'NAD',\n NGN = 'NGN',\n NIO = 'NIO',\n NOK = 'NOK',\n NPR = 'NPR',\n NZD = 'NZD',\n OMR = 'OMR',\n PAB = 'PAB',\n PEN = 'PEN',\n PGK = 'PGK',\n PHP = 'PHP',\n PKR = 'PKR',\n PLN = 'PLN',\n PYG = 'PYG',\n QAR = 'QAR',\n RON = 'RON',\n RSD = 'RSD',\n RUB = 'RUB',\n RWF = 'RWF',\n SAR = 'SAR',\n SBD = 'SBD',\n SCR = 'SCR',\n SDG = 'SDG',\n SEK = 'SEK',\n SGD = 'SGD',\n SHP = 'SHP',\n SKK = 'SKK',\n SLL = 'SLL',\n SOS = 'SOS',\n SRD = 'SRD',\n SSP = 'SSP',\n STD = 'STD',\n SVC = 'SVC',\n SYP = 'SYP',\n SZL = 'SZL',\n THB = 'THB',\n TJS = 'TJS',\n TMT = 'TMT',\n TND = 'TND',\n TOP = 'TOP',\n TRY = 'TRY',\n TTD = 'TTD',\n TWD = 'TWD',\n TZS = 'TZS',\n UAH = 'UAH',\n UGX = 'UGX',\n USD = 'USD',\n UYU = 'UYU',\n UZS = 'UZS',\n VEF = 'VEF',\n VND = 'VND',\n VUV = 'VUV',\n WST = 'WST',\n XAF = 'XAF',\n XCD = 'XCD',\n XDR = 'XDR',\n XOF = 'XOF',\n XPF = 'XPF',\n YER = 'YER',\n ZAR = 'ZAR',\n ZMK = 'ZMK',\n ZWL = 'ZWL',\n}\n","<template>\n <div class=\"b-currency\">\n <bento-typography v-if=\"!disableTypography\" class=\"b-currency__amount\" el=\"span\" variant=\"body\" strong>\n {{ formattedCurrency }}\n </bento-typography>\n\n <template v-else>{{ formattedCurrency }}</template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { useBentoCurrency } from '@/composables/use-bento-currency/use-bento-currency';\n import { deprecate } from '@/utils/ts/deprecate';\n import { getSlotText } from '@/utils/ts/get-slot-text';\n import { BentoCurrencyISOCode, type BentoCurrencyProps } from './currency.types';\n\n const slots = useSlots();\n\n const props = defineProps({\n currency: { default: BentoCurrencyISOCode.EUR },\n disableTypography: { type: Boolean, default: false },\n majorUnits: { type: Boolean, default: false },\n value: { default: undefined },\n currencySign: { default: 'standard' }\n});\n\n const { formatCurrency } = useBentoCurrency();\n\n const formattedCurrency = computed(() => {\n const rawCurrencyValue = props.value ?? getSlotText(slots)('default');\n\n return formatCurrency(rawCurrencyValue, {\n currency: props.currency,\n currencySign: props.currencySign,\n majorUnits: props.majorUnits,\n });\n });\n\n onMounted(() => {\n if (getSlotText(slots)('default')) {\n deprecate(\n 'BentoCurrency \"default\" slot',\n `The use of \"default\" slot in \"BentoCurrency\" is no longer supported as it causes issues with dynamic content.\n Use the \"value\" property instead.\n <bento-currency :value=\"12345.67\" currency=\"USD\" major-units=\"false\" />`,\n '2.0.0'\n );\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * A Currency component is used to display a formatted currency value.\n *\n * @example\n * import { BentoCurrency, BentoCurrencyISOCode } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCurrency },\n * template: `\n * <bento-currency\n * :currency=\"BentoCurrencyISOCode.USD\"\n * :value=\"76.33\"\n * />\n * `\n * }\n */\n export default {\n name: 'bento-currency',\n i18n: {}, // required to enable E2E to run as they do not have vue-i18n set up\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./currency.scss\" />\n"],"names":["currencyMap","getNonStandardCurrency","currency","item","getMinorUnitDigits","exception","getNormalizedAmount","amount","useBentoCurrency","n","useI18n","DEFAULT_CURRENCY","DEFAULT_CURRENCY_SIGN","formatOptions","targetCurrency","parsedValue","printDevelopmentWarning","normalizedAmount","fractionDigits","_a","localizedCurrencyString","isoCodeRegex","BentoCurrencyISOCode","BentoCurrencyISOCode2","__default__","slots","useSlots","formatCurrency","formattedCurrency","computed","rawCurrencyValue","props","getSlotText","onMounted","deprecate"],"mappings":"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AAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OAzKQA,IAAAD,KAAA,CAAA,CAAA;ACqCR,MAAAE,IAAA;AAAA,EAAe,MAAA;AAAA,EACL,MAAA,CAAA;AAAA;AAEV;;;;;;;;;;iBAvDAC,IAAAC,EAAA,GAUA,EAAA,gBAAAC,EAAA,IAAAnB,EAAA,GAEAoB,IAAAC,EAAA,MAAA;AACI,YAAAC,IAAAC,EAAA,SAAAC,EAAAP,CAAA,EAAA,SAAA;AAEA,aAAAE,EAAAG,GAAA;AAAA,QAAwC,UAAAC,EAAA;AAAA,QACpB,cAAAA,EAAA;AAAA,QACI,YAAAA,EAAA;AAAA,MACF,CAAA;AAAA,IACrB,CAAA;AAGL,WAAAE,EAAA,MAAA;AACI,MAAAD,EAAAP,CAAA,EAAA,SAAA,KACIS;AAAA,QAAA;AAAA,QACI;AAAA;AAAA;AAAA,QACA;AAAA,MAGA;AAAA,IAER,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"currency.DYZr_RDk.js","sources":["../../src/utils/ts/currency/currency-map.ts","../../src/utils/ts/currency/currency.ts","../../src/composables/use-bento-currency/use-bento-currency.ts","../../src/components/currency/currency.types.ts","../../src/components/currency/currency.vue"],"sourcesContent":["export interface CurrencyMap {\n exponent: number;\n currencies: Array<string>;\n}\n\n/**\n * Contains mapping configuration between currency code and exponent for amount in the corresponding currency.\n * https://docs.adyen.com/development-resources/currency-codes\n *\n * @internal\n */\nexport const currencyMap: Array<CurrencyMap> = [\n {\n exponent: 0,\n currencies: [\n 'CVE',\n 'DJF',\n 'GNF',\n 'IDR',\n 'JPY',\n 'KMF',\n 'KRW',\n 'PYG',\n 'RWF',\n 'UGX',\n 'VND',\n 'VUV',\n 'XAF',\n 'XOF',\n 'XPF',\n ],\n },\n {\n exponent: 1,\n currencies: ['MRO'],\n },\n {\n exponent: 3,\n currencies: ['BHD', 'IQD', 'JOD', 'KWD', 'LYD', 'OMR', 'TND'],\n },\n];\n","import { currencyMap, type CurrencyMap } from './currency-map';\nimport { type CurrencyAmount } from './currency.types';\n\n/**\n * Returns exponent for specified currency code that do not adhere to the ISO 4217 standard.\n */\nexport const getNonStandardCurrency = (currency: string): CurrencyMap =>\n currencyMap.find(item => item.currencies.includes(currency));\n\n/**\n * Returns the number of minor units (decimal places) for a given currency.\n * The function uses an internal map for currencies with non-standard decimal places and defaults to 2 for all others.\n *\n * @param currency - The three-letter ISO 4217 currency code (e.g., 'USD', 'JPY').\n * @returns The number of decimal places for the currency.\n *\n * @example\n * getMinorUnitDigits('USD'); // Returns 2\n * getMinorUnitDigits('JPY'); // Returns 0\n */\nexport function getMinorUnitDigits(currency: string): number {\n const exception = getNonStandardCurrency(currency);\n\n return exception?.exponent ?? 2;\n}\n\n/**\n * Converts a currency amount from minor units to major units.\n *\n * @param amount The amount in minor units (e.g., cents).\n * @param currency The three-letter ISO 4217 currency code.\n * @returns The amount in major units (e.g., dollars).\n */\nexport const getNormalizedAmount = (amount: CurrencyAmount['value'], currency: string) =>\n amount / 10 ** getMinorUnitDigits(currency);\n","import { getMinorUnitDigits, getNonStandardCurrency, getNormalizedAmount } from '@/utils/ts/currency';\nimport { useI18n } from '@/utils/ts/i18n';\nimport { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\nimport { type BentoCurrencyISOCode } from '../../components/currency/currency.types';\n\nexport interface UseBentoCurrencyFormatCurrencyOptions {\n currency: `${BentoCurrencyISOCode}`;\n currencySign?: Intl.NumberFormatOptions['currencySign'];\n majorUnits?: boolean;\n}\n\n/**\n * A composable that returns a fully formatted and localized currency string.\n * It enforces the format `[localized number][non-breaking space][ISO code]`.\n *\n * @remarks\n * The formatting process involves several steps:\n * 1. It safely resolves the input `value`, whether it's from a prop or a slot, into a valid number.\n *\n * 2. If `majorUnits` is false, it converts the amount from minor units to major units\n * (e.g., cents to dollars) by dividing by 10 to the power of the currency's\n * decimal places (the \"exponent\"). For example, `12345 / (10 ** 2)` becomes `123.45`.\n *\n * 3. It determines the correct number of decimal places, respecting any non-standard\n * currency exceptions.\n *\n * 4. It uses `vue-i18n` to format the number with the correct sign placement and decimal/thousand\n * separators for the current locale, then manually reconstructs the string to ensure\n * the ISO code is always at the end.\n *\n * @returns An object with a function to format the currency string.\n */\nexport function useBentoCurrency() {\n const { n } = useI18n();\n\n const DEFAULT_CURRENCY = 'USD';\n const DEFAULT_CURRENCY_SIGN = 'standard';\n\n /**\n * Formats a given amount into a localized currency string with a specific structure.\n *\n * This function ensures that the output format is always `[localized number][non-breaking space][ISO code]`,\n * providing a consistent and predictable currency representation across different locales.\n *\n * @param amount The numeric value to be formatted. If `formatOptions.majorUnits` is `false` or undefined,\n * this value is treated as being in the currency's minor units (e.g., cents).\n * @param formatOptions An optional object containing options for currency formatting.\n * - `currency`: The 3-letter ISO currency code (e.g., `'USD'`, `'EUR'`). Defaults to `'USD'`.\n * - `currencySign`: The currency sign to use. Can be `'standard'` or `'accounting'`. Defaults to `'standard'`. In `accounting` mode, negative values are typically wrapped in parentheses.\n * - `majorUnits`: Set to `true` if the `amount` is already in major units (e.g., dollars instead of cents). Defaults to `false`.\n *\n * @returns A fully formatted and localized currency string (e.g., \"1,234.56 EUR\").\n */\n const formatCurrency = (amount: string | number, formatOptions?: UseBentoCurrencyFormatCurrencyOptions): string => {\n const targetCurrency = formatOptions?.currency ?? DEFAULT_CURRENCY;\n\n // Parse and Fallback\n const parsedValue = Number(amount) || 0;\n\n if (isNaN(Number(amount))) {\n printDevelopmentWarning(\n 'The value provided is not a valid string with numbers or valid number. Falling back to 0.'\n );\n }\n\n // Normalize Amount\n const normalizedAmount = formatOptions?.majorUnits\n ? parsedValue\n : getNormalizedAmount(parsedValue, targetCurrency);\n\n // Determine Precision\n const fractionDigits = getNonStandardCurrency(targetCurrency)?.exponent ?? getMinorUnitDigits(targetCurrency);\n\n // Format with Locale\n const localizedCurrencyString = n(normalizedAmount, {\n style: 'currency',\n currency: targetCurrency,\n currencySign: formatOptions?.currencySign ?? DEFAULT_CURRENCY_SIGN,\n currencyDisplay: 'code',\n minimumFractionDigits: fractionDigits,\n maximumFractionDigits: fractionDigits,\n });\n\n // Enforce Standard Format: `[number][nbsp][code]`\n const isoCodeRegex = new RegExp(`\\\\s*${targetCurrency}\\\\s*`);\n const numberPart = localizedCurrencyString.replace(isoCodeRegex, '');\n\n return `${numberPart}\\u00A0${targetCurrency}`;\n };\n\n return {\n formatCurrency,\n };\n}\n","export interface BentoCurrencyProps {\n /**\n * Currency code based on the ISO 4217 standard\n */\n currency?: BentoCurrencyISOCode | `${BentoCurrencyISOCode}`;\n\n /**\n * Disable the default typography for the component. Only use this when the component is inside another typography component.\n */\n disableTypography?: boolean;\n\n /**\n * Accepts currency value in major units instead of minor ones\n */\n majorUnits?: boolean;\n\n /**\n * Currency value to be formatted\n */\n value?: number;\n\n /**\n * Determines how the currency symbol and negative values are displayed.\n * This is only applicable to certain countries such as `en-US`.\n *\n * - `'standard'`: Default format (e.g., `-1,234.56 USD`).\n * - `'accounting'`: Uses accounting conventions, such as wrapping negative numbers in parentheses (e.g., `(1,234.56) USD`).\n *\n * @default 'standard'\n */\n currencySign?: Intl.NumberFormatOptions['currencySign'];\n}\n\nexport enum BentoCurrencyISOCode {\n AED = 'AED',\n AFA = 'AFA',\n ALL = 'ALL',\n AMD = 'AMD',\n ANG = 'ANG',\n AOA = 'AOA',\n ARS = 'ARS',\n AUD = 'AUD',\n AWG = 'AWG',\n AZN = 'AZN',\n BAM = 'BAM',\n BBD = 'BBD',\n BDT = 'BDT',\n BEF = 'BEF',\n BGN = 'BGN',\n BHD = 'BHD',\n BIF = 'BIF',\n BMD = 'BMD',\n BND = 'BND',\n BOB = 'BOB',\n BRL = 'BRL',\n BSD = 'BSD',\n BTC = 'BTC',\n BTN = 'BTN',\n BWP = 'BWP',\n BYR = 'BYR',\n BZD = 'BZD',\n CAD = 'CAD',\n CDF = 'CDF',\n CHF = 'CHF',\n CLF = 'CLF',\n CLP = 'CLP',\n CNY = 'CNY',\n COP = 'COP',\n CRC = 'CRC',\n CUC = 'CUC',\n CVE = 'CVE',\n CZK = 'CZK',\n DEM = 'DEM',\n DJF = 'DJF',\n DKK = 'DKK',\n DOP = 'DOP',\n DZD = 'DZD',\n EEK = 'EEK',\n EGP = 'EGP',\n ERN = 'ERN',\n ETB = 'ETB',\n EUR = 'EUR',\n FJD = 'FJD',\n FKP = 'FKP',\n GBP = 'GBP',\n GEL = 'GEL',\n GHS = 'GHS',\n GIP = 'GIP',\n GMD = 'GMD',\n GNF = 'GNF',\n GRD = 'GRD',\n GTQ = 'GTQ',\n GYD = 'GYD',\n HKD = 'HKD',\n HNL = 'HNL',\n HRK = 'HRK',\n HTG = 'HTG',\n HUF = 'HUF',\n IDR = 'IDR',\n ILS = 'ILS',\n INR = 'INR',\n IQD = 'IQD',\n IRR = 'IRR',\n ISK = 'ISK',\n ITL = 'ITL',\n JMD = 'JMD',\n JOD = 'JOD',\n JPY = 'JPY',\n KES = 'KES',\n KGS = 'KGS',\n KHR = 'KHR',\n KMF = 'KMF',\n KPW = 'KPW',\n KRW = 'KRW',\n KWD = 'KWD',\n KYD = 'KYD',\n KZT = 'KZT',\n LAK = 'LAK',\n LBP = 'LBP',\n LKR = 'LKR',\n LRD = 'LRD',\n LSL = 'LSL',\n LTC = 'LTC',\n LTL = 'LTL',\n LVL = 'LVL',\n LYD = 'LYD',\n MAD = 'MAD',\n MDL = 'MDL',\n MGA = 'MGA',\n MKD = 'MKD',\n MMK = 'MMK',\n MNT = 'MNT',\n MOP = 'MOP',\n MRO = 'MRO',\n MRU = 'MRU',\n MUR = 'MUR',\n MVR = 'MVR',\n MWK = 'MWK',\n MXN = 'MXN',\n MYR = 'MYR',\n MZM = 'MZM',\n NAD = 'NAD',\n NGN = 'NGN',\n NIO = 'NIO',\n NOK = 'NOK',\n NPR = 'NPR',\n NZD = 'NZD',\n OMR = 'OMR',\n PAB = 'PAB',\n PEN = 'PEN',\n PGK = 'PGK',\n PHP = 'PHP',\n PKR = 'PKR',\n PLN = 'PLN',\n PYG = 'PYG',\n QAR = 'QAR',\n RON = 'RON',\n RSD = 'RSD',\n RUB = 'RUB',\n RWF = 'RWF',\n SAR = 'SAR',\n SBD = 'SBD',\n SCR = 'SCR',\n SDG = 'SDG',\n SEK = 'SEK',\n SGD = 'SGD',\n SHP = 'SHP',\n SKK = 'SKK',\n SLL = 'SLL',\n SOS = 'SOS',\n SRD = 'SRD',\n SSP = 'SSP',\n STD = 'STD',\n SVC = 'SVC',\n SYP = 'SYP',\n SZL = 'SZL',\n THB = 'THB',\n TJS = 'TJS',\n TMT = 'TMT',\n TND = 'TND',\n TOP = 'TOP',\n TRY = 'TRY',\n TTD = 'TTD',\n TWD = 'TWD',\n TZS = 'TZS',\n UAH = 'UAH',\n UGX = 'UGX',\n USD = 'USD',\n UYU = 'UYU',\n UZS = 'UZS',\n VEF = 'VEF',\n VND = 'VND',\n VUV = 'VUV',\n WST = 'WST',\n XAF = 'XAF',\n XCD = 'XCD',\n XDR = 'XDR',\n XOF = 'XOF',\n XPF = 'XPF',\n YER = 'YER',\n ZAR = 'ZAR',\n ZMK = 'ZMK',\n ZWL = 'ZWL',\n}\n","<template>\n <div class=\"b-currency\">\n <bento-typography v-if=\"!disableTypography\" class=\"b-currency__amount\" el=\"span\" variant=\"body\" strong>\n {{ formattedCurrency }}\n </bento-typography>\n\n <template v-else>{{ formattedCurrency }}</template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { useBentoCurrency } from '@/composables/use-bento-currency/use-bento-currency';\n import { deprecate } from '@/utils/ts/deprecate';\n import { getSlotText } from '@/utils/ts/get-slot-text';\n import { BentoCurrencyISOCode, type BentoCurrencyProps } from './currency.types';\n\n const slots = useSlots();\n\n const props = defineProps({\n currency: { default: BentoCurrencyISOCode.EUR },\n disableTypography: { type: Boolean, default: false },\n majorUnits: { type: Boolean, default: false },\n value: { default: undefined },\n currencySign: { default: 'standard' }\n});\n\n const { formatCurrency } = useBentoCurrency();\n\n const formattedCurrency = computed(() => {\n const rawCurrencyValue = props.value ?? getSlotText(slots)('default');\n\n return formatCurrency(rawCurrencyValue, {\n currency: props.currency,\n currencySign: props.currencySign,\n majorUnits: props.majorUnits,\n });\n });\n\n onMounted(() => {\n if (getSlotText(slots)('default')) {\n deprecate(\n 'BentoCurrency \"default\" slot',\n `The use of \"default\" slot in \"BentoCurrency\" is no longer supported as it causes issues with dynamic content.\n Use the \"value\" property instead.\n <bento-currency :value=\"12345.67\" currency=\"USD\" major-units=\"false\" />`,\n '2.0.0'\n );\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * A Currency component is used to display a formatted currency value.\n *\n * @example\n * import { BentoCurrency, BentoCurrencyISOCode } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCurrency },\n * template: `\n * <bento-currency\n * :currency=\"BentoCurrencyISOCode.USD\"\n * :value=\"76.33\"\n * />\n * `\n * }\n */\n export default {\n name: 'bento-currency',\n i18n: {}, // required to enable E2E to run as they do not have vue-i18n set up\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./currency.scss\" />\n"],"names":["currencyMap","getNonStandardCurrency","currency","item","getMinorUnitDigits","exception","getNormalizedAmount","amount","useBentoCurrency","n","useI18n","DEFAULT_CURRENCY","DEFAULT_CURRENCY_SIGN","formatOptions","targetCurrency","parsedValue","printDevelopmentWarning","normalizedAmount","fractionDigits","_a","localizedCurrencyString","isoCodeRegex","BentoCurrencyISOCode","BentoCurrencyISOCode2","__default__","slots","useSlots","formatCurrency","formattedCurrency","computed","rawCurrencyValue","props","getSlotText","onMounted","deprecate"],"mappings":"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AAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OACAA,EAAA,MAAA,OAzKQA,IAAAD,KAAA,CAAA,CAAA;ACqCR,MAAAE,IAAA;AAAA,EAAe,MAAA;AAAA,EACL,MAAA,CAAA;AAAA;AAEV;;;;;;;;;;iBAvDAC,IAAAC,EAAA,GAUA,EAAA,gBAAAC,EAAA,IAAAnB,EAAA,GAEAoB,IAAAC,EAAA,MAAA;AACI,YAAAC,IAAAC,EAAA,SAAAC,EAAAP,CAAA,EAAA,SAAA;AAEA,aAAAE,EAAAG,GAAA;AAAA,QAAwC,UAAAC,EAAA;AAAA,QACpB,cAAAA,EAAA;AAAA,QACI,YAAAA,EAAA;AAAA,MACF,CAAA;AAAA,IACrB,CAAA;AAGL,WAAAE,EAAA,MAAA;AACI,MAAAD,EAAAP,CAAA,EAAA,SAAA,KACIS;AAAA,QAAA;AAAA,QACI;AAAA;AAAA;AAAA,QACA;AAAA,MAGA;AAAA,IAER,CAAA;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid-template.keys.VezYtHtM.js","sources":["../../src/templates/data-grid-template/data-grid-template.keys.ts"],"sourcesContent":["export const DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY = Symbol('data-grid-template injection key');\n"],"names":["DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY"],"mappings":"AAAO,MAAMA,2BAAmD,kCAAkC;"}
1
+ {"version":3,"file":"data-grid-template.keys.VezYtHtM.js","sources":["../../src/templates/data-grid-template/data-grid-template.keys.ts"],"sourcesContent":["export const DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY = Symbol('data-grid-template injection key');\n"],"names":["DATA_GRID_REGISTER_TEMPLATE_INJECTION_KEY"],"mappings":"AAAa,MAAAA,2BAAmD,kCAAkC;"}