{"version":3,"sources":["../../../node_modules/@paypalcorp/pp-react-tooltip/dist/@paypalcorp/pp-react-tooltip.esm.js","../node_modules/@checkout/react-components/dist/legacy/styles/variables.js","../../../node_modules/@paypalcorp/pp-react-badge/dist/@paypalcorp/pp-react-badge.esm.js"],"names":["tooltip","tooltipOrigin","styles","Tooltip","_ref","_clsx","tooltipWindow","containerPos","scrollX","scrollY","width","height","originWidth","originHeight","originPos","maxWidth","iconSpacing","caretWidth","caretSpaceHorizontal","spacingOffset","tooltipIconSize","_ref$name","name","description","_ref$screenReaderText","screenReaderText","position","verifiedIcon","windowId","className","triggerClassName","tooltipClassName","containerRef","onOpen","onClose","imageElement","_ref$imagePosition","imagePosition","theme","wrapperRef","tooltipOriginRef","tooltipRef","_theme","isThemeV2","isTouchDevice","window","navigator","maxTouchPoints","msMaxTouchPoints","noop","_useState","isOpen","currentEvent","_useState2","state","setState","getWrapperCurrent","w","current","setTooltipPosition","top","left","_ref2","_ref3","offsetTop","offsetLeft","style","concat","selfPosition","topCenterX","topCenterY","positionTopCenter","boundary","getBoundingClientRect","classList","add","right","sideShift","offsetY","offsetX","setOpen","evt","stopPropagation","type","clearOpen","windowEl","removeEventListener","positionTooltip","containerElm","providedWindow","document","getElementById","pos","bottom","innerWidth","documentElement","clientWidth","innerHeight","clientHeight","getTooltipBoundary","offsetWidth","offsetHeight","pageXOffset","pageYOffset","rootFontSizePx","getComputedStyle","body","getPropertyValue","rootFontSize","parseInt","split","tooltipMaxWidthPx","tooltipMaxWidth","winLeft","winRight","iconLeft","availableLeftSpace","availableRightSpace","halfMaxWidth","availableSpace","currentWidth","setWidth","addEventListener","buttonWidth","leftPosX","leftPosY","positionLeft","rightPosX","rightPosY","positionRight","handleClickOutside","contains","target","handleKey","key","keyCode","TooltipIcon","tooltipOriginClasses","ppvx_tooltip__icon","tooltipClasses","ppvx_tooltip","imagePositionClasses","ppvx_tooltip__image","displayImage","createElement","tooltipNode","createPortal","ref","id","role","onMouseLeave","tooltipSize","onClick","onMouseEnter","relatedTarget","onMouseDown","preventDefault","onFocus","size","PRIMARY_COLOR","ERROR_COLOR","WHITE_COLOR","WARN_COLOR","BUTTON_FOCUSED_COLOR","BORDER_COLOR","FUNDING_SOURCE_LOGO_BORDER_COLOR","SEPARATOR_BORDER_COLOR","INPUT_BORDER_COLOR","INPUT_BORDER_FOCUSED_COLOR","INPUT_BORDER_FOCUSED_COLOR_LIGHT","INPUT_TEXT_COLOR","LABEL_COLOR","ERROR_MESSAGE_BACKGROUND_COLOR","INFO_MESSAGE_BACKGROUND_COLOR","SUCCESS_MESSAGE_BACKGROUND_COLOR","WARN_MESSAGE_BACKGROUND_COLOR","TEXT_DEFAULT_COLOR","TEXT_HEADING_COLOR","TOOLTIP_BACKGROUND_COLOR","TOOLTIP_BORDER_COLOR","BANNER_BACKGROUND_COLOR","Badge","status","decoration","children","rest","svgElement","querySelector","setAttribute","badgeClasses","ppvx_badge","ariaProps","ppvx_badge__icon","tabIndex","badgeWithIcon","includes"],"mappings":"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","file":"js/vendors~PayLater~493df0b3.db8484bd.js","sourcesContent":["import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport React, { useRef, useState, useLayoutEffect } from 'react';\nimport { V2VerifiedIcon, V2QuestionIcon, VerifiedAltIcon, QuestionAltIcon } from '@paypalcorp/pp-react-icons';\nimport { useTheme } from '@paypalcorp/pp-react-theme';\nimport ReactDOM from 'react-dom';\nimport clsx from 'clsx';\nimport '../__generated__/styles/tooltip.css';\nvar styles = {\n \"ppvx_tooltip\": \"ppvx_tooltip___2-8-2\",\n \"ppvx_tooltip__icon\": \"ppvx_tooltip__icon___2-8-2\",\n \"ppvx_tooltip__icon--verified\": \"ppvx_tooltip__icon--verified___2-8-2\",\n \"ppvx_tooltip--position_bottom\": \"ppvx_tooltip--position_bottom___2-8-2\",\n \"ppvx_tooltip--position_left\": \"ppvx_tooltip--position_left___2-8-2\",\n \"ppvx_tooltip--position_right\": \"ppvx_tooltip--position_right___2-8-2\",\n \"ppvx_tooltip--tip_left\": \"ppvx_tooltip--tip_left___2-8-2\",\n \"ppvx_tooltip--tip_right\": \"ppvx_tooltip--tip_right___2-8-2\",\n \"ppvx_tooltip__icon--screenreader\": \"ppvx_tooltip__icon--screenreader___2-8-2\",\n \"ppvx_tooltip__image\": \"ppvx_tooltip__image___2-8-2\",\n \"ppvx_tooltip__image--top-left\": \"ppvx_tooltip__image--top-left___2-8-2\",\n \"ppvx_tooltip__image--top-center\": \"ppvx_tooltip__image--top-center___2-8-2\",\n \"ppvx_tooltip__image--bottom-left\": \"ppvx_tooltip__image--bottom-left___2-8-2\",\n \"ppvx_tooltip__image--bottom-center\": \"ppvx_tooltip__image--bottom-center___2-8-2\",\n \"ppvx_tooltip__icon--svg\": \"ppvx_tooltip__icon--svg___2-8-2\",\n \"ppvx--v2\": \"ppvx--v2___2-8-2\",\n \"ppvx--v1\": \"ppvx--v1___2-8-2\",\n \"ppvx_tooltip__svg\": \"ppvx_tooltip__svg___2-8-2\"\n};\nvar tooltip;\nvar tooltipOrigin;\n/* eslint-disable complexity */\n\nvar Tooltip = function Tooltip(_ref) {\n var _clsx;\n\n var _ref$name = _ref.name,\n name = _ref$name === void 0 ? 'Tooltip' : _ref$name,\n description = _ref.description,\n _ref$screenReaderText = _ref.screenReaderText,\n screenReaderText = _ref$screenReaderText === void 0 ? name : _ref$screenReaderText,\n position = _ref.position,\n verifiedIcon = _ref.verifiedIcon,\n windowId = _ref.windowId,\n className = _ref.className,\n triggerClassName = _ref.triggerClassName,\n tooltipClassName = _ref.tooltipClassName,\n containerRef = _ref.containerRef,\n onOpen = _ref.onOpen,\n onClose = _ref.onClose,\n imageElement = _ref.imageElement,\n _ref$imagePosition = _ref.imagePosition,\n imagePosition = _ref$imagePosition === void 0 ? 'top-left' : _ref$imagePosition,\n theme = _ref.theme;\n var wrapperRef = useRef();\n var tooltipOriginRef = useRef();\n var tooltipRef = useRef();\n\n var _theme = useTheme('Tooltip', theme);\n\n var isThemeV2 = _theme && _theme === 'v2';\n var isTouchDevice = typeof window !== 'undefined' && 'ontouchstart' in window || typeof navigator !== 'undefined' && (navigator.maxTouchPoints || navigator.msMaxTouchPoints);\n\n var noop = function noop() {};\n\n var tooltipWindow;\n var containerPos;\n var scrollX;\n var scrollY;\n var width;\n var height;\n var originWidth;\n var originHeight;\n var originPos;\n var maxWidth;\n var iconSpacing;\n var caretWidth;\n var caretHeight;\n var caretSpaceHorizontal;\n var spacingOffset;\n var tooltipIconSize;\n\n var _useState = useState({\n isOpen: false,\n currentEvent: null\n }),\n _useState2 = _slicedToArray(_useState, 2),\n state = _useState2[0],\n setState = _useState2[1];\n\n var isOpen = state.isOpen,\n currentEvent = state.currentEvent;\n\n var getWrapperCurrent = function getWrapperCurrent(w) {\n return (\n /* istanbul ignore next */\n w && w.current ? w.current : null\n );\n };\n\n var setTooltipPosition = function setTooltipPosition(top, left) {\n var containerElm = getWrapperCurrent(containerRef);\n\n var _ref2 = containerElm ? [top - containerPos.top - scrollY, left - containerPos.left - scrollX] : [top, left],\n _ref3 = _slicedToArray(_ref2, 2),\n offsetTop = _ref3[0],\n offsetLeft = _ref3[1];\n\n tooltip.style.top = \"\".concat(offsetTop, \"px\");\n tooltip.style.left = \"\".concat(offsetLeft, \"px\");\n tooltip.style.maxWidth = \"\".concat(maxWidth, \"px\");\n };\n\n var getTooltipBoundary\n /* istanbul ignore next */\n = function getTooltipBoundary\n /* istanbul ignore next */\n () {\n var providedWindow = windowId ? document.getElementById(windowId) : '';\n\n if (providedWindow) {\n var pos = providedWindow.getBoundingClientRect();\n return {\n windowEl: providedWindow,\n top: pos.top,\n right: pos.right,\n bottom: pos.bottom,\n left: pos.left\n };\n }\n\n return {\n windowEl: window,\n top: 0,\n right: window.innerWidth || document.documentElement.clientWidth,\n bottom: window.innerHeight || document.documentElement.clientHeight,\n left: 0\n };\n };\n\n var positionTopCenter = function positionTopCenter() {\n // tooltip bubble starts at bottom left edge of its origin (icon/button)\n // and calculates moves from there:\n var topCenterX = originPos.left - width / 2 + originWidth / 2 + scrollX;\n var topCenterY = originPos.top - height - spacingOffset + scrollY + iconSpacing;\n setTooltipPosition(topCenterY, topCenterX);\n };\n\n var positionBottom\n /* istanbul ignore next */\n = function positionBottom\n /* istanbul ignore next */\n (top, left) {\n var offsetY = top + scrollY + height + originHeight + spacingOffset * 2 - iconSpacing * 2;\n setTooltipPosition(offsetY, left);\n };\n\n var positionLeft = function positionLeft() {\n var buttonWidth = originWidth / 2 - tooltipIconSize / 2; // tooltip bubble starts at bottom left edge of its origin (icon/button)\n // and calculates X and Y moves from there:\n\n var leftPosX = originPos.left - width + buttonWidth - spacingOffset + scrollX;\n var leftPosY = originPos.top - height / 2 + originHeight / 2 + scrollY;\n tooltip.classList.add(styles['ppvx_tooltip--position_left']);\n setTooltipPosition(leftPosY, leftPosX);\n };\n\n var positionRight = function positionRight() {\n var buttonWidth = originWidth / 2 + tooltipIconSize / 2; // tooltip bubble starts at bottom left edge of its origin (icon/button)\n // and calculates X and Y moves from there:\n\n var rightPosX = originPos.left + buttonWidth + spacingOffset + scrollX;\n var rightPosY = originPos.top - height / 2 + originHeight / 2 + scrollY;\n tooltip.classList.add(styles['ppvx_tooltip--position_right']);\n setTooltipPosition(rightPosY, rightPosX);\n };\n\n var selfPosition =\n /* istanbul ignore next */\n function selfPosition() {\n positionTopCenter();\n var boundary = tooltip.getBoundingClientRect();\n\n if (boundary.top < tooltipWindow.top || boundary.top < 0) {\n // position: bottom\n positionBottom(boundary.top, boundary.left);\n tooltip.classList.add(styles['ppvx_tooltip--position_bottom']); // store new boundary\n\n boundary = tooltip.getBoundingClientRect();\n } // note: if both left and right are out of bounds keep it centered\n\n\n if (!(boundary.left < tooltipWindow.left && boundary.left + maxWidth > tooltipWindow.right)) {\n var sideShift = caretSpaceHorizontal + caretWidth / 2;\n var offsetY = boundary.top + scrollY;\n var offsetX = boundary.left + scrollX;\n\n if (boundary.left < tooltipWindow.left) {\n // position: top-right, bottom-right (with left tooltip)\n offsetX = offsetX + width / 2 - sideShift;\n tooltip.classList.add(styles['ppvx_tooltip--tip_left']);\n }\n\n if (boundary.left + maxWidth > tooltipWindow.right) {\n // position: top-left, bottom-left (with right tooltip)\n offsetX = offsetX - width / 2 + sideShift;\n tooltip.classList.add(styles['ppvx_tooltip--tip_right']);\n }\n\n setTooltipPosition(offsetY, offsetX);\n }\n }; // For click which shows/hides tooltip on every click.\n // for keyboard focus and mouseover\n\n\n var setOpen = function setOpen(evt) {\n evt.stopPropagation();\n setState({\n isOpen: true,\n currentEvent: evt.type\n }); // eslint-disable-next-line\n\n onOpen && onOpen(evt, name);\n };\n\n var clearOpen = function clearOpen() {\n setState({\n isOpen: false,\n currentEvent: null\n }); // eslint-disable-next-line\n\n onClose && onClose(name);\n /* istanbul ignore else */\n\n if (tooltipWindow && tooltipWindow.windowEl) {\n var _tooltipWindow = tooltipWindow,\n windowEl = _tooltipWindow.windowEl;\n windowEl.removeEventListener('scroll', clearOpen);\n windowEl.removeEventListener('mousewheel', clearOpen);\n }\n };\n\n var setWidth = function setWidth() {\n var tooltipMaxWidthPx = getComputedStyle(tooltip, 'style').maxWidth;\n var tooltipMaxWidth = parseInt(tooltipMaxWidthPx.split('px')[0], 10);\n var winLeft = tooltipWindow.left;\n var winRight = tooltipWindow.right;\n var iconLeft = tooltipOrigin.getBoundingClientRect().left;\n var availableLeftSpace = iconLeft - winLeft + iconSpacing;\n var availableRightSpace = winRight - iconLeft - iconSpacing - tooltipIconSize;\n var halfMaxWidth = tooltipMaxWidth / 2; // if left and right of tooltip are each > than half the maxWidth, use default max width\n\n /* istanbul ignore next */\n\n if (availableLeftSpace > halfMaxWidth && availableRightSpace > halfMaxWidth) {\n maxWidth = tooltipMaxWidth;\n } else if ( // If both sides are less than half the maxwidth,\n // then tooltip bubble will be position center,\n // so use smaller side x 2 as max width since it's centered\n availableLeftSpace < halfMaxWidth && availableRightSpace < halfMaxWidth) {\n var smallerSide = availableLeftSpace < availableRightSpace ? availableLeftSpace : availableRightSpace;\n maxWidth = smallerSide * 2;\n } else {\n // take the bigger available space between the two\n var availableSpace = availableLeftSpace > availableRightSpace ? availableLeftSpace : availableRightSpace; // if it explicitly placed left/right adjust accordingly.\n\n if (position) {\n // Add the caret + 4px spacing\n availableSpace = availableSpace - spacingOffset - tooltipIconSize;\n } else {\n // Add the side shift dimension (since tooltip is position top/bottom with side shift)\n availableSpace += caretSpaceHorizontal + caretWidth / 2 - tooltipIconSize;\n }\n\n maxWidth = availableSpace > tooltipMaxWidth ? tooltipMaxWidth : availableSpace;\n }\n\n tooltip.style.maxWidth = \"\".concat(maxWidth, \"px\");\n var currentWidth = tooltip.getBoundingClientRect().width;\n /* istanbul ignore next */\n\n width = maxWidth < currentWidth ? maxWidth : currentWidth;\n height = tooltip.offsetHeight;\n };\n\n var positionTooltip = function positionTooltip() {\n tooltip = getWrapperCurrent(tooltipRef);\n tooltipOrigin = getWrapperCurrent(tooltipOriginRef);\n originPos = tooltipOrigin.getBoundingClientRect();\n var containerElm = getWrapperCurrent(containerRef);\n containerPos = containerElm && containerElm.getBoundingClientRect();\n tooltipWindow = getTooltipBoundary();\n width = tooltip.offsetWidth;\n height = tooltip.offsetHeight;\n originWidth = tooltipOrigin.offsetWidth;\n originHeight = tooltipOrigin.offsetHeight;\n scrollX = window.scrollX || window.pageXOffset;\n scrollY = window.scrollY || window.pageYOffset; // get tooltip's pointer dimensions:\n\n var rootFontSizePx = window && window.getComputedStyle(document.body).getPropertyValue('font-size') || '16px';\n var rootFontSize = parseInt(rootFontSizePx.split('px')[0], 10);\n caretWidth = isThemeV2 ? 1.125 * rootFontSize : 0.9375 * rootFontSize; // v2: 18px, v1: 15px\n\n caretHeight = isThemeV2 ? 0.75 * rootFontSize : 0.5625 * rootFontSize; // v2: 12px, v1: 9px\n\n caretSpaceHorizontal = 1 * rootFontSize; //16px spacing between caret and tooltip corner\n // 4px separation between caret and tooltip icon\n\n spacingOffset = caretHeight + 0.25 * rootFontSize;\n var targetSize = originWidth;\n tooltipIconSize = isThemeV2 ? 1.5 * rootFontSize : 1.125 * rootFontSize; // v2: 24px, v1: 18px\n // icon and target have different dimensions\n\n iconSpacing = targetSize / 2 - tooltipIconSize / 2; // set the initial width for tooltip.\n\n setWidth();\n var _tooltipWindow2 = tooltipWindow,\n windowEl = _tooltipWindow2.windowEl;\n windowEl.addEventListener('scroll', clearOpen);\n windowEl.addEventListener('mousewheel', clearOpen);\n\n switch (position) {\n case 'left':\n positionLeft();\n break;\n\n case 'right':\n positionRight();\n break;\n\n default:\n selfPosition();\n }\n };\n\n var handleClickOutside = function handleClickOutside(evt) {\n var current = getWrapperCurrent(wrapperRef);\n /* istanbul ignore next */\n\n if (isOpen && current && !current.contains(evt.target)) {\n evt.stopPropagation();\n clearOpen();\n }\n };\n\n var handleKey = function handleKey(evt) {\n /* istanbul ignore next */\n var keyCode = evt.key || evt.keyCode;\n\n switch (keyCode) {\n case 'Tab':\n case 27:\n case 'Escape':\n case 'Esc':\n case 9:\n clearOpen();\n break;\n }\n };\n\n useLayoutEffect(function () {\n if (isOpen) {\n positionTooltip();\n document.addEventListener('mousedown', handleClickOutside);\n document.addEventListener('keydown', handleKey);\n window.addEventListener('resize', clearOpen);\n } else {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('keydown', handleKey);\n window.removeEventListener('resize', clearOpen);\n }\n\n return function () {\n document.removeEventListener('mousedown', handleClickOutside);\n document.removeEventListener('keydown', handleKey);\n window.removeEventListener('resize', clearOpen);\n };\n });\n var tooltipOriginClasses = clsx(styles.ppvx_tooltip__icon, (_clsx = {}, _defineProperty(_clsx, styles['ppvx_tooltip__icon--verified'], verifiedIcon), _defineProperty(_clsx, styles['ppvx--v2'], isThemeV2), _clsx), styles['ppvx_tooltip__icon--svg'], triggerClassName);\n var tooltipClasses = clsx(styles.ppvx_tooltip, _defineProperty({}, styles['ppvx--v2'], isThemeV2), tooltipClassName);\n /* istanbul ignore next */\n\n var handleMouseLeave = function handleMouseLeave(evt) {\n if (tooltip && evt.relatedTarget !== tooltip) {\n evt.stopPropagation();\n clearOpen();\n }\n };\n\n var imagePositionClasses = clsx([styles.ppvx_tooltip__image], [styles[\"ppvx_tooltip__image--\".concat(imagePosition)]]);\n var displayImage = /*#__PURE__*/React.createElement(\"span\", {\n className: imagePositionClasses\n }, imageElement); //@ts-ignore\n\n var tooltipNode = isOpen && /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(\"div\", {\n ref: tooltipRef,\n className: tooltipClasses,\n id: name,\n role: \"tooltip\",\n \"aria-hidden\": !isOpen,\n onMouseLeave: isTouchDevice || currentEvent === 'focus' ? noop : clearOpen\n }, imageElement && (imagePosition === 'top-center' || imagePosition === 'top-left') && displayImage, description, imageElement && (imagePosition === 'bottom-center' || imagePosition === 'bottom-left') && displayImage), getWrapperCurrent(containerRef) || document.body);\n var TooltipIcon;\n /* istanbul ignore next */\n\n if (isThemeV2) {\n TooltipIcon = verifiedIcon ? V2VerifiedIcon : V2QuestionIcon;\n } else {\n TooltipIcon = verifiedIcon ? VerifiedAltIcon : QuestionAltIcon;\n }\n\n var tooltipSize = isThemeV2 ? 'sm' : 'xs';\n return /*#__PURE__*/React.createElement(\"span\", {\n ref: wrapperRef,\n className: className\n }, /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n ref: tooltipOriginRef,\n className: tooltipOriginClasses,\n \"aria-describedby\": name,\n onClick: isTouchDevice ? function toggleOpen(evt) {\n // call onOpen/onClose before actual state change by checking current state\n // eslint-disable-next-line\n !state.isOpen ? onOpen && onOpen(evt, name) : onClose && onClose(name);\n setState({\n isOpen: !isOpen,\n currentEvent: isOpen ? null : evt.type\n });\n } : noop,\n onMouseEnter: isTouchDevice || currentEvent === 'focus' ? noop : setOpen,\n onMouseLeave: isTouchDevice || currentEvent === 'focus' ? noop : handleMouseLeave,\n onMouseDown: function handleMouseDown(evt) {\n return evt.preventDefault();\n },\n onFocus: isTouchDevice ? noop : setOpen\n }, /*#__PURE__*/React.createElement(TooltipIcon, {\n size: tooltipSize\n }), /*#__PURE__*/React.createElement(\"span\", {\n className: styles['ppvx_tooltip__icon--screenreader']\n }, screenReaderText)), tooltipNode);\n};\n\nexport { Tooltip };","export var PRIMARY_COLOR = '#0070ba';\nexport var SECONDARY_COLOR = '#e4f1fb';\nexport var ERROR_COLOR = '#d20000';\nexport var WARNING_COLOR = '#d64003';\nexport var WHITE_COLOR = '#ffffff';\nexport var WARN_COLOR = '#ff9600';\nexport var BUTTON_FOCUSED_COLOR = '#005ea6';\nexport var BORDER_COLOR = '#cbd2d6';\nexport var FUNDING_SOURCE_LOGO_BORDER_COLOR = '#ebebeb';\nexport var SEPARATOR_BORDER_COLOR = '#eaeced';\nexport var INPUT_BORDER_COLOR = '#b7bcbf';\nexport var INPUT_BORDER_FOCUSED_COLOR = '#009cde';\nexport var INPUT_BORDER_FOCUSED_COLOR_LIGHT = 'rgba(0, 156, 222, 10%)';\nexport var INPUT_TEXT_COLOR = '#2c2e2f';\nexport var LABEL_COLOR = '#6c7378';\nexport var ERROR_MESSAGE_BACKGROUND_COLOR = '#fff7f7';\nexport var INFO_MESSAGE_BACKGROUND_COLOR = '#f5f7fa';\nexport var SUCCESS_MESSAGE_BACKGROUND_COLOR = '#f5fdfb';\nexport var WARN_MESSAGE_BACKGROUND_COLOR = '#fffbf5';\nexport var TEXT_DEFAULT_COLOR = '#7e8489';\nexport var TEXT_HEADING_COLOR = '#4a4a4a';\nexport var TEXT_LIGHT_GRAY_COLOR = '#687173';\nexport var IMAGE_BACKGROUND_COLOR = '#f8f8f8';\nexport var IMAGE_BORDER_COLOR = '#b0b8c5';\nexport var TOOLTIP_BACKGROUND_COLOR = '#f5fbfe';\nexport var TOOLTIP_BORDER_COLOR = '#50c7f9';\nexport var BANNER_BACKGROUND_COLOR = '#F0F4F5';","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport React, { useRef, useEffect } from 'react';\nimport { useTheme } from '@paypalcorp/pp-react-theme';\nimport clsx from 'clsx';\nimport '../__generated__/styles/badge.css';\nvar styles = {\n \"ppvx_badge\": \"ppvx_badge___2-6-0\",\n \"ppvx_badge--status\": \"ppvx_badge--status___2-6-0\",\n \"ppvx_badge--type_feature\": \"ppvx_badge--type_feature___2-6-0\",\n \"ppvx_badge--type_success\": \"ppvx_badge--type_success___2-6-0\",\n \"ppvx_badge--type_warning\": \"ppvx_badge--type_warning___2-6-0\",\n \"ppvx_badge--type_critical\": \"ppvx_badge--type_critical___2-6-0\",\n \"ppvx_badge--type_neutral\": \"ppvx_badge--type_neutral___2-6-0\",\n \"ppvx--v2\": \"ppvx--v2___2-6-0\",\n \"ppvx--v1\": \"ppvx--v1___2-6-0\",\n \"ppvx_badge--numeric\": \"ppvx_badge--numeric___2-6-0\",\n \"ppvx_badge--authorized\": \"ppvx_badge--authorized___2-6-0\",\n \"ppvx_badge--in-progress\": \"ppvx_badge--in-progress___2-6-0\",\n \"ppvx_badge--on-hold\": \"ppvx_badge--on-hold___2-6-0\",\n \"ppvx_badge__icon\": \"ppvx_badge__icon___2-6-0\"\n};\n\nvar Badge = function Badge(_ref) {\n var _clsx;\n\n var type = _ref.type,\n status = _ref.status,\n className = _ref.className,\n theme = _ref.theme,\n decoration = _ref.decoration,\n children = _ref.children,\n rest = _objectWithoutProperties(_ref, [\"type\", \"status\", \"className\", \"theme\", \"decoration\", \"children\"]);\n\n var ref = useRef(null);\n useEffect(function () {\n if (ref && ref.current && decoration) {\n var el = ref.current;\n var svgElement = el.querySelector('svg');\n /* istanbul ignore next */\n\n if (svgElement) {\n svgElement.setAttribute('aria-hidden', 'true');\n svgElement.setAttribute('focusable', 'false');\n }\n }\n }, [decoration]);\n\n var _theme = useTheme('Badge', theme);\n\n var badgeClasses = clsx(styles.ppvx_badge, (_clsx = {}, _defineProperty(_clsx, styles[\"ppvx_badge--type_\".concat(type)], type), _defineProperty(_clsx, styles[\"ppvx_badge--status\"], status), _defineProperty(_clsx, styles['ppvx--v2'], _theme && _theme === 'v2'), _clsx), className); // badge with icon\n\n var ariaProps = {\n className: clsx(styles.ppvx_badge__icon),\n 'aria-hidden': false,\n tabIndex: 0\n };\n var badgeWithIcon = ['feature', 'success', 'warning', 'critical', 'neutral'].includes(type) && decoration && /*#__PURE__*/React.createElement(\"span\", ariaProps, decoration); // End badge with icon\n\n return /*#__PURE__*/React.createElement(\"span\", _extends({\n className: badgeClasses\n }, rest, {\n ref: ref\n }), badgeWithIcon, children);\n};\n\nexport { Badge };"],"sourceRoot":""}